Форум продуктов IBM Lotus

Продукты IBM Lotus => IBM Lotus Notes & Domino => Тема начата: Gr.Daniil от 06 Декабрь 2010, 06:49:34

Название: Подключение принтера для печати штрих-кодов
Отправлено: Gr.Daniil от 06 Декабрь 2010, 06:49:34
Здравствуйте! Подскажите пожалуйста, в какую сторону смотреть.
на форме в базе данных Lotus, есть кнопка, при нажатии на которую, печатается штрих-код с номером документа. Вот код, который привязан к кнопке:
Sub Click(Source As Button)
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim doc_profile As NotesDocument
   Dim ws As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   
   Set db=session.CurrentDatabase
   Set uidoc=ws.CurrentDocument
   
   Set doc_profile=db.GetProfileDocument("ProfileDB")
   
   If doc_profile Is Nothing Then
      Messagebox {Нет настроек для БД }+db.Title+{ !
Обратитесь к администратору.},16,{Стоп!}
      Continue=False
      Exit Sub
   End If
   
   prname$=Trim(doc_profile.SPrinter(0))
   org$=Trim(doc_profile.SOrg(0))
   
   If prname$="" Then
      Messagebox {Не настроен штрих-принтер!
Обратитесь к администратору.},16,{Стоп!}
      Continue=False
      Exit Sub
   End If
   
   If org$="" Then
      Messagebox {Не настроена организация для штрих-принтера!
Обратитесь к администратору.},16,{Стоп!}
      Continue=False
      Exit Sub
   End If
   
   Set bzb=createobject("LabelPrint.LabelImage")
   
   count% = Cint(Inputbox$("Укажите количество копий штрих-кодов", "Сколько копий?",1))
   
   num$=uidoc.FieldGetText("Num")
   Call bzb.DrawText(4,2,org$,"ARIAL",15,"",204,0)
   Call bzb.DrawBarCode(2,5,30,12,0,4,num$,1,0,"ARIAL",1,"",204)
   org$="Исх-"+uidoc.FieldGetText("NumShow")+"-"+uidoc.FieldGetText("RegDate")
   Call bzb.DrawText(4,13,org$,"ARIAL",15,"",204,0)
   
   Select Case prname$
   Case  ""
      Messagebox "Не настроен штрих-принтер",16,"Стоп!"
   Case "local"
      Call bzb.EZPrintLabel(count%,"PORT",1)
   Case Else
      Call bzb.EZPrintLabel(count%,"RAW",prname$)
   End Select
   
End Sub
Приобрели новый принтер, печать этикеток не идет, пробная страница печатается нормально. Новый принтер Zebra TLP2844, вместо EZ-2.
Буду рад за любую помощь.
Заранее спасибо.
Название: Re: Подключение принтера для печати штрих-кодов
Отправлено: lotusnotes.ru от 07 Декабрь 2010, 21:00:38
Ошибки какие?
Скорее всего нужно настроить программу печати штрих-кода, которая формирует объект LabelPrint.LabelImage
Название: Re: Подключение принтера для печати штрих-кодов
Отправлено: Gr.Daniil от 08 Декабрь 2010, 08:26:54
Знаете, ошибок никаких не выдает.
Задание появляется на секунду и пропадает, будто этикетка распечаталась, но на самом деле принтер ничего не выдает.
Ранее стоял принтер Godex bzb, стояла дополнительная программа Thermal Print Library.
В описании указано:
"Библиотека Thermal print library.
Библиотека является COM сервером и предоставляет интерфейс
для создания и распечатки термоэтикеток на принтерах класса
Godex EZ2/EZ2S/EZ2C/BZB2/EZ4/EZ4C/EZ4S, C.Itoh EZ 2/4, Citizen CLP-521."
А новый принтер Zebra TPL 2844.
Другой похожей программы на эту модель принтера нет.
Есть какие-то программы на диске, который шел с принтером, но программы СОМ сервера нет.
Для lotusnotes.ru Я не знаю, достаточно ли этой информации?
Еще раз благодарю за любую помощь.
Название: Re: Подключение принтера для печати штрих-кодов
Отправлено: ViV от 08 Декабрь 2010, 09:31:34
Добрый день!

На странице разработчика используемой библиотеки (http://ezlib.narod.ru/thermalprintlibrary.html) принтер Zebra TLP2844 не числится в качестве поддерживаемых. А так как у разных моделей принтеров принцип вывода графической информации различается, то библиотеку прийдется дорабатывать. Попробуйте связаться с разработчиком на предмет доработки библиотеки под вашу модель принтера.
Название: Re: Подключение принтера для печати штрих-кодов
Отправлено: Gr.Daniil от 11 Январь 2011, 11:42:06
Подскажите пожалуйста, тогда, как должен выглядеть код, при отправке на печать, например на обычный принтер.
Может быть дальше разберусь.
Заранее Спасибо.