Обсуждение:Operlog. Проводки. Транзакции. Для RS-Bank 5.00.066 и выше.
0 (0)
Обсуждение:Operlog. Проводки. Транзакции. Для RS-Bank 5.00.066 и выше. ( Обсуждение примера 23.12.2003 17:11 )
5(1)Макрос переделан под новую структуру operlog.dbt. Ускорено наложение структур на переменную часть записи: путем использования памяти о последнем наложении + использования заранее предопределенных структур типа document.dbt, postdoc.dbt и т.д. Добавлен консольный отчет о всех записях в фильтре, который выводится значительно быстрее Excel-ного. Если кому не нужен вывод в Excel, то можно убрать импорт rslx и lgxse. Позволяет скопировать документ в отложенные.
Для работы нужен промежуточный рабочий файл следующей структуры:
0, Number, Long - номер поля
1, Name, String, 25 - имя поля
2, ValueBefore, String 251 - значение поля до изменения
3, ValueAfter, String, 251 - значение поле после изменения
Ключ 0 по Number.
Посмотреть пример
>> ОтветитьСпасибо, Григорий. Все отлично. ( foot 30.01.2004 15:58 )
0(0)Not specified
>> Ответитьмакрос требует некий dtb_ocb.def , а в rsbank 5.00.092.81 его чтото не видать.. ( yukson 13.05.2011 10:17 )
0(0)Not specified
>> ОтветитьВ начале примера описана структура нужного файла - создай в любом своем словаре (-) ( григ 16.05.2011 07:43 )
0(0)Not specified
>> Ответить
а как получить значение до? ( KaMPiLeR 22.06.2016 12:50 )
0(0)мне нужно проанализировать изменения person.dbt на выдачу архива:
record person ("person.dbt"); record personDo ("person.dbt"); file o(operlog); o.date=date(01,1,2016); getge(o); while(next(o)) message(o.date); if(o.tableName=="person.dbt") SetRecordAddr(person,o,0,2); SetRecordAddr(personDo,o,<ХЗ>,<ХЗ>); if(person.iArhCarryDay!=personDo.iArhCarryDay) [##### ################## #################### ############ ############# ###### - ###########] (o.UserID, o.netaddr, o.saddr, o.date,o.time, o.opcode, person.Oper); end; end; end;
>> ОтветитьSetRecordAddr(personDo,o,1,4); ( григ 23.06.2016 07:19 )
2(1)Not specified
>> Ответить