Printer overrides for DSI Script

Pierce1991

Member
I was wondering how other people handled overriding printers in their DSI scripts.

We would like the user to be able to select the printer beforehand and then all of the UBE that are generated, are routed to that printer.

Normally, you would use the JDE printer overrides. That doesn't seem to work, since all of the DSI scripts are getting run by user DSIADMIN.

Has anyone else dealt with this problem?

We are on JDE 9.0.
 
We had an NER created to call certain versions for reports based on the user logging in. We then converted the NER into C code by compiling on the local client so it created the .c and .h files. We registered the function under the XML Function Caller in DSI so it can be used in the scripts.

The C function uses the the jdeLaunchUBEEx2 API to launch the UBE passing the parameters from the script.

After looking at the jdeLaunchUBEEx2 parameters, it looks like there is a szPrinter parameter to specify a specific printer. You could prompt for a printer then pass it in.

See Oracle Support for E1: RDA: How API jdeLaunchUBEEx is Implemented in a C Business Function [ID 634772.1]
 
You can use the event "Do Initialize Printer" placed at Report Level to override Default Printer.E1 have a system function called "Initialize Logical Printer Name" which will work in the "Do Initialize Printer" EVENT only. Using this event, you can print the same report to different printers based on criteria that you define. The event rules located on this event are the first event rules processed at runtime.You can create a Processing Option field to control the printer name.
 
Thank you all so much for your thoughtful replies. Since we only have a few of reports, we are going use the "initialize printer" method; but both approaches looked really good and I appreciate all the help.
 
Back
Top