gifts2017

Выполнялка кода в среде 1С:Предприятие

Опубликовал Константин Яремчук (nucha) в раздел Программирование - Инструментарий

Ещё одна выполнялка свеженаписанного кода в среде 1С:Предприятие. Иногда проще внести исправления, запустив несколько строк кода, чем делать это штатными средствами, особенно если нужно для этого распроводить документ.

"ВыполнялкаКода" - обработка выполняет код 1С в режиме 1С:Предприятия. Имеет 2 формы: для тонкого и для толстого клиента. При этом не нужно запускать Предприятие специально в режиме совместимости форм. Необходимость в ней возникла при исправлении косяков пользователей. Состоит из 2-х частей: команда "Выполнить" (для тонкого клиента выбирается контекст НаКлиенте или НаСервере) и сервисных элементов. Команда "Выполнить" описана в справочнике конфигуратора.

Сервисные элементы:

Реквизиты применяются в тонком клиенте. Форма для тонкого и форма для толстого клиентов

Макеты представляют текстовые документы с вписанными туда образцами кода 1С.

С префиксом «Толст» - будут доступны для списка выбора в толстом клиенте.

С префиксом «Тонк» - будут доступны для списка выбора в тонком клиенте.

При выборе элемента из списка, его содержимое перезапишется в открытое поле.

Использование:

1. Запускаете в толстом или тонком клиенте. 

2. Пишете в окне свой код или подгружаете код из макета, как на картинке: подгрузка кода из макета для последующего редактирования /и выполнения/.

Пример: по решению бизнес-аналитика (согласованному с руководством)  все проведённые документы "Реализация" должны иметь "ЭтаФорма.ТолькоПросмотр" = "Истина", без исключений, для всех ролей. При очередном восстановлении последовательности выясняется, что номенклатура "Картина офисная" была удалена из поступления, но осталась в проведённой "Реализации №3". И эта реализация не будет перепроводиться, т.к. остаток номенклатуры "Картина офисная" = 0; Выход - удалить из таблицы "Товары" объекта "Реализация №3" эту номенклатуру, не открывая форму документа (где "ЭтаФорма.ТолькоПросмотр" = "Истина"). Пишем код: 

докРеализация = Документы.РеализацияТоваров.НайтиПоНомеру("_",Дата("20150328")).ПолучитьОбъект(); 
Сообщить(докРеализация); // в место отладчика
таб = докРеализация.Товары;
таб.УдалитьСтроку(таб[0]); // первая строка
докРеализация.Записать(РежимЗаписиДокумента.Проведение,РежимПроведенияДокумента.Неоперативный);

Не делать же обработку из за 4 строк кода. 

Скачать файлы

Наименование Файл Версия Размер
ВыполнялкаКода 15
.epf 29,07Kb
26.04.15
15
.epf 1.1 29,07Kb Скачать

См. также

Автор запретил комментарии