Заполнение реквизитов нового документа при создании

1. Asya.Ozerova 41 19.12.19 08:14 Сейчас в теме
Всем Доброго времени суток!
Очередная "Трудная" ситуация! По крайней мере для меня:(
Ситуация такая (Конфигурация БП 3.0, Документ: "РеализацияТоваровУслуг"):
При создании документа "Ручками" после выбора Контрагента автоматически заполняются "Расчеты": т.е. "Счета учета" и "Цены в документе" это в "Шапке". Тоже происходит и при добавлении в табличную часть: При выборе "Номенклатуры" заполняются "Счета учета", "Коэффициенты" и "Единицы измерения" и при том все делает правильно!
Но при создании Документа программно, все поля пустые!
Собственно Вопрос: Где Конфигурация берет данные и Как заполняет новый документ (РС "Счета учета номенклатур" пустой!)!!! Не могу найти:(
Можно конечно заполнять каждое поле отдельной строкой! Но, что касается "Счетов учета", то я вообще не могу найти, от куда они заполняются! Да и в принципе этот подход изначально не правильный (На мой взгляд), раз Конфигурация заполняет документ, значит то же можно Сделать и программно!
По теме из базы знаний
Найденные решения
12. user774630 19.12.19 13:41 Сейчас в теме
Смотрите в модуле объекта процедуру ОбработкаЗаполнения(). В новых конфигурациях стартовая логика как раз там находится.
Или проще.
Когда программно создадите документ, попробуйте выполнить
ДокументОбъект.Заполнить(Неопределено);

Посмотрите, что из необходимого заполнится.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. danjer74 3 19.12.19 08:27 Сейчас в теме
(1)Надо смотреть события ПриИзменении для контрагента, а в тч - например, номенклатуры. Для номенклатуры, насколько я помню, из номенклатурной группы берется вся эта инфа. В общем, надо изучить эти события. Пр программном заполнении не сработает, скорее всего, потому как не из формы это делается, но прописать можно. Делал подобную задачу - можно сделать.
5. Asya.Ozerova 41 19.12.19 08:32 Сейчас в теме
(2) Группы вообще пустые!
Прикрепленные файлы:
3. DenisCh 19.12.19 08:27 Сейчас в теме
Включи отладчик, включи замер производительности и добавь строку в документ.
Останови замер.
Он покажет тебе все строки, которые выполнились. Вот в них и ищи
trickster; PhoenixAOD; Aleksandr_prof; danjer74; +4 Ответить
6. Asya.Ozerova 41 19.12.19 08:33 Сейчас в теме
(3) Спасибо! Сейчас попробую
8. Asya.Ozerova 41 19.12.19 08:37 Сейчас в теме
(3) Извините! Вы имеете в виду
(3)
включи замер производительности и добавь строку в документ

Это в Документ Реализации!?
9. Asya.Ozerova 41 19.12.19 08:38 Сейчас в теме
10. yurikmellon 6 19.12.19 08:42 Сейчас в теме
(8) в конфигураторе включи замер производительности, в типовом документе РТиУ в режиме предприятия заполни нужный реквизит или добавь строку табличной части. Останови замер. Там вылезет портянка из вызываемых функций и процедур. Вдумчиво анализируй их, чтобы понять откуда что вызывается.
11. Asya.Ozerova 41 19.12.19 08:43 Сейчас в теме
(10) Теперь по понятнее! Спасибо, сейчас посмотрю!
4. yurikmellon 6 19.12.19 08:30 Сейчас в теме
вот здесь посмотри. Конкретно Функция НачатьЗаполнениеСчетовУчета()
Прикрепленные файлы:
7. Asya.Ozerova 41 19.12.19 08:34 Сейчас в теме
(4) Спасибо, сейчас посмотрю!
12. user774630 19.12.19 13:41 Сейчас в теме
Смотрите в модуле объекта процедуру ОбработкаЗаполнения(). В новых конфигурациях стартовая логика как раз там находится.
Или проще.
Когда программно создадите документ, попробуйте выполнить
ДокументОбъект.Заполнить(Неопределено);

Посмотрите, что из необходимого заполнится.
13. Asya.Ozerova 41 16.01.20 16:43 Сейчас в теме
(12) Да, помогло!
При том не только в шапке, но и в табличной части!
Спасибо!
Оставьте свое сообщение

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