Продолжаю начатую тему: "Как использовать конфигурацию не программисту 1с".
Как провести документы по складу с помощью встроенной в конфигурацию "Групповая обработка документов".
Так как я не нашел на этом сайте нужную мне обработку, я приступил к выгрузке "Групповая обработка документов" во внешнюю обработку.
После чего открыл ее в конфигураторе и нашел в модуле запись:
Док.СделатьНеПроведенным();
в Синтаксис-Помошнике подобрал противоположную команду:
Док.Провести(0,);
Кроме того, редактируемая строка включена в условие:
Если Док.Проведен() > 0 Тогда
Попытка
// Проверка даты запрета редактирования
Если Док.ДатаДок<=Константа.ДатаЗапретаРедактирования Тогда
Сообщить("Нельзя отменять проведение документов с датой, более ранней чем дата запрета редактирования документов!","!");
Иначе
Док.Провести(0,); //отредактировано!!!
КонецЕсли;
Исключение
Сообщить("Не удалось отменить проведение документа "+Строка(Док.ТекущийДокумент),"!");
КонецПопытки;
КонецЕсли;
В этом условии нужно заменить:
Если Док.Проведен() > 0 Тогда
на:
Если Док.Проведен() = 0 Тогда
Дальше меняем текст в Сообщить(...) по вкусу.
Сохраняем и запускаем обработку, теперь если указать в ней "Сделать не проведенным" ,см. рис., обработк будет проводить документы.
Обработка уже может работать с определеными недостатками, с основными возможно справлюсь с вашей помощью.
По списку:
1) Если встретится документ, с ошибкой при его проведении ( например: нет остатков товара на складе), обработка перебрав все документы выдаст:
Обработка закончена
ОтменитьТранзакцию();
{C:\BASE2010\EXTFORMS\1111111.ERT(311)}: Транзакция не активна
2) Если обработка в работе она мешает пользователям. Как заставить ее работать в не монопольном режиме?