ТМС:Кассир:FB
Материал из wiki.standart-n.ru
Содержание
Объекты
CurrFDB - ссылка на текущую базу данных (FIBPlus) CurrFRT - ссылка на постоянную читающую транзакцию текущей базы (FIBPlus) CurrDB - ссылка на текущую базу данных (IBX) CurrRT - ссылка на постоянную читающую транзакцию текущей базы (IBX) Base - ссылка на текущий датасет базы (TDataset)
Пример:
uses zkassa, DB; begin TagSetContent(fmMain.ewbFooter, 'partid_val', IntToStr(Base.FieldByName('part_id').AsInteger)); end;
Переменные и методы
UserID - ID текущего пользователя SessionID - ID текущей смены CreateFRT - функция создает читающую транзакцию (FIBPlus) CreateFWT - функция создает пишущую транзакцию (FIBPlus) CreateRT - функция создает читающую транзакцию (IBX) CreateWT - функция создает пишущую транзакцию (IBX)
Пример (FIBPlus):
uses zkassa, fibplus; var fit: TpFIBTransaction; begin fit := CreateFWT(CurrFDB); fit.StartTransaction; ... fit.Commit; fit.Free; end;
Пример (IBX):
uses zkassa; var it: TIBTransaction; begin it := CreateWT(CurrDB); it.StartTransaction; ... it.Commit; it.Free; end;
GetTrans
Получить транзакцию для работы в ее рамках (нельзя стартовать, закрывать и откатывать такую транзакцию!).
ВНИМАНИЕ!
Транзакции типа TpFIBTransaction, т.е. из состава компонентов FibPlus, а не IBX! Для работы требуется подключить модуть FIBPlus.
Параметры
iTransType - тип запрашиваемой транзакции Поддерживаемые типы транзакций: 0 (TRANS_CLOSECHEQUE) - транзакция при закрытии чека
Пример
После печати чека:
uses zkassa, fibplus, classes, chequelist; var fiq: tpfibquery; begin fiq := tpfibquery.create(nil); fiq.Transaction := GetTrans(0); fiq.SQL.Text := 'update docs set device_num = ''трали-вали'' where id = ' + IntToStr(chequelist.Active.ID); fiq.ExecQuery; fiq.Free; end;