Esc-коды в матричной печати

отредактировано 16:31 Раздел: FastReport 4.0
Коллеги, помогите моему горю: есть принтер, на котором печатают талоны (регистратура). Талон печатается хорошо, требуется отрезать бумагу после окончания печати. Скачал документацию по принтеру (Epson 220U кажется), нашел ESC-код отрезания (#29#86#66#0 - универсальный для всех моделей Epson), пытаюсь вставить в конец отчета - принтер отказывается отрезать бумагу. Он просто "проглатывает" код, но ничего не делает.

Пробовал вставлять объект DPMCommand, присваиваю значение кода, печатаю - результат нулевой.
Пробую просто через компонент DPMMemo, вставляю значение кода в это memo в обработчике OnBeforePrint - результата так же нет.

Подскижите, пожалуйста, что я делаю не так ? Каким образом необходимо правильно вставлять ESC-коды в отчет ?
DotMatrixExport на форму положил, отчет сам по себе работает норм.

P.S. и почему-то после попытки печати первого талона, если за ним распечатать второй - у принтера сбивается кодовая страница - и вместо русских букв он печатает крокозяблики. Почему ?

Комментарии

  • отредактировано 16:31
    1. проверить, работает ли команда на данном принтере (без Фаста).
    2. проверить, не сбивает ли данная команда кодовую страницу (баз Фаста).
    3. проверить, доходит ли команда до принтера (выдать печать в файл и посмотреть hex-редактором, например, Far-ом)
    4. проверить, с какой системой команд произвоится печать

    ЗЫ: а печатаете в матричном режиме?
  • отредактировано 16:31
    Принтер находится у заказчика, в другом городе, потому нет возможности потрогать принтер руками
    andreymx написал: »
    1. проверить, работает ли команда на данном принтере (без Фаста).
    Работает из другой программы - там обрезание бумаги делается этой же командой.
    andreymx написал: »
    2. проверить, не сбивает ли данная команда кодовую страницу (баз Фаста).
    Сложно сказать, т.к. принтера под рукой нету..
    andreymx написал: »
    3. проверить, доходит ли команда до принтера (выдать печать в файл и посмотреть hex-редактором, например, Far-ом)
    Думаю да, т.к. на предварительном просмотре или печате на лазарнике в конце отчета видны значки ESC-команды
    andreymx написал: »
    4. проверить, с какой системой команд произвоится печать
    Пробовал и стандартную (0), и Epson(1) - безрезультатно.
    andreymx написал: »
    ЗЫ: а печатаете в матричном режиме?
    Отчет построен для матричного принтера. Судя по скорости печати - имменно в нем.
  • отредактировано 16:31
    eu6pc, ну ты попал :)
    Как говорит известный оракловед Том Кайт, "это не ваша вина, но это ваша проблема".

    Не имея возможности ничего проверить, тяжело разбираться.

    Вижу пока один вариант - выгрузить тестовый отчет в файл, глазками все проверить, и отправить почтой клиентам, чтобы они распечатали какой-нить командой вроде
    copy mytext.prn > prn (или > lpt1:)
    (или пусть far-ом распечатают.)

    и такими методами уже искать проблему.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.