[ОТВЕТИТЬ]
02.11.2009 13:20
KozzZaNoVa
 
Доброго всем дня. Вопрос, реализовавал ли кто нибудь следующую схему. Установка УКМ сервера и поднятие данных с касс по продажам и сменам? Теоретическую возможность С+ подтверждают установкой настроек как на самом УКМ сервере и прописыванием строк с таблиц trm_in_pos на кассах в trm_in_pos на сервере. Могут ли быть еще какие-то подводные камни?
02.11.2009 13:22
Mtirt
 
Ты о чем?
У тебя сервер полетел?
И ты хочешь поднять новый с нуля и залить на него данные с касс?
Я правильно понимаю?
02.11.2009 13:36
KozzZaNoVa
 
Абсолютно правильно. Версия УКМ 46 sp1
02.11.2009 20:48
KozzZaNoVa
 
Проделал всю процедуру по восстановлению записей в trm_in_pos, после чего при попытке стартовать УКМ сервис, тут же падает. В логах указывается единственное сообщение: "Служба "УКМ сервер" завершена из-за ошибки в среде". Есть идеи как это обойти? Возможно нужно данные еще в какие-то таблицы добавить?
03.11.2009 10:15
vdm
 
Как вариант - включить лог запросов на mysql сервере
(log = sqlquery.log) и посмотреть последние запросы.
Муторное дело, но однажды таким образом нашел, чего не хватает кассе после обновления.

"Ошибка в среде" - видел в старых версиях укм при запуске без лицензии или без ключа, но в новых не видел, с ключем вряд ли связано.
03.11.2009 14:28
KozzZaNoVa
 
Ниже "ругательства" из логов самого УКМ сервера, mysql трогать думаю бесполезно, он работает нормально и не падает, проблема имеенно с сервисом УКМ, ну конечно по понятной причине не хватает каких то записей.

23:38:04: FATAL:debug#D:\DEVEL\build-br-46_sp1-2009_03_04_18_12_14\ukmserver\statemonitor.cpp(106) StateMonitor::CTree::create:Parent '/CASHLINE/2001' not found for CASH
23:38:04: FATAL:Global:Parent '/CASHLINE/2001' not found for CASH
03.11.2009 14:37
Mtirt
 
Кассовой линейки нет на УКМ сервере. С кодом 2001.
03.11.2009 14:50
KozzZaNoVa
 
Исходя из этого я понимаю что не хватает записи в какой-то таблице. trm_in_cashline такой таблицы нет. Может она как то по другому называется?
03.11.2009 15:00
KozzZaNoVa
 
Да сравнил на другом сервере подходит по смыслу и значению поле store_id. Теперь такая проблемма, оно у меня на поднятом сервере равно 38001. Ежели мне его заменить на желаемое 2001, не улетит ли вообще все в тар-тарары.
03.11.2009 15:34
KozzZaNoVa
 
В описании таблиц посмотрел поле store_id которое в таблице trm_in_pos и равно 2001, в описании сказано что это поле store_id int(11) id магазина. Таким образом к кассовой линейке как понимаю отношения иметь не может. Где искать правду?
03.11.2009 15:36
vdm
 
Бэкап никто не отменял, а включать такой сервер в сеть с кассами в любом случае не стоит, оставить подключенной одну, с ней и экспериментировать.

store_id это и есть кассовая линейка - магазин в новой терминологии УКМ
Оно не только в config* используется, надо все таблицы просматривать, и не факт, что везде оно называется именно так.

Куда ж вы бэкап дели, любой самый древний был бы лучше, чем все с нуля.
03.11.2009 15:38
Mtirt
 
А в trm_in_config_cashline и trm_in_pos поля config_group_id совпадают?
03.11.2009 15:51
vdm
 
И еще, что мешает перелить все trm_in* с касс в сервер и от этой точки плясать ?
03.11.2009 16:02
KozzZaNoVa
 
Цитата:
Mtirt А в trm_in_config_cashline и trm_in_pos поля config_group_id совпадают?
В trm_in_config_cashline нет не совпадают, но и на работающем сервере смотрел, тоже не совпадают
03.11.2009 16:51
KozzZaNoVa
 
Разобрался что это было. Это действительно id магазина, который формируется еще при установке при вводе кода сервера. Таким образом если у меня введен код сервера 2 то значение будет равно 2001. Таблица trm_in_store. Для верности думаю переставить УКМ с новыми параметрами. Оказывается я самого главного не угадал :)
03.11.2009 18:49
KozzZaNoVa
 
В общем все вроде получилось, всем спасибо. Смены сели в УКМ сервер.
04.11.2009 05:23
KozzZaNoVa
 
Наблюдается новая проблема, информацию с касс я получил, а вот теперь кассы не получают информацию от сервера. Можно ли с этим что-то сделать?
04.11.2009 11:19
vdm
 
На кассах сбросить версии таблиц.

Код:
     update cnv_table_client_versions
     set latest_version=0
     where  table_name like 'trm_in%';
     commit;
Еще раз предупреждаю, не стоит делать это сразу на всех кассах.
Легко можно остановить кассовую линейку некорректными данными с сервера.
04.11.2009 14:37
didinap
 
Я бы порекомендовал на всех кассах выполнить данный скрипт.

delete from cnv_table_versions where table_name like "%trm_in%"

и еще

delete from cnv_table_client_versions where table_name like "%trm_in%"

Скрипт очистит версионность на кассах которые отвечают за прием информации с сервера.
04.11.2009 16:05
KozzZaNoVa
 
К сожалению попытка одна, сервер стоит в г.Уральск, а я территориально в Алматы. Если что-то упадет то решение проблемы только командировка. В общем пробую. О результатах отпишусь.
04.11.2009 17:18
KozzZaNoVa
 
Всем огромное спасибо за участие в проблеме. Если у кого будет необхходимость могу пошагово описать что нужно сделать для подъема данных сервера с касс. Но конечно же проще и надежней делать бэкапы! :)
04.11.2009 17:32
didinap
 
Цитата:
KozzZaNoVa Всем огромное спасибо за участие в проблеме. Если у кого будет необхходимость могу пошагово описать что нужно сделать для подъема данных сервера с касс. Но конечно же проще и надежней делать бэкапы! :)
Не плохо было бы все таки сделать это.
Мало кому может срочно понадобится.
05.11.2009 15:01
KozzZaNoVa
 
Да действительно, вдруг кому срочно понадобится. Предупреждаю испытано только для версии 1.46 sp2 (но думаю подойдет для любого сервиспака этой версии).
1. Подготовить сервер к установке УКМ (ОС и т.д.)
2. Получить с каждой кассы запись из таблицы trm_in_pos, где active=1 и deleted=0 (на случай если касса не раз переделывалась, думаю вам понадобится только активная конфигурация).
3. Далее до окончания процесса кассы от обмена с сервером стоит отключить "от греха подальше" - физически дернуть патчкорд с кассы, или остановить ukmclient на кассе (я просто вырубал второй кассовый интерфейс на серваке).
4. Вспомнить все настройки для УКМ (совет С+) и воспроизвести их на вновь установленном УКМ-сервере. На мой взгляд самый главный здесь шаг от которого многое зависит это правильно поставить номер сервера при инсталяции, именно поэтому я немного затормозился с восстановлением. Если забыли номер то не беда в той же записи которую вы копируете с кассы есть поле store_id, три последние цифры будут порядковым номером и зависеть от того сколько у вас магазинов заведено (чаще всего это будет 001) а вот все что перед этими тремя цифрами и есть код вашего сервера.
5. Далее настраиваем параметры сервера (магазин, конфигурационные группы и т.д.)
6. Останавливаем УКМ-сервер, вставляем в таблицу УКМ-сервера trm_in_pos сохраненные записи с касс, любым mysql менеджером, либо запросом.
7. Запускаем в сервисах УКМ-сервер, все должно работать. В Администрирование -> Магазины -> Кассы, должны появится добавленные вами кассы. Проверьте соответствие группе Конфигурационной группе касс.
8. Чтоб не утроить свалку из повалившихся на сервер данных по одной возвращайте кассы в сеть. Так удобнее логи отследить в случае чего. На моем примере все прошло гладко и все данные о продажах "поднялись" на сервер.
9. Используем скрипт любезно предоставленный didinap, а именно:
delete from cnv_table_versions where table_name like "%trm_in%";
delete from cnv_table_client_versions where table_name like "%trm_in%";
commit;
для каждой кассы, что бы не рисковать смены были закрыты. После чего кассу приходилось перезапускать и вот в принципе все после перезагрузки касса принимала абсолютно все данные как родные, и появлялась активной в разделе Администрирование -> Терминалы -> Уведомления.

Вроде все достаточно подробно.
10.11.2009 15:57
wood30
 
Падал УКМ-сервер версии 44sp6, архива вообще не было.
Делали следующее, поднимали новый сервер.
Кассы разрегистрировали. После перезагрузки регистрируем заново, при этом касса передает продажи на сервер.
Далее настраиваем на сервере маркетинговые схемы и все остальное...
По окончании восстановления сервера, кассы лучше переустановить.
Для разрегистрация кассы:
mysql -uroot -Dukmclient
delete from trm_in_pos;
commit;
Опции темы


Часовой пояс GMT +3, время: 05:25.

 

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