Показать сообщение отдельно
Старый 20.10.2011, 15:21   #2  
VProk is offline
VProk
Участник
 
25 / 10 (1) +
Регистрация: 07.03.2007
Цитата:
Сообщение от Predatore Посмотреть сообщение
Доброго всем времени суток!
Не могу понять одного момента. Есть такой кодеюнит 5763 Whse.-Post Shipment, есть в нём такая функция PostSourceDocument, а в ней несколько раз встречается вот такая конструкция:
Код:
CASE WhseSetup."Shipment Posting Policy" OF
  WhseSetup."Shipment Posting Policy"::"Posting errors are not processed":
    BEGIN
      SalesPost.RUN(SalesHeader);
      CounterSourceDocOK := CounterSourceDocOK + 1;
    END;
  WhseSetup."Shipment Posting Policy"::"Stop and show the first posting error":
    BEGIN
      SalesPost.RUN(SalesHeader);
      CounterSourceDocOK := CounterSourceDocOK + 1;
    END;
END;
Вот объясните мне смысл этой конструкции, делается CASE и вне зависимости от этого CASE выполняется один и тот же код, в чём смысл?
Думаю, это просто закладка. Мож была какая-то мысль и поглубже, но ее не реализовали. При учете приемок то же самое. У нас эти кейсы используются для выполнения/невыполнения определенных проверок перед непосредственным учетом.
P.S. Насчет мысли поглубже: в хелпе озвучено следующее:
Поле Политика Учета Отгрузки
Таблица Склад Настройка

Данное поле содержит методику, которой программа следует при учете складской отгрузки.

Существует две методики выбора.



Ошибки в учете не обрабатываются.

Все документы-источники будут учитываться программой непрерывно, даже если в процессе учета возникают какие-либо ошибки. Появится сообщение "документы-источники Х вне всего Y учтены." Какие ошибки возникли в процессе учета, просмотреть нельзя.



Остановиться и показать первую ошибку в учете.

Документы-источники будут учитываться программой до тех пор, пока не появится первая ошибка. Процесс учета после первой ошибки отменяется, остальные документы-источники не учитываются.