Печать из разных лотков принтера

отредактировано 04:16 Раздел: FastReport 4.0
Планируем приобрести FastReport 4 для печати счетов клиентам, хотелось бы первую страницу счета печатать на бланке, а остальные на простой бумаге. Счетов много, поэтому генерировать отдельный отчет для каждого счета крайне невыгодно. В будущем возможно развитие этой идеи, т.е. первая страница из одного лотка, вторая из другого, третья - из третьего. Как это можно реализовать?

Комментарии

  • отредактировано 04:16
    Ну подскажите хотя бы, в какую сторону копать.
  • отредактировано 04:16
    Если кому интересно, то решение есть.
    Дело было так. Написал в техподдержку, № 125606
    Ответили:
    написал:
    Используйте событие OnPrintPage:

    procedure TForm1.frxReport1PrintPage(Page: TfrxReportPage;
      CopyNo: Integer);
    begin
    Page.Bin := 1
    end;

    Но это не работает. В исходниках после
         if Assigned(Report.OnPrintPage) then
            Report.OnPrintPage(Page, FCopyNo);
    
    идет
         if Index = 0 then
            Bin := Page.Bin else
            Bin := Page.BinOtherPages;
    
    Соответственно меняем местами
         if Index = 0 then
            Bin := Page.Bin else
            Bin := Page.BinOtherPages;
    
          if Assigned(Report.OnPrintPage) then
          begin
            Report.OnPrintPage(Page, FCopyNo);
            Bin := Page.Bin;
          end;
    
  • PabloPablo Рязань
    отредактировано 04:16
    Сам не пробовал, но если задавать лоток в зависимости от значения Index?

    if index=0
    then Page.bin:=BIN1
    else
    case Index of
    1: Page.BinOtherPages:=BIN2;
    2: Page.BinOtherPages:=BIN3;
    3: Page.BinOtherPages:=BIN4;
    ...
    end;

  • отредактировано 04:16
    Возникла эта же проблема. Необходимо часть документов печатать из второго лотка формата А3 а часть из А4.

    Как и говорилось
    Используйте событие OnPrintPage:
    
    procedure TForm1.frxReport1PrintPage(Page: TfrxReportPage;
      CopyNo: Integer);
    begin
    Page.Bin := 1
    end;
    

    не работает.

    Где можно подправить то о чем говориться ниже ? или еще есть какие-то пути для решения этой проблемы?
  • отредактировано September 2010
    DastiX написал: »
    Возникла эта же проблема. Необходимо часть документов печатать из второго лотка формата А3 а часть из А4.
    не работает.
    Где можно подправить то о чем говориться ниже ? или еще есть какие-то пути для решения этой проблемы?
    Мы когда-то решили подобную проблему генирацией отдельных отчетов для каждого лотка, и вот уже у этих отчетов указывали с какого лотка брать бумагу. Заставить разносить по лоткам в одном отчете у нас так и не получилось. Техподдержка так и не поняла, что мы от них хотим. Это было еще в 2008 году.... Самим такое решение не подуше, очень напряжное, особенно, когда это один отчет и надо все сохранить в один файл, приходится делать еще один отчет для превью и сохранения. Но работает.
  • PabloPablo Рязань
    отредактировано September 2010
    tstar написал: »
    Мы когда-то решили подобную проблему генирацией отдельных отчетов для каждого лотка, и вот уже у этих отчетов указывали с какого лотка брать бумагу. Заставить разносить по лоткам в одном отчете у нас так и не получилось. Техподдержка так и не поняла, что мы от них хотим. Это было еще в 2008 году.... Самим такое решение не подуше, очень напряжное, особенно, когда это один отчет и надо все сохранить в один файл, приходится делать еще один отчет для превью и сохранения. Но работает.
    1. Печатаем страницу 1 в лоток x.
    2. Печатаем страницы 2-N в лоток Y.

    Надо сформировать 2 отдельные команды Print(XXX).

    Там 2 свойства: Page.Bin и Page.BinOtherPages.

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

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