Join The Works program to have access to the most current content, and to be able to ask questions and get answers from Revelation staff and the Revelation community

At 27 JAN 2009 06:09:09PM John Bouley wrote:

I have a forms process where it reads in a binary file and does the following logic:

osread form from d:\path\customer.frm

… processing occurs here …

print form:

In the OI_Precompiled code the print form: is translated into do_print(form, 1)

unfortunately, some of the data is stripped from form as the printer malfunctions. If howerver, I change the line to read:

oswrite form to "lpt1"

The form comes out without a problem. No if I can guarantee that all dot matrix printer will be at LPT1…

Is there a way in AREV32 to use the direct_print logic to send a binary stream to the printer? My suspicion is it is stripping char(0) characters.

Thanks,

John


At 28 JAN 2009 10:50AM Bryan Shumsky wrote:

Hi, John. Yes, you can define a direct-print printer in AREV32; in fact, that would be the default type of printer driver used for your printer definition. How did you set up your printer information in AREV32?

Thanks,

- Bryan Shumsky

Revelation Software


At 28 JAN 2009 12:07PM John Bouley wrote:

Hi Bryan,

It a little complicated. I already had a printer definition in the application. So I added a new column that defines which AREV32 printer environment to use (1-12). In this case the printer "mapped" to a local windows printer "Okidata 321". Normal reports come out just fine but this form has embedded char(0) so I think the Do_print is truncating the data. That is why oswrite worked.

How do I go about doing the direct print?

JOhn


At 28 JAN 2009 12:33PM Bryan Shumsky wrote:

Hi, John. Actually, I believe you already _are_ using the directprint driver; if you were using the OIPI driver, you'd have to have specified "OIPI" for the name of the physical printer when you set it up in AREV32. Another indication: if you are using OIPI, you'll see a print preview window rather than printing directly to the printer (do you?)

It's not just using directprint that you need; we need to tell directprint to act in 'binary' mode. Although it's not standard AREV, there's a new statement PRINTB that works like PRINT, except it outputs binary. Try changing your PRINT to PRINTB and see if that works?

Thanks,

- Bryan Shumsky

Revelation Software


At 28 JAN 2009 12:47PM John Bouley wrote:

Thank you, that is what I was lookiing for.


At 03 FEB 2009 01:34PM John Bouley wrote:

Bryan,

FWIW, I tried the PrintB logic and it does not work. I had to change it back to oswrite var to "LPT1"

John


At 16 NOV 2011 05:41PM Donald Bakke wrote:

Bryan,

I'm not sure if you looked at the PRINTB command since John reported it wasn't working for him, but I just tried it in OI 9.2.1 and it is working well for me. I was running into a similar problem where I needed to print regular PCL from within AREV32 and then print an image (that was already converted to PCL) in the middle of the print job. In the original AREV application the system would shell to DOS and copy the file to LPT1 but that no longer works reliably because of the network shares.

My first attempt was to use DirectPrint instead. This worked but doing so interfered with my existing Set_Printer settings of the original print job. I had a workaround but using PRINTB actually works even better for my purposes.

Don Bakke

SRP Computer Solutions, Inc.

View this thread on the Works forum...

  • third_party_content/community/commentary/forums_works/655b126f59a63f2c8525754b007f2e3c.txt
  • Last modified: 2023/12/30 11:57
  • by 127.0.0.1