PDA

Просмотр полной версии : Сохранить чек отправленный на печать



Zapp
08.02.2013, 01:37
Можно ли как-нибудь сохранить чек отправленный на печать в отдельную папку на терминале?
В виде текстового файла или картинки?

В 7ке и 6ке.

Update:
Правильно ли я понимаю, что информация по всем чекам хранится в файлах check.db (# чека и сумма) и rcheck.db (# чека и блюда)?
Можно ли тогда брать информацию из этих файлов напрямую (например после каждой печати) и сохранять в txt файл в отдельную папку?

SH
08.02.2013, 04:24
и 6ке.
Можно. Здесь на форуме писали как. Надо где-то Servlog, что ли, прописать. Не помню на память точно, может, кто-то более памятливый завтра подскажет.


Правильно ли я понимаю, что информация по всем чекам хранится в файлах check.db (# чека и сумма) и rcheck.db (# чека и блюда)?
Можно ли тогда брать информацию из этих файлов напрямую (например после каждой печати) и сохранять в txt файл в отдельную папку?
Можно, только все делается гораздо проще.


В 7ке
Тоже можно.

Zapp
08.02.2013, 04:42
Спасибо, что ответили!

А "гораздо проще" это как?

Rus75lan
08.02.2013, 10:46
Надо где-то Servlog, что ли, прописать
на сервере - LogService=ON - это для сервис-чеков и только если печать направлена через сервер.
на клиенте - LocalStoreCheck=ON - это для чеков.
ну а если через Spred - то там тоже логи ведутся.
а 7-ке пока не знаю :)

PaViS
08.02.2013, 12:09
Можно ли как-нибудь сохранить чек отправленный на печать в отдельную папку Интересует сохранение оплаченных чеков или заказов на приготовление?
И какая конечная цель?
Будет понятна цель, можно найти решение.

SH
08.02.2013, 12:18
на клиенте - LocalStoreCheck=ON - это для чеков.
Нет. Это совсем для другого параметр, он отвечает за сохранность _текущего_, _несохраненного_ чека в случае перезагрузки станции. Если начали набивать чек, не сохранили и станция перезагрузилась по какой-то причине, то после перезагрузки увидим стол на том месте, на котором остановились. Помогает от злого умысла и при плохой связи.

Zapp
08.02.2013, 16:16
Интересует сохранение оплаченных чеков или заказов на приготовление?
И какая конечная цель?
Будет понятна цель, можно найти решение.

интересует сохранение оплаченных чеков.

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

я думал разбить это на два этапа:
1. вытягивать данные по последнему чеку или пречеку из кипера
2. формировать купон по заданным параметрам и отправлять на печать на кассовый принтер.

SH
08.02.2013, 17:08
или пречеку из кипера
Вытянуть данные из открытого стола в RK6 крайне тяжело. Кроме того, у Вас в задании написано

оплате определенных блюд
- а пречек не подразумевает оплату, он может быть отменен и блюдо удалено.
Закрытый чек, кстати, тоже может быть удален.
Но в целом, ИМХО, мониторить чеки и анализировать последний - более правильный вариант. Вот как Вы хотите отправлять в RK6 свое задание на фискальный регистратор?!

Zapp
08.02.2013, 17:27
Вытянуть данные из открытого стола в RK6 крайне тяжело. Кроме того, у Вас в задании написано
- а пречек не подразумевает оплату, он может быть отменен и блюдо удалено.
Закрытый чек, кстати, тоже может быть удален.


я сейчас пытаюсь понять какой вариант возможен, и какой проще.


Но в целом, ИМХО, мониторить чеки и анализировать последний - более правильный вариант.

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


Вот как Вы хотите отправлять в RK6 свое задание на фискальный регистратор?!

если я правильно понимаю, то все кассовые принтеры понимают команды ESC/POS. Или есть исключения?

Ну или печатать напрямую через Windows или DOS?

SH
08.02.2013, 19:36
если я правильно понимаю, то все кассовые принтеры понимают команды ESC/POS. Или есть исключения?
Во-первых, все-таки - кассовый принтер или фискальный регистратор? Или Вы не знаете разницы? Должен быть ФР, если в Москве.
И что с того, что понимают? Порт-то занят R-Keeper.

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


а как их мониторить?
Мы отслеживаем БД.

Zapp
08.02.2013, 20:01
Во-первых, все-таки - кассовый принтер или фискальный регистратор? Или Вы не знаете разницы? Должен быть ФР, если в Москве.
И что с того, что понимают? Порт-то занят R-Keeper.

разницу понимаю, но мне всегда казалось, что принтера на POS - это кассовый принтер у которого есть блок фискального регистратора.


И что с того, что понимают? Порт-то занят R-Keeper.

а можно поподробнее? Что значит порт занят R-Keeper? на этот порт больше никакая программа не может слать запросы на печать? это на 7ке или 6ке, или на обоих?



Мы отслеживаем БД.

Ну это как раз, что я и думал сделать. А как вы это делаете? :)

---------- Добавлено в 19:01 ---------- Предыдущее сообщение было размещено в 18:50 ----------

Я правильно понимаю, что подход будет разным для 7ки и 6ки?

SH
08.02.2013, 20:33
на этот порт больше никакая программа не может слать запросы на печать?
Да.


это на 7ке или 6ке, или на обоих?
На обоих.


Я правильно понимаю, что подход будет разным для 7ки и 6ки?
Правильно.


это как раз, что я и думал сделать. А как вы это делаете?
В каком смысле, как? Проверяем нужные файлы *.db постоянно с маленькими интервалами.

---------- Добавлено в 19:33 ---------- Предыдущее сообщение было размещено в 19:32 ----------

Я думаю, Вам надо отдельный принтер ставить для этих купонов. Плюс по-крайней мере будет тот, что в этой части не будете зависеть от версии R-Keeper.

Zapp
08.02.2013, 20:55
Да.


На обоих.

Вот это новость. А я думал это стандартные принтеры подключены к терминалу, а не к самому киперу.
Тогда как осуществляется печать с разных терминалов на одном принтере? Я вроде как натыкался на тему, что можно настроить печать с разных терминалов на один принтер.


В каком смысле, как? Проверяем нужные файлы *.db постоянно с маленькими интервалами.


а какий файлы *.db нужно проверять?


Я думаю, Вам надо отдельный принтер ставить для этих купонов. Плюс по-крайней мере будет тот, что в этой части не будете зависеть от версии R-Keeper.

Не удобно и дорого. Места на кассе мало, чтобы еще один принтер ставить + ведь нужно его тоже обслуживать.

На что влияет версия R-Keeper?

SH
09.02.2013, 04:51
можно настроить печать с разных терминалов на один принтер.
В RK6 - на принтер да, но не фискальный регистратор.
В RK7 - на фр тоже, но только из R-Keeper, другие приложения при попытке доступа получат ошибку "порт уже открыт".


а какий файлы *.db нужно проверять?
Смотря зачем. Просто на предмет появления чека - check.db достаточно.


Не удобно и дорого. Места на кассе мало, чтобы еще один принтер ставить + ведь нужно его тоже обслуживать.
А других вариантов у Вас просто нет.


На что влияет версия R-Keeper?
Вот этот вопрос не понял. В каком аспекте?

Zapp
10.02.2013, 00:53
В RK6 - на принтер да, но не фискальный регистратор.
В RK7 - на фр тоже, но только из R-Keeper, другие приложения при попытке доступа получат ошибку "порт уже открыт".

Странно. Насколько я вижу все принтеры и фр имеют драйвера Win/DOS, а значит на них возможно печать через стандартный интерфейс печати. Или нет? Может ткнете меня в вики или статью где можно больше почитать. А то видимо я гуглу неправильные вопросы задаю, и он ничего толкового не дает.



Смотря зачем. Просто на предмет появления чека - check.db достаточно.

на предмет появляения чека и позиций в этом чеке



А других вариантов у Вас просто нет.

нет невозможного :) сейчас с вашей помощью что-нить придумаю.


Вот этот вопрос не понял. В каком аспекте?
в аспекте управления принтером и хранения данных.

SH
10.02.2013, 04:13
Странно. Насколько я вижу все принтеры и фр имеют драйвера Win/DOS, а значит на них возможно печать через стандартный интерфейс печати. Или нет? Может ткнете меня в вики или статью где можно больше почитать. А то видимо я гуглу неправильные вопросы задаю, и он ничего толкового не дает.
Ну какой гугл, это же R-Keeper...
Насчет RK6 все четко: там используются свои dll и напечатать что-то свое на фискальник нельзя, даже другие станции по сети не могут.
Насчет RK7: только-только на неделе сам пытался драйвером Штриха пробиться при загруженном R-Keeper - бесполезно, "порт открыт другим приложением" и все тут. Возможно, есть обходные пути, но мне они неизвестны.

на предмет появляения чека и позиций в этом чеке
На предмет появления - check.db, на предмет позиций - rcheck.db


в аспекте управления принтером и хранения данных.
Вкратце я рассказал. С хранением данных в RK7 все еще жестче, я не знаю, как там получить сведения онлайн.


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

Zapp
10.02.2013, 08:02
Ну какой гугл, это же R-Keeper...
Насчет RK6 все четко: там используются свои dll и напечатать что-то свое на фискальник нельзя, даже другие станции по сети не могут.
Насчет RK7: только-только на неделе сам пытался драйвером Штриха пробиться при загруженном R-Keeper - бесполезно, "порт открыт другим приложением" и все тут. Возможно, есть обходные пути, но мне они неизвестны.

А так http://social.msdn.microsoft.com/forums/en-US/csharpgeneral/thread/cb34a005-0545-40df-b031-5e945ec0eb95/ не?


На предмет появления - check.db, на предмет позиций - rcheck.db
Вкратце я рассказал. С хранением данных в RK7 все еще жестче, я не знаю, как там получить сведения онлайн.

вот меня как раз и интересует "открыты" ли эти таблички, или нужно глубоко лезть?


Удачи. Но советую отвыкнуть называть фр "принтером", по-крайней мере, в общении со специалистами принесет больше ясности и меньше недопонимания сразу.

Ок :)

---------- Добавлено в 07:02 ---------- Предыдущее сообщение было размещено в 06:56 ----------

кстати, а такая засада с монополией RK6/7 для всех фр? и тех что по USB и тех что по RJ45? или только для тех кто по LPT/RS232?

SH
10.02.2013, 18:22
кстати, а такая засада с монополией RK6/7 для всех фр? и тех что по USB и тех что по RJ45? или только для тех кто по LPT/RS232?
ФР работают либо по RS232 (и такой режим рекомендуется), либо через USB (не рекомендуется).


А так http://social.msdn.microsoft.com/for...-5e945ec0eb95/ не?
Забудьте. Нет ФР, работающих через LPT.


вот меня как раз и интересует "открыты" ли эти таблички, или нужно глубоко лезть?
Относительно открыты - сервер их держит открытыми для записи, для анализа надо делать копии.

PaViS
11.02.2013, 02:44
А других вариантов у Вас просто нет.
нет невозможного сейчас с вашей помощью что-нить придумаю."А че там думать? Прыгать надо!" (С) старый анекдот)
А "прыгать" нужно в сторону параметра LogService = ON
и каталога SERVLOG.
Мне проверять лень, но в таких логах я и чеки когда-то видел.

Zapp
12.02.2013, 01:44
"А че там думать? Прыгать надо!" (С) старый анекдот)
А "прыгать" нужно в сторону параметра LogService = ON
и каталога SERVLOG.
Мне проверять лень, но в таких логах я и чеки когда-то видел.

про чеки более менее понятно. теперь встал вопрос с печатью. я так понимаю кипер держит порт на себе и никому проходу не дает.

Интересно, а если принудительно забрать порт, а потом отпустить. Кипер его обратно подхватит?

Второй вопрос. Я правильно понимаю, что ФР можно настроить для печати через сервер? А значит есть какой-то протокол по которому могут отправлять на печать другие программы через этот же сервер. Есть надежда?

SH
12.02.2013, 02:19
Второй вопрос. Я правильно понимаю, что ФР можно настроить для печати через сервер?
В RK6 - нет, нельзя.

Zapp
12.02.2013, 14:21
В RK6 - нет, нельзя.

в RK7?

SH
12.02.2013, 15:09
Можно, но как прикинуться станцией?
Есть официальный интерфейс XML, но его возможностей я не знаю, да и стоит он 90 тысяч :)

Zapp
12.02.2013, 22:00
Можно, но как прикинуться станцией?

придумаю. главное правильно поставить задачу :)



Есть официальный интерфейс XML, но его возможностей я не знаю, да и стоит он 90 тысяч :)

а где можно почитать по-подробнее?


По вашему опыту, для каких целей ФР делают сетевым, а для каких локальным? Я же правильно понимаю, это нужно задавать в настройках.
И на что влияет ФР настроен как сетевой или как локальный? Настройки безопасности какие? процесс, скорость печати?

SH
13.02.2013, 02:16
а где можно почитать по-подробнее?[/quote
Это надо разработчика запрашивать, UCS.

[quote="Zapp;54357"]По вашему опыту, для каких целей ФР делают сетевым, а для каких локальным?
Для удобства, экономии.


И на что влияет ФР настроен как сетевой или как локальный?
Вроде бы ни на что.

Zapp
13.02.2013, 03:34
а где можно почитать по-подробнее?[/quote
Это надо разработчика запрашивать, UCS.

мне почему-то кажется, что вы больше знаете :)


Для удобства, экономии.
Вроде бы ни на что.

т.е. если сейчас ФР настроен как локальный, то я могу его просто настроить как сетевой, и никаких проблем не возникнет.

и тогда останется придумать, как "прикинуться станцией" :)

SH
13.02.2013, 04:51
мне почему-то кажется, что вы больше знаете
Тогда я и сам не знаю :) я не интересовался пока этим интерфейсом.


если сейчас ФР настроен как локальный, то я могу его просто настроить как сетевой, и никаких проблем не возникнет.
В RK7 - да. Там вообще нет понятия "сетевой-локальный". Есть разделяемые ресурсы оборудования и абсолютно пофиг, где они находятся.

beda
13.02.2013, 22:47
заметки фенолога.
сегодня вспомнил молодость и давил кнопки у клиента, как настоящий.
вспоминал белый снег, сахар, девок.

хинт - забавные эффекты получаюцца, если вместо пречекового или отчетного принтеров вписать "1.txt". по поводу цифры не настаиваю :)


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

Zapp
14.02.2013, 01:52
заметки фенолога.
сегодня вспомнил молодость и давил кнопки у клиента, как настоящий.
вспоминал белый снег, сахар, девок.

хинт - забавные эффекты получаюцца, если вместо пречекового или отчетного принтеров вписать "1.txt". по поводу цифры не настаиваю :)

ничего не понял :)
А что за эффекты?

SH
14.02.2013, 02:17
Zapp, beda разговаривает намеками :)
Я не пробовал.

Zapp
14.02.2013, 02:46
Zapp, beda разговаривает намеками :)
Я не пробовал.

Видимо что-то знает. :)



SH, теперь по поводу как "прикинуться станцией".
Если я правильно понимаю, то если ФР настроен как серверный, то на него может печатать любой терминал находящийся в этой же сети. При настройке такого сетевого ФР, там указываются IP принтера и т.д.? Или просто выбирается принтер из выпадающего списка?

SH
14.02.2013, 13:59
если ФР настроен как серверный, то на него может печатать любой терминал находящийся в этой же сети.
Не совсем так. В RK7 не обозначается как-то специально "как серверный". Но да, печатать может любой.


При настройке такого сетевого ФР, там указываются IP принтера и т.д.?
ФР не сетевое устройство, у него нет ip-адреса.


Или просто выбирается принтер из выпадающего списка?
Да, именно так.