|
Формирование Тэга 1162 | ☑ | ||
---|---|---|---|---|
0
igel1969
13.06.19
✎
11:26
|
Здравствуйте!
Пожалуйста, помогите! Пытаюсь формировать тэг 1162 по инструкции: https://xn--80ajghhoc2aj1c8b.xn--p1ai/upload/iblock/09e/09e9978505dad5ba4a8f814420ab20b7.pdf Вот пункт 3 из нее: Складываем 00 05 + 00 00 02 C1 1E 5E + 41 44 67 6f 70 53 71 и кодируем в BASE64: AAUAAALBHl5BRGdvcFNx. Я уже получил строку "0005000002C11E5E4144676f705371" Как теперь мне ее перевести в двоичные данные, чтобы к ним применить функцию Base64Строка ????? Никак не могу понять |
|||
1
Юрий Лазаренко
13.06.19
✎
11:34
|
(0) А зачем переводить в двоичные данные, а потом опять в строку, если строка вроде как уже и так готова?
|
|||
2
igel1969
13.06.19
✎
11:35
|
(1) Вот пункт 3 из нее: Складываем 00 05 + 00 00 02 C1 1E 5E + 41 44 67 6f 70 53 71 и кодируем в BASE64:
AAUAAALBHl5BRGdvcFNx. Как мне получить AAUAAALBHl5BRGdvcFNx ? |
|||
3
igel1969
13.06.19
✎
11:37
|
(1) Если я пишу Base64Строка("0005000002C11E5E4144676f705371") то мне возвращает пустоту
|
|||
4
Юрий Лазаренко
13.06.19
✎
11:42
|
(2) Понял. Тогда сначала для исходной строки Base64Значение(ВашаСтрока), эта функция вернет двоичные данные.
|
|||
5
igel1969
13.06.19
✎
11:46
|
(4) Нет. Смотрите - у меня есть исходная строка 0005000002C11E5E4144676f705371. Она же не закодирована в Base64.
А функция Base64Значение - раскодирует закодированную строку в двоичные данные. Так что ничего она не вернет, я проверял. Мне бы как-то из исходной строки (которая является строковым выражением шестнадцатиричного числа) получить двоичные данные (((( |
|||
6
lodger
13.06.19
✎
12:04
|
а вы с ккм не через драйвер работаете?
|
|||
7
lodger
13.06.19
✎
12:07
|
кмк в новых версиях драйвера этой математикой он сам занимается, достаточно слепить структуру данных(со строковыми значениями) и скормить в объект драйвера.
https://its.1c.ru/db/metod8dev/content/4829/hdoc Наименование атрибута Типы данных Описание атрибута GoodCodeData StampType string Тип маркировки. Список значений: "02" – изделия из меха "05" - табачная продукция "1520" - обувные товары Stamp string Контрольный идентификационный знак (КиЗ) GTIN string Глобальный идентификатор торговой единицы (GTIN) SerialNumber string Серийный номер MarkingCode string Код контрольной марки. Кодируется текстом в кодировке Base64. |
|||
8
igel1969
13.06.19
✎
12:11
|
(7)
Вот кусок кода из 1С: ПараметрыСтроки.Вставить("КодТоварнойНоменклатуры"); // Необязательно, Код товарной номенклатуры. // Дополнительные реквизиты не входящие в ФФД. ПараметрыСтроки.Вставить("НомерСекции" , 0); // Необязательно, Номер секции ФР (для совместимости), 0-Значение по умолчанию. ПараметрыСтроки.Вставить("Штрихкод"); // Необязательно, Штрихкод ПараметрыСтроки.Вставить("КодМаркировки"); // Необязательно, Код маркировки ПараметрыСтроки.Вставить("ДанныеКодаТоварнойНоменклатуры", ПараметрыДанныеКодаТоварнойНоменклатуры()); // Коды товарной номенклатуры. Последний параметр (ДанныеКодаТоварнойНоменклатуры) я заполняю. Но почему-то не уходит в ОФД данные маркировки. Я подумал что надо заполнить тэг 1162, а это вроде как (по результатам моих исследований) как раз КодТоварнойНоменклатуры. Ну или драйвер надо обновить, может быть. У нас драйвер АТОЛ 8.15.3.8197 |
|||
9
lodger
13.06.19
✎
12:27
|
(8) это имена структуры в коде 1с, посмотрите во что они транслируются попадая в модули библиотеки подключаемого оборудования.
нужно заполнить параметр GoodCodeData, она же "Данные кода товарной номенклатуры", "Код товарной номенклатуры. XML Структура. На основе этих данных драйвер формирует тег 1162 (по алгоритму для группы товаров)" |
|||
10
igel1969
13.06.19
✎
12:31
|
(9) Я ее формирую, но в ОФД не видно чеков с маркированной продукцией. Попробую все-таки драйвер поменять на 10 версию
|
|||
11
Юрий Лазаренко
13.06.19
✎
16:46
|
Нашел
Поток = Новый ПотокВПамяти; ЗаписьТекста = Новый ЗаписьТекста(Поток) ; ЗаписьТекста.Записать(<ИсходнаяСтрока>); ЗаписьТекста.Закрыть(); ДвоичныеДанные = Поток.ЗакрытьИПолучитьДвоичныеДанные(); Строка64 = Base64Строка(ДвоичныеДанные); |
|||
12
igel1969
17.06.19
✎
10:27
|
всем спасибо огромное. оказалось, что надо было поменять драйвер ККМ на 10 версию. После этого ничего формировать не пришлось, просто посылал данные, а драйвер сам формировал тэг, и все работает.
но (11) сохраню в памяти - полезная информация. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |