29.11.2021 10:19
VVasilevsky
 
Уважаемые коллеги
помогите пож-та знает ли кто средства интерактивной отладки скриптов lua в укм (если таковые имеются)
возможно кто то предложит не традиционный не стандартный способ если не существует таковых в УКМ 4

Заранее спасибо дайте идеи предложения буду искренне благодарен все испытаю попробую и здесь дам исчерпывающий отчет по проведенным эксперементам

Спасибо огромное всем рад и благодарен огромное спасибо владельцу ресурса OlegON Спасибо Вам за площадку данного обсуждения
29.11.2021 13:14
vdm
 
Скрипты lua сильно завязаны на объекты УКМ, соответственно без сервера/кассы отладить что-либо проблематично.
Т.е. стандартно и правильно - тестовый сервер + касса.
Если бы можно было назначить профиль lua отдельному магазину/кассе, можно было бы отлаживать на рабочем сервере. Но пока такого нет.

Если речь вообще про IDE + пошаговое выполнение - неплохо бы конечно, но все-же для целей УКМ избыточно.
29.11.2021 14:47
VVasilevsky
 
Цитата:
vdm Скрипты lua сильно завязаны на объекты УКМ, соответственно без сервера/кассы отладить что-либо проблематично.
Т.е. стандартно и правильно - тестовый сервер + касса.
Если бы можно было назначить профиль lua отдельному магазину/кассе, можно было бы отлаживать на рабочем сервере. Но пока такого нет.

Если речь вообще про IDE + пошаговое выполнение - неплохо бы конечно, но все-же для целей УКМ избыточно.
Понятно спасибо но у меня такая проблема
можно ли в скрипте receipt.lua внести такие изменения чтобы легче представить пример:

В чеке одна позиция цена 126.29 количество 1.5 кг стоимость 126.29 * 1.5 = 189.44 руб у позиции 3 и скидки:
скидка КАПС 18.94 руб
скидка КАСК 73.89 руб
скидка КАСС 49.92 руб
всего: 142.85 руб

стоимость товара с учетом скидок 189.44 руб - 142.85 руб = 46.69 руб
цена товара с учетом скидок 46.69 руб / 1.5 кг = 31.13

если 31.13 * 1.5 = 46.70

в данном случае чек должен делиться на отдельные строки в связи с этим вопрос

Модно ли в скрипте внести понятие корректирующей невязки например 0.01 руб: и тогда

стоимость товара с учетом скидок и невязки 189.44 руб - 142.85 руб - 0.01 = 46.68 руб
цена товара с учетом скидок 46.68 руб / 1.5 кг = 31.12

46.68 руб * 1.5 кг = 46.68 руб в данном случае разделения не потребуется

можно ли это сделать в скрипте чтобы в слипе это все отразилось?
29.11.2021 15:18
vdm
 
А смысл печатать на копейку меньше, если в ОФД уйдет другая сумма, без этого вашего "исправления".

Кстати на отдельной кассе можно активный профиль вручную в базе подменить: Настройка чеков через LUA скрипты
29.11.2021 16:04
VVasilevsky
 
Цитата:
vdm А смысл печатать на копейку меньше, если в ОФД уйдет другая сумма, без этого вашего "исправления".

Кстати на отдельной кассе можно активный профиль вручную в базе подменить: Настройка чеков через LUA скрипты
а разве до форматирования чека данные уходят в ОФД ? я по наивности полагал, что все что я делаю в скрипте lua, только то и уходит в ОФД если например я изменю цену и напишу другую, то в офд уйдет то что написано или нет? надо испытать
есть еще вариант в скрипте вызвать репорт например сделать корректировку непосредственно в базе например
local text_select = "";
text_select = text_select .. "update trm_out_receipt_discount set amount=amount-0.01 where receipt_header="..rh.." and cash_id="..ch.." and discount_type="..dt;
local qry_receipt_returns = ukm.query(__rep:get_conn(), text_select);

Вот динамическое включение скидки ручная это очень интересное решение, но чтобы она отрабатывала как атематическая это возможно ? т.е. сделать корректировку на 1 коп.
29.11.2021 16:21
vdm
 
Цитата:
VVasilevsky а разве до форматирования чека данные уходят в ОФД ?
В ФН и соответственно ОФД идет то, что УКМ насчитал сам. Печатаемое на бумаге на это никак не влияет.

Цитата:
VVasilevsky есть еще вариант в скрипте вызвать репорт например сделать корректировку непосредственно в баз
Запись в БД из lua не поддерживается. Было так когда-то, потом не проверял.
И вообще не стоит в такое влезать, легко поломается где-то что-то.

Цитата:
VVasilevsky Вот динамическое включение скидки ручная это очень интересное решение
Это вы хотите произвольно описанный алгоритм активации скидки. Нету.

Вся задача с этим уничтожением копейки к lua отношения не имеет.
30.11.2021 09:57
VVasilevsky
 
Цитата:
vdm В ФН и соответственно ОФД идет то, что УКМ насчитал сам. Печатаемое на бумаге на это никак не влияет.


Запись в БД из lua не поддерживается. Было так когда-то, потом не проверял.
И вообще не стоит в такое влезать, легко поломается где-то что-то.


Это вы хотите произвольно описанный алгоритм активации скидки. Нету.

Вся задача с этим уничтожением копейки к lua отношения не имеет.
Спасибо за ответ
правильно я понимаю никаких штатных механизмов повлиять на то чтобы погасить эту копейку не существует?
может есть какие либо НДВ (не декларированные возможности)?
30.11.2021 09:59
VVasilevsky
 
Заказчик хочет чтобы не было разделения строк он готов дать доп. скидку на 1 копейку чтобы не было деления позиции на доп. строки
30.11.2021 11:27
vdm
 
C+ за вас уже сделал (в этой форме чека общая сумма может не соответствовать сумме позиций)
30.11.2021 12:01
VVasilevsky
 
Спасибо про это я знаю... И пробивал, но мне нужно не это, мне нужно то, что я написал потому что как вы и написали сумма не совпадает (

стало быть нет других вариантов в setRetail и Frontol это реализовано (есть возможность добавить условие и дать динамическую скидку ) в УКМ видать этого не сделать (

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