L
lira89
Конфигурация 7.7 С помощью обработки нужно создать документ (в конфигураторе указан Журнал для этого документа) при этом проверяя, есть ли уже такой документ по определенным реквизитам СравнФизЛицо, СравнФакультет, СравнУчГруппа . Если есть, то вывести сообщение и продолжить цикл дальше. Документ НЕ содержит табличной части. Данный код содержится внутри цикла Если , т.е. Если мы нашли не нашли человека, то добавляем его в справочник и создаем сразу документ Зачисление по данному человеку. Часть кода приведена снизу:
Изначально в журнале я создала один документ. Проблема в том, что в отладчике Док.ВыбратьДокументы()=1, Док.ПолучитьДокумент()=1, а в сам цикл даже не заходит. ставлю точку останова на КонецЦикла;, так даже не становиться и туда, а сразу идет на КонецЕсли (внешний цикл Если). Подскажите пожалуйста, в чем может быть проблема?
Код:
Док = СоздатьОбъект("Документ.Зачисление");
Док.ВыбратьДокументы();
Пока Док.ПолучитьДокумент()=1 Цикл
Если (Док.ФизЛицо = СравнФизЛицо) и (Док.Факультет = СравнФакультет) Тогда
Если (Док.УчГруппа.Выбран()=1) и (Док.УчГруппа = СравнУчГруппа) Тогда
Если Док.Проведен()=1 Тогда
Сообщить("Документ уже есть и проведен!!!");
Продолжить;
Иначе
//изменяем данные
ЗаполнениеРеквизитовДокумента(Док, Табл, Табл2); // процедура для заполнения реквизитов документа и его записи
Сообщить("Документ изменили!!! Документ без Группы");
КонецЕсли;
Иначе
Если Док.Проведен()=1 Тогда
Сообщить("Документ уже есть и проведен!!!");
Продолжить;
Иначе
//изменяем данные
ЗаполнениеРеквизитовДокумента(Док, Табл, Табл2);
КонецЕсли;
Сообщить("Документ изменили2!!! Документ с Группой");
КонецЕсли;
Иначе
//создаем документ
Док.Новый();
ЗаполнениеРеквизитовДокумента(Док, Табл, Табл2);
Сообщить("Документ записали!!!");
КонецЕсли;
КонецЦикла;