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

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

19.05.2024 8:04


19.01.2024 12:52
volk13
 
Цитата:
student в древние времена было замечено что он сам по себе временами виснет при постоянном использовании
А вот если виснет сам Шел (а не курл в нём) - то тогда моя идея проблему не решит, ибо тогда дело и до цикла даже не дойдёт... (и через Попытка-Исключение не сработает, если "зависло" на этом шаге..уже знаю)
Хм.. вот же засада..
И что можно придумать тогда? От Шела отказываться получается придётся.. Но тогда будет проблема с чёрными окошками...
Про Шел-то я как раз и не подумал, что в нём может быть источник проблемы (а походу - так и есть)
19.01.2024 12:55
volk13
 
Получается - нужно с карликом ближе знакомиться срочно.. (если дело не в курле)
19.01.2024 13:00
volk13
 
Цитата:
MWWRuza есть несколько "нюансов", но я их уже отловил и знаю как обойти.
расскажи про эти нюансы, чтобы на эти грабли и мне не наступать лишний раз
19.01.2024 13:02
student
 
Цитата:
volk13 т.к. сам реализовываю
раз так то посмотри все таки в сторону возможного ухода от "СоздатьОбъект("WScript.Shell")" - наверняка как ни будь по другому у тебя по другому сделать можно :)
просто на WScript в 1с много ругани :) м.б. стоит что то типа "javascript" или "Shell.Application"

пы сы
в загашиках есть ссылка - посмотри - вдруг поможет

Правка: student, 19.01.2024 13:04
19.01.2024 14:59
MWWRuza
 
Цитата:
volk13 расскажи про эти нюансы, чтобы на эти грабли и мне не наступать лишний раз
Ну, нюансов тут на самом деле два:

1. Если в конфе используется парсинг XML через MS_DOM или MS_XML_DOM, то карлика нужно загрузить первый раз до обращения к DOM, иначе на некоторых компах вылетает 1С. Без "синего экрана", без падения системы, просто закрывается и все.
Я гружу при старте системы, и сразу прибиваю. Глобальную переменную не создаю, не нужно, лучше грузить перед каждым обращением к нему. Об этом даже в текстовке написано, что нельзя создавать глобальный объект.. Так работает все стабильно, ничего не вылетает. И не важно, что в ГМ сразу после загрузки ВК и создания объекта, я сразу делаю Карлик = 0;... Пох, спасает от вылета при всех последующих обращениях к нему.

2..Иногда, при некоторых условиях, если приемником ответа является строка JSON - уродуется содержание строки, если ответ это ошибка. Например числовая ошибка "error:-32000" возвращается непойми как, типа как строка "erorr: -32.txt.txt.txt" при этом без кавычек... Парсер JSON от такого безобразия офигевает и падает в ошибку.
При этом, если приемник это файл - то в нем нет такой проблемы, все идеально. Столкнулся, когда интеграцию со СБИС делал. Если ошибки в ответе сервера нет - то и такой проблемы не наблюдается, строка JSON прилетает абсолютно валидная, не зависимо от того, какие там числовые или строковые данные содержатся.

Все эти мои "мытарства" есть на Мисте, там по "карлик" ищется элементарно, ссылку давать не буду.
Но, эти проблемы легко обходятся, и надеюсь Джелф поправит в следующих сборках(не известно только, когда они будут), хотя, и так все работает нормально, у меня проблем не вызывает - главное нашел возможности обойти эти мелкие косяки.

Правка: MWWRuza, 19.01.2024 15:08
19.01.2024 15:24
volk13
 
Цитата:
student а почему 7 - я что то не помню такого для WindowStyle...
В связи с зависанием Шела (см. выше), - я достал из своей библиотеки уже потрёпанные книжки, стал листать пожелтевшие от времени страницы одной из книг, и вот - наткнулся таки, на расширенные параметры метода Run, на странице 116. (не от балды же я их взял когда-то давно) ;)
Правда - там их от 0 до 6 указано, а где я взял 7 - не помню, может просто ошибся.. (а может из другого метода - из CreateShoptCut взял - там для WindowStyle есть значение = 7 (и оно сработало и для Run), см. на стр. 107)
В любом случае - источник, откуда я в давние времена почерпнул информацию о WindowStyle , - я нашёл.
У меня - печатная книга, а вот ссылка на электронный вариант, если интересно



https://storage.olegon.ru/supermag/u...rovanie.pdf.7z
(10.41Мб)
19.01.2024 16:06
volk13
 
Цитата:
volk13 включил временную "поблажку" для групп "вода" и "пиво" на признак "не в обороте", т.е. - если при проверке КМ из этих групп реквизит "realizable = false" (т.е. КМ не в обороте), то - РМК пропускает такой товар к продаже.
Что интересно - по этим позициям ("realizable = false"), которые РМК допустило к продаже, проверка в ККТ через сервис ИСМ прошла успешно, в чеке и в ОФД - "М+".
А если эти КМ опять (уже после успешной проверки через ИСМ и после продажи через ККТ) проверить запросом в ЧЗ, то у них и "realizable = false", и "sold = false". т.е. - они не числятся, как проданные (хотя реально проданы с М+). (кстати, если что, то verified у них = true, errorCode = 0, т.е. в этом плане - КМ-ы считаются валидными.).

Вот такие "пироги", имейте ввиду.
19.01.2024 17:22
MWWRuza
 
А они не Белорусские случаем(стран ЕАЭС)? Там другой запрос на их проверку, обычный возвращает как раз подобные ошибки, при этом ФР через ОИСМ проверяет их успешно...
19.01.2024 17:32
MWWRuza
 
У меня так:



Для 1. :Url = АдресСервераМОТП + "/" + "v4/true-api/codes/check"

Для 2: Url = АдресСервераМОТП + "/v3/true-api/cises/eaes/info?country=" + СокрЛП(СтранаЕАЭС.Код)
19.01.2024 17:33
volk13
 
Цитата:
MWWRuza А они не Белорусские случаем(стран ЕАЭС)?
да нет, я же выше давал конкретные позиции:
Цитата:
продолжают попадаться КМ, которые имеют признак "не в обороте", а именно это касается:
- как воды, например: 4680029460861 (Вода минеральная лечебная газированная Нагутская №17, 1500мл, пласт.бутылка)
- так и пива, например: 4680036915934 (Пиво Жигули Барное светлое фильтрованное 4,9%, 450 мл)
- ещё пример пива: 4605664011308 (Пиво Золотая Бочка Классическое светлое фильтрованное 5,2%, 450 мл)
прочти тут внимательно
Часовой пояс GMT +3, время: 08:04.

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