Знатокам штрихкодов : Кодирования русских букв в Code-128 #760546


#0 by bvb
Первый вопрос можно ли в нем вообще кодировать русский алфавит я закодировал номер документа 361д-15 у меня получилось 361l-15 Можно ли его нормально закодировать и если как до где копать ?
#1 by Михаил Козлов
Не проще использовать УИД?
#2 by bvb
Клиент требует палетную этикетку с номером накладной в Code-128
#3 by vde69
Глобальный контекст (Global context) Base64Строка (Base64String) Синтаксис: Base64Строка(<Значение>) Параметры: Тип: ДвоичныеДанные. Двоичные данные, которые необходимо закодировать по алгоритму base64. Возвращаемое значение: Тип: Строка. Описание: Получает строку, закодированную по алгоритму base64. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение(клиент), мобильное приложение(сервер). См. также: Глобальный контекст, метод Base64Значение --------------------------------------------------------------------------------      Методическая информация
#4 by Лефмихалыч
code 128 русских буков не знает. Исзобретай какие-то велосипеды
#5 by Garykom
да и простейший это
#6 by Garykom
+
#7 by Лефмихалыч
строку с номером в файл, потом из этого файла двоичные данные, потом из них базе64строка? это простейший штоле? о_0
#8 by Garykom
какие в жпо двоичные данные? может иногда лучше промолчать если не в курсе да?
#9 by Garykom
+
#10 by Лефмихалыч
Base64Строка на вход двоичные данные требует. Автору надо в ШК поместить номер документа. Как из номера документа получить Base64Строка?
#11 by Лефмихалыч
может просто напросто: м?
#12 by Garykom
#13 by Лефмихалыч
да куда уж проще-то...
#14 by bvb
КодироватьBase64(365l-15) ==> MzYxC0xNSAgIB//
#15 by Лефмихалыч
осталось найти еще 60 строк, которые раскодируют это обратно
#16 by Garykom
все правильно только латинские буквы остались и спецсимволы все что подходит для Code 128b
#17 by Garykom
там внизу ссылка вообще то...
#18 by Лефмихалыч
361д-15 мне кажется - так проще. Две строки, штатно, и без ссылок в какой-то хрен знает куда
#19 by Garykom
можно и так, а можно и вообще транслитом воспользоваться
#20 by Лефмихалыч
для транслита тоже надо две функции по полста строк руками писать
#21 by Garykom
там по 5 строк всего через цикл и стрзаменить
#22 by Локи-13
Голосую за этот вариант
#23 by Лефмихалыч
ну, во-первых, для обеспечения преобразования туда-сюда без потерь всяких Ж, Ш, З и т.д. надо больше 5 строк и СтрЗаменить. Во-вторых - какая разница, сколько писать, если условия таковы, что все написано за нас?
#24 by Garykom
где нибудь указание на версию платформы 1С увидел?
#25 by bvb
Платформа 8.2 Сканер считал что то типа : 361LMH Короче тема пустая ибо сканер русские символы не распознает в CODE-128
#26 by Лефмихалыч
зачем выводи в штрихкод КодироватьBase64(361д-15) кодировать тебе понадобится, при обработке данных от сканера
#27 by bvb
Дык декодировать буду не я а клиент
#28 by Лефмихалыч
и что клиент будет делать с номером твоего документа? Ты этот номер ему в каких-то электрических выгрузках передаешь что ли?
#29 by Лефмихалыч
или это номер тебе клиент дает?
#30 by Serginio1
#31 by Garykom
предлагаю отказаться от кириллицы в номерах документов
#32 by Garykom
+ ну или запилить свой стандарт вместо всех
#33 by NorthWind
Я бы не заморачивался с base64, а сделал бы свою таблицу соответствия русских букв и латинских, что-то типа транслита. И ей бы кодировал. Это будет экономичнее, потому что base64 очень громоздкий
#34 by Злопчинский
осталось понять - если в сиходном сообщении есть родные латинские буквы - при раскодировке - что делать..?
#35 by Garykom
стандартно "а">"a", "a">"a", "">"\"
#36 by Garykom
+ из "ТестTest" будет "TestTes "
#37 by Лефмихалыч
все заметили, да, что автору штрихкод нужен, чтобы передавать этот штрих-код контрагенту? Или у меня глюки?
#38 by NorthWind
Ну да. Или же, наоборот, использовать двухсимвольные последовательности для латиницы, если вероятность ее появления в сообщении ниже, чем кириллицы. А может, у автора вообще исключена латиница. Мы ж не знаем.
#39 by NorthWind
заметил, но дело в том что там ничего не написано по поводу стандартов. Если клиенту нужен SSCC, то я не знаю, при каком там кириллица
#40 by NorthWind
да и SSCC это EAN (или GS1) - 128, а не CODE128
#41 by zippygrill
Функция КонвертацияИзКириллицы(Знач ИсходнаяСтрока)     СтрокаЛатиницы  = "abcdefghijklmnopqrstuvwxyz""#$&',./:;<>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^`{|}~";
#42 by IlyaSR
Что мешает в Штрихкод сформировать на основе УИД, а под ним вывести номер документа строкой )))
#43 by Garykom
зачем столько кода? ЗЫ строки поправить замен как нуна, переделка для замен "Ш">"SH" тоже не проблема
#44 by etc
поинтересуйся у клиента для которого стараешся, пусть приведет пример штрих-кода с кириллицей который они успешно считывают. А то сдается мне если не через URL кодирование то еще и кодовую страницу будете согласовывать, UTF, или вообще KOI-8 :)
#45 by etc
если бы не разное количество букв в алфавитах ...
#46 by Mikeware
транслит убивает однозначность. Для того, чтобы впихнуть аски в пол-аски, достаточно поднять систему всего вдвое. хотя можно тупо применить префикс - расширив вдвое код.
#47 by Garykom
не вижу проблем использовать " " в кодовых строках и по 2 символа " ш ч"="shch"
#48 by lEvGl
в привели нормальный вариант, изобретать велосипед не нужно, уже есть - ASCII (любая другая кодировка), клиенту сказать, что закодировано по международному стандарту, пусть расшифровку делает в обратном порядке, будет возмущаться - на педивикию отправить и сказать, что он не в тренде и не пользуется общепринятыми Мировыми стандартами пс. а придумывать свою таблицу кодировки - себе дороже, потом придется объяснять расшифровщику что да как, интересно что он еще подумает
#49 by lEvGl
я может чего не понял... в 1с юникод Для Н = 1 По СтрДлина(Строка) Цикл если разбор не в 1с, то инструментами среды Encoding там или еще чего
#50 by lEvGl
в чем дело то, полсотни постов ;)
#51 by etc
ASCII по большому счету стандарт только на первые 128 символов. Есть несколько вариаций размещения в верхних 128-256 кодах ASCII национальных символов что и обозначается кодировкой. Например KOI8R, CP866 и т.д.
#52 by etc
+ поэтому я и говорю что в таком варианте ему еще и кодировку с клиентом придется согласовывать.
#53 by lEvGl
интересно как будет выглядеть 361д-15 в казахском варианте, тогда надо и номенклатуру кодировать и все остальные тексты, что бы клиент, родной, не чувствовал себя ущемленным
#54 by etc
мне кажется его клиенту для которого он старается еще не попадались документы с кириллицей в номере.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С