Имя: Пароль:
1C
1С v8
Не выводит на печать штрихкод!
0 1987denis
 
30.08.13
21:16
Здравствуйте, необходимо чтобы на печатной форме отображался штрихкод.  Штрих код должен быть равен номеру документа, это я сделал.
Установил  1CBarCode.ехе
Если ШтрихКОдирование.Рисунки.D4.Объект.ТекстКода = Выборка.Штрихкод;
Выдает ошибку что Поле объекта не обнаружено, хотя в макете в свойствах граф. элемента указано Имя: D4.
Если меняю D4 на D1 пишет что ТекстКода не объектного типа.
Прошу помочь и сказать в чем ошибка. Заранее спасибо.

Процедура Печать(ТабДок, Ссылка) Экспорт
    //{{_КОНСТРУКТОР_ПЕЧАТИ(Печать)
    Макет = Документы.ЗаявкаПокупателяССайта.ПолучитьМакет("Печать");
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ЗаявкаПокупателяССайта.ШтрихКод,
    |    ЗаявкаПокупателяССайта.Товары.(
    |        НомерСтроки,
    |        Номенклатура,
    |        Вес
    |    )
    |ИЗ
    |    Документ.ЗаявкаПокупателяССайта КАК ЗаявкаПокупателяССайта
    |ГДЕ
    |    ЗаявкаПокупателяССайта.Ссылка В (&Ссылка)";
    Запрос.Параметры.Вставить("Ссылка", Ссылка);
    Выборка = Запрос.Выполнить().Выбрать();

    ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
    ШтрихКодирование = Макет.ПолучитьОбласть("ШтрихКодирование");
    ОбластьТоварыШапка = Макет.ПолучитьОбласть("ТоварыШапка");
    ОбластьТовары = Макет.ПолучитьОбласть("Товары");
    ТабДок.Очистить();

    ВставлятьРазделительСтраниц = Ложь;
    Пока Выборка.Следующий() Цикл
        Если ВставлятьРазделительСтраниц Тогда
            ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
        КонецЕсли;

        ТабДок.Вывести(ОбластьЗаголовок);

    Если Выборка.Штрихкод <> NULL Тогда
              ШтрихКОдирование = Макет.ПолучитьОбласть("ШтрихКОдирование");
              ШтрихКОдирование.Рисунки.D5.Объект.ТекстКода = Выборка.Штрихкод;
                иначе
        
              ШтрихКОдирование.Рисунки.D5.Объект.ТекстКода = "00000000";
КонецЕсли;
         ШтрихКОдирование.Параметры.Заполнить(Выборка);
        ТабДок.Вывести(ШтрихКОдирование);

        ТабДок.Вывести(ОбластьТоварыШапка);
        ВыборкаТовары = Выборка.Товары.Выбрать();
        Пока ВыборкаТовары.Следующий() Цикл
            
            ОбластьТовары.Параметры.Заполнить(ВыборкаТовары);
            ТабДок.Вывести(ОбластьТовары, ВыборкаТовары.Уровень());
        КонецЦикла;

        ВставлятьРазделиельСтраниц = Истина;
    КонецЦикла;

КонецПроцедуры
1 Torquader
 
30.08.13
21:23
А почему тогда в коде написано D5 ?
2 Rie
 
30.08.13
21:24
В макете имя D4, в коде из (0) используется D5.
Это так и надо?
3 1987denis
 
30.08.13
21:24
опечатка..в коде и макете Д5
4 1987denis
 
30.08.13
21:29
ТипКода 0 - EAN8
Размер Номера докмента - 8 цифр
5 1987denis
 
30.08.13
21:31
Если Выборка.Штрихкод <> NULL Тогда
ШтрихКОдирование = Макет.ПолучитьОбласть("ШтрихКОдирование");              ШтрихКОдирование.Рисунки.D5.Объект.типКода = 0;  ШтрихКОдирование.Рисунки.D5.Объект.ТекстКода=Выборка.Штрихкод;
иначе
ШтрихКОдирование.Рисунки.D5.Объект.ТекстКода = "00000000";
КонецЕсли;
6 1987denis
 
30.08.13
21:31
Если Выборка.Штрихкод <> NULL Тогда
ШтрихКОдирование = Макет.ПолучитьОбласть("ШтрихКОдирование");
ШтрихКОдирование.Рисунки.D5.Объект.типКода = 0;
ШтрихКОдирование.Рисунки.D5.Объект.ТекстКода = Выборка.Штрихкод;
                иначе
              
              ШтрихКОдирование.Рисунки.D5.Объект.ТекстКода = "00000000";
КонецЕсли;
7 Rie
 
30.08.13
21:35
А в рисунке D5 в макете - что именно находится?
8 1987denis
 
30.08.13
21:43
9 1987denis
 
30.08.13
21:45
Графическое изображение штрихкода
Таблица-Картинка-Вставить Объект- Элемент управления- 1с v8: Печать Штрихкодов