Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 08:43

Изменить создание входящего документа ЭДО.

Автор Sanches_de_la_Vega, 16 окт 2024, 15:48

0 Пользователей и 1 гость просматривают эту тему.

antoneus

Можно и не тягать туда-сюда)

Массив[0].Дата = ДатаДокумента

Sanches_de_la_Vega

Максим75, спасибо большое, с датой разобрался, нашел момент заполнения самой структуры и там заменил, так даже оптимальнее. Пробую найти куда вклинить создание поступления.

Максим75

Sanches_de_la_Vega, вот после того, как новый объект (счет) записали, вот прямо там и создавайте на основании этого объекта другой документ. Если не ошибаюсь, алгоритм такой:
создаете объект Поступления.
у него вызываете метод Заполнить и передаете в методе счет.
В модуле объекта Поступления должна быть процедура ОбработкаЗаполнения, вот в ней и рисуете алгоритм заполнения.

Sanches_de_la_Vega

Максим75, спасибо, все получилось, все нашел, только теперь всплыла проблема с заполнением созданной накладной. Там столько функций непонятных при заполнении СФ и не понятно могу ли я ими же пользоваться для заполнения накладной. Или прям, вручную прописать что и откуда заполнять?

Максим75

Sanches_de_la_Vega, надо пробовать теми функциями воспользоваться. любят в типовых некоторые табличные части скрывать, и там много чего заполнять. вот в этих функциях и заполняют. потом могут быть проблемы при проведении документа.

Sanches_de_la_Vega


Sanches_de_la_Vega

Максим75, продолжаю воевать. Прошелся отладчиком от выполнения команды создать в ФормеПросмотра входящего электронного документа. Нашел запрос, но хоть убей не могу найти где запрашивается табличная часть. Данных для заполнения счет-фактуры там достаточно, а для накладной нет табличной части. Причем если это входящий УПД, все прекрасно заполняется, а запрос тот же. Где ее искать, или сделать свой запрос, чтобы вытащить данные? И вообще, не могу понять как обращаться к этим данным, которые во входящем документе в таблице.

Максим75

Sanches_de_la_Vega, смотрите, у Вас же без этого всего можно создать накладную на основании счета?
вот посмотрите, как там реализовано. ну сам принцип ввода на основании, он не такой как в 7-ке был.
там же передается сам объект документа, на основании которого вводится. и здесь так же реализуйте, вызовите ту же процедуру.

Sanches_de_la_Vega

Максим75, То есть, после создания счета-фактуры, я не заполняю свой объект УПД той же функцией ЗАПОЛНИТЬ, а вызываю функцию ЗаполнитьУПД?

Максим75

Цитата: Sanches_de_la_Vega от 05 ноя 2024, 15:40Максим75, То есть, после создания счета-фактуры, я не заполняю свой объект УПД той же функцией ЗАПОЛНИТЬ, а вызываю функцию ЗаполнитьУПД?
я не совсем понял, что это за функции.
смотрите, создаете программно документ, вызываете функцию Заполнить и передаете туда уже записанный счет.
а в самом документе уже отработает процедура ОбработкаЗаполнения

вот что в мануале написано:

Как выполнить ввод на основании программно?
Для того чтобы выполнить ввод на основании программно, следует создать новый объект, вызвать у него метод Заполнить() и передать в этот метод значение, на основании которого должен быть создан новый объект. В результате этих действий будет выполнен обработчик события "Обработка заполнения", расположенный в модуле нового объекта.

В заключении останется только получить форму объекта, установить свойство расширения формы "ПараметрОснование" и открыть ее:

Копировать в буфер обмена
НовыйДокумент = Документы.РасходнаяНакладная.СоздатьДокумент();
НовыйДокумент.Заполнить(ВыбранныйКлиент);
ФормаДок = НовыйДокумент.ПолучитьФорму();
ФормаДок.ПараметрОснование = ВыбранныйКлиент;
ФормаДок.Открыть();

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск