[ОТВЕТИТЬ]
06.06.2011 05:07
RomanSmal
 
Доброго времени суток...

Задача не тривиальна: "Вывод подитога в момент подбора товара"

Сразу оговорю некоторые нюансы:
Нельзя использовать "постоянный подитог" - в связи стем, что у нас огромное количество скидок:
клиентов (150000)
маркетинговая схема (1)
рекламная акция (1)
перечни скидок (7)
скидка на чек для зарегистрированного клиента (2)
скидка на На классификатор и артикул (2)
скидка На штрихкод (3)
В общем после 15-20 позиции начинаются тормоза... к 40 ждать уже невозможно подитог по 10 минут делается...

В связи с чем вопрос? на экране кассира показывается сумма чека... причем она то не из класса "подитога"... есть ли возможность получить на дисплее покупателя именно её...
06.06.2011 07:08
Mtirt
 
Что-то не так у вас в консерватории...
При подобном количестве скидок (а это немного, на самом деле) тормозов при "постоянном подытоге" не ощущаю.
10.06.2011 07:12
RomanSmal
 
Цитата:
Mtirt Что-то не так у вас в консерватории...
При подобном количестве скидок (а это немного, на самом деле) тормозов при "постоянном подытоге" не ощущаю.
Может подскажете, где копать... тормоза серьезные после 15-20 позиции
10.06.2011 10:53
didinap
 
Да, сталкивался с данной проблемой.
Для себя выяснил что что то не так ввели.
Импортировал в демо базу тормозную скидку у меня тоже тормозило.
Создавал все с нуля тормозов не было.
верия была 48.01
14.06.2011 11:20
RomanSmal
 
Цитата:
didinap Да, сталкивался с данной проблемой.
Для себя выяснил что что то не так ввели.
Импортировал в демо базу тормозную скидку у меня тоже тормозило.
Создавал все с нуля тормозов не было.
верия была 48.01
? Ответы вызывают больше вопросов... А по существу?
14.06.2011 13:20
didinap
 
А по существу сказала Mtirt.
Надо покопаться в скидках.
Думаю что не то настроено.
Смотри в сторону наложения нескольких скидок на один или несколько товаров.
Если есть тестовая база попробуй настроить все поочередно, пробивая чек после каждой новой скидки. Тормозная скидка даст о себе знать.
Может и какой то глюк УКМ, но для решения надо понять в каком случае начинает тормозить.
На практике у многих настроено скидок больше и не тормозит.
А в твоем случае и у меня тоже так было было скидок поменьше но тормозило.
24.06.2011 09:33
RomanSmal
 
Цитата:
didinap А по существу сказала Mtirt.
Надо покопаться в скидках.
Думаю что не то настроено.
Ага ... за 4 года работы 42.6 - этого просто никто не заметил :connie_22:
Цитата:
didinap Смотри в сторону наложения нескольких скидок на один или несколько товаров.
Смотрели есть 4 взаимоисключающие скидки... и что?
Цитата:
didinap Если есть тестовая база попробуй настроить все поочередно, пробивая чек после каждой новой скидки. Тормозная скидка даст о себе знать.
Все скидки заставляющие делать пересчет табличной части... их у нас 4
Цитата:
didinap Может и какой то глюк УКМ, но для решения надо понять в каком случае начинает тормозить.
При пересчете табличной части
Цитата:
didinap На практике у многих настроено скидок больше и не тормозит.
А в твоем случае и у меня тоже так было было скидок поменьше но тормозило.
А это бред ... в двух оф. представительства С+ мне сказали что такое количество скидок вообще не может использоваться в дискаунтерах и тыкали пальцем... :on_the_quiet:
24.06.2011 09:35
RomanSmal
 
Жаль что ответа на вопросы так и не поступило... как прочем и от официалов... все молчат...
24.06.2011 17:39
akonev
 
Цитата:
RomanSmal А это бред ... в двух оф. представительства С+ мне сказали что такое количество скидок вообще не может использоваться в дискаунтерах и тыкали пальцем... :on_the_quiet:
Ключевое слово - "дискаунтер". Как бы формат предполагает, что цены "убиты" изначально.

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

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

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

Или удивиться, что при повторной ручной настройке той же схемы в текущей версии проблема не повторяется.
24.06.2011 17:48
didinap
 
У меня на данный момент:

На классификатор и артикул - 26
При покупке N кол-ва товара, из них на M - скидка - 11
На набор товаров (корзина) - 3

И это не предел, было и больше.
Так что у тебя не все так уникально как ты себе представляешь.
28.06.2011 08:38
RomanSmal
 
Цитата:
didinap У меня на данный момент:

На классификатор и артикул - 26
При покупке N кол-ва товара, из них на M - скидка - 11
На набор товаров (корзина) - 3

И это не предел, было и больше.
Так что у тебя не все так уникально как ты себе представляешь.
Значит обслуживающие нас специалисты не такие уж и специалисты...:ireful2:
меня просто поражают представленные вами цифры... а сколько же товаров участвуют в каждой из 26 скидок на "классификатор и артикул"?
и в 11 скидках ???
может Вы неправильно меня поняли и речь в вашем посте не о типах скидок а о товарах в них?
28.06.2011 08:43
Mtirt
 
Если честно, то продолжение этой темы в подобном тоне считаю бесперспективным.
Предлагаю переслать базу в тех.поддержку С+, чтобы они разобрались по каким причинам и где у вас всё "тормозит".
28.06.2011 09:39
RomanSmal
 
В общем вопрос с "постоянным подитогом" отложен в связи с тем, что задачу решили пересчетом таблицы чека при событии вывод на дисплей...

function print_display_item_20_2(__display, __item)
local text = "";
text = text .. __display:goto_xy(0,0);
text = text .. ukm.adjustment(ukm.left(__item.name, 12), tostring(__item.total), 20, " ");
text = text .. __display:goto_xy(0,1);
if __item.type == ukm.item.cancel then
text = text .. ukm.adjustment("ОТМЕНА: ", tostring(__item.total),20, " ");
elseif __item.type == ukm.item.void then
text = text .. ukm.adjustment("СТОРНО: ", tostring(__item.total),20, " ");
else
-- попробуем обратиться через таблицу покупок
local total_summ = ukm.currency(0);
local normal_items = __item.receipt.items:leavenormal();
for j = 0, normal_items:size() - 1 do
local i = get_table_from_item(normal_items:at(j));
total_summ = total_summ + i.total;
end
text = text .. ukm.adjustment("ИТОГО: ", tostring(total_summ), 20, " ");
end
return text;
end

работает отлично...
28.06.2011 13:01
OlegON
 
На будущее предлагаю поподробнее писать, кто тупит. Хотя бы по процессам посмотреть на кассе. Для MySQL можно включить slow-query-log и погонять первый батник из предложенного.
29.06.2011 04:14
whitewizard
 
Можно ещё добавить, что там стоят первые LexPos-ы (которые синие) с 128Mb памяти на борту
29.06.2011 12:14
didinap
 
Цитата:
whitewizard Можно ещё добавить, что там стоят первые LexPos-ы (которые синие) с 128Mb памяти на борту
Ну тогда если не сделано то можно подкрутить базу под ОЗУ.
Опции темы


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

 

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