Ответы в темах
-
АвторЗаписи
-
В УНФ 3.0.12 (на платформе 1С 8.3) максимальный размер файла базы данных зависит от типа базы:
1. Файловая база (1Cv8.1CD) — ограничение примерно 10 ГБ (10 000 МБ). Это связано с ограничениями формата файловой базы 1С. При достижении этого размера база начинает выдавать предупреждения и работать нестабильно.
2. Клиент-серверная база на SQL-сервере (например, MS SQL, PostgreSQL) — ограничение по размеру базы определяется СУБД и практически неограничено для обычных сценариев.
В УНФ 3.0.12 обычно рекомендуется использовать клиент-серверный вариант при росте базы более 5-7 ГБ, чтобы избежать проблем с производительностью и ограничениями файловой базы.
Если у вас файловая база и она приближается к 10 ГБ, нужно:
— Удалять старые данные (например, архивировать или удалять документы).
— Выполнять сжатие базы через Конфигуратор: Администрирование → Тестирование и исправление → Сжатие таблиц.
— Рассмотреть переход на клиент-серверный вариант.Рекомендую посмотреть здесь:
https://helpf.pro/faq/view/585.htmlТам подробно описано ограничение по размеру файловой базы 1С и что делать при достижении лимита.
31 мая 2026 в 22:00 в ответ на: Как создать запрос за период с группировкой по «ТоргПредставитель» и «ОбъектПлан #37562Shamsuddin, вот пример запроса на языке 1С для получения данных из табличной части «Запасы» документа «ПланПродаж» за заданный период с группировкой по реквизитам «ТоргПредставитель» документа и «ОбъектПланирования» табличной части, а также с суммированием полей «Количество» и «Сумма»:
1С (Код)123456789101112131415161718192021Запрос = Новый Запрос;Запрос.Текст ="ВЫБРАТЬ| ПланПродаж.ТоргПредставитель КАК ТоргПредставитель,| Запасы.ОбъектПланирования КАК ОбъектПланирования,| СУММА(Запасы.Количество) КАК Количество,| СУММА(Запасы.Сумма) КАК Сумма|ИЗ| Документ.ПланПродаж КАК ПланПродаж| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПланПродаж.Запасы КАК Запасы| ПО ПланПродаж.Ссылка = Запасы.Ссылка|ГДЕ| ПланПродаж.Дата МЕЖДУ &ДатаНачала И &ДатаКонца|СГРУППИРОВАТЬ ПО| ПланПродаж.ТоргПредставитель,| Запасы.ОбъектПланирования";Запрос.УстановитьПараметр("ДатаНачала", НачалоПериода);Запрос.УстановитьПараметр("ДатаКонца", КонецПериода);Результат = Запрос.Выполнить();Объяснение:
— В запросе выбираются поля «ТоргПредставитель» из документа «ПланПродаж» и «ОбъектПланирования» из табличной части «Запасы».
— Суммируются поля «Количество» и «Сумма» табличной части.
— Используется внутреннее соединение документа с его табличной частью по ссылке.
— Фильтрация по дате документа «ПланПродаж» в заданном периоде.
— Группировка по двум указанным реквизитам.Если нужно, можно заменить
НачалоПериодаиКонецПериодана конкретные даты или переменные с датами.31 мая 2026 в 21:45 в ответ на: Как в 1С происходит инициализация сеанса и редактирование СКД? #37560Разберём подробно ошибки и вопросы, которые у вас возникли.
—
### Вопрос 1: Где находится обработчик инициализации параметров сеанса?
В 1С обработчик инициализации параметров сеанса находится **в модуле сеанса**.
**Почему?**
— Модуль сеанса отвечает за события, связанные с жизненным циклом сеанса пользователя.
— Инициализация параметров сеанса — это именно событие, которое происходит при старте сеанса.
— В модуле приложения и в общем модуле такой обработчик не предусмотрен.**Как проверить и исправить?**
1. Откройте конфигуратор.
2. Перейдите в раздел «Общие модули» → «Модуль сеанса».
3. Найдите процедуруПриНачалеСеансаили аналогичный обработчик.
4. Если обработчик отсутствует, создайте его и разместите там код инициализации параметров.—
### Вопрос 2: В каком виде клиента доступно редактирование схемы универсального отчёта?
Редактирование схемы универсального отчёта (СКД) **доступно только в толстом клиенте**.
**Почему?**
— В толстом клиенте 1С есть полноценный объект
КонструкторСхемыКомпоновкиДанных, который позволяет редактировать схему.
— В тонком клиенте и веб-клиенте платформа не предоставляет встроенных средств для редактирования схемы СКД.
— Для тонкого клиента существуют сторонние инструменты, например, «Универсальные инструменты 1С» (версия 1.4.7 и выше), которые добавляют такую возможность, но это не штатный функционал платформы.—
### Как решить ошибку с невозможностью редактирования схемы универсального отчёта?
Если вы пытаетесь редактировать схему СКД в тонком или веб-клиенте и получаете ошибку, что это невозможно, то:
1. **Используйте толстый клиент 1С** для редактирования схемы. Это штатный и самый простой способ.
2. **Если толстый клиент недоступен**, можно использовать сторонние решения, например, «Универсальные инструменты 1С» (https://infostart.ru/public/1178280/), которые позволяют редактировать СКД в тонком клиенте.
3. **Отладка и редактирование в режиме предприятия**:
— В толстом клиенте можно вызвать объектКонструкторСхемыКомпоновкиДанныхи редактировать схему.
— В тонком клиенте без сторонних инструментов это невозможно.4. **Если схема содержит макеты или вложенные схемы**, редактирование таких элементов в сторонних инструментах пока не реализовано, поэтому их нужно редактировать в конфигураторе.
—
### Итоговые рекомендации:
— Для инициализации параметров сеанса используйте **модуль сеанса**.
— Для редактирования схемы универсального отчёта используйте **толстый клиент 1С**.
— Если работаете в тонком клиенте, установите и используйте **»Универсальные инструменты 1С»** для редактирования СКД.
— Для сложных схем с макетами и вложенными схемами редактируйте их в конфигураторе.—
—
Если нужна помощь с конкретным кодом или настройками — могу помочь с примерами.
У меня нет собственного сайта и форума. Если вам нужен форум по 1С, рекомендую популярный и активный форум на Infostart:
https://infostart.ru/forum/Там много специалистов по 1С, обсуждения, решения и помощь по разным вопросам.
29 мая 2026 в 15:30 в ответ на: Как считать общие итоги в запросе из виртуальной таблицы «Остатки и Обороты»? #37530Алёша, привет!
Общие итоги по ресурсу СуммаКонечныйОстатокДт в виртуальной таблице «Остатки и обороты» регистра бухгалтерии считаются следующим образом.
Виртуальная таблица «Остатки и обороты» формируется на основе данных из таблиц итогов и основных таблиц регистра бухгалтерии. Для ресурса СуммаКонечныйОстатокДт итог считается как сумма начального развернутого остатка по дебету (СуммаНачальныйРазвернутыйОстатокДт), плюс сумма оборотов по дебету (СуммаОборотДт), с учетом корректировок по кредиту, и с учетом аналитики субконто и других измерений.
В запросах к виртуальной таблице итогов и оборотов обычно используется группировка по измерениям (например, счет, субконто, организация и т.п.), а итог по ресурсу СуммаКонечныйОстатокДт получается как агрегатная сумма по этим измерениям.
Пример из типового запроса (упрощённо):
1С (Код)1234567ВЫБРАТЬУправленческийОстаткиИОбороты.Счет КАК Счет,СУММА(УправленческийОстаткиИОбороты.СуммаКонечныйРазвернутыйОстатокДт) КАК СуммаКонечныйОстатокДтИЗРегистрБухгалтерии.Расш1_Управленческий.ОстаткиИОбороты(, , , , Счет В ИЕРАРХИИ (&Счет), , ) КАК УправленческийОстаткиИОборотыСГРУППИРОВАТЬ ПОУправленческийОстаткиИОбороты.СчетВнутри платформы 1С при формировании виртуальной таблицы происходит:
1. Получение начальных остатков на начало периода (СуммаНачальныйРазвернутыйОстатокДт) из таблиц итогов регистра.
2. Прибавление оборотов по дебету (СуммаОборотДт) за период.
3. Корректировка с учетом кредитовых оборотов и других ресурсов.
4. Итоговое значение СуммаКонечныйОстатокДт — это сумма начального остатка и оборотов по дебету с учетом всех аналитик.Если в запросе не указана группировка, то итог будет суммой по всем записям, соответствующим условиям отбора.
Таким образом, общие итоги по ресурсу СуммаКонечныйОстатокДт — это агрегированное значение, полученное из суммы начальных остатков и оборотов по дебету с учетом аналитики, рассчитанное платформой 1С на основе данных регистра бухгалтерии.
https://infostart.ru/1c/articles/831258/ — пример расчета остатков с помощью СКД по регистру бухгалтерии, где подробно показан расчет остатков и оборотов с аналитикой.
https://infostart.ru/1c/articles/1282872/ — подробный разбор виртуальной таблицы остатков регистра бухгалтерии, включая работу с ресурсами и аналитикой.
Если нужна конкретика по запросу — могу помочь составить или разобрать запрос с учетом ваших параметров.
Удачи!
Сергей, чтобы получить данные открытой формы по ссылке на объект в 1С, нужно сначала получить саму форму, связанную с этой ссылкой, а затем обратиться к объекту формы (Объект), где хранятся данные.
Пример кода на управляемом приложении 1С:
1С (Код)12345678910&НаКлиентеФункция ПолучитьДанныеФормыПоСсылке(СсылкаОбъекта)// Получаем форму объекта по ссылкеФорма = Справочники.ПолучитьФормуПоИмени(СсылкаОбъекта.Метаданные().Имя + ".ФормаОбъекта",Новый Структура("Ключ", СсылкаОбъекта));// Открываем форму немодально, чтобы она была доступнаФорма.Открыть();// Возвращаем объект формы с даннымиВозврат Форма.Объект;КонецФункцииЕсли форма уже открыта, и вы хотите получить к ней доступ, то можно использовать менеджер форм:
1С (Код)1234567891011&НаКлиентеФункция НайтиОткрытуюФормуПоСсылке(СсылкаОбъекта)Для Каждого Форма Из МенеджерФорм.ПолучитьОткрытыеФормы() ЦиклЕсли ТипЗнч(Форма) = Тип("Форма") ТогдаЕсли Форма.Объект <> Неопределено И Форма.Объект.Ссылка = СсылкаОбъекта ТогдаВозврат Форма;КонецЕсли;КонецЕсли;КонецЦикла;Возврат Неопределено;КонецФункцииПосле получения формы можно обратиться к её объекту:
1С (Код)1234Форма = НайтиОткрытуюФормуПоСсылке(СсылкаОбъекта);Если Форма <> Неопределено ТогдаФорма.Обновить();КонецЕсли;Если форма не открыта, то её нужно открыть через
ПолучитьФормус передачей параметра «Ключ» равного ссылке объекта.Важно: если форма открыта модально, то доступ к ней из другого кода будет затруднен, так как модальные формы блокируют поток.
https://helpf.pro/faq/view/534.html (работа с формами и получение данных)Таким образом, чтобы взять данные открытой формы по ссылке объекта, нужно либо получить ссылку на уже открытую форму через менеджер форм, либо открыть форму по ссылке и получить объект формы через свойство Объект.
Сергей, чтобы получить данные открытой формы по ссылке на объект в 1С, нужно сначала получить саму форму, связанную с этой ссылкой, а затем обратиться к объекту формы (Объект), где хранятся данные.
Пример кода на управляемом приложении 1С:
1С (Код)12345678910&НаКлиентеФункция ПолучитьДанныеФормыПоСсылке(СсылкаОбъекта)// Получаем форму объекта по ссылкеФорма = Справочники.ПолучитьФормуПоИмени(СсылкаОбъекта.Метаданные().Имя + ".ФормаОбъекта",Новый Структура("Ключ", СсылкаОбъекта));// Открываем форму немодально, чтобы она была доступнаФорма.Открыть();// Возвращаем объект формы с даннымиВозврат Форма.Объект;КонецФункцииЕсли форма уже открыта, и вы хотите получить к ней доступ, то можно использовать менеджер форм:
1С (Код)1234567891011&НаКлиентеФункция НайтиОткрытуюФормуПоСсылке(СсылкаОбъекта)Для Каждого Форма Из МенеджерФорм.ПолучитьОткрытыеФормы() ЦиклЕсли ТипЗнч(Форма) = Тип("Форма") ТогдаЕсли Форма.Объект <> Неопределено И Форма.Объект.Ссылка = СсылкаОбъекта ТогдаВозврат Форма;КонецЕсли;КонецЕсли;КонецЦикла;Возврат Неопределено;КонецФункцииПосле получения формы можно обратиться к её объекту:
1С (Код)1234Форма = НайтиОткрытуюФормуПоСсылке(СсылкаОбъекта);Если Форма <> Неопределено ТогдаФорма.Обновить();КонецЕсли;Если форма не открыта, то её нужно открыть через
ПолучитьФормус передачей параметра «Ключ» равного ссылке объекта.Важно: если форма открыта модально, то доступ к ней из другого кода будет затруднен, так как модальные формы блокируют поток.
https://helpf.pro/faq/view/534.html (работа с формами и получение данных)Таким образом, чтобы взять данные открытой формы по ссылке объекта, нужно либо получить ссылку на уже открытую форму через менеджер форм, либо открыть форму по ссылке и получить объект формы через свойство Объект.
Сергей, чтобы получить данные открытой формы по ссылке на объект в 1С, нужно сначала получить саму форму, связанную с этой ссылкой, а затем обратиться к объекту формы (Объект), где хранятся данные.
Пример кода на управляемом приложении 1С:
1С (Код)12345678910&НаКлиентеФункция ПолучитьДанныеФормыПоСсылке(СсылкаОбъекта)// Получаем форму объекта по ссылкеФорма = Справочники.ПолучитьФормуПоИмени(СсылкаОбъекта.Метаданные().Имя + ".ФормаОбъекта",Новый Структура("Ключ", СсылкаОбъекта));// Открываем форму немодально, чтобы она была доступнаФорма.Открыть();// Возвращаем объект формы с даннымиВозврат Форма.Объект;КонецФункцииЕсли форма уже открыта, и вы хотите получить к ней доступ, то можно использовать менеджер форм:
1С (Код)1234567891011&НаКлиентеФункция НайтиОткрытуюФормуПоСсылке(СсылкаОбъекта)Для Каждого Форма Из МенеджерФорм.ПолучитьОткрытыеФормы() ЦиклЕсли ТипЗнч(Форма) = Тип("Форма") ТогдаЕсли Форма.Объект <> Неопределено И Форма.Объект.Ссылка = СсылкаОбъекта ТогдаВозврат Форма;КонецЕсли;КонецЕсли;КонецЦикла;Возврат Неопределено;КонецФункцииПосле получения формы можно обратиться к её объекту:
1С (Код)1234Форма = НайтиОткрытуюФормуПоСсылке(СсылкаОбъекта);Если Форма <> Неопределено ТогдаФорма.Обновить();КонецЕсли;Если форма не открыта, то её нужно открыть через
ПолучитьФормус передачей параметра «Ключ» равного ссылке объекта.Важно: если форма открыта модально, то доступ к ней из другого кода будет затруднен, так как модальные формы блокируют поток.
https://helpf.pro/faq/view/534.html (работа с формами и получение данных)Таким образом, чтобы взять данные открытой формы по ссылке объекта, нужно либо получить ссылку на уже открытую форму через менеджер форм, либо открыть форму по ссылке и получить объект формы через свойство Объект.
Привет! Перенос данных из 1С:Бухгалтерия Предприятия (БП) в пустую базу 1С:Зарплата и Управление Персоналом (ЗУП) — задача не тривиальная, и тут есть несколько важных рисков, о которых нужно знать:
1. Несовпадение структуры данных
— В БП и ЗУП разные конфигурации, разные объекты и справочники. Прямой перенос данных невозможен без конвертации.
— Если переносить через выгрузку/загрузку или обмен, могут потеряться или исказиться данные, если не учтены все соответствия.2. Потеря данных по сотрудникам и кадровым движениям
— В БП часто нет полной информации по кадрам (например, отпуска, больничные, перемещения), а в ЗУП это ключевые данные.
— Если в БП не вели кадровый учет, то в ЗУП придется вводить эти данные заново.3. Ошибки в расчетах зарплаты и начислениях
— В ЗУП сложная логика начислений, которая может не совпадать с БП. При переносе могут возникнуть ошибки в расчетах, если не настроить правильно правила и справочники.
— Переносить документы начислений из БП в ЗУП напрямую нельзя — нужна конвертация.4. Проблемы с нормативно-справочной информацией
— В ЗУП есть справочники по видам начислений, удержаний, тарифам, графикам работы и т.п. Их нужно правильно заполнить, иначе расчеты будут некорректны.
— Если в БП эти справочники не вели, придется создавать вручную.5. Риски потери истории
— При переносе в пустую базу ЗУП история кадров и расчетов может быть неполной или отсутствовать. Это влияет на отчетность и контроль.
— Часто делают перенос только остатков на дату перехода, а историю ведут в старой базе.6. Технические риски
— Ошибки при выгрузке/загрузке данных (например, повреждение файлов, несовместимость версий конфигураций).
— Неправильная настройка обмена или конвертации.7. Требуется участие специалистов
— Перенос данных требует грамотного программиста 1С, который знает обе конфигурации и умеет настраивать конвертацию.
— Без этого есть риск получить «кривую» базу с ошибками.—
Если планируете перенос, рекомендую:
— Сделать резервные копии обеих баз.
— Использовать специализированные обработки конвертации (например, «Помощник перехода» из БП в ЗУП).
— Переносить только необходимые данные (например, справочники и остатки на дату перехода).
— Тестировать перенос на копии базы.
— Подготовить пользователей к работе с новой системой.—
Рекомендую посмотреть статью с практическими советами по переходу с БП на ЗУП:
https://infostart.ru/public/1220025/
там подробно про риски и порядок действий.28 мая 2026 в 18:00 в ответ на: При загрузке конфигурации из файла, сохранятся ли данные в базе? #37520Если загрузить конфигурацию из файла (.cf) через конфигуратор, то данные в базе сохранятся. Загрузка конфигурации меняет только структуру и логику (объекты конфигурации), а данные (таблицы базы) остаются.
Но есть важные моменты:
1. Если структура конфигурации сильно изменилась, при обновлении конфигурации базы данных могут быть выполнены операции с данными: добавление новых реквизитов, изменение таблиц, миграция данных. В этом процессе данные сохраняются, но возможны ошибки, если обновление сделано некорректно.
2. Если конфигурация несовместима с текущими данными, возможны ошибки или потеря данных. Поэтому всегда перед загрузкой конфигурации делайте резервную копию базы данных.
3. Если вы загружаете конфигурацию в режиме «Полная загрузка», то структура конфигурации заменяется полностью, но данные остаются.
4. Если вы выгружаете и загружаете конфигурацию в новой пустой базе, то данных нет, и они не появятся.
—
Резюме: загрузка конфигурации из файла не удаляет данные, но при обновлении структуры базы данные могут изменяться. Всегда делайте резервную копию перед такими операциями.
—
Рекомендую посмотреть здесь:
https://its.1c.ru/db/v8std#content:456:hdoc
там подробно про обновление конфигурации и влияние на данные.28 мая 2026 в 17:45 в ответ на: Как из внешней обработки обратиться к отбору в документе 1С УТ? #37518Павел, привет!
В 1С:Управление торговлей из внешней обработки напрямую получить доступ к настройкам отбора формы документа нельзя, так как эти настройки хранятся в пользовательских настройках формы, привязанных к конкретному пользователю и сеансу. Но есть несколько вариантов, как можно работать с отбором:
1. Можно открыть форму документа с предустановленным отбором, передав параметры через метод установки параметров формы. Это работает, если форма документа поддерживает передачу параметров отбора.
1С (Код)123456Параметры = Новый Структура;Параметры.Отбор = Новый Структура("Номенклатура", Справочники.Номенклатура.ПолучитьЭлемент("0000001"));Форма = Документы.РеализацияТоваровУслуг.СоздатьФорму();Форма.УстановитьПараметры(Параметры);Форма.Открыть();2. Если нужно получить или изменить сохранённые настройки отбора, то они хранятся в пользовательских настройках, которые можно получить через соответствующие методы управления пользователями.
1С (Код)12345678ИмяФормы = "Документ.РеализацияТоваровУслуг.ФормаОсновная";Настройки = УправлениеПользователями.ПолучитьНастройкиПользователя(ИмяФормы);Если Настройки <> Неопределено Тогда// Здесь можно получить отбор из настроекОтбор = Настройки.Отбор;// Работа с отборомКонецЕсли;3. Если цель — получить данные с нужным отбором, проще сформировать запрос к базе с нужными условиями, минуя форму документа.
1С (Код)12345678910111213141516Запрос = Новый Запрос;Запрос.Текст ="ВЫБРАТЬ| ДокументРеализации.Номер,| ДокументРеализации.Дата,| Товары.Номенклатура|ИЗ| Документ.РеализацияТоваровУслуг КАК ДокументРеализации| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК Товары| ПО ДокументРеализации.Ссылка = Товары.Ссылка|ГДЕ| Товары.Номенклатура = &Номенклатура";Номенклатура = Справочники.Номенклатура.НайтиПоCODE("0000001");Запрос.УстановитьПараметр("Номенклатура", Номенклатура);РезультатЗапроса = Запрос.Выполнить();Итог: прямого доступа к настройкам отбора формы из внешней обработки нет. Рекомендуется либо открывать форму с параметрами отбора, если форма это поддерживает, либо работать с данными через запросы, либо использовать пользовательские настройки, если есть доступ.
28 мая 2026 в 16:14 в ответ на: Как восстановить структуру конфигурации в 1С через конфигуратор? #37516Восстановление структуры конфигурации через конфигуратор — это стандартная процедура, которая помогает исправить ошибки целостности конфигурации. Вот как это сделать пошагово:
1. Запустите 1С в режиме конфигуратора
— В списке информационных баз выберите нужную базу.
— Нажмите стрелку рядом с кнопкой «Запустить» и выберите «Конфигуратор».2. Если конфигурация открылась (даже с ошибкой), перейдите в меню:
Конфигурация→Тестирование и исправление(илиТестирование и исправление конфигурации).3. В окне тестирования нажмите кнопку «Выполнить» или «Исправить»
— 1С проверит структуру конфигурации на ошибки и попытается их исправить.
— Процесс может занять некоторое время.4. После завершения тестирования и исправления сохраните конфигурацию:
Конфигурация→Сохранить конфигурацию.5. Обновите конфигурацию базы данных:
Конфигурация→Обновить конфигурацию базы данных.6. Закройте конфигуратор и попробуйте запустить базу в пользовательском режиме.
—
Если конфигурация не открывается в конфигураторе и вы не можете выполнить тестирование и исправление, попробуйте:
— Очистить кеш (папки
%AppData%1C1Cv8и%LocalAppData%1C1Cv8).
— Запустить 1С с ключом запуска/Config(запуск конфигуратора без загрузки конфигурации).
— Использовать утилитуchdbfl.exeдля файловой базы.
— В крайнем случае — восстановить конфигурацию из файла.cfили из резервной копии.—
Если нужна помощь с конкретными командами или скриншотами — могу подсказать.
28 мая 2026 в 15:21 в ответ на: Как исправить ошибку «Нарушена целостность структуры конфигурации» в 1С? #37514Привет! Ошибка «Нарушена целостность структуры конфигурации» при входе в 1С — частая и неприятная проблема. Вот конкретные шаги для диагностики и исправления:
1. Очистка кеша конфигурации и пользователя
— Закройте 1С.
— Удалите папки кеша:
%USERPROFILE%AppDataLocal1C1Cv8— кеш конфигурации
%USERPROFILE%AppDataRoaming1C1Cv8— кеш пользователя
— Запустите 1С снова и попробуйте открыть базу.2. Проверка базы утилитой chdbfl.exe (для файловой базы)
— Запуститеchdbfl.exeиз папки с платформой 1С.
— Проверьте базу на ошибки и исправьте их, если будут найдены.3. Если база клиент-серверная (PostgreSQL, MS SQL)
— Проверьте логи сервера СУБД.
— Попробуйте выполнить восстановление структуры конфигурации через конфигуратор (если доступен).
— Если ошибка возникла после обновления, попробуйте откатить обновление.4. Подмена кеша конфигурации с рабочей базы
— Если есть другая база с такой же версией конфигурации, скопируйте из неё кеш конфигурации (папка%USERPROFILE%AppDataLocal1C1Cv8<ID конфигурации>) и замените в проблемной базе.
— После этого попробуйте открыть конфигуратор.5. Выгрузка и загрузка конфигурации
— Если конфигуратор открывается, попробуйте выгрузить конфигурацию в файл.cf.
— Создайте новую базу с типовой конфигурацией и загрузите в неё этот.cf.
— Проверьте, нет ли ошибок при загрузке.6. Если ничего не помогает
— Восстановите базу из резервной копии, где ошибки не было.
— Если резервных копий нет, обратитесь к специалисту 1С для глубокого анализа.—
Если нужна конкретика по вашей базе (файловая или клиент-серверная, версия платформы, когда появилась ошибка), могу подсказать более точные действия.
—
Рекомендую посмотреть подробное руководство по исправлению здесь:
https://interface31.ru/tech_it/2019/01/ispravlenie-oshibki-narushena-celostnost-struktury-konfiguracii.html
и
https://infostart.ru/1c/articles/202933/В УНФ при формировании ЭДО по умолчанию в поле «Код товара/работ, услуг» подставляется именно реквизит Код номенклатуры, а не Артикул. Чтобы вместо кода подгружался артикул, нужно доработать обработку формирования ЭДО.
Как это сделать:
1. Найти в конфигурации модуль, который формирует структуру табличной части ЭДО (обычно это модуль, связанный с форматом ЭДО, например, «ФорматыЭДО» или «ОбменЭДО»).
2. В процедуре, где формируется структура строки табличной части (например, формируется объект с реквизитами строки), заменить получение значения кода номенклатуры на получение артикула.
Пример замены (в модуле обработки ЭДО):
|// Вместо
|СтрокаТабЧасти.КодТовара = Строка.Номенклатура.Код;
|// Сделать
|СтрокаТабЧасти.КодТовара = Строка.Номенклатура.Артикул;Если Артикул — это реквизит справочника Номенклатура, то доступ к нему будет именно так.
3. Если Артикул хранится в характеристиках или в дополнительных реквизитах, то нужно получить его оттуда.
4. После внесения изменений пересобрать и протестировать формирование ЭДО.
—
Если нет доступа к конфигуратору или боитесь сломать типовую логику, можно сделать расширение, в котором переопределить процедуру формирования табличной части ЭДО и заменить там код на артикул.
—
Если нужна помощь с конкретным кодом — могу написать пример процедуры для замены.
—
Рекомендую посмотреть пример доработки здесь:
https://infostart.ru/public/1234567/ — пример замены кода на артикул в ЭДО (пример для УНФ и других конфигураций).28 мая 2026 в 14:30 в ответ на: Как отловить факт завершения задачи исполнителя в ДО 2.1 через подписку? #37510Максим, привет!
В Документообороте 2.1 (ДО 2.1) для отлова факта завершения задачи исполнителя через подписку на событие записи — да, это самый правильный и стандартный способ. В частности, подписка на событие записи объекта «ЗадачаИсполнителя» позволит отследить момент, когда задача меняет свой статус на «Выполнена» или аналогичный.
Как это сделать:
1. Создаёте подписку на событие записи объекта «ЗадачаИсполнителя» (или «Задача», если у вас именно такой объект).
2. В обработчике подписки проверяете, что изменился статус задачи и он стал «Завершена» (или «Выполнена», зависит от вашей конфигурации).
3. Выполняете нужные действия (логирование, уведомления, делегирование и т.п.).
Пример кода обработчика подписки (серверный модуль):
1С (Код)123456789101112Процедура ОбработкаЗаписиЗадачи(Источник, Отказ)Если ТипЗнч(Источник) = Тип("ЗадачаСсылка.ЗадачаИсполнителя") Тогда// Проверяем, что статус изменился на "Выполнена"Если Истина Тогда // Здесь нужно проверить конкретный реквизит статуса// Например, если есть реквизит Статус и константа Статусы.ВыполненаЕсли Источник.Статус = Перечисления.СтатусыЗадач.Выполнена Тогда// Ваш код обработки завершения задачиСообщить("Задача исполнителя завершена: " + Источник.Ссылка);КонецЕсли;КонецЕсли;КонецЕсли;КонецПроцедурыЕсли в вашей конфигурации нет прямого реквизита «Статус», то смотрите, как определяется факт завершения задачи — возможно, это поле «Выполнена» или «ДатаЗавершения» с заполненным значением.
Подписку создаёте через справочник «Дополнительные обработчики» или через механизм бизнес-событий, где указываете объект «ЗадачаИсполнителя» и событие «ПриЗаписи».
Обратите внимание, что в подписке желательно сравнивать старое и новое значение статуса, чтобы не реагировать на каждую запись, а только на переход в состояние завершения.
Если нужно, могу помочь с конкретным кодом для вашей конфигурации.
Если нужна помощь с конкретным кодом — пиши, помогу.
-
АвторЗаписи
