Страница 1 из 1

Печать текста без структуры Report

Добавлено: 01 Май 2020, 9:46
Игорь Столяров
Привет всем !

Эта тема так или иначе поднималась в нескольких обсуждениях, но решения нет.

Можно ли как-то распечатать текст на принтер без структуры REPORT ? Напрямую через API, например.
Интересует конкретный пример или описание процесса для принтера с драйвером Windows.

Поясню, почему возник вопрос. Есть импортный (Китай) принтер чеков. Из блокнота текст печатается прекрасно.
Печатаю тот же текст из Report - просто прогоняет ленту и всё … :(

Заранее спасибо за наводку. :)

Печать текста без структуры Report

Добавлено: 01 Май 2020, 10:02
finsoftrz
А что просто не записать в текстовый файл и послать на печать программой по умолчанию?

Печать текста без структуры Report

Добавлено: 01 Май 2020, 10:03
finsoftrz

Код: Выделить всё

form_r routine
  DATA
lor:WHandle           UNSIGNED,AUTO      !переменные для запуска просмотра
lor:lpOperation   CSTRING('printto')
lor:lpParameters  CSTRING(100)
lor:lpDirectory   CSTRING(1)
lor:FileName      CSTRING(FILE:MaxFilePath),AUTO
  CODE
  lor:FileName=clip(lop:filename)
  lor:WHandle=Target{PROP:Handle}
  lor:lpParameters=PRINTER{PROPPRINT:Device}
  lor:lpDirectory=0
  if ShellExecute(lor:WHandle,lor:lpOperation,lor:FileName,lor:lpParameters,lor:lpDirectory,7).


Печать текста без структуры Report

Добавлено: 01 Май 2020, 10:09
Игорь Столяров
Спасибо ! Сейчас попробуем-с … :)
Я пробовал когда-то очень-очень давно тупо копировать текстовый файл на порт печати. Работало, но сейчас не будет. :(

Печать текста без структуры Report

Добавлено: 01 Май 2020, 16:17
kreator
Операции "printto" в описании ShellExecute нет. Есть "print". Есть разница между ними?

Печать текста без структуры Report

Добавлено: 01 Май 2020, 16:34
Дед Пахом
printto печатает на конкретный принтер, а print на дефолтный, вроде так.

Печать текста без структуры Report

Добавлено: 02 Май 2020, 14:58
Игорь Столяров
finsoftrz писал(а): 01 Май 2020, 10:03 Рязань решает.
Спасибо ! Всё работает. :)
Но есть один момент - нужно имя принтера "заворачивать" в кавычки, т.к. это составной параметр.

Код: Выделить всё

   lor:lpParameters='"' & Clip(PRINTER{PROPPRINT:Device}) & '"'
   lor:lpParameters='"' & Clip(MyFieldPrinterName) & '"'
И да. Незаконный "printto" - это печать на произвольный принтер в системе, в т.ч. и сетевой - работает. :)
Если Блокнот Windows установлен как программа обработки файлов с расширением TXT. ;)

Печать текста без структуры Report

Добавлено: 02 Май 2020, 15:08
finsoftrz
Вместе мы сила. Пойду поправлю. :-)

Печать текста без структуры Report

Добавлено: 02 Май 2020, 15:40
kreator
Игорь Столяров писал(а): 02 Май 2020, 14:58 И да. Незаконный "printto" - это печать на произвольный принтер в системе, в т.ч. и сетевой - работает.
Буду знать. Может когда понадобится.

Печать текста без структуры Report

Добавлено: 02 Май 2020, 21:06
Игорь Столяров
kreator писал(а): 02 Май 2020, 15:40 Может когда понадобится.
Так себе прибамбас … Неуправляемая печать, текст нужно записывать в файл, блымает окно печати … :(
Мне просто сейчас неохота разбираться с козлящим китайским принтером чеков (точнее его драйвером).
10 лет текст печатался и печатается прекрасно через штатный Report на кучу принтеров чеков и никогда не было проблем.

Печать текста без структуры Report

Добавлено: 02 Май 2020, 22:25
finsoftrz
Мне кажется, это еще для матричных принтероа делалось...

Печать текста без структуры Report

Добавлено: 03 Май 2020, 13:55
kreator
Есть у нас тема. Некие документы хранятся в архиве в pdf. И надо иногда их распечатывать, не открывая. Используем ShellExecute с командой print. Да, некая специфика, нестандартная.

Печать текста без структуры Report

Добавлено: 31 Май 2022, 12:03
gopstop2007
Дополню, может кому то понадобиться.
Чтобы убрать отступы в документе при печати в терминальном режиме (RDP) *.txt, который печатается с помощью notepad.exe.
В сессии под пользователем вызвать notepad.exe и в настройках указать нужные отступы, например: 0 (ноль).