План производства

1. user1169791 24.04.19 13:48 Сейчас в теме
Здравствуйте!подскажите пожалуйста! есть план производста,по его выполнению,его можно как нибудь "Закрыть"(ну как отметить что план выполнен)?!?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. user5300 1014 24.04.19 13:58 Сейчас в теме
(1)добавь доп реквизит в справочник
5. user1169791 24.04.19 14:29 Сейчас в теме
(4) а можно поподробнее пожалуйста?
6. user5300 1014 24.04.19 14:31 Сейчас в теме
(5)реквизит булево, чтоб при выполнении ставилась галка истина (выполнено)
7. user1169791 24.04.19 15:03 Сейчас в теме
(6) это вот тут нужно?
Прикрепленные файлы:
9. user5300 1014 24.04.19 15:05 Сейчас в теме
(7)"план производства" - это что ? документ или справочник ?
10. user5300 1014 24.04.19 15:06 Сейчас в теме
(7)если не разбираетесь - лучше программистов попросить
11. user1169791 24.04.19 15:13 Сейчас в теме
(10)с программистами проблемно,уж самому проще будет сделать..посмотрите пожалуйста,вот правильно же все делаю?
Прикрепленные файлы:
12. user5300 1014 24.04.19 15:34 Сейчас в теме
(11)Правильно, назовите реквизит как нибудь "ПланВыполнен"
Откройте Модуль формы элемента, документа ПланПроизводства и добавьте(найдите если есть) процедуру ПриЗаписи() - и добавьте код: ПланВыполнен = Истина ;
13. user1169791 24.04.19 15:47 Сейчас в теме
(12) есть только перед записью...
Прикрепленные файлы:
14. user5300 1014 24.04.19 16:08 Сейчас в теме
(13) не там смотрите
Прикрепленные файлы:
15. user5300 1014 24.04.19 16:09 Сейчас в теме
(13)А еще лучше в процедуре ПослеЗаписи() !
16. user1169791 25.04.19 07:19 Сейчас в теме
(15) Спасибо!)
вот так получается тогда
Прикрепленные файлы:
17. user1169791 25.04.19 07:19 Сейчас в теме
(15) а вот тут нужно что то добавлять?
Прикрепленные файлы:
19. user5300 1014 25.04.19 07:48 Сейчас в теме
(17) Да, если хотите что бы пользователи видели - добавьте этот же реквизит на форму:
Дайте ему заголовок и уберите доступность ( Чтоб пользователь не ставил вручную)
Прикрепленные файлы:
18. user1169791 25.04.19 07:47 Сейчас в теме
(15) вот так я сделал!)но что не то вроде,как появилась,место с галочкой "план выполнен" но это самому нужно ставить,а что бы оно само как то ставило это наверное нельзя сделать?и вот такой еще момент,галочку ставишь,записываешь,закрываешь,по новой открываю,галочка уже не стоит..что то не так я походу сделал?
Прикрепленные файлы:
20. user5300 1014 25.04.19 07:49 Сейчас в теме
(18) нет ) после проведение документа - галка ставится автоматически
21. user5300 1014 25.04.19 07:53 Сейчас в теме
(18)хотя лучше код добавьте в ПриЗаписи:
 
Процедура ПриЗаписи(Отказ)
	ПланВыполнен = Истина;
КонецПроцедуры

22. user1169791 25.04.19 08:06 Сейчас в теме
(21) все сделал!)а допустим в отчете это можно будет увидить?
Прикрепленные файлы:
23. user1169791 25.04.19 08:11 Сейчас в теме
(21) блин чуток,не так..он теперь просто ставит галку при записи!не важно выполнен план или нет..а надо именно что бы тогда когда выполняется план!ну т.е. надо 4 болта,4 болта появились по заданному плану,вот в этот момент галка должна ставится,что типа все этот план уже "закрыт"!
24. user5300 1014 25.04.19 08:22 Сейчас в теме
(23)Условие надо добавить значит:
Если 4 болта появились Тогда
       ПланВыполнен = Истина;
КонецЕсли;
//Примерно так, конкретнее напишите что за болты и откуда берутся
voronets; +1 Ответить
25. user5300 1014 25.04.19 08:26 Сейчас в теме
(24)Скорее всего вам дальше не разобраться, программист нужен ) либо вручную надо ставить галку если выполнен план )
26. user1169791 25.04.19 08:35 Сейчас в теме
(24) ну условие наверное,как то так дожно,ну я своими словами

Если Количество на "Склад.ГотовойПродукции" = Количество Плана
Тогда
ПланВыполнен=Истина;
КонецЕсли;

вот правильно это как записать...можете пожалуйста подсказать?
27. user5300 1014 25.04.19 08:42 Сейчас в теме
(26) количество на складе откуда берется? Документ может какой то есть еще ?
28. user1169791 25.04.19 08:44 Сейчас в теме
(27) ну если из остатков по складам взять!так нельзя будет?
30. user5300 1014 25.04.19 08:48 Сейчас в теме
(28)Остатки в регистрах хранятся, нужно строить запрос и вычислять условие, с вашим опытом я думаю у вас не сразу получится
32. user5300 1014 25.04.19 08:59 Сейчас в теме
Примерно такое
(28)
Процедура ПриЗаписи()

	Для каждого Товар из товары цикл
		Остаток = получениеОстатков(Товар.Номенклатура);
		Если Товар.Количество > Остаток ИЛИ Товар.Количество = Остаток Тогда
			 ПланВыполнен = Истина;
		КонецЕсли;
	КонецЦикла;
	
КонецПроцедуры

Функция получениеОстатков(Номенклатура)
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ТоварыОрганизацийОстатки.Номенклатура КАК Номенклатура,
		|	СУММА(ТоварыОрганизацийОстатки.КоличествоОстаток) КАК КоличествоОстаток
		|ИЗ
		|	РегистрНакопления.ТоварыОрганизаций.Остатки(&Сегодня, ) КАК ТоварыОрганизацийОстатки
		|ГДЕ
		|	ТоварыОрганизацийОстатки.Номенклатура = &Номенклатура
		|	И ТоварыОрганизацийОстатки.Склад = &Склад
		|
		|СГРУППИРОВАТЬ ПО
		|	ТоварыОрганизацийОстатки.Номенклатура";
	
	Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
	Запрос.УстановитьПараметр("Сегодня", ТекущаяДата());
	Запрос.УстановитьПараметр("Склад", Справочники.Склады.НайтиПоКоду("000")); ////000 - ваш код склада

	РезультатЗапроса = Запрос.Выполнить().Выбрать();
	
	Если РезультатЗапроса.Следующий() Тогда
		возврат РезультатЗапроса.КоличествоОстаток; //Если есть остаток  
	Иначе
		возврат 0;   //Если не найдено остатков
	КонецЕсли	
КонецФункции
Показать
34. user1169791 25.04.19 10:33 Сейчас в теме
ну в моем случае,это вот так должно быть?
Прикрепленные файлы:
35. user1169791 25.04.19 10:34 Сейчас в теме
(32)
Прикрепленные файлы:
36. user5300 1014 25.04.19 10:47 Сейчас в теме
(35)нажмите нет и покажите ошибку
38. user1169791 25.04.19 11:49 Сейчас в теме
(36)где ошибка он он не показывает...просто это вот окошко и все..
37. user5300 1014 25.04.19 10:48 Сейчас в теме
(35) Укажите код склада вместо 000
39. user1169791 25.04.19 11:58 Сейчас в теме
(37)код склада указал все равно при сохранении
Прикрепленные файлы:
40. user1169791 25.04.19 12:03 Сейчас в теме
(37)
Процедура ПриЗаписи()

Для каждого Товар из товары цикл
Остаток = получениеОстатков(Товар.Номенклатура);
Если Товар.Количество > Остаток ИЛИ Товар.Количество = Остаток Тогда
ПланВыполнен = Истина;
КонецЕсли;
КонецЦикла;

КонецПроцедуры


Мнне кажется я вот тут не правильно написал,это же из регистра накоплений?
41. user1169791 25.04.19 12:04 Сейчас в теме
(37) вот у меня там какие реквизиты
Прикрепленные файлы:
42. user1169791 25.04.19 12:13 Сейчас в теме
43. user5300 1014 25.04.19 12:18 Сейчас в теме
(42) он вам ошибку напишет, ошибку скинь
44. user5300 1014 25.04.19 12:19 Сейчас в теме
(42)
Прикрепленные файлы:
45. user1169791 25.04.19 12:28 Сейчас в теме
(44)а все понял,у меня прослужебное окно скрыто было,я и не видел.. вот ошибка


{Документ.ПланПроизводства.Форма.ФормаДокумента.Форма(512,26)}: Переменная не определена (товары)
Для каждого Товар из <<?>>товары цикл (Проверка: Толстый клиент (обычное приложение))
Прикрепленные файлы:
46. user5300 1014 25.04.19 12:35 Сейчас в теме
(45) У вас табличная часть по другому называется , измените в коде "товары" на свою:
 Для каждого Товар из ВАША ТАБЛИЦА цикл
Прикрепленные файлы:
47. user1169791 25.04.19 12:53 Сейчас в теме
(46)все ввел,ошибки не выдает!только на практике(в работе),как это можно увидеть?!просто что то смотрю смотрю не пойму никак?
48. user5300 1014 25.04.19 12:55 Сейчас в теме
(47) проведи документ с перевыполненным планом )
49. user1169791 25.04.19 13:06 Сейчас в теме
(48)ну я в принципе так и делал,при проведении,ставится галка,что типа план выполнен,выхожу из него,захожу обратно,галки уже нет
50. user5300 1014 25.04.19 13:08 Сейчас в теме
(49)ПриЗаписи() - туда добавили код ?
51. user1169791 25.04.19 13:13 Сейчас в теме
(50)вот!еще код остался после записи,убрать от туда?
Прикрепленные файлы:
53. user5300 1014 25.04.19 13:18 Сейчас в теме
(51) И там и там уберите, и добавьте в ПередЗаписью
54. user1169791 25.04.19 13:28 Сейчас в теме
(53)а теперь вот так...
Прикрепленные файлы:
56. user5300 1014 25.04.19 13:30 Сейчас в теме
(54)
Для каждого Товар из СоставПлана цикл 
55. user1169791 25.04.19 13:29 Сейчас в теме
(53){Документ.ПланПроизводства.Форма.ФормаДокумента.Форма(530)}: Поле объекта недоступно для записи (СоставПлана)
Для каждого СоставПлана из СоставПлана цикл
58. user5300 1014 25.04.19 13:31 Сейчас в теме
(55)
    Для каждого План из СоставПлана цикл
        Остаток = получениеОстатков(План .Номенклатура);
        Если План .Количество > Остаток ИЛИ План .Количество = Остаток Тогда
             ПланВыполнен = Истина;
        КонецЕсли;
    КонецЦикла;
вот!
59. user1169791 25.04.19 13:36 Сейчас в теме
Галка себя ведет так же как и раньше..
60. user5300 1014 25.04.19 13:41 Сейчас в теме
(59)
Процедура ПередЗаписью()

    Для каждого План из СоставПлана цикл
        Остаток = получениеОстатков(План .Номенклатура);
        Если План .Количество > Остаток ИЛИ План .Количество = Остаток Тогда
             ПланВыполнен = Истина;
        КонецЕсли;
    КонецЦикла;
    
КонецПроцедуры

Функция получениеОстатков(Номенклатура)
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    ТоварыОрганизацийОстатки.Номенклатура КАК Номенклатура,
        |    СУММА(ТоварыОрганизацийОстатки.КоличествоОстаток) КАК КоличествоОстаток
        |ИЗ
        |    РегистрНакопления.ТоварыОрганизаций.Остатки(&Сегодня, ) КАК ТоварыОрганизацийОстатки
        |ГДЕ
        |    ТоварыОрганизацийОстатки.Номенклатура = &Номенклатура
        |    И ТоварыОрганизацийОстатки.Склад = &Склад
        |
        |СГРУППИРОВАТЬ ПО
        |    ТоварыОрганизацийОстатки.Номенклатура";
    
    Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
    Запрос.УстановитьПараметр("Сегодня", ТекущаяДата());
    Запрос.УстановитьПараметр("Склад", Справочники.Склады.НайтиПоКоду("000")); ////000 - ваш код склада

    РезультатЗапроса = Запрос.Выполнить().Выбрать();
    
    Если РезультатЗапроса.Следующий() Тогда
        возврат РезультатЗапроса.КоличествоОстаток; //Если есть остаток  
    Иначе
        возврат 0;   //Если не найдено остатков
    КонецЕсли    
КонецФункции
Показать


Код такой??
61. user1169791 25.04.19 13:49 Сейчас в теме
да!еще пробывал

ТоварыОрганизацийОстатки.Номенклатура менять на ТоварыНаСкладахОстатки.Номенклатура

все одно и тоже,при записи галка появляется,стоит закрыть исчезает...
64. user5300 1014 25.04.19 13:57 Сейчас в теме
(61) Уберите процедуры послезаписи и при записи вообще( если их не было)
65. user5300 1014 25.04.19 14:00 Сейчас в теме
(61) И да, добавьте еще условие в :
 Для каждого План из СоставПлана цикл
        Остаток = получениеОстатков(План .Номенклатура);
        Если Остаток  = 0 тогда
             Возврат;
        Конецесли;
        Если План .Количество > Остаток ИЛИ План .Количество = Остаток Тогда
             ПланВыполнен = Истина;
        КонецЕсли;
    КонецЦикла;
Показать
78. user1169791 25.04.19 15:10 Сейчас в теме
(65) это туда где документ же?
62. user1169791 25.04.19 13:53 Сейчас в теме
(60) так бы и хрен с ней с этой галкой главное что бы в отчете,он выполненые планы выкидывал,а не считал и в кучу!
63. user5300 1014 25.04.19 13:56 Сейчас в теме
(62)проверьте через скд, добавьте отбор ПланВыполнен равно Да
67. user1169791 25.04.19 14:36 Сейчас в теме
(63)мне надо сейчас в отчет планыПроизводства на форму вот это все закинуть и посмотреть?я правильно поняЛ?
68. user5300 1014 25.04.19 14:37 Сейчас в теме
(67) у вас есть отчет планыПроизводства , там есть - настройки - отбор
73. user1169791 25.04.19 14:56 Сейчас в теме
(68)вот тут как бы все нашел,поставил,и поставил отбор!по невыполнему,находит,по выполненому нет ничего..
Прикрепленные файлы:
75. user5300 1014 25.04.19 14:58 Сейчас в теме
(73)выполненные будут появляться с проведении новых документов, где план будет выполнен
77. user1169791 25.04.19 15:04 Сейчас в теме
(68)делаю так через отбор,выполненых нет,невыполнены есть
69. user1169791 25.04.19 14:37 Сейчас в теме
(63) просто мой отчет который я собираю там план из регистра идет
Прикрепленные файлы:
70. user5300 1014 25.04.19 14:40 Сейчас в теме
(69) там в регистре есть регистратор, добавьте условие в нем , ПланыПроизводстваОбороты.Регистратор.ПланыПродаж.ПланВыполнен = ложь;
71. user1169791 25.04.19 14:53 Сейчас в теме
(70) вот по отбору делаю,по выполненому плану нет ничего..
Прикрепленные файлы:
72. user5300 1014 25.04.19 14:54 Сейчас в теме
(71)ну правильно, реквизит только добавлен, нужны проведенные документы )
74. user1169791 25.04.19 14:58 Сейчас в теме
76. user1169791 25.04.19 15:00 Сейчас в теме
(72) у меня вот тут что есть
Прикрепленные файлы:
79. user1169791 25.04.19 15:15 Сейчас в теме
(72)
ну все перепробывал никак...
57. user1169791 25.04.19 13:31 Сейчас в теме
(53)вроде все правильно написал
Прикрепленные файлы:
52. user1169791 25.04.19 13:15 Сейчас в теме
(50)после записи убрал теперь вообще ничего не происходит..
29. user1169791 25.04.19 08:46 Сейчас в теме
(27)что то гемор большой это ведь Номенклатуру еще привязать нужно..
31. user1169791 25.04.19 08:58 Сейчас в теме
(26)я иду к тому,что я делаю отчет в СКД ТоварыНаСкладахОстаткиИОброты,по мимо остатков и оборотов там у меня есть еще графа "Количество По Плану",вот если формируешь отчет он все планы суммирует!а я хотел что бы если план выполнен,что бы он дальше не фигурировал!может каким то другим путем это нужно сделать?
33. user5300 1014 25.04.19 09:08 Сейчас в теме
(31) Если где то учитывается что план закрыт то можно, а так как он вам отберет ?
так хоть по реквизиту можно условию дописать. (Ну это мое мнение, возможно найдутся умы посерьезнее моего и помогут ))
8. user1169791 24.04.19 15:04 Сейчас в теме
(6) никак не найду тут в справочнике что бы что с планами было связано..
2. nayd 9 24.04.19 13:51 Сейчас в теме
Назовите конфигурацию и версию
3. user1169791 24.04.19 13:55 Сейчас в теме
(2)
1С:Предприятие 8.2 (8.2.19.68)
Управление производственным предприятием, редакция 1.3 (1.3.111.1) (http://v8.1c.ru/enterprise/)
Copyright (С) ООО "1C-Софт", 2009-2018. Все права защищены
(http://www.1c.ru/)
66. Ditron 185 25.04.19 14:04 Сейчас в теме
Зачем городить огород! Добавьте поле в отчет "ПланВыполнен" типа
выбор когда ПланПроизводства.Количество >= Выпуск.Количество тогда ИСТИНА иначе ЛОЖЬ конец КАК ПланВыполнен
80. user1169791 25.04.19 15:23 Сейчас в теме
(66)что то не растет тут..
Прикрепленные файлы:
81. Ditron 185 25.04.19 16:51 Сейчас в теме
(80) может не поливали ))
я же имена таблиц запроса и поля привел как пример, я же не вижу что у вас в запросе СКД, какие таблицы
82. Ditron 185 25.04.19 16:52 Сейчас в теме
(80) имелось ввиду вычисляемая разница между планом и выпуском фактическим...
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот