QR-код в 1с (ocvita barcode)

1. avogadro57 19.12.17 10:03 Сейчас в теме
КА 1.1, делаю QR-код для печатной формы, через компоненту ocvita barcode, формируется все без ошибок, только вот на сайте распознавания кодов выходит, что там только "123456", что может быть не так? Ниже код:

Функция СформироватьШтрихКод(Макет, Ссылка);
    Макет.Рисунки.Штрихкод.Объект.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-коде? и имеет ли значение размер объекта? Извиняюсь, если вопрос не по теме
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. protexprotex 140 19.12.17 10:44 Сейчас в теме
(1) Размер не имеет значения (в разумных пределах). Попробуйте так - распечатайте на бумаге q-r-код и попробуйте проверить сканом с телефона. Если есть такая возможность, конечно. Выдаст правильно?
3. avogadro57 19.12.17 10:49 Сейчас в теме
(2) Я нашел свою ошибку, делал для Макета, а нужно было для ОбластиМакета.
Теперь данные передаются на печатную форму правильно в объекте, но штрихкод перечеркнутый, пробую найти в чем причина.
Причем через демообработку скопировал свой текст и сформировал, все получилось.
Прикрепленные файлы:
4. avogadro57 19.12.17 10:54 Сейчас в теме
(2) Вот теперь не хватило места для штрихкода, увеличил размер - все получилось, спасибо за ответ
Оставьте свое сообщение

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