База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как создать и загрузить модуль в 1С: Бухгалтерия КОРП без кнопки «создать»?
- В этой теме 1 ответ, 2 участника, последнее обновление 7 часов, 33 минуты назад сделано
Odin — Одинэсник.
-
АвторСообщения
-
-
15 апреля 2026 в 16:30 #36494
в этой версии 1с, в конфигураторе нет кнопки «создать новый модуль», его можно только загрузить из файла. при попытке записать скрипт в файл, пишет — не верная конфигурация файла
-
15 апреля 2026 в 16:30 #36495
В редакции 3.0 Бухгалтерии КОРП действительно нельзя просто так создать новый общий модуль через конфигуратор — там модуль либо уже есть, либо его нужно загрузить из файла.
Чтобы обойти это ограничение и запустить скрипт, сделайте так:
1. Создайте общий модуль в отдельной пустой базе 1С (например, в обычной базе «Управление торговлей» или «Бухгалтерия предприятия» без ограничений).
2. В этом модуле напишите нужный код (процедуру исправления табуляций).
3. В конфигураторе этой базы выгрузите модуль в файл (*.bsl).
4. В вашей базе КОРП в конфигураторе импортируйте этот модуль из файла (через меню «Файл» → «Загрузить из файла»).
5. После загрузки модуля в базу, в режиме предприятия вызовите процедуру из этого модуля через окно отладки или через команду.
—
Если нет возможности создать отдельную базу, можно сделать так:
— Создайте обработку (файл *.epf) в любой базе, где можно писать код.
— В обработке напишите процедуру исправления табуляций.
— Запустите обработку в вашей базе КОРП и выполните процедуру.
—
Пример кода для обработки (модуль обработки):
1С (Код)12345678910111213141516171819202122232425262728293031323334Процедура Выполнить(Команда)ИсправитьТабуляцииВНазначенииПлатежа();КонецПроцедурыПроцедура ИсправитьТабуляцииВНазначенииПлатежа()Запрос = Новый Запрос;Запрос.Текст =|ВЫБРАТЬ| Док.Ссылка|ИЗ| Документ.ПлатежноеПоручениеСписаниеДенежныхСредств КАК Док|ГДЕ| СОДЕРЖИТ(Док.НазначениеПлатежа, Символ(9))Выборка = Запрос.Выполнить().Выбрать();КоличествоИсправлено = 0;Пока Выборка.Следующий() ЦиклДокОбъект = Выборка.Ссылка.ПолучитьОбъект();НовыйТекст = СтрЗаменить(ДокОбъект.НазначениеПлатежа, Символ(9), " ");Если НовыйТекст <> ДокОбъект.НазначениеПлатежа ТогдаДокОбъект.НазначениеПлатежа = НовыйТекст;ПопыткаДокОбъект.Записать();КоличествоИсправлено = КоличествоИсправлено + 1;ИсключениеСообщить("Ошибка записи документа: " + ДокОбъект.Ссылка);КонецПопытки;КонецЕсли;КонецЦикла;Сообщить("Исправлено документов: " + Строка(КоличествоИсправлено));КонецПроцедуры—
Таким образом, вы обойдёте ограничение на создание модулей в КОРП и сможете выполнить исправление.
-
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.