КА 1.1, делаю QR-код для печатной формы, через компоненту ocvita barcode, формируется все без ошибок, только вот на сайте распознавания кодов выходит, что там только "123456", что может быть не так? Ниже код:
Через отладчик прогонял, в Макет.Рисунки.Штрихкод.Объект.barcode значение верное, весь текст. Где еще можно проверить, что в QR-коде? и имеет ли значение размер объекта? Извиняюсь, если вопрос не по теме
Функция СформироватьШтрихКод(Макет, Ссылка);
Макет.Рисунки.Штрихкод.Объект.symbology = 58; // тип = QR
Макет.Рисунки.Штрихкод.Объект.barcode = ВернутьСтрокуДляКодирования(Ссылка);
КонецФункции
// Опишем вспомогательную функцию для преобразования в UTF8
Функция UTF8(Ст)
НоваяСт = "";
Для i=1 по СтрДлина(Ст) Цикл
Символ = Сред(Ст,i,1);
КодСимвола = КодСимвола(Символ);
Если (КодСимвола > 191) и (КодСимвола < 224) Тогда// А - Я
НоваяСт = НоваяСт + Символ(208)+Символ(КодСимвола-48);
ИначеЕсли (КодСимвола > 223) и (КодСимвола < 240) Тогда// а - п
НоваяСт = НоваяСт + Символ(208)+Символ(КодСимвола-48);
ИначеЕсли (КодСимвола > 239) и (КодСимвола < 256) Тогда// р - я
НоваяСт = НоваяСт + Символ(209)+Символ(КодСимвола-112);
ИначеЕсли (Символ = "ё") или (Символ = "Ё") Тогда
НоваяСт = НоваяСт + Символ(208)+Символ(КодСимвола-39);
ИначеЕсли (Символ = "№") Тогда
НоваяСт = НоваяСт + Символ(226)+Символ(132)+Символ(150);
Иначе
НоваяСт = НоваяСт + Символ;
КонецЕсли;
КонецЦикла;
Возврат НоваяСт;
КонецФункции
//Текст для кодирования выглядит примерно так
Функция ВернутьСтрокуДляКодирования(Ссылка)
СтрокаРазбор = Новый ТекстовыйДокумент;
СтрокаРазбор.УстановитьТекст(СтрЗаменить(Ссылка.Контрагент.НаименованиеПолное," ",Символы.ПС));
Фамилия = СтрокаРазбор.ПолучитьСтроку(1);
Имя = СтрокаРазбор.ПолучитьСтроку(2);
Отчество = СтрокаРазбор.ПолучитьСтроку(3);
Символ_ = "|";
CodeVersion = "0001";
CodePage = 2; //UTF
Name = "Name=" + Ссылка.Контрагент;
PersonalAcc ="PersonalAcc=" + "*************";
BankName = "BankName=" +"*************";
BIC = "BIC=" + "043207612";
CorrespAcc = "CorrespAcc=" + "*************";
PayeeINN = "PayeeINN=" +"*************";
Category = "Category=" + "*************";
PersAcc = "PersAcc=" +ПолучитьЛицевойСчет(Ссылка.Контрагент);
LastName = "LastName=" + Имя;
FirstName = "FirstName=" + Фамилия;
MiddleName = "MiddleName=" + Отчество;
payerAddress ="payerAddress=" +ПолучитьАдрес(Ссылка.Контрагент);
Sum = "Sum=" + СтрЗаменить(Ссылка.СуммаДокумента*100, Символы.НПП, ""); //в копейках, т.е не 100,52, а 10052
Рез = CodeVersion + CodePage + Символ_ +
Name + Символ_ +
PersonalAcc + Символ_ +
BankName + Символ_ +
BIC + Символ_ +
CorrespAcc + Символ_ +
PayeeINN + Символ_ +
Category + Символ_ +
PersAcc + Символ_ +
LastName + Символ_ +
FirstName + Символ_ +
MiddleName + Символ_ +
payerAddress + Символ_ +
Sum + Символ_;
Возврат UTF8(Рез);
КонецФункции
ПоказатьЧерез отладчик прогонял, в Макет.Рисунки.Штрихкод.Объект.barcode значение верное, весь текст. Где еще можно проверить, что в QR-коде? и имеет ли значение размер объекта? Извиняюсь, если вопрос не по теме
По теме из базы знаний
- Печать QR кодов для 1С:Бухгалтерия 2.0 для платежек Сбербанка
- Внешняя печатная форма счета с QR кодом для терминалов Сбербанка РФ
- HTTP-сервис + интерфейс jquery.mobile + QR-код. Остатки в магазине с устройства под Android, Apple, Windows без установки 1С
- Счет на оплату с QR-кодом из документа Счет покупателю (БП 2.0)
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) Я нашел свою ошибку, делал для Макета, а нужно было для ОбластиМакета.
Теперь данные передаются на печатную форму правильно в объекте, но штрихкод перечеркнутый, пробую найти в чем причина.
Причем через демообработку скопировал свой текст и сформировал, все получилось.
Теперь данные передаются на печатную форму правильно в объекте, но штрихкод перечеркнутый, пробую найти в чем причина.
Причем через демообработку скопировал свой текст и сформировал, все получилось.
Прикрепленные файлы:

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот