Help with printer bin

edited 11:20AM in FastReport 4.0
Hi fellas: I use FR 4.7.61 (not official) and I have many trouble when I try print in different paper bin. I read all the post in this forum and many lots of them in the Internet...and no found solution for that.
Sincelery, I frustrated. My paper bin's are: (1) 259, (2) 260 and (3) 261 in the HP P2015dn.
I made it a small program in D2009 for test printing without FR and...works fine, changed the printer bin; but when I use FR with the same code not work, not change the paper bin.

#1 Question: FR can print in different bin's? [img]style_emoticons/<#EMO_DIR#>/huh.gif" style="vertical-align:middle" emoid=":huh:" border="0" alt="huh.gif" /> #2 Question: If yes, how to do that?[/img][img]style_emoticons/<#EMO_DIR#>/wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" /> #3 Question: FR give me back the happiness?[/img][img]style_emoticons/<#EMO_DIR#>/rolleyes.gif" style="vertical-align:middle" emoid=":rolleyes:" border="0" alt="rolleyes.gif" /> TIA berthauser[/img]

Comments

  • gordkgordk St.Catherines On. Canada.
    edited 11:20AM
    the bin belongs to the designpage if it is to be changed it must be done after report is loaded and before calling show or print, it cannot be changed between pages output by a specific design page.
  • edited 11:20AM
    Yes mister Gordk, you all right...but that this not was my problem.
    Anyway, I found ONE solution...at least for me. This is:

    #1. Add "frxPrinter" in your uses clauses
    #2. If you got select printer and the paper bin, then
    a. cb_Printers.Items := frxPrinters.Printers;
    b. cb_PaperBin.Items := frxPrinters.Printer.Bins;
    c. frxReport1.PrintOptions.Printer := cb_Printers.Text;
    d. frxPrinters.PrinterIndex := frxPrinters.IndexOf(frxReport1.PrintOptions.Printer);
    e. TfrxReportPage(frxReport1.Pages[1]).Bin := frxPrinters.Printer.BinNameToNumber(frxPrinters.Printer.Bins[cb_PaperBin.ItemIndex]);
    f. TfrxReportPage(frxReport1.Pages[1]).BinOtherPages := TfrxReportPage(frxReport1.Pages[1]).Bin;
    g. if frxReportPedido.PrepareReport then
    frxReport1.Print;
    frxReport1.Free;
    #3. That's all

    One more thing:
    If you wish print directly, you can ignore the letters "a" thru "d" and replace ".....BinNameToNumber(frxPrinters.Printer.Bins[cb_PaperBin.ItemIndex])" for
    "......Printer.BinNameToNumber(frxPrinters.Printer.Bins[4])" where "4" is the value what represent the index of paper bin loaded in the combobox;
    Of course, you can write all values in a INI file and then load it....etc.

    Thanks for "all" and Mr. Gordk and for Sven in the "http://www.delphipraxis.net/topic97001.html"; forum.

    Berthauser




Leave a Comment

Rich Text Editor. To edit a paragraph's style, hit tab to get to the paragraph menu. From there you will be able to pick one style. Nothing defaults to paragraph. An inline formatting menu will show up when you select text. Hit tab to get into that menu. Some elements, such as rich link embeds, images, loading indicators, and error messages may get inserted into the editor. You may navigate to these using the arrow keys inside of the editor and delete them with the delete or backspace key.