На главную страницу Версия-Т
VTSoft.ru

Пробиваем в товара - в списке покупок появляется 16 !!!!!!!!


RSS
Пробиваем в товара - в списке покупок появляется 16 !!!!!!!!
 
Подскажите как бороться?

Просваем один чек на 3 товара - в списке покупок их уже штук 6
Просваем один чек на 1 товар - в списке покупок их 2 штуки
и так далее.
Похожая ситуация была с Катраном. Неужели все повторяется? :(

Еще проблема - выбрать список покупок, относящихся к чеку нельзя.
Есть функции GetNextSale - но так придется перебирать все покупки кассы и делить их по чекам, выход но не красиво.
второй способ это перебирать чеки и в каждом чеке делать цикл по
GetSale , указывая при этом номер ленты, чека и кассы, номер покупки. Все вроде хорошо - но неработает. Первую покупку получаем, а остальные никак. Не пойму в чем дело. :
 
Цитата
Просваем один чек на 3 товара - в списке покупок их уже штук 6. Просваем один чек на 1 товар - в списке покупок их 2 штуки
и так далее.


Какая версия ПО кассы? Каким кабелем была подключена касса? Длина кабеля без применения сетевой аппаратуры не должна превышать 3-5 метров. Распайка для АМС-100 должна быть 2-2,3-3,5-5. Лишних проводов быть не должно.
Можно попробовать заменить кассу. Какие результаты?

Цитата
Еще проблема - выбрать список покупок, относящихся к чеку нельзя. Есть функции GetNextSale - но так придется перебирать все покупки кассы и делить их по чекам, выход но не красиво.
второй способ это перебирать чеки и в каждом чеке делать цикл по
GetSale , указывая при этом номер ленты, чека и кассы, номер покупки. Все вроде хорошо - но неработает. Первую покупку получаем, а остальные никак. Не пойму в чем дело. :


Насколько я понял речь идет об OnlineServer'е.
Каким обрзом Вы организовываете алгоритм считывания покупок?
Алгоритм должен быть примерно таким (напишу на Pascal):

OLS:=CreateOleObject ('OnlineServer.OnlineManager');
OLS.GetSaleCountInCloseCheck(NetNum,KLNum,ChkNum);
Count:=OLS.SaleCount;
for i:=1 to Count do
begin
OLS.GetSale(NetNum,KLNum,ChkNum,i);
//считываем параметры покупки из соответствующих свойств
//сервера
end;

Полную реализацию этого алгоритма смотрите в проекте OLEDemo, который идет в поставке с OnlineServer'ом.
 
С размножением покупок вроде разобрался (не очищал список покупок после обработки всех чеков )
Но странно что функция GetSale не смотря на то что передаем номер покупки 1 позиционируется на 2-ю и во всем цикле
значение OnLineServer.slPNumber = 2, т. е при переборе покупок так как указано в примере всегда обрабатывается одна и та же запись, причем даже не первая.
Подскажите в чем может быть загвоздка