Форум OlegON > Программы и оборудование для автоматизации торговли > Кассовые программы > УКМ-4

как напечатать после чека произвольную информацию? : УКМ-4

28.03.2024 14:02


29.05.2012 14:57
akonev
 
задача: в укм48sp5 после чека вывести произвольную информацию.

засада №1: информация раз в неделю будет меняться.

засада №2: информация может быть разной по магазинам.

раз в неделю менять 20 штук receipt.lua - не вариант. рука дрогнет - магазин встанет.
да и хочется, чтобы заполняли инфу те, кому это надо: коммерсы, кадры, и т.п.

есть идеи, откуда подступиться?
29.05.2012 15:41
Mtirt
 
Куда-то класть файлик, информацию из которого печатать?
29.05.2012 15:43
Mtirt
 
Золотая Корона по похожему принципу работает.
Получив ответ от сервера, на кассе печатается содержимое файла, который вернула Золотая Корона.
29.05.2012 16:10
student
 
Цитата:
Mtirt Золотая Корона по похожему принципу работает.
Получив ответ от сервера, на кассе печатается содержимое файла, который вернула Золотая Корона.
по схожему принципу работают практически все б\н системы - разница только в том что данные могут в памяти формироваться, а не на диске (печать всегда идет отдельным документом), мне не совсем понятно "после чека" - это ДО печати фискальных реквизитов или ПОСЛЕ
если ДО - то после последней продажи до подитога (скидок) - произвольной строкой или уже после подитога в чеке до непосредственной оплаты - чек выглядит довольно странно при большом объеме информации
если ПОСЛЕ - то это уже будет отдельный документ на печать, вероятнее всего с заголовком как у чека (если заголовок прописан в фискальнике)
можно попробовать внести изменения в луа скрипт (если там есть команды чтения файла\таблички на сервере и печати) - тогда по идеи можно при необходимости кидать файлик с инфой\апдейтить табличку в скуле

пы сы
более "красиво" будеть печатать до списка продаж - тогда уж точно прочитают :)
29.05.2012 16:20
whitewizard
 
а если добавить табличку, в которую закидывать нужный текст через веб интерфейс?
и в receipt.lua печатать инфу из этой таблицы?
даже можно менять инфу автоматически из внешней проги, напрямую подключаясь к БД.
29.05.2012 16:53
akonev
 
после фискальных признаков.
в идеале (как это видится "заказчику") - еще и с неполным отрезом между чеком и этой инфой.

в принципе, всё вокруг этих же идей у нас и крутится.

признаться, я не знаю, как из луа напечатать внешний текстовый файл.

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

опять же, надо разобраться, как из луа произвольный запрос выполнить.
если с этим разобраться, то можно вообще в какие-то существующие таблицы писать. не знаю... клиентов завести: реклама1, реклама2... и пусть в них колбасят. там куча полей по 100 символов есть

думали про правку снаружи луа-скриптов: назначить в параметрах выполнение дополнительного скрипта после печати чека в параметрах. этот скрипт подменять.
единственное, у нас как-то нестабильно после прямых правок на кассы инфа уходит: иногда при первой же прогрузке кассы, а иногда только когда кассу перегрузим или сервис укм передернем. но для данной конкретной задачи это не критично.
ну и если тут что-то неаккуратно сделать - опять же есть шанс кэшлайн остановить
29.05.2012 16:57
akonev
 
собственно, задача свелась к двум вопросам. достаточно ответить на любой из них :)

1) как из луа прочитать файл?

2) как из луа выполнить запрос к базе?

поделитесь, если у кого опыт есть.
29.05.2012 17:00
student
 
Цитата:
Andrew_Konev после фискальных признаков.
я практически не знаю укм4, но м.б. там есть что то типа печати документов\товарных чеков как в укм2 - по идеи это отдельный типа подкладного документ...
29.05.2012 17:29
akonev
 
Цитата:
student я практически не знаю укм4, но м.б. там есть что то типа печати документов\товарных чеков как в укм2 - по идеи это отдельный типа подкладного документ...
это все скриптами прописано, а сами скрипты в базу засунуты.

в reports_ext.lua нашел примеры выполнения запросов.
в принципе, можно считать, что один путь уже придумали

еще идеи? :)

Добавлено через 22 минуты 46 секунд
не пробовал. для памяти

openfile(filename,mode) - Откроет файл filename в режиме mode. Возможные режимы:
r - режим чтения.
w - режим записи.
a - режим добавления к концу.
r+ - режим обновления, все ранее записанные данные сохраняются.
w+ - режим обновления, все ранее записанные данные уничтожаются.
a+ - режим модификации, предыдущие данные сохраняются, запись позволяется только в конце файла.
closefile(handle) - закроет файл.
remove(filename) - удаляет файл.
rename(name1,name2) - переименовывает из name1 в name2.
readfrom(filename) - читает из файла.
writeto(filename) - пишет в файл, старые данные не сохраняются.
appendto(filename) - пишет в файл, старые данные сохраняются.
flush (filehandle) - сохраняет все изменения в открытом файле.
write(filehandle,value1,...) - Пишет все полученные значения в файл.
29.05.2012 18:16
vdm
 
На 46-й версии у меня не получилось из receipt.lua ни к файловой системе пробраться, ни к базе.
Если это все же возможно - пишите.
Часовой пояс GMT +3, время: 14:02.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.