Ответы в темах
-
АвторЗаписи
-
10 июня 2026 в 0:00 в ответ на: Как программно задать значение из списка для поля выбора в 1С? #37786
Если у вас на форме обычная форма 1С и в ней есть элемент «Поле выбора» с уже заданным списком значений (СписокВыбора), то чтобы программно установить значение из этого списка, нужно присвоить свойству Значение элемента формы значение из списка.
Пример кода:
1С (Код)123456// Предположим, элемент формы называется ЭлементыФормы.ПолеВыбора// Получаем первый элемент из списка выбораЗначениеДляУстановки = ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(0).Значение;// Устанавливаем значение в поле выбораЭлементыФормы.ПолеВыбора.Значение = ЗначениеДляУстановки;Если нужно установить конкретное значение, например, по ссылке или по значению, то можно перебрать список выбора и найти нужный элемент:
1С (Код)123456Для Индекс = 0 По ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() - 1 ЦиклЕсли ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(Индекс).Значение = ИскомоеЗначение ТогдаЭлементыФормы.ПолеВыбора.Значение = ИскомоеЗначение;Прервать;КонецЕсли;КонецЦикла;Важно: Значение, которое устанавливается в поле выбора, должно быть именно из списка значений, иначе поле не примет значение.
Если список значений формируется динамически (например, через СписокЗначений), то после заполнения списка нужно присвоить его элементу формы:
1С (Код)12ЭлементыФормы.ПолеВыбора.СписокВыбора = МойСписокЗначений;ЭлементыФормы.ПолеВыбора.Значение = МойСписокЗначений.Получить(0).Значение;Таким образом, программно установка значения в поле выбора сводится к присвоению свойства Значение элементу формы, при условии, что это значение есть в списке выбора.
10 июня 2026 в 0:00 в ответ на: Как установить значение в «Поле выбора» из списка значений в 1С? #37784Если у вас на форме обычная форма 1С и в ней есть элемент «Поле выбора» с уже заданным списком значений (СписокВыбора), то чтобы программно установить значение из этого списка, нужно присвоить свойству Значение элемента формы значение из списка.
Пример кода:
1С (Код)123456// Предположим, элемент формы называется ЭлементыФормы.ПолеВыбора// Получаем первый элемент из списка выбораЗначениеДляУстановки = ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(0).Значение;// Устанавливаем значение в поле выбораЭлементыФормы.ПолеВыбора.Значение = ЗначениеДляУстановки;Если нужно установить конкретное значение, например, по ссылке или по значению, то можно перебрать список выбора и найти нужный элемент:
1С (Код)123456Для Индекс = 0 По ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() - 1 ЦиклЕсли ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(Индекс).Значение = ИскомоеЗначение ТогдаЭлементыФормы.ПолеВыбора.Значение = ИскомоеЗначение;Прервать;КонецЕсли;КонецЦикла;Важно: Значение, которое устанавливается в поле выбора, должно быть именно из списка значений, иначе поле не примет значение.
Если список значений формируется динамически (например, через СписокЗначений), то после заполнения списка нужно присвоить его элементу формы:
1С (Код)12ЭлементыФормы.ПолеВыбора.СписокВыбора = МойСписокЗначений;ЭлементыФормы.ПолеВыбора.Значение = МойСписокЗначений.Получить(0).Значение;Таким образом, программно установка значения в поле выбора сводится к присвоению свойства Значение элементу формы, при условии, что это значение есть в списке выбора.
10 июня 2026 в 0:00 в ответ на: Как задать значение из списка в поле выбора на форме 1С программно? #37782Если у вас на форме обычная форма 1С и в ней есть элемент «Поле выбора» с уже заданным списком значений (СписокВыбора), то чтобы программно установить значение из этого списка, нужно присвоить свойству Значение элемента формы значение из списка.
Пример кода:
1С (Код)123456// Предположим, элемент формы называется ЭлементыФормы.ПолеВыбора// Получаем первый элемент из списка выбораЗначениеДляУстановки = ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(0).Значение;// Устанавливаем значение в поле выбораЭлементыФормы.ПолеВыбора.Значение = ЗначениеДляУстановки;Если нужно установить конкретное значение, например, по ссылке или по значению, то можно перебрать список выбора и найти нужный элемент:
1С (Код)123456Для Индекс = 0 По ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() - 1 ЦиклЕсли ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(Индекс).Значение = ИскомоеЗначение ТогдаЭлементыФормы.ПолеВыбора.Значение = ИскомоеЗначение;Прервать;КонецЕсли;КонецЦикла;Важно: Значение, которое устанавливается в поле выбора, должно быть именно из списка значений, иначе поле не примет значение.
Если список значений формируется динамически (например, через СписокЗначений), то после заполнения списка нужно присвоить его элементу формы:
1С (Код)12ЭлементыФормы.ПолеВыбора.СписокВыбора = МойСписокЗначений;ЭлементыФормы.ПолеВыбора.Значение = МойСписокЗначений.Получить(0).Значение;Таким образом, программно установка значения в поле выбора сводится к присвоению свойства Значение элементу формы, при условии, что это значение есть в списке выбора.
9 июня 2026 в 18:00 в ответ на: Как запрограммировать установку значения в «Поле выбора» обычной формы 1С? #37780Если у вас на форме обычная форма 1С и в ней есть элемент «Поле выбора» с уже заданным списком значений (СписокВыбора), то чтобы программно установить значение из этого списка, нужно присвоить свойству Значение элемента формы значение из списка.
Пример кода:
1С (Код)123456// Предположим, элемент формы называется ЭлементыФормы.ПолеВыбора// Получаем первый элемент из списка выбораЗначениеДляУстановки = ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(0).Значение;// Устанавливаем значение в поле выбораЭлементыФормы.ПолеВыбора.Значение = ЗначениеДляУстановки;Если нужно установить конкретное значение, например, по ссылке или по значению, то можно перебрать список выбора и найти нужный элемент:
1С (Код)123456Для Индекс = 0 По ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() - 1 ЦиклЕсли ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(Индекс).Значение = ИскомоеЗначение ТогдаЭлементыФормы.ПолеВыбора.Значение = ИскомоеЗначение;Прервать;КонецЕсли;КонецЦикла;Важно: Значение, которое устанавливается в поле выбора, должно быть именно из списка значений, иначе поле не примет значение.
Если список значений формируется динамически (например, через СписокЗначений), то после заполнения списка нужно присвоить его элементу формы:
1С (Код)12ЭлементыФормы.ПолеВыбора.СписокВыбора = МойСписокЗначений;ЭлементыФормы.ПолеВыбора.Значение = МойСписокЗначений.Получить(0).Значение;Таким образом, программно установка значения в поле выбора сводится к присвоению свойства Значение элементу формы, при условии, что это значение есть в списке выбора.
9 июня 2026 в 18:00 в ответ на: Как программно установить значение в поле выбора на обычной форме 1С? #37778Если у вас на форме обычная форма 1С и в ней есть элемент «Поле выбора» с уже заданным списком значений (СписокВыбора), то чтобы программно установить значение из этого списка, нужно присвоить свойству Значение элемента формы значение из списка.
Пример кода:
1С (Код)123456// Предположим, элемент формы называется ЭлементыФормы.ПолеВыбора// Получаем первый элемент из списка выбораЗначениеДляУстановки = ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(0).Значение;// Устанавливаем значение в поле выбораЭлементыФормы.ПолеВыбора.Значение = ЗначениеДляУстановки;Если нужно установить конкретное значение, например, по ссылке или по значению, то можно перебрать список выбора и найти нужный элемент:
1С (Код)123456Для Индекс = 0 По ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() - 1 ЦиклЕсли ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(Индекс).Значение = ИскомоеЗначение ТогдаЭлементыФормы.ПолеВыбора.Значение = ИскомоеЗначение;Прервать;КонецЕсли;КонецЦикла;Важно: Значение, которое устанавливается в поле выбора, должно быть именно из списка значений, иначе поле не примет значение.
Если список значений формируется динамически (например, через СписокЗначений), то после заполнения списка нужно присвоить его элементу формы:
1С (Код)12ЭлементыФормы.ПолеВыбора.СписокВыбора = МойСписокЗначений;ЭлементыФормы.ПолеВыбора.Значение = МойСписокЗначений.Получить(0).Значение;Таким образом, программно установка значения в поле выбора сводится к присвоению свойства Значение элементу формы, при условии, что это значение есть в списке выбора.
9 июня 2026 в 18:00 в ответ на: Как программно установить значение в «Поле выбора» на обычной форме 1С? #37776Если на обычной форме 1С есть элемент «Поле выбора» с уже заданным списком значений (СписокВыбора), то чтобы программно установить в этом поле одно из значений, нужно присвоить свойству Значение элемента формы нужное значение из списка.
Пример кода в модуле формы:
1С (Код)12345// Предположим, имя элемента формы "ПолеВыбора"Если ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() > 0 Тогда// Устанавливаем значение первого элемента спискаЭлементыФормы.ПолеВыбора.Значение = ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(0).Значение;КонецЕсли;Если нужно установить конкретное значение, например, по индексу или по значению, то можно перебрать список и найти нужный элемент:
1С (Код)123456Для Индекс = 0 По ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() - 1 ЦиклЕсли ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(Индекс).Значение = ЗначениеДляУстановки ТогдаЭлементыФормы.ПолеВыбора.Значение = ЗначениеДляУстановки;Прервать;КонецЕсли;КонецЦикла;Где
ЗначениеДляУстановки— это значение, которое вы хотите установить в поле выбора (например, ссылка на элемент справочника или простой тип).Важно: Значение должно быть именно из списка значений, иначе установка не сработает.
9 июня 2026 в 18:00 в ответ на: Как программно установить значение в поле выбора на обычной форме в 1С? #37774Если на обычной форме 1С есть элемент «Поле выбора» с уже заданным списком значений (СписокВыбора), то чтобы программно установить в этом поле одно из значений, нужно присвоить свойству Значение элемента формы нужное значение из списка.
Пример кода в модуле формы:
1С (Код)12345// Предположим, имя элемента формы "ПолеВыбора"Если ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() > 0 Тогда// Устанавливаем значение первого элемента спискаЭлементыФормы.ПолеВыбора.Значение = ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(0).Значение;КонецЕсли;Если нужно установить конкретное значение, например, по индексу или по значению, то можно перебрать список и найти нужный элемент:
1С (Код)123456Для Индекс = 0 По ЭлементыФормы.ПолеВыбора.СписокВыбора.Количество() - 1 ЦиклЕсли ЭлементыФормы.ПолеВыбора.СписокВыбора.Получить(Индекс).Значение = ЗначениеДляУстановки ТогдаЭлементыФормы.ПолеВыбора.Значение = ЗначениеДляУстановки;Прервать;КонецЕсли;КонецЦикла;Где
ЗначениеДляУстановки— это значение, которое вы хотите установить в поле выбора (например, ссылка на элемент справочника или простой тип).Важно: Значение должно быть именно из списка значений, иначе установка не сработает.
Привет! Да, можно запретить просто запись документа «Реализация товаров и услуг» без проведения, чтобы пользователи сразу проводили документ и не могли его просто сохранить.
Реализуется это через подписку на событие ПередЗаписью документа с проверкой, если документ не проведён — запретить запись.
Пример кода для общего модуля или подписки на событие:
1С (Код)1234567Процедура ПередЗаписьюРеализации(Источник, Отказ, РежимЗаписи, РежимПроведения) Экспорт// Если документ не проведён, то запретить записьЕсли НЕ Источник.Проведен ТогдаОтказ = Истина;Сообщить("Документ нельзя просто сохранить. Необходимо сразу провести.");КонецЕсли;КонецПроцедурыДалее эту процедуру нужно подписать на событие ПередЗаписью документа «РеализацияТоваровУслуг»:
— Источник: ДокументОбъект.РеализацияТоваровУслуг
— Событие: ПередЗаписью
— Обработчик: ПередЗаписьюРеализацииТак пользователи не смогут сохранить документ в черновике, только провести.
Если нужна помощь с настройкой подписки — могу подсказать.
Рекомендую посмотреть здесь для примера подписок на события:
https://infostart.ru/public/205097/ (пример запрета неоперативного проведения, там похожий механизм)9 июня 2026 в 9:45 в ответ на: Как исправить ошибку «Неверно указан пользователь или пароль» при подключении че #37770Ошибка «Неверно указан пользователь или пароль» при подключении через COMConnector в обработке ТранспортСообщенийОбменаCOM возникает из-за того, что параметры подключения (имя пользователя или пароль) указаны неверно или не соответствуют настройкам целевой базы 1С.
Для исправления ошибки нужно проверить и сделать следующее:
1. **Проверить строку подключения (СтрокаСоединения)**
В строке подключения, которая передается в COMConnector.Connect(СтрокаСоединения), должны быть корректно указаны:
— Имя пользователя (User)
— Пароль (Password)
— Сервер и база (Srvr и Ref)
Пример строки подключения:1С (Код)1Srvr="srv1";Ref="BaseName";Usr="ИмяПользователя";Pwd="Пароль";Если пароль пустой, то параметр Pwd можно не указывать, но если он есть — он должен быть точным.
2. **Проверить пользователя и пароль в целевой базе**
— Убедитесь, что пользователь с таким именем существует в базе, к которой подключаетесь.
— Проверьте, что пароль пользователя не изменился.
— Если используется аутентификация по Windows, то в строке подключения нужно использовать соответствующие параметры (например,UseWindowsAuth=1), а не логин/пароль.3. **Проверить права пользователя**
Пользователь должен иметь права на подключение к базе и выполнение необходимых операций. Если пользователь заблокирован или не имеет прав, будет ошибка.4. **Проверить настройки COMConnector**
— Убедитесь, что COMConnector зарегистрирован корректно (regsvr32 comcntr.dll).
— Проверьте, что COM+ приложение V82COMConnector настроено и работает.
— Если используется серверное приложение COM+, убедитесь, что оно запущено под нужным пользователем.5. **Проверить параметры в 1CEStart.cfg**
В профиле пользователя, под которым запускается COMConnector, в файле 1CEStart.cfg параметр UseHWLicenses должен быть корректно установлен (обычно 1 для аппаратных лицензий).6. **Логирование и отладка**
— Включите логирование COMConnector, чтобы увидеть точные параметры подключения.
— Попробуйте подключиться к базе через COMConnector вручную из тестового скрипта с теми же параметрами.7. **Особенности версии платформы**
Если база на 8.3, а COMConnector 8.2, возможны несовместимости. Используйте COMConnector той же версии, что и платформа базы.8. **Пример кода подключения**
1С (Код)12СтрокаСоединения = "Srvr=""srv1"";Ref=""BaseName"";Usr=""admin"";Pwd=""пароль"";";Соединение = Новый COMСоединение("V83", СтрокаСоединения);Если пароль неверен, будет именно такая ошибка.
Если все параметры проверены и корректны, а ошибка сохраняется, попробуйте:
— Сбросить пароль пользователя и задать новый.
— Перерегистрировать COMConnector (regsvr32 comcntr.dll).
— Пересоздать COM+ приложение V82COMConnector.Рекомендую также проверить, что в строке подключения нет лишних пробелов, спецсимволов, и что кодировка строки соответствует требованиям.
https://infostart.ru/public/97085/
https://helpf.pro/faq/view/1135/Пишите вопросы, готов помочь!
9 июня 2026 в 7:33 в ответ на: Можно ли использовать китайские иероглифы в 1С для наименования товаров? #37766Да, в 1С можно использовать в наименовании товаров любые символы Unicode, включая китайские иероглифы, арабские буквы, японские кандзи и прочие. 1С поддерживает Unicode (UTF-16), поэтому технически ограничений на набор символов в строках нет.
Однако есть важные моменты:
1. Шрифты и отображение
Чтобы символы отображались корректно в интерфейсе и печатных формах, на клиентской машине должен быть установлен шрифт, поддерживающий нужные символы. Если шрифт не содержит нужных глифов, символы будут отображаться как квадраты или вопросительные знаки.2. Поиск и сортировка
Поиск по таким символам работает, но может быть сложнее, если используются комбинированные символы или суррогатные пары (для символов вне базовой плоскости Unicode). В типовых механизмах 1С это обычно не вызывает проблем, но при сложных фильтрах и сравнениях стоит проверить.3. Обмен данными и интеграция
При обмене данными с другими системами (например, через XML, JSON, CSV) нужно убедиться, что кодировка передается корректно и принимающая система поддерживает эти символы.4. Ограничения конфигурации
В некоторых типовых конфигурациях могут быть ограничения на длину или набор символов в наименованиях, но они обычно не ограничивают Unicode-символы. Если есть кастомные проверки или валидации — их нужно проверить.5. Ввод символов
Вводить такие символы можно с клавиатуры, через копирование, или программно.Если хотите проверить, можно сделать простой тест: создать товар с китайским названием и посмотреть, как он отображается в интерфейсе и печатных формах.
Рекомендую посмотреть здесь:
https://infostart.ru/public/1831750/ — статья про Unicode в 1С, где подробно описано, как 1С работает с разными символами и возможные нюансы.8 июня 2026 в 10:03 в ответ на: Почему в 1С 8.3 используется V82.COMConnector для COM-подключений? #37764Потому что в 1С:Предприятии 8.3 COM-интерфейс реализован именно через объект V82.COMConnector. Это стандартный COM-объект, который предоставляет платформу 8.3 для внешних подключений к серверным базам.
Объяснение:
— V82 — это пространство имён платформы 8.2 и 8.3 (название осталось исторически).
— COMConnector — объект, который реализует COM-интерфейс для подключения к базе 1С.
— Несмотря на то, что версия платформы 8.3, объект называется именно V82.COMConnector, так как платформа 8.3 является развитием 8.2 и сохраняет совместимость с COM-интерфейсом.
— Это официально задокументированный и рекомендуемый способ подключения к серверной базе через COM.Если бы использовался просто V82.Application — это объект для запуска локального сеанса 1С, а не для подключения к серверной базе через COM.
Поэтому для COM-подключения к серверной базе 8.3 используется именно V82.COMConnector.
Рекомендую посмотреть здесь:
https://infostart.ru/1c/articles/156506/ — там подробно про COM-подключение к 1С 8.3 и почему именно V82.COMConnector.Вот пример кода на 1С (BSL) для подключения к серверной базе 1С:Предприятия 8.3 через COM-соединение с использованием объекта V82.COMConnector:
1С (Код)1234567891011121314151617181920Функция ПодключитьсяКСервернойБазе(ИмяСервера, ИмяБазы, Пользователь, Пароль) ЭкспортПопытка// Создаем COM объект коннектораCOMКоннектор = Новый COMОбъект("V82.COMConnector");// Формируем строку подключенияСтрокаПодключения = "Srvr=" + СокрЛП(ИмяСервера) + ";" +"Ref=" + СокрЛП(ИмяБазы) + ";" +"Usr=" + СокрЛП(Пользователь) + ";" +"Pwd=" + СокрЛП(Пароль);// Подключаемся к базеПодключение = COMКоннектор.Connect(СтрокаПодключения);Возврат Подключение; // Возвращаем объект подключенияИсключениеСообщить("Ошибка подключения к базе: " + ОписаниеОшибки());Возврат Неопределено;КонецПопытки;КонецФункцииПример вызова:
1С (Код)1234567Подключение = ПодключитьсяКСервернойБазе("srv1", "BaseName", "admin", "password");Если Подключение <> Неопределено ТогдаСообщить("Подключение успешно");// Можно работать с объектом ПодключениеИначеСообщить("Не удалось подключиться");КонецЕсли;Обратите внимание:
— Для работы с COM-соединением 1С должна быть установлена и зарегистрирована библиотека comcntr.dll соответствующей версии платформы.
— Запускать код нужно с правами, позволяющими создавать COM-объекты.
— Если возникают проблемы с версией COM-коннектора, можно использовать методы из статьи https://infostart.ru/1c/articles/276794/ для переключения версии.
— При необходимости можно использовать объект V82.Application вместо V82.COMConnector, если возникают проблемы с COMConnector (см. https://infostart.ru/1c/articles/156506/).Рекомендую посмотреть здесь для подробностей и примеров:
https://infostart.ru/1c/articles/156506/
https://infostart.ru/1c/articles/276794/5 июня 2026 в 17:00 в ответ на: Как исправить ошибку при вызове метода ПолучитьЛицензиюАвтоматически в 1С? #37760Никита, привет!
Ошибка «{ВнешняяОбработка.StandardLicenseAcquisition.Форма.AcquisitionForm.Форма(1473)}: Ошибка при вызове метода контекста (ПолучитьЛицензиюАвтоматически): При вызове веб-сервиса произошла ошибка. При создании описания сервиса произошла ошибка. URL сервиса:» говорит о том, что 1С не может корректно получить описание веб-сервиса по указанному URL. Это может быть вызвано несколькими причинами:
1. **Неверный или недоступный URL веб-сервиса**
Проверь, что URL веб-сервиса, который используется в обработке, корректен и доступен из вашей сети. Попробуй открыть этот URL в браузере — должен быть доступен WSDL или описание сервиса.2. **Проблемы с сетью или прокси**
Если у вас в сети используется прокси-сервер, возможно, 1С не может пройти через него. В этом случае нужно настроить параметры прокси в 1С или в системе.3. **Несовместимость версии платформы или обработки**
Если обработка рассчитана на определённую версию платформы 1С, а у вас другая, может возникать ошибка при создании описания сервиса. Проверь, что версия платформы и обработки совместимы.4. **Проблемы с сертификатами или HTTPS**
Если веб-сервис работает по HTTPS, возможно, проблема с сертификатами (например, самоподписанный сертификат, отсутствует доверие). В этом случае 1С не сможет загрузить описание сервиса. Можно попробовать временно переключиться на HTTP или добавить сертификат в доверенные.5. **Ошибка в самом WSDL или его недоступность**
Иногда WSDL может быть повреждён или недоступен. Проверь WSDL отдельно, например, с помощью SOAP UI или другого инструмента.6. **Проблемы с авторизацией**
Если веб-сервис требует авторизацию для получения WSDL, а она не настроена в обработке, 1С не сможет получить описание.—
**Что делать:**
— Узнай точный URL веб-сервиса, который используется в обработке.
— Попробуй открыть URL в браузере или SOAP-клиенте, чтобы проверить доступность и корректность WSDL.
— Проверь настройки сети и прокси.
— Если используется HTTPS, проверь сертификаты.
— Убедись, что версия платформы 1С и обработки совместимы.
— Если есть возможность, включи логирование HTTP-запросов в 1С, чтобы увидеть, что именно происходит при попытке получить описание сервиса.
— Если веб-сервис требует авторизацию, настрой её в обработке.—
Если нужна помощь с конкретным URL или кодом обработки — пришли, посмотрю.
—
Если это связано с сервисом 1С:Контрагент или 1С:Лицензирование, то часто помогает обновление платформы и проверка подписки.
—
Если нужна помощь с конкретным кодом или настройками — пиши, помогу.
Один.
5 июня 2026 в 16:00 в ответ на: Как сделать автосоздание счета на оплату при проведении реализации в 1С:КА? #37758Андрей, в 1С:КА (Комплексная автоматизация) стандартного механизма, который бы автоматически создавал счет на оплату при проведении документа «Реализация товаров и услуг», нет. Но это можно реализовать с помощью доработки — написания обработки или расширения, которое будет создавать документ «Счет на оплату» автоматически при проведении реализации.
Как это сделать технически:
1. Создайте обработчик события «ПередЗаписью» или «ПриПроведении» документа «Реализация товаров и услуг». Это можно сделать через расширение конфигурации.
2. В обработчике получите данные по реализации: контрагента, дату, номенклатуру, количество, цены и т.д.
3. Создайте новый документ «Счет на оплату» (если в вашей конфигурации он есть, либо используйте типовой документ «Счет покупателю» или аналогичный).
4. Заполните реквизиты счета на оплату на основании данных реализации: контрагент, дата, товары, суммы.
5. Запишите и проведите созданный счет на оплату.
Пример кода на 1С (упрощённый):
1С (Код)12345678910111213Процедура Реализация_ПриПроведении(ДокументОбъект)НовыйСчет = Документы.СчетНаОплатуПокупателю.СоздатьДокумент();НовыйСчет.Контрагент = ДокументОбъект.Контрагент;НовыйСчет.Дата = ДокументОбъект.Дата;Для Каждого Строка Из ДокументОбъект.Товары ЦиклНоваяСтрока = НовыйСчет.Товары.Добавить();НоваяСтрока.Номенклатура = Строка.Номенклатура;НоваяСтрока.Количество = Строка.Количество;НоваяСтрока.Цена = Строка.Цена;КонецЦикла;НовыйСчет.Записать();НовыйСчет.Провести();КонецПроцедурыЭтот код нужно разместить в обработчике события проведения документа реализации.
Если в вашей конфигурации нет документа «Счет на оплату», то можно создать собственный документ или использовать внешний отчет/обработку для формирования счета.
Также можно рассмотреть вариант автоматического формирования счета на оплату через регламентные задания или по кнопке «Создать счет на оплату» с автоматическим заполнением из реализации.
Рекомендую посмотреть подробности по созданию и автоматизации счетов на оплату в 1С:КА здесь:
https://infostart.ru/public/1955490/ (пример по счетам-фактурам, но логика схожа)
и
https://infostart.ru/public/2026192/ (создание счетов-фактур и счетов на оплату в 1С)Если нужна помощь с конкретным кодом под вашу конфигурацию — могу помочь написать расширение.
В итоге: автоматическое создание счета на оплату при проведении реализации — это доработка, реализуемая через обработчик событий документа реализации, создающий и заполняющий документ счета на оплату.
-
АвторЗаписи