Не заполняется табличная часть при вводе документа на основании(ЗУП)

Новая тема
Показывать по сообщений
Может быть специалиста пригласить?
Я решила переписать процедуру ОбработкаЗаполнения.Неподскажете,как правильно записать,чтобы у меня заполнялась именно табличная часть документа?
Выше я привел типовой код! В нем чтото непонятно?
"В нём всё понятно.Просто у меня в процедуре ОбработкаЗаполнения ДатаВозврата в табличной части не заполняется<br> ОбработкаЗаполнения(Основание)<br> //{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ<br> // Данный фрагмент построен конструктором.<br> // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!<br> Если ТипЗнч(Основание) = Тип("ДокументСсылка.ОтпускаОрганизаций") Тогда<br> // Заполнение шапки<br> ДанныеПрошлойВерсии = Основание.ДанныеПрошлойВерсии;<br> ДвиженияИсправляемогоДокумента = Основание.ДвиженияИсправляемогоДокумента;<br> Комментарий = Основание.Комментарий;<br> КраткийСоставДокумента = Основание.КраткийСоставДокумента;<br> Организация = Основание.Организация;<br> Ответственный = Основание.Ответственный;<br> Для Каждого ТекСтрокаРаботникиОрганизации Из Основание.РаботникиОрганизации Цикл<br> НоваяСтрока = РаботникиОрганизации.Добавить();<br> НоваяСтрока.Сотрудник = ТекСтрокаРаботникиОрганизации.Сотрудник;<br> НоваяСтрока.Сторно = ТекСтрокаРаботникиОрганизации.Сторно;<br> НоваяСтрока.УдалитьПриказ = ТекСтрокаРаботникиОрганизации.УдалитьПриказ;<br> НоваяСтрока.ФизЛицо = ТекСтрокаРаботникиОрганизации.ФизЛицо;<br> КонецЦикла;<br> ИначеЕсли ТипЗнч(Основание) = Тип("ДокументСсылка.КомандировкиОрганизаций") Тогда<br> // Заполнение шапки<br> КонецЕсли;<br> //}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ<br>КонецПроцедуры // ОбработкаЗаполнения()<br>"
"Вот можно это сделать примерно таким образом:<br>Пока Выборка.Следующий() Цикл<br>      ДокументОбъект=Документы.ВозвратНаРаботуОрганизаций.СоздатьДокумент();<br>   РаботникОрганизации=ДокументОбъект.РаботникиОрганизации.Добавить();<br> <br><br> РаботникОрганизации.Сотрудник=Выборка.Сотрудник;<br> РаботникОрганизации.ДатаВозврата=Выборка.ДатаОкончанияОтпускаПлюсОдинДень;<br> ДокументОбъект.Дата=ТекущаяДата();<br>    ДокументОбъект.Записать();<br>                   <br>               <br><br>         //ДокументОбъект.ПолучитьФорму().Открыть();<br><br> <br> КонецЦикла;<br>ну и т.д."
можно и так!
А почему может быть следующая ситуация:в отладике всё правильно,но при этом если открыть документ ВозвратНаРаботуОрганизаций табличная часть всё равно не заполняется?
не знаю, мне по форуму не видно ни вашей базы, не вашей обработки!
"Запрос=Новый Запрос("ВЫБРАТЬ<br>                    | СостояниеПоДокументуОтпускаОрганизаций.Организация,<br>                    | СостояниеПоДокументуОтпускаОрганизаций.Сотрудник,<br>                    | СостояниеПоДокументуОтпускаОрганизаций.Состояние КАК ВидОтпуска,<br>                    | СостояниеПоДокументуОтпускаОрганизаций.Период КАК ДатаНачалаОтпуска,<br>                    | СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения КАК ДатаОкончанияОтпуска,<br>                    | ДОБАВИТЬКДАТЕ(СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения, ДЕНЬ, 1) КАК ДатаОкончанияОтпускаПлюсОдинДень,<br>                    | СостояниеРаботниковОрганизаций.Период КАК ДатаНачалаСостоянияПослеОтпуска,<br>                    | СостояниеРаботниковОрганизаций.ПериодЗавершения КАК ДатаЗавершенияСостоянияПослеОтпуска,<br>                    | СостояниеРаботниковОрганизаций.Состояние,<br>                    | СостояниеРаботниковОрганизаций.СостояниеЗавершения,<br>                    | СостояниеРаботниковОрганизаций.Регистратор КАК Ссылка,<br>                    | СостояниеРаботниковОрганизаций.Регистратор.Комментарий<br>                    |ИЗ<br>                    | РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеПоДокументуОтпускаОрганизаций<br>                    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостояниеРаботниковОрганизаций КАК СостояниеРаботниковОрганизаций<br>                    | ПО СостояниеПоДокументуОтпускаОрганизаций.Организация = СостояниеРаботниковОрганизаций.Организация<br>                    | И СостояниеПоДокументуОтпускаОрганизаций.Сотрудник = СостояниеРаботниковОрганизаций.Сотрудник<br>                    | И (СостояниеРаботниковОрганизаций.Состояние <> ЗНАЧЕНИЕ(Перечисление.СостоянияРаботникаОрганизации.Работает))<br>                    | И (ДОБАВИТЬКДАТЕ(СостояниеПоДокументуОтпускаОрганизаций.ПериодЗавершения, ДЕНЬ, 1) <= СостояниеРаботниковОрганизаций.Период)<br>                    |ГДЕ<br>                    | СостояниеПоДокументуОтпускаОрганизаций.Регистратор ССЫЛКА Документ.ОтпускаОрганизаций<br>                    | И СостояниеПоДокументуОтпускаОрганизаций.Регистратор.Проведен<br>                    |ИТОГИ ПО<br>                    | Ссылка");<br><br>        Запрос.УстановитьПараметр("Работает",Перечисления.СостоянияРаботникаОрганизации.Работает); <br> //Запрос.УстановитьПараметр("ДатаНачала",);<br> //Запрос.УстановитьПараметр("ДатаОкончания",ДатаОкончания);<br> <br>    Результат=Запрос.Выполнить();<br> <br>Выборка=Результат.Выбрать();<br>Пока Выборка.Следующий() Цикл<br>      ДокументОбъект=Документы.ВозвратНаРаботуОрганизаций.СоздатьДокумент();<br>  ДокументОбъект.Комментарий=Выборка.Комментарий;<br>  ДокументОбъект.Организация=Выборка.Организация;<br>   РаботникОрганизации=ДокументОбъект.РаботникиОрганизации.Добавить();<br> РаботникОрганизации.Сотрудник=Выборка.Сотрудник;<br> РаботникОрганизации.ДатаВозврата=Выборка.ДатаОкончанияОтпуска;<br> <br> ДокументОбъект.Дата=ТекущаяДата();<br> <br>   <br>                  <br> <br> КонецЦикла;<br>      <br>          ДокументОбъект.Записать();<br>КонецПроцедуры<br>"
Я решила заменить процедуру Заполнить и сделать это перебором,примерно так,как у меня написано.<br> СостояниеРаботниковОрганизаций.Регистратор.Комментарий <br>Но я так поняла,что нельзя добавлять поля таким образом.Когда я запускаю обработку,то выдаётся,что поле Комментарий не обнаружено.Как можно его добавить?<br> <br>

Читают тему

(гостей: 1)

Быстрый переход