![]() |
|
Помогите разобраться с условием. | ☑ | ||
---|---|---|---|---|
0
dred999
17.09.15
✎
10:19
|
Всем привет. Начинаю программировать и пишу обработку в которой есть условие: Если ВидЗаполнения = 3 Тогда
Авансы() КонецЕсли; Проблема в том что отработав это условие он дальше продолжает выполнять код и создает 2 документа 1. документ в процедуре Аванс, а второй документ в процедуре ОсновныеДействияФормыОсновныеДействияФормыВыполнить Как правильно поставить условие чтоб если Если ВидЗаполнения = 3 Тогда Авансы() КонецЕсли; чтобы создавался документ только в процедуре Авансы.????? подскажите добры люди!!! Ниже сам код: Процедура ОсновныеДействияФормыОсновныеДействияФормыВыполнить(Кнопка) Если ТаблицаЗагрузки.Количество()=0 Тогда Возврат; КонецЕсли; Если ВидЗаполнения = 0 Тогда ВидПремии = ПланыВидовРасчета.ДополнительныеНачисленияОрганизаций.Больничный_юд; ИначеЕсли ВидЗаполнения = 1 Тогда ВидПремии = ПланыВидовРасчета.ДополнительныеНачисленияОрганизаций.Отпуск_юд; ИначеЕсли ВидЗаполнения = 2 Тогда ВидПремии = ПланыВидовРасчета.ДополнительныеНачисленияОрганизаций.КомпенсацияПриУвольнении_юд; КонецЕсли; Если ВидЗаполнения = 3 Тогда Авансы() КонецЕсли; НовыйДокумент = Документы.ПремииРаботниковОрганизаций.СоздатьДокумент(); НовыйДокумент.Дата = Дата; НовыйДокумент.Организация = Организация; НовыйДокумент.ВидРасчета = ВидПремии; ТабличнаяЧастьНачисления = НовыйДокумент.Начисления; Для каждого СтрокаТаблицаЗагрузки Из ТаблицаЗагрузки Цикл НоваяСтрока = ТабличнаяЧастьНачисления.Добавить(); НоваяСтрока.Сотрудник = СтрокаТаблицаЗагрузки.Сотрудник; НоваяСтрока.Результат = СтрокаТаблицаЗагрузки.Результат; КонецЦикла; НовыйДокумент.Записать(РежимЗаписиДокумента.Запись); Сообщить("Создан новый документ!!! " + НовыйДокумент ); КонецПроцедуры Процедура Авансы() Если ТаблицаЗагрузки.Количество()=0 Тогда Возврат; КонецЕсли; НовыйДокумент = Документы.ЗарплатаКВыплатеОрганизаций.СоздатьДокумент(); НовыйДокумент.Дата = Дата; НовыйДокумент.Организация = Организация; НовыйДокумент.ХарактерВыплаты = Перечисления.ХарактерВыплатыЗарплаты.ПлановыйАванс; НовыйДокумент.СпособВыплаты = Перечисления.СпособыВыплатыЗарплаты.ЧерезКассу; ТабличнаяЧастьАванс = НовыйДокумент.Зарплата; Для каждого СтрокаТаблицаЗагрузки Из ТаблицаЗагрузки Цикл НоваяСтрока = ТабличнаяЧастьАванс.Добавить(); НоваяСтрока.Физлицо = СтрокаТаблицаЗагрузки.Сотрудник; НоваяСтрока.Сумма = СтрокаТаблицаЗагрузки.Результат; НоваяСтрока.ВыплаченностьЗарплаты = Перечисления.ВыплаченностьЗарплаты.Выплачено; КонецЦикла; НовыйДокумент.Записать(РежимЗаписиДокумента.Запись); Сообщить("Создан новый документ!!! " + НовыйДокумент ); КонецПроцедуры |
|||
1
aleks_default
17.09.15
✎
10:20
|
Если ВидЗаполнения = 3 Тогда
Авансы() Иначе возврат КонецЕсли; |
|||
2
aleks_default
17.09.15
✎
10:21
|
Ой
т. е. Если ВидЗаполнения = 3 Тогда Авансы() возврат КонецЕсли; |
|||
3
dred999
17.09.15
✎
10:22
|
(2) Попробую
|
|||
4
dred999
17.09.15
✎
10:24
|
(2) Спасибо! Работает!!!!!
|
|||
5
dred999
17.09.15
✎
10:25
|
Тема закрыта!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |