Форум OlegON > Программы и оборудование для автоматизации торговли > Маркировка

Техническая реализация запрета продажи маркированных товаров : Маркировка

19.05.2024 6:02


19.01.2024 17:43
student
 
Цитата:
volk13 то у них и "realizable = false", и "sold = false"
из МР
При значении false параметра sold и значении false параметра realizable – нет информации о вводе в оборот кода идентификации

:) леваком торгуете
19.01.2024 17:48
volk13
 
Цитата:
student При значении false параметра sold и значении false параметра realizable – нет информации о вводе в оборот кода идентификации
так именно поэтому изначально я и говорю, что этот товар не в обороте (я же при предпродажной проверке КМ, после того, как found = true, анализирую признак realizable, и если realizable = false, то нет смысла дальше проверять остальные признаки, т.к. товар НЕ В ОБОРОТЕ, и по идее - его нельзя продавать будет потом, верно?)
Именно поэтому - я и ввёл сейчас "поблажку" для этих двух групп (вода и пиво), чтобы РМК не блокировал продажи тех КМ, которые производитель не ввёл в оборот по каким-то причинам (я хз по каким)
Правильно я поступил же? (что временно разрешил продавать такой товар)?
19.01.2024 17:52
volk13
 
Цитата:
student :) леваком торгуете
По Постановлению Правительства (о необходимости проверять КМ) - сроки обязательной предпродажной проверке вообще ни по каким группам не наступили (по сигаретам с апреля лишь только наступят)..
Так что - жду, когда "вымоется" весь "левак", и тогда уже "поблажку" отключу
;)
19.01.2024 17:55
student
 
Цитата:
volk13 и по идее - его нельзя продавать будет потом, верно
почему ? что мешает ввести в оборот ? сразу скажу к товароучету отношения не имею - только кассы и не в курсе можно так сделать простому смертному или нет :)
просто рано или поздно все равно спросят почему торгуешь тем что не в обороте
19.01.2024 17:59
volk13
 
Цитата:
student что мешает ввести в оборот ?
а почему это вдруг я должен вводить в оборот? (а не производитель)
Не знаю, как там будет потом, но если вдруг наступит по этим группам обязательный срок проверки, и какие-то КМ-ы будут не в обороте, то:
1. РМК не пропустит к продаже (поблажка-то будет отключена)
2. Поставщик будет иметь проблемы, вплоть до прекращения с ним работы (если будет продолжать гнать нам в розницу такие КМ)
...
Я думаю, что в течение пары месяцев всё "вымоется", и будет уже всё чётко... Я за этим слежу (по логам), так что - напишу сюда, когда увижу, что больше таких КМ (не введённых в оборот) у меня не попадается.
;)
19.01.2024 18:13
volk13
 
Цитата:
volk13 И я вот что подумал - указать в Шел.Run не "-1", а "0" (т.е. - не дожидаться завершения работы curl-а)...
НО дополнительно в цикле - контролировать появление ФайлаОтвета - и как только ФайлОтвета появился - цикл прерывать, ну а если не появился в течение указанных уже мною секунд (а не параметром curl) - то тогда цикл прерывать уже по моему таймауту... (это уже точно сработает)
сделал пока вот такой "костыль", чтобы посмотреть в чём конкретно проблема - в Шел или в Курл:
Цитата:
Шел = СоздатьОбъект("WScript.Shell");
//КодВозврата = Шел.Run(парКоманднаяСтрока,0,-1); // Шел.Run(парКоманднаяСтрока,0,"True")

// [+] костыль для проверки - зависает именно Шел, или всё-таки curl? Если Шел, то костыль не поможет! Вот и узнаем...
КодВозврата = Шел.Run(парКоманднаяСтрока,0,0); // Шел.Run(парКоманднаяСтрока,0,"False")
текТаймаут = 5; // сек.
НачалоТаймАута = _GetPerformanceCounter();
Пока ФС.СуществуетФайл(ФайлОтвета) = 0 Цикл
ВремяТаймАута = (_GetPerformanceCounter()-НачалоТаймАута)/1000;
Если ВремяТаймАута > текТаймаут Тогда
ЗаписатьВЛог("Сработал ""костыль"" принудительного таймаута в "+текТаймаут+" сек.");
Шел = "";
Возврат 0;
КонецЕсли;
КонецЦикла;
// [-]
;))
19.01.2024 20:03
volk13
 
Цитата:
volk13 сделал пока вот такой "костыль", чтобы посмотреть в чём конкретно проблема - в Шел или в Курл:
ну вот - отловил!
в одном из магазинов на одном из РМК в логах вижу:
Цитата:
19.01.24 19:38:28 "Сработал "костыль" принудительного таймаута в 5 сек."
Теперь попробую увеличить таймаут костыля до 7 сек, чтобы не совпадало со значением параметра curl, а было позже (для чистоты эксперимента).
Ну и тогда точно пойму - всё-таки в curl-е дело, или нет... (пока рано делать выводы, ибо - параметры в 5 сек. совпадали у меня и в курле и в костыле)
20.01.2024 13:42
victuan
 
Цитата:
volk13 КоманднаяСтрока = "" + ФайлCurl + " --connect-timeout 5 --max-time 10 "+СтрокаЗапроса+" -o """ + ФайлОтвета + """";
...
Шел = СоздатьОбъект("WScript.Shell");
КодВозврата = Шел.Run(парКоманднаяСтрока,0,-1);
Ты каждый раз, как нужно отправить запрос, создаешь Шелл из объекта.
Попробуй Шелл создать из объекта один раз (при старте РМК), объяви переменную глобальной и используй ее при каждом запроса, не создавая заново объект Шелл. У меня так сделано в модуле ЕГАИС для 1С 7.7.
Возможно, поможет, если я правильно понял твою ситуацию.
20.01.2024 13:57
volk13
 
Цитата:
victuan Возможно, поможет, если я правильно понял твою ситуацию.
нет, не поможет (поможет лишь для мнимого ускорения обработки, типа переменная Шел - будет доступна из глобального модуля..)
но как раз - в этом и может быть ещё и дополнительная проблема - что из-за того, что Шел в глобальном модуле - типа "утечка памяти" и т.д. (см. сообщения от student)
Поэтому - я специально каждый раз создаю новый com-объект.. (на скорость обработки - это практически не влияет)

А суть проблемы - в другом, и похоже уже понятно в чём (как я уже неоднократно писал не только в этой теме) - curl - очень редко, но метко - "зависает" (при непонятных условиях и причинах, несмотря на установленные таймауты в параметрах curl)/

И пока - я склоняюсь именно к своей версии (что проблема именно в curl, а не в Шел), но - продолжаю эксперименты, и в итоге - узнаю истину..

Так что - следи за темой.. ;)
20.01.2024 16:12
student
 
Цитата:
volk13 я склоняюсь именно к своей версии (что проблема именно в curl, а не в Шел),
курлом как и шелом пользуется оооочень много народу и про проблемаы с шелом я слышу часто, а вот про курл практически ничего (не то чтобы их нет - с натяжкой здесь можно применить что то типа закона больших чисел)
Цитата:
volk13 я специально каждый раз создаю новый com-объект
а про явное удаление не забываешь случаем ? неявное (по выходу с процедуры) не есть гуд...
Часовой пояс GMT +3, время: 06:02.

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