2013-12-08 03:10:49
Краткое описание :
формирование пл.поручений по ДО на предоплатуОписание :
По ДО на предоплату закупокЧто измененно :
В рамках проекта автоматизации БДДС в ООО "Дальнефтепровод" есть следующая задача: перед формированием платежного поручения по ДО на предоплату (как в пакетном режиме "Управление снабжением - Операции - Формирование платежных поручений - По ДО на предоплату закупок", так и по кнопке "Платежи по документу" из ДО на предоплату) необходимо запускать пользовательский алгоритм проверки ДО на предоплату, который будет возвращать значение типа Boolean. Если алгоритм возвращает False, то платежное поручение по данному ДО на предоплату не формируется. При этом формируется протокол, в котором видно, по каким ДО на предоплату не были сформированы платежные поручения. Реализация данного алгоритма проверки может быть сделана в виде точки расширения либо пользовательского производственного алгоритма. Параметры - NRec ДО на предоплату, который проверяется, а также var-параметр типа string, в который алгоритм будет выводить результаты проверки ДО. Значение данного параметра должно выводиться в протокол формирования платежных поручений по каждому ДО на предоплату (как в случае, когда ПП сформировано, так и в противном).
Реализация нужна для версии 8.10.
Как измененно :
Добавлена настройка
"Настройки Галактики \ Логистика \ Документы \ Документы-основания \ Выполнение алгоритмов \ Перед формированием платежного документа"
Алгоритм запускается перед формирование платежных документов по ДО:
-по кнопке "Платежные документы" в ДО
-в пакетном формировании платежных документов по ДО
-в пакетном формировании сопроводительных и платежных документов по ДО
Если алгоритм запрещает формирование платежного документа, то в ручном режиме будет выдано сообщение и запрет на формирование, а в пакетных - протокол со списком ДО, по которым алгоритмом формирование запрещено.
Для передачи сообщения/комментария о запрете формирования используется функция EnvironmentSetStr. Имя переменной для передачи сообщения 'Doc_Alg_BeforeFormFin'.
Для указания запрета использовать установку переменную окружения алгоритма Binding.
Пример для JS:
EnvironmentSetStr('Doc_Alg_BeforeFormFin', 'Запрет формирования по такой-то причине')
EnvironmentSetStr('algBinding', '8')
Где algBinding - наименование переменной окружения Binding
Пример для vip:
#include Environment.vih
var pEnv : EnvironmentVip;
pEnv.EnvironmentSetStr('Doc_Alg_BeforeFormFin', 'Запрет формирования по такой-то причине');
Запрет формирования:
Function InitInter(var pt: TRecAcc): boolean;
{
...
pt.Binding := 8;
...