PDA

Просмотр полной версии : Ошибка 22 и ошибка 34



uranius
20.07.2015, 07:34
Добрый день.

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

Ситуация следующая.

Выделенный сервер, версия 6.97.8
Есть одна станция официанта и три кассы, закрытие происходит в час-два ночи - закрывают день по принципу - станция официанта, касса1, касса2, главная касса. И тут уже неделю как у нас пошла следующая ситуация - все кассы закрывают, отчеты снимают, на главной нажимается "Закрытие дня" - повторно открывают - пишет ошибка 34 (День сервера закрыт или начато закрытие), на остальных кассах и на станции официанта ошибка 22(попытка работать после закрытия дня).
И все бы было хорошо, если не одно НО - Утром на всех терминалах стоит та же ошибка - приходится перезагружать ркипер и тогда все станции так же стоят с 22 ошибкой, но на главной ошибок нет и нажав "Закрытие дня" её закрывают и переводят на след. день.

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

P.S. Можно было бы перезагружать сервер и ночью, но на сервере еще 4 кассы (со второй летней площадки и с баров), и там с rkeeper'ом активно работают вплоть до 4-х утра.
P.P.S. Данная проблема распространяется только на данные 3 кассы и станцию официантов. Бары и летняя площадка закрываются нормально - при том, что крутится все на одном сервере (upd. Наверное так писать не правильно, экземпляры то разные)


Помогите разобраться пожалуйста.

Спасибо.

sibgaba
20.07.2015, 12:47
Уфф... Смутное описание, давайте разбираться...

Есть сервер (железка) на котором у вас крутится выделенные сервера (rkserver.exe). Что именно вы перегружаете?

Приложение Сервер Кипера запускается с достаточными правами?



се кассы закрывают, отчеты снимают, на главной нажимается "Закрытие дня" - повторно открывают - пишет ошибка 34

А зачем они ее повторно открывают если рабочий день закончился?

Как вариант, после закрытия дня (когда все закроется нормально, но продаж еще нет. Остановить сервере Кипера, забекапить папку DATABASE, подкинуть чистую database из папки с дистрибутивом, и подложить в нее файл system.db (файл в котором хранится кассовая дата) из бекапа. Посмотреть что будет на следующий день.

uranius
20.07.2015, 13:33
Спасибо за ответ.


Уфф... Смутное описание, давайте разбираться...

Есть сервер (железка) на котором у вас крутится выделенные сервера (rkserver.exe). Что именно вы перегружаете?
Остался в наследство батник

net stop RKSERVER_SERVICE
taskkill /F /IM strserv.exe /T
taskkill /F /IM spred.exe /T
taskkill /F /IM rkserver.exe /T


pushd d:\rk6\rksrv
cor
start "Letnik" /MIN strserv.exe
ping 127.0.0.1 -n 7


pushd d:\rk6\rksrv2
cor
start "Bar" /MIN strserv.exe
ping 127.0.0.1 -n 7


pushd d:\rk6\rksrv3
cor
start "Letnik2" /MIN strserv.exe
ping 127.0.0.1 -n 7


pushd d:\rk6
call spred_restart.cmd


exit




spred_restart.cmd соответственно




net stop D__RK6_RKSRV_JETDIREC_SPRED
net stop D__RK6_RKSRV2_JETDIREC_SPRED
net stop D__RK6_RKSRV3_JETDIREC_SPRED




rem @PING 127.0.0.1 -n 8 > NUL


net start D__RK6_RKSRV_JETDIREC_SPRED
net start D__RK6_RKSRV2_JETDIREC_SPRED
net start D__RK6_RKSRV3_JETDIREC_SPRED








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


Как вариант, после закрытия дня (когда все закроется нормально, но продаж еще нет. Остановить сервере Кипера, забекапить папку DATABASE, подкинуть чистую database из папки с дистрибутивом, и подложить в нее файл system.db (файл в котором хранится кассовая дата) из бекапа. Посмотреть что будет на следующий день.
А данные никакие не потеряются? За предыдущие дни?

Извините за некомпетентные вопросы - но я в этом не особо. Вот кластер поставить или на юниксах что-либо - это моё - а тут ((

sibgaba
20.07.2015, 14:46
Ну батники эти перегружают все сервера и службы связанные с кипером.
У вас 3 выделенных сервера в папках d:\rk6\rksrv, d:\rk6\rksrv2 и d:\rk6\rksrv3

Как вариант, можно перегружать только 1, нужный вам сервер (что бы не мешать работе остальных точек).
Для этого нужно закрыть соответствующий strserv и закрыть 1 приложение кассового сервера.

Относительно чистой DATABASE.
В этой папке лежат оперативные (сменные) итоги. После того как закрытие дня прошло - там все файлы пустые. Подложив чистые из дистрибутива вы ничего не потеряете (только не забудьте system.db старый взять). Ну и бекап никто не отменял.

uranius
20.07.2015, 19:02
спасибо за ответ, попробуем сделать как Вы сказали

uranius
23.07.2015, 00:15
к сожалению не помогла замена на чистую database, на след. день такая же ситуация - закрывают кассу - утром приходит админ - ошибка 34, приходится перезагружать сервер и закрывать вчерашний день.

SH
23.07.2015, 08:56
Я бы попробовал запустить сервер не службой, а через strserv.

uranius
23.07.2015, 20:52
Я бы попробовал запустить сервер не службой, а через strserv.
спасибо, попробуем.

P.S. наверное не в тему - но не подскажете почему плодятся бочонки?
3971

SH
23.07.2015, 21:54
А это повторно пытается сервер стартовать...

sibgaba
24.07.2015, 07:53
почему плодятся бочонки?
errors.txt в папке с сервером посмотрите
Скорее всего там будет Can not add net name.

Т.е. жил-был сервер с именем RLSERV, это имя было объявлено в сети.
Потом он закрылся (например, после закрытия дня) и попытался запуститься заново. При запуске он пытается объявить в сеть свое имя (RLSERV), но кто то выше (я ХЗ кто там в винде заведует сетевыми именами на уровне протоколов) говорит ему: нифига, это имя уже занято (от прошлой реинкарнации RLSERV). Проходит какое то время и винда понимает что старого RLSERV уже и нет. Освобождает имя и новый экземпляр стартует.