PDA

Просмотр полной версии : Сервис-печать в файл



amnch
05.03.2013, 14:06
Интересует следующее
Касса 6.65 сервера на кассах
Подошел видеоадмин, говорит неплохо бы видеть когда и в какое время было забито блюдо в стол.
Допустим стол гулял 3 часа и каждые 15 минут добивал себе блюда. Он хочет видеть когда какие блюда и во сколько были добиты. Ничего как логирование сервис-печати в файл не приходит в голову.

Про SPRED знаю, но в двух заведениях наблюдал такую картину, при печати через SPRED и сервер на кассе, в случае когда идет удаление блюд, причем если этих блюд больше одного (например водка и коньяк) то касса виснет, если удаляешь только 1 блюдо то не виснет. Именно когда сервер на кассе. А у меня все сервера на кассах. Поэтому все работает через net use lpt1 ...

помогите советом

sibgaba
06.03.2013, 22:30
Вам нужна программа PRN2FILE. Она перехватывает поток отправленный на определенный LPT порт и записывает его в указанный файл.

1. В кипере заводим "виртуальный" принтер и вешаем его на LPT2.
2. В настройках сервис печати дублируем нужные потоки на виртуальный принтер.
3. Перед запуском кассы загружаем запускаем "PRN2FILE file.txt 2" (поток с lpt2 писать в file.txt). Можно еще поиграться с размером буфера и поставить его поменьше.

PaViS
07.03.2013, 14:48
Подошел видеоадмин, говорит неплохо бы видеть когда и в какое время было забито блюдо в стол.Посмотрите http://www.itv.ru/products/intellect_light/retail/functions/
Работает и с RK6 и Rk7.

mnekin
12.03.2013, 01:00
Чтоб не висло при удалении блюд, тут бы лучше обновиться до актуальных версий, да выделенный сервер всегда хорошо.
А вот на счет сервис печати через спред - зачем пляски, если есть лог файлы в спред по каждому виртуальному порту один в один похожи на сервис-чеки, пиши себе куда тебе угодно, да и парси потихоньку.

green_bear
03.02.2014, 16:30
здравствуйте, sibgaba, принтеры кухонные подключены на оффициантов. В менеджере завел сервис принтер "оф2 пицца LPT". в настройках - локальный на порт LPT2. В сервис-печать дублирую строчку ПИЦЦА-ПИЦЦАХОЛОДНЫЙ-оф2 пицца LPT. в автокзеке на станции оффа prn2file h:\ckecks\unit000.chk /P2 /A /B64 . При загрузке станции показывает что лпт2 биндится на файл. но в h:\ckecks\unit000.chk создается нулевой и все, больше ничего в него не пишется.
На другой станции оффицианта, там где на LPT1 висит принтер отчетов, там ведется полный лог при указании ключа /P1 в автоэкзеке : подскажите куда копать. задача - сохранять логи кухонных принтеров

sibgaba
03.02.2014, 16:45
1. Попробовать отправить на LPT2 из голого доса:
copy filename.txt LPT2
Или из NC/VC: F5 -> LPT2
Что получится?

2. Возможно что проблема в том что для DOS LPT2 не существует (если его в БИОСе нет). Поэтому когда Кипер посылает что то на LPT2, DOS просто не хавает...
Попробуйте на той же станции из DOS на LPT1. Какой будет результат?

3. Если в итоге дело в том что порта нет, можно еще один финт ушами попробовать:
На на станции Кипера поищите файл mode.com (сокрее всего в папке DOS)
Он позволяет перенаправлять потоки. DOSа под рукой нету, формат командной строки не помню, но что то типа: mode LPT2 COM3 или наоборот: mode COM3 LPT2.

В итоге, в Кипере настраиваете печать на COM3 (он должен реально существовать) потом через mode все это направляете на LPT2 (для доса он появится) и потом уже с LPT2 снимаете через prn2file.

4. За прошедший год я окончательно уже отказался от такой схемы и все логирование делаю через spred.

green_bear
03.02.2014, 16:50
4. За прошедший год я окончательно уже отказался от такой схемы и все логирование делаю через spred.

К сожалению тут еще куча старинных железяк :( точно попробую перенаправить через mode. Главнео чтобы все потоки не пошли только в файл а на реальный принтер тоже


mode COM2:=LPT2 - на станции вываливает ошибку - предполагаю что LPT2 не существует.

amnch
03.02.2014, 17:31
PRN2FILE
Может быть надо туда больше данных отправить, может он порциями валит, копит в памяти как только накопил отправил.

green_bear
03.02.2014, 17:45
mode com3=lpt2 - invalid parameter lpt2 я инвалид ?

---------- Добавлено в 15:45 ---------- Предыдущее сообщение было размещено в 15:43 ----------


PRN2FILE
Может быть надо туда больше данных отправить, может он порциями валит, копит в памяти как только накопил отправил.

оставлял на ночь, ни одного разу размер файла не поменялся за ночь. как создан был при перезагрузке станции с нулем так и утром остался с нулем. чеков явно было больше чем на 64кб

ком-порт похоже нельзя биндить на лпт (только наоборот) , ком3 создать виртуальный надо как-то

satan
03.02.2014, 18:38
mode com3=lpt2 - invalid parameter lpt2 я инвалид ?

сам правильно ответил

ком-порт похоже нельзя биндить на лпт (только наоборот)

А вообще, чем не повод обновиться? как железяки так и кипер.

green_bear
03.02.2014, 18:49
А вообще, чем не повод обновиться? как железяки так и кипер.

"..Обновиться любой дурак сможет, а ты вот через какую-то вот такую закрученую жопу...." вариант точно не рассматривается к моему большому сожалению :))))))
можно попробовать посомтреть в сторону net use lpt2 \\comp\printer с печатью в файл?

satan
03.02.2014, 19:43
а ты вот через какую-то вот такую закрученую жопу...
херово оно потом все работает, впрочем как и
net use lpt2 \\comp\printer с печатью в файл

о, еще способ - поставить видеоадмину сервис-принтер, а он процесс печати пусть одной из камер снимает :)

green_bear
03.02.2014, 19:56
о, еще способ - поставить видеоадмину сервис-принтер, а он процесс печати пусть одной из камер снимает :)

дешевле поменять оборудование :) задача не снимается , "мы не ищем легких путей" к сожалению
и велик новый тоже круто :)
и да net use... тоже толку никакого ибо LPT2 в этом случае всего лишь ссылка на а не дескриптор усройства и prn2file не перехватывает печать :(

satan
03.02.2014, 20:25
и да net use... тоже толку никакого ибо LPT2 в этом случае всего лишь ссылка на а не дескриптор усройства и prn2file не перехватывает печать
а зачем в этом случае prn2file? Поставить принтер под виндой, который печатает в файл и замапить его под досом

VampireKB
03.02.2014, 20:32
главное выражение "касса виснет"
это УЖЕ значит,что варианты НЕреализуемы.

Сервер ОБЯЗАТЕЛЬНО с кассы перенести на комп.
А вот ПОСЛЕ этого уже можно делать ЛЮБЫМ способом,хоть экран фоткать каждые 5 секунд.

SH
03.02.2014, 23:56
задача - сохранять логи кухонных принтеров
На менеджере поставить спред, на него задублировать печать. У спреда есть лог.

green_bear
04.02.2014, 00:12
На менеджере поставить спред, на него задублировать печать. У спреда есть лог.

уважаемый Ш :) похоже только через спред и реализуемо - завтра воплощать в жисть, а в спред я так понимаю прикручивать любой принтер виртуальный типа епсон lx-800 с печатью в файл или впринципе безразницы в куда

SH
04.02.2014, 01:24
а в спред я так понимаю прикручивать любой принтер
Я традиционно ставлю Generic/Text.

VampireKB
04.02.2014, 03:19
уважаемый Ш :) похоже только через спред и реализуемо - завтра воплощать в жисть, а в спред я так понимаю прикручивать любой принтер виртуальный типа епсон lx-800 с печатью в файл или впринципе безразницы в куда
поищи по форуму,тут выставляли excel табличку и корректный параметр принтера :-)

запускаешь эксель,выбираешь ЛОГ принтера и наслаждаешься анализом по дате\официанту\блюдам

amnch
04.02.2014, 09:32
У меня вот так было прописано
C:\LOGS\PRN2FILE.COM C:\LOGS\outprn.log /A /F /B64 /P1
даже скажу работало, попробуй может получиться.

green_bear
04.02.2014, 11:48
У меня вот так было прописано
C:\LOGS\PRN2FILE.COM C:\LOGS\outprn.log /A /F /B64 /P1
даже скажу работало, попробуй может получиться.

На LPT1 висит физический принтер который мониторить нет необходимости и если делать через ключ F то на него не будет идти вооще печать, а пути я пробовал жестко прописывать - нет результата.

prn2file только с физическим портом работает, проверено, эмлировать по карйней мере у меня не получилось. при добавлении внешнего стлаба вопрос решился. - физический принтер на этот порт может и отсутсвтовать.

Спасибо камраду SH мнимальный геморрой - spred. Единственное, что не совсем понял в сервисных принтерах нужно заводить принтер через другой сервер или достаточно только через сервер?

Нет не нужно и так вроде как чеки сохраняет в лог.

И подскажте, на одном из компов не могу установить дженерик, при октрытии досмтупных драйверов есть только уже установленные а гугл ответа на драйвер не дал :( как побороть - ответа пока нет :(

И в чем меряется размер лога спредовского ?

В байтах, на будничной загрузке на точке в районе 100 кб за рабочий день получается.