Как я создал внешнюю обработку из встроенной

Выбранный "сделать не проведенным" работает как провести

Продолжаю начатую тему: «Как использовать конфигурацию не программисту 1с».

Как провести документы по складу с помощью встроенной в конфигурацию «Групповая обработка документов».

Так как я не нашел на этом сайте нужную мне обработку, я приступил к выгрузке «Групповая обработка документов» во внешнюю обработку. 

После чего открыл ее в конфигураторе и нашел в модуле запись:

 Док.СделатьНеПроведенным();

в Синтаксис-Помошнике подобрал противоположную команду:

Док.Провести(0,);

Кроме того, редактируемая строка включена в условие:

Если Док.Проведен() > 0 Тогда
  Попытка
    // Проверка даты запрета редактирования
       Если Док.ДатаДок<=Константа.ДатаЗапретаРедактирования Тогда
         Сообщить(«Нельзя отменять проведение документов с датой, более ранней чем дата запрета редактирования                           документов!»,»!»);
            Иначе
              Док.Провести(0,);    //отредактировано!!!
       КонецЕсли;
    Исключение
   Сообщить(«Не удалось отменить проведение документа «+Строка(Док.ТекущийДокумент),»!»);
 КонецПопытки;
КонецЕсли;

 

В этом условии нужно заменить:

Если Док.Проведен() > 0 Тогда

на:

Если Док.Проведен() = 0 Тогда

Дальше меняем текст в Сообщить(…) по вкусу. 

Сохраняем и запускаем обработку, теперь если указать в ней «Сделать не проведенным» ,см. рис., обработк будет проводить документы.

Обработка уже может работать с определеными недостатками, с основными возможно справлюсь с вашей помощью.

По списку:

 1) Если встретится документ, с ошибкой при его проведении ( например: нет остатков товара на складе), обработка перебрав все документы выдаст:

Обработка закончена
ОтменитьТранзакцию();
{C:BASE2010EXTFORMS1111111.ERT(311)}: Транзакция не активна

2) Если обработка в работе она мешает пользователям. Как заставить ее работать в не монопольном режиме? 

 

11 Comments

  1. WaterSmith

    Стесняюсь спросить, а почему не поменять название флага, на «Провести»?

    Reply
  2. AlexxxMksv

    Скажите новечку как и вам будет бонус.

    Reply
  3. Ёпрст

    П..ц

    Скоро оно откроет для себя unijourn.ert и uchoice.ert и навсегда запорет ИБ..

    Reply
  4. Gulak

    Ну что за люди… нет бы поддержать и подсказать…

    Reply
  5. Gulak

    МОЛОДЕЦ!!! от начинающих!!! так держать!!!

    Reply
  6. AlexxxMksv

    (5) Gulak,

    Спасибо за поддержку, а unijourn.ert и uchoice.ert это вероятно, что-то, чем пугают маленьких в ночи. Придется открыть для себя это страшное…

    Reply
  7. AlexxxMksv

    (1) WaterSmith,

    Вообще-то, как имеющий кое, какие начальные знания в 1с программировании, я умею редактировать форму (диалог), что бы изменить флаг на «Провести». Но я не нашел именно этой формы в выгруженной обработке. Подскажите, может она является подчиненной (не основной) и используется из конфигурации?

    Reply
  8. Ёпрст

    (6)Открой для себя универсальные поделки с диска ИТС наконец.

    Reply
  9. Ёпрст

    и перестань портить базу своими ручонками

    Reply
  10. vligm

    Гинеколог потерял работу. Пошел и закончил курсы автомехаников. Сдал экзамен, выполнил практическое задание. Спрашивает у преподавателя: «Ну как?» Тот отвечает: «Отлично! Только я впервые вижу, как двигатель разбирают через выхлопную трубу…»

    Совет: возьми литературу (ЖКК, или при их отсутствии поройся в сети) и займись изучением «1С» вплотную. Пользы будет больше, чем вот так людей смешить.

    Reply
  11. AlexxxMksv

    (9) Ёпрст,

    Я с уважением отношусь к специалистам с опытом, замечу к специалистам без бравады. Тем не менее я пропущу свое рода хамство и по прежнему готов услышать критику и помощь, и главное обвинение: чем я испортил в этом случае базу?

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *