|
Ценник со штрих кодом | ☑ | ||
---|---|---|---|---|
0
Chuchi
26.06.13
✎
16:40
|
Для печати ценника с ШК использую такой код
Функция ПечатьЦенникаБольшого() Экспорт Если НЕ ЗначениеЗаполнено(Организация) Тогда Предупреждение("Не выбрана организация!"); Возврат Неопределено; КонецЕсли; ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Ценник"; Макет = ПолучитьМакет("ЦенникБольшой"); ОбластьЦенника = Макет.ПолучитьОбласть("Строка|Столбец"); ДатаПечати = РабочаяДата; ТекСтолбец = 0; ТекСтрока = 0; Для Каждого СтрокаТаблицы Из Товары Цикл Если СтрокаТаблицы.Печать Тогда Если СтрокаТаблицы.ТипЦенника=Перечисления.ТипЦенника.Большой ТОгда Для Тмп = 1 По СтрокаТаблицы.Количество Цикл ОбластьЦенника.Параметры.Заполнить(СтрокаТаблицы); ОбластьЦенника.Параметры.НоменклатураНаименование = СтрокаТаблицы.Номенклатура.НаименованиеПолное; // ОбластьЦенника.Параметры.ХарактеристикаНаименование = СтрокаТаблицы.ХарактеристикаНоменклатуры; ОбластьЦенника.Параметры.ЕдиницаНаименование = СтрокаТаблицы.ЕдиницаИзмерения; //ОбластьЦенника.Параметры.Цена = ОбщегоНазначения.ФорматСумм(СтрокаТаблицы.Цена, Валюта, "00"); ОбластьЦенника.Параметры.Цена = СтрокаТаблицы.Цена; // ОбластьЦенника.Параметры.ДатаПечати = ДатаПечати; ОбластьЦенника.Параметры.Организация = Организация; ОбластьЦенника.Параметры.ОрганизацияНаименование = Организация; // ОбластьЦенника.Параметры.НоменклатураСтранаПроисхождения = СтрокаТаблицы.Номенклатура.СтранаПроисхождения; ОбластьЦенника.Параметры.Артикул= СокрЛП(СтрокаТаблицы.Номенклатура.Артикул); ОбластьЦенника.Параметры.ДатаДокумента=ДатаДокумента; ТипКода = 1; Попытка КомпонентШК = Новый COMОбъект("V8.Barcod.1"); Макет = ПолучитьМакет("Ценник"); НаклейкаОбласть = Макет.ПолучитьОбласть(1,1,15,15); ОбластьЦенника.Рисунки.Штрихкод.Объект.ТипКода = КомпонентШК.ТипКода; ОбластьЦенника.Рисунки.Штрихкод.Объект.Сообщение = "2050000016295"; Исключение Сообщить("Компонента 1С:Печать штрих-кодов не установлена на данном компьютере!"+Символы.ПС+ "Обратитесь к администратору"+Символы.ПС, СтатусСообщения.Важное); Возврат ""; КонецПопытки; Если ЗначениеЗаполнено(СтрокаТаблицы.Штрихкод) Тогда КомпонентШК.Сообщение = СтрокаТаблицы.ШтрихКод; ОбластьЦенника.Рисунки.Штрихкод.Объект.ТипКода = КомпонентШК.ТипКода; ОбластьЦенника.Рисунки.Штрихкод.Объект.Сообщение = КомпонентШК.Сообщение; ОбластьЦенника.Рисунки.Штрихкод.Объект.ОтображатьТекст = КомпонентШК.ОтображатьТекст; КонецЕсли; Если ТекСтолбец = 0 Тогда ТабДокумент.Вывести(ОбластьЦенника); Иначе ТабДокумент.Присоединить(ОбластьЦенника); КонецЕсли; ТекСтолбец = ТекСтолбец + 1; Если ТекСтолбец = 3 Тогда ТекСтрока = ТекСтрока + 1; ТекСтолбец = 0; КонецЕсли; Если ТекСтрока = 5 Тогда ТекСтрока = 0; ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц(); КонецЕсли; КонецЦикла; КонецЕсли; КонецЕсли; КонецЦикла; ТабДокумент.ТолькоПросмотр = Истина; Возврат ТабДокумент; КонецФункции // ПечатьЦенника() EAN13 печатает без проблем а код Code39 печатает 123456789... где не правильно передает тип ШК |
|||
1
Chuchi
27.06.13
✎
12:38
|
Совсем нет вариантов?
|
|||
2
mxs089
27.06.13
✎
12:39
|
есть, паси овец
|
|||
3
Галахад
гуру
27.06.13
✎
12:42
|
(0) Гм. А в объекте на таблице такой тип штрих-кода разрешен?
|
|||
4
Chuchi
27.06.13
✎
12:43
|
в объекте на таблице - это где ?..
|
|||
5
Жирафка
27.06.13
✎
12:44
|
ОбластьЦенника.Рисунки.Штрихкод.Объект.ТипКода = ТипКода;
// Возвращает значение типа штрихкода для использования в ЭУ // "1С:Печать штрихкодов" // // Параметры // ТипКода - ПланыВидовХарактеристик.ТипыШтрихкодов - тип, значение для которого // нужно получить // // Возвращаемое значение: // Число, которое может быть присвоено свойству ЭУ "ТипКода" // Функция ПолучитьЗначениеТипаШтрихкодаДляЭУ(ТипКода) Перем Значение; Если ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN8 Тогда Значение = 0; ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13 Тогда Значение = 1; ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN128 Тогда Значение = 2; ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.Code39 Тогда Значение = 3; ИначеЕсли ТипКода = ПланыВидовХарактеристик.ТипыШтрихкодов.Code128 Тогда Значение = 4; Иначе Значение = -1; КонецЕсли; Возврат Значение; КонецФункции // ПолучитьЗначениеТипаШтрихкодаДляЭУ() |
|||
6
Chuchi
27.06.13
✎
14:32
|
ммм...
КомпонентШК = Новый COMОбъект("V8.Barcod.1"); Макет = ПолучитьМакет("Ценник"); НаклейкаОбласть = Макет.ПолучитьОбласть(1,1,15,15); ОбластьЦенника.Рисунки.Штрихкод.Объект.ТипКода = ТипКода; //ОбластьЦенника.Рисунки.Штрихкод.Объект.ТипКода = КомпонентШК.ТипКода; ругается {ОбщийМодуль.УниверсальныеМеханизмы.Модуль(1052)}: Значение не является значением объектного типа (АвтоМасштаб) Если НЕ ПечДокумент.АвтоМасштаб и ждет строку ОбластьЦенника.Рисунки.Штрихкод.Объект.ТипКода = КомпонентШК.ТипКода; как же все таки передать значение типа кода? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |