Главная категория > Предложение своих услуг
Программа для механиков ЦТО
Klaus1900:
Так ведь и по названию нет универсальности
"Отрезка чека после завершения печати"
"Отрезка чека"
Спасибо за идею, это выход из ситуации.
Two_byte:
У штрихов есть команда "запрос описания таблицы", или типа того. В ответе передаются перечисления всех полей,рядов, максимальные значения, и.т.д.. Используется родным драйвером, это если кто-то не знает. Мож-быть открыл секрет Полишинеля.
drfaust:
Название полей ничего не даёт в случае программирования заголовка.(8 или 13 ряды? сколько всего рядов?) Только версия ПО и модель аппаратика.
Two_byte:
И тут не угадал - запрашиваем поле, если оно пустое (20h), во всех знакоместах, значит берем следующее, и так до бесконечпости. В конце концов придем к 8-му, или 13-му.
Или же, как сделано в драйвере штриха - запрашиваем структуру таблицы, тут уже все понятно и вычисляемо.
Prz777:
--- Цитата: drfaust от 14/02/2016 15:44:54 ---Название полей ничего не даёт в случае программирования заголовка.(8 или 13 ряды? сколько всего рядов?) Только версия ПО и модель аппаратика.
--- Конец цитаты ---
Как раз понадобилось написать процедурку для печати клише для разных типов ККТ Штриховского семейства (по аналогии можно применить и к программированию клише), где количество рядов в таблице "Текст в чеке" может быть различно.
Процедуркаprocedure TForm1.Button1Click(Sender: TObject);
var
Row: integer;
begin
Driver.TableNumber := 4;
if Driver.GetTableStruct=0 then
begin
Row:=Driver.RowNumber;
Driver.FieldNumber := 1;
for Row:=Row-3 to Row do
begin
Driver.RowNumber:=Row;
if Driver.ReadTable = 0 then
begin
Driver.StringForPrinting := Driver.ValueOfFieldString;
Driver.PrintString;
end;
end;
Driver.CutType:=false;
Driver.CutCheck;
end;
end;
Навигация
Перейти к полной версии