Добавить программно дополнительные сведения в документ 1С 8.3 БП
Всем привет! Я новичок в 1С разработке, пытаюсь научиться)
Получила задание создать внешнюю обработку, которая программно добавляет в документ "Акт сверки взаиморасчетов" дополнительные сведения.
Пытаюсь сделать что-то такое:
Пишет ошибку:
Запись не верна! Значение поля "Объект" не может быть пустым!: ДополнительныеСведения: , (Регистр сведений: Дополнительные сведения; Номер строки: 1)
Понимаю, что как-то не так устанавливаю Объект, Свойство и Значение. Мудрые люди, подскажите, пожалуйста, как это правильно сделать)
Получила задание создать внешнюю обработку, которая программно добавляет в документ "Акт сверки взаиморасчетов" дополнительные сведения.
Пытаюсь сделать что-то такое:
&НаСервере
Процедура СоздатьДопСведенияНаСервере()
Набор = РегистрыСведений.ДополнительныеСведения.СоздатьНаборЗаписей();
//Набор.Отбор.Объект.Установить("АктСверкиВзаиморасчетов");
//Набор.Отбор.Свойство.Установить(Свойство);
НоваяСтрокаНабора = Набор.Добавить();
НоваяСтрокаНабора.Объект = Документы.АктСверкиВзаиморасчетов;
НоваяСтрокаНабора.Свойство = "Свойство";
НоваяСтрокаНабора.Значение = "лалала";
Набор.Записать();
КонецПроцедуры
&НаКлиенте
Процедура СоздатьДопСведения(Команда)
СоздатьДопСведениияНаСервере();
КонецПроцедуры
ПоказатьПишет ошибку:
Запись не верна! Значение поля "Объект" не может быть пустым!: ДополнительныеСведения: , (Регистр сведений: Дополнительные сведения; Номер строки: 1)
Понимаю, что как-то не так устанавливаю Объект, Свойство и Значение. Мудрые люди, подскажите, пожалуйста, как это правильно сделать)
По теме из базы знаний
- Работа с дополнительными реквизитами в 1С: Бухгалтерия 2.0
- Выгрузка-загрузка любых данных (и измененных) между похожими конфигурациями (ФАЙЛ, HTTP, COM) ЛЮБЫХ баз 1С 8.1-8.3 с обработкой и поиском данных по произвольным полям поиска
- Отправка счетов и актов за период из 1С:Бухгалтерии 3.0 программно с помощью функций БСП
- Как автоматизировать учет по проектам в 1С:Бухгалтерии
- Шаблоны новых объектов 1С для 1С:Бухгалтерии предприятия
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
В Измерение "Объект" надо записывать ссылку того конкретного экземпляра документа, для которого вы и формируете эти допсведения....
НоваяСтрокаНабора.Объект = Документы.АктСверкиВзаиморасчетов;
А давайте вместе посмотрим, какой тип имеет измерение "Объект" в регистре сведений "ДополнительныеСведения", и сравним его с тем типом, который имеет значение "Документы.АктСверкиВзаиморасчетов" (подсказка - он имеет тип ДокументМенеджер).
В Измерение "Объект" надо записывать ссылку того конкретного экземпляра документа, для которого вы и формируете эти допсведения....
(2) Здравствуйте, спасибо за ответ!
А не знаете, можно ли это сделать не для какого-то конкретного документа, а чтобы вообще когда я создаю новый Акт сверки взаиморасчетов, у него всегда было вот это дополнительное сведение?
Знаю, что это можно сделать в пользовательском режиме, но мне нужно такое провернуть в большом количестве конфигураций, поэтому нужна именно обработка
А не знаете, можно ли это сделать не для какого-то конкретного документа, а чтобы вообще когда я создаю новый Акт сверки взаиморасчетов, у него всегда было вот это дополнительное сведение?
Знаю, что это можно сделать в пользовательском режиме, но мне нужно такое провернуть в большом количестве конфигураций, поэтому нужна именно обработка
(4) Думаю, я поняла вашу идею)
Но мой вопрос вот в чем: мы можем в пользовательском режиме зайти и добавить в раздел Реализация(акты, накладные) сведение один раз и навсегда. А потом заполнять его вручную в разных документах.
(Если это важно для понимания, то контекст такой: задача в том, чтобы добавить в документы доп. сведение (строку), где бухгалтер сможет отмечать, что в документе есть ошибки)
Можно ли то же самое сделать в конфигураторе?)
Но мой вопрос вот в чем: мы можем в пользовательском режиме зайти и добавить в раздел Реализация(акты, накладные) сведение один раз и навсегда. А потом заполнять его вручную в разных документах.
(Если это важно для понимания, то контекст такой: задача в том, чтобы добавить в документы доп. сведение (строку), где бухгалтер сможет отмечать, что в документе есть ошибки)
Можно ли то же самое сделать в конфигураторе?)
Прикрепленные файлы:
(5)
1. Нет, конечно. Механизм допсведений придуман и реализован именно для того, чтобы не заморачиваться с конфигуратором, но при этом иметь возможность именно в пользовательском режиме заносить такие сведения при наличии необходимости.
2. Да, конечно. Добавьте такой реквизит к самом документу и разместите его на форме (хоть в наглую, хоть через расширение конфигурации).
Можно ли то же самое сделать в конфигураторе?
Тут есть два варианта ответа:
1. Нет, конечно. Механизм допсведений придуман и реализован именно для того, чтобы не заморачиваться с конфигуратором, но при этом иметь возможность именно в пользовательском режиме заносить такие сведения при наличии необходимости.
2. Да, конечно. Добавьте такой реквизит к самом документу и разместите его на форме (хоть в наглую, хоть через расширение конфигурации).
Куда-то вы пошли не туда.
Вам надо
1. программно добавить элемент в ПВХ.ДополнительныеРеквизитыИСведения,
2. добавить элемент в Справочник.НаборыДополнительныхРеквизитовИСведений
и всё это правильно заполнить. А регистр сведений для вашей задачи вам не нужен.
Вам надо
1. программно добавить элемент в ПВХ.ДополнительныеРеквизитыИСведения,
2. добавить элемент в Справочник.НаборыДополнительныхРеквизитовИСведений
и всё это правильно заполнить. А регистр сведений для вашей задачи вам не нужен.
(8)
Здравствуйте! Вы правильно поняли мой вопрос, спасибо большое за ваш ответ!
Я совсем новичок, и сейчас пытаюсь сделать так, как вы сказали.
Я хочу добавить доп. сведение для документа ПоступлениеТоваровУслуг. Я правильно понимаю, что для начала мне надо включить этот документ в Тип значения характеристик? Если да, то подскажите, пожалуйста, как это сделать программно)
ПВХ.ДополнительныеРеквизитыИСведения
Здравствуйте! Вы правильно поняли мой вопрос, спасибо большое за ваш ответ!
Я совсем новичок, и сейчас пытаюсь сделать так, как вы сказали.
Я хочу добавить доп. сведение для документа ПоступлениеТоваровУслуг. Я правильно понимаю, что для начала мне надо включить этот документ в Тип значения характеристик? Если да, то подскажите, пожалуйста, как это сделать программно)
Прикрепленные файлы:
(11)
нм=ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(ЭтотОбъект.Номер, Истина, Истина);
ДополнительныеСведения = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("№ счета 1С (Печатный)", Истина);
МенеджерЗаписи = РегистрыСведений.ДополнительныеСведения.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Объект = ЭтотОбъект.Ссылка;
МенеджерЗаписи.Свойство = ДополнительныеСведения;
МенеджерЗаписи.Значение = нм;
МенеджерЗаписи.Записать(Истина);
Записывает, при записи документа, дополнительные сведения .....
нм=ПрефиксацияОбъектовКлиентСервер.НомерНаПечать(ЭтотОбъект.Номер, Истина, Истина);
ДополнительныеСведения = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("№ счета 1С (Печатный)", Истина);
МенеджерЗаписи = РегистрыСведений.ДополнительныеСведения.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Объект = ЭтотОбъект.Ссылка;
МенеджерЗаписи.Свойство = ДополнительныеСведения;
МенеджерЗаписи.Значение = нм;
МенеджерЗаписи.Записать(Истина);
Записывает, при записи документа, дополнительные сведения .....
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот