Имя: Пароль:
1C
1С v8
Ввод на основании - при ручной правке пропадает ДокументОснование
0 slafor
 
02.05.22
12:55
Розница 2.3, но как я понимаю, этот принцип будет работать в любой конфигурации.

Заполняю один документ на основании другого. При этом ДокументОснование заполняю из данных заполнения. У этого реквизита стоит признак "Заполнять из данных заполнения".
Это значит, что вручную я изменить его не могу?

Когда пользователь вводит один документ на основании другого, а потом вручную меняет какие-то реквизиты, пропадает документ-основание, то есть документ уже не считается созданным на основании. Причем это касается не всех реквизитов.

Например, я сделал создание ПКО на основании документа Списание. При этом, если в документе ПКО я меняю Комментарий, Статью затрат, даже Сумму - документ-основание заполняется на основе данных заполнения, и ПКО считается введенным на основании Списания. А если я меняю Контрагента в ПКО, то в нем пропадает Статья затрат, выбираю и ее тоже - и в итоге документ не попадает в отчет "Связанные документы", то не считается введенным на основании. Почему это происходит и как это можно обойти?
1 Фрэнки
 
02.05.22
12:59
Без конфигуратора конфигурить пытаешься?
2 slafor
 
02.05.22
13:13
(1) С конфигуратором...
Но у меня почему-то в отладчике показывает ДокументОснование всегда Неопределено. Наверное, потому что у этого реквизита стоит признак "Заполнять из данных заполнения". То есть в отладчике я даже не смогу посмотреть, на основании какого документа создается ПКО?
3 Фрэнки
 
02.05.22
13:33
Я бы посмотрел на то, что там подвязано ПриИзменении реквзитов формы. Потому что по твоим словам при создании формы (допустим, когда документ был записан и его открываешь) Документ основание установлен, затем при измении рееквизитов - очищается. Причем, очистка документа основания при изменении Контрагента вполне логична.
Если не видно, что это процедурно связано - можно замерить производительность и просмотреть что-то вроде трассы исполняемого кода.
4 Фрэнки
 
02.05.22
13:37
Меня вообще удивляет, что в отладчике 1С не реализована возможность трассировки. Это сильно похоже на замер производительности, только отсортировано должно быть не по времени исполняемых процедур, а по трассе исполняемого кода.
5 slafor
 
02.05.22
14:37
Ну со списанием я решил, а вот с похожей проблемой с оприходованием справиться никак не получается.

Смысл такой - на основании оприходования создаем документ РКО. Добавил документ на вкладку "Ввод на основании" документа Оприходование товаров. Добавил свой код в процедуру ОбработкаЗаполнения документа РКО. Документ создается, заполняется, но при этом его нет в стандартном отчете "Связанные документы". И что интересно, в самом документе Оприходование ввод на основании возможен не по стандартной кнопке, а почему-то создается новая: https://disk.yandex.ru/i/R_It21P98adhwQ . Как я понимаю, и Документоснование тоже не заполняется, хотя соответствующий код написан.
6 Сияющий Асинхраль
 
02.05.22
17:22
(5) ДокументОснование в конфигураторе имеет определенный тип, изначально поддерживаются только те типы, которые установлены изначально, если ты пытаешься сделать поддержку нового типа документа, но не указав, что ДокументОснование поддерживает нужный тебе тип, ты получишь, что присвоение этому реквизиту твоего нового документа не сохранится в этом реквизите. Кроме того, обрати внимание, что ПКО и РКО сейчас достаточно сложны, у них как правило ДокументыОснования указываются не в реквизите ШАПКИ, а в табличной части, которая показывается только в том случае, если документов оснований имеется несколько, если один, Документ основание все равно сохраняется в табличной части, но в пользовательском режиме этого не видно...