CDS084
This routine is used to open an output device that the application can print to. This includes a printer, the local display (terminal, PC, etc.), a fax modem,
DynaFax (email to fax gateway), internet email, text files, spreadsheet files, Adobe Portable Document Format (pdf)
files, and emailing PDF files as attachments.
It also can automatically upload to DynaStore cloud-based storage all PDF and text/spreadsheet files for permanent, redundant,
secure storage. You don't need to store the report in printed form,
nor in electronic form on the server or your workstation. All archived
reports are available at any time using the DynaStore Reports option located
on the SMS menu.
CDS084 is called by the menu processor whenever a printer is to be opened. CDS084 can be used in an interactive mode, where the operator selects the printer and options desired, or in a non-interactive mode where the printer and all options are passed from the calling routine. Note that CDS062, formerly used for printer selection, is obsolete and should not be used, although it still exists with limited capability for compatibility.
Calling format:
CALL "CDS084", ERR=XXXX, Y$, Y5$, U0, S084$, Y6, Y6$
CDS084 |
ERR |
branch to line XXXX if unable to open output device, or operator exits without selecting an output device.
It is recommended that all calls to CDS084 include an ERR= option.
Note that Y6$ is null and has no template associated with it if CDS084
exits with an error. |
Y$ |
session control variable |
Y5$ |
job description, usually from menu processor |
U0 |
In most cases, the application does not care what channel will be used for printing, passes U0 as zero, and CDS084 will determine an unused channel number. If you pass a channel number to CDS084 using U0, any file or device opened to this channel will be closed, and the specified channel will be used for printing. Application software should always print to channel
Y6.CH which is set by CDS084.
Programs that print to a hard coded channel number such as PRINT (6)
will not work properly when using the EPDF printer (emailing a PDF
attachment) because channel 6 will be opened to the email channel, and
channel Y6.CH will be opened to the PDF channel. |
S084$ |
Template based structure used to pass options to CDS084. If desired,
CALL "CDS041","CDS084",S084$ , "YY" before calling CDS084 to obtain an empty template. Use the File Utility to display the template for CDS084 for field sizes. You may also call CDS084 just passing a non-templated literal with the parameters required.
S084$ Template Fields |
---|
RPTWIDTH | N | Narrow - application will only print 80 columns | W | Wide (default) - application prints more than 80, but not more than 132 columns | E | Extra Wide - the application prints more that 132 columns.
Note that due to a bbx restriction the maximum number of
columns is 255. |
| MODE | F | Full screen (default), operator will be prompted for
printer and printer options. | S | Select default printer automatically, and then present
operator with printer options. Default printer is
determined using Printer Preferences or first printer in
list if no preferences have been specified. Pass
S084.NAME$ as all blanks or "LP " with this option. | N | No operator entries. Typically only used by
background tasks where no operator interaction is possible.
If the printer is successfully opened, but CDS084 encounters
an error zero trying to print to the printer, it will keep
trying indefinitely. | E | No operator entries except for error messages. | C | Choose printer but do not select any options and do not
open printer. Used when an application needs to store
a default printer in a data file. Printer selected
will be returned in Y6.PTRID$ . Other printer
information from SM31 file such as Y6.PTRTYPE$,
Y6.PTRTYPEDESC$, Y6.PCL, etc. are also returned in
Y6$ .
If the operator touches F4 and does not select a printer,
then the ERR= branch will be taken on the CALL to CDS084,
and Y6$ will be returned as a non-templated null string. | f | Bypass initial printer selection, but present options.
You must specify S084.NAME$ when using this option.
This is useful when emailing or faxing to eliminate the
initial printer selection, yet still allow entry of printer
options such as email address, fax#, etc. | D | Same as F but excludes Dynamo Print Spooler option. |
| NAME |
For MODE 's where the operator can choose the printer from the list,
S084.NAME$ will be the default printer, otherwise
S084.NAME$ should be set by the calling program as the Printer ID to be opened. The Printer ID's are defined in Printer Control Maintenance (SMC). If passed as blank or
"LP" , the CDS084 will determine the default NAME based on any entries made using Printer Preference Maintenance (SMC).
The following NAME s are reserved for the special application as noted. PFIL | text file output - also used for tab delimited files that
can be opened with a spreadsheet application. | PFAX | fax modem via VSI*FAX third party software, if enabled in
Dynamo Configuration Maintenance (SMC) | DFAX | * DynaFax is faxing via the internet without a local fax
modem, fax phone line, or third party software.
Requires participation in the Excellware Priority Support
Plan or purchase of a faxing service contract. There are no per-fax costs for local or long distance
fax delivery to the United States. | MAIL | internet email output, if enabled in Dynamo Configuration
Maintenance (SMC) | APDF | * Adobe PDF file output. | EPDF | * Email PDF attachment. | DISP | display on workstation |
* This printer requires a third party software product which
creates PDF files. Contact Excellware for more
information. Note that for convenience you can pass
S084.NAME$="PFAX" or "DFAX" and CDS084 will
change it based on the Print to Fax Option specified in Dynamo
Configuration Maintenance (SMC). Applications could check
for Y6.METHOD$="X" to indicate if either faxing
option is being used. | METHOD | blank | preferred setting, used to indicate the method should come from the Printer Control Maintenance setting | D | Print directly to printer, only applicable on printers connected to a serial or parallel port on the server.
Note that "1" is also supported to maintain compatibility
with existing programs. | S | Use Dynamo spooler, regardless of Printer Control setting.
Note that "2" and "C" is also supported to maintain
compatibility with existing programs. | O | Use Operating System spooler, regardless of Printer Control setting. Required for printers connected directly to the network or to printers connected to a PC when using FacetWin.
Note that "3" is also supported to maintain compatibility
with existing programs. |
| STYLE | 1-9 | printer style from Printer Type Maintenance | S | Standard print quality (no longer used, but allowed for compatibility, same as 1) | M | Memo print quality (no longer used, but allowed for compatibility, same as 2) |
| HORZ | 10 | 10 characters per inch (default) | 12 | 12 characters per inch | 15 | 15 characters per inch | 17 | 17 characters per inch | 20 | 20 characters per inch |
| VERT | 6 | 6 lines per inch (default) | 8 | 8 lines per inch |
| SIZE |
Initial page depth and orientation. Note that the
orientation can be changed within the printed document, so that
the document contains pages in both portrait and landscape
orientation.1 | 11 inch paper depth (default) - portrait orientation on a
laser printer | 2 | 8.5 inch paper depth - landscape orientation on a laser
printer |
| PCL | The calling program should set S084.PCL$="Y" which indicates the application program is going to send PCL codes. This directs CDS084 to use a PCL based printer type and the PCL formatter when faxing.
The application program often uses programs such as
CDS254
and CDS354
to send PCL codes to the printer. If this option is passed as
"Y" and the user selects a printer that is not PCL compatible, then
the user will be directed to select a different printer. | DYNASTORE | Controls whether the report should get archived in the DynaStore
cloud storage. Only applies to reports printed as PDF or to
file/spreadsheet. Requires DynaStore configuration parameters
in Company Information Maintenance (SMC).blank | DynaStore Reports
Parameter | Action |
---|
Y | Archive Report | N | Do Not Archive Report |
| Y | Archive Report | N | Do Not Archive Report |
| WEBBACK | When creating PDF files in Dynaweb,
CDW999 creates a new
browser instance containing the PDF document. If WEBBACK
is not set, or set to 1, then the page that launched the PDF window
will be re-displayed. If that page is used to enter parameters
to create the PDF document, you may wish to have the browser back up
to the previous page where the specific application was selected.
To do that, pass WEBBACK as 2. WEBBACK
up to 9 can be used to 'backup' up to 9 pages. | SOURCE | 1-6 indicates paper source, primarily for laser printers with multiple input trays, manual feed path, envelope feeders, etc. See Printer Type Maintenance. | DEST | 1-2 indicates paper destination, also primarily for larger laser printers, with multiple output paper paths | DUPLEX |
1-3 indicates duplexing option for printers that support printing
on the back side of the page. Certain laser and ink-jet
printers support this option.
1 | simplex - print on one side only | 2 | duplex - binding edge on long side of page | 3 | duplex - binding edge on short side of page |
| COPIES | Number of copies to be printed. Applies only when using
the Operating System (OS) spooler. | COMMENT | Additional description that is displayed using the Dynamo Print
Spooler. This field is typically entered by the user but can
also be passed to CDS084. | TONAME | Email & fax option, to individual name | TOCOMP | Fax option, to company name | TOFAXNO | Fax option, fax telephone number | FROMNAME | Email & Fax option, from individual name, if not passed, login operator name used | FROMCOMP | Fax option, from company name, if not passed, current company name used | FROMEMAIL | Applies when emailing only. Can be set by calling program
to sender's email address. If blank, CDS084 will use email
address specified in Operator Information Maintenance for sending
user. If this is also blank, then a default email address of
customer@excellware.com
is used. This is done in order to provide a valid, resolvable
domain name since anti-spam policies often reject email with a
non-resolvable domain name on the senders email address. | FROMPHONENO | Fax option, voice telephone number, if not passed, telephone number in operator information maintenance used, if no operator information phone number, then the telephone number in company information maintenance is used | FROMFAXNO | Fax option, from fax number, same as above | SUBJECT | Applies to Email & Fax option.
CDS084 also supports the ability to insert a special symbol to the front of the email subject. These symbols bring attention to your emails and typically appear in the list of messages as well as when viewing the message itself. This feature is enabled by setting the global variable "SMS_CDS084.SYMBOL" to the UTF-8 hexadecimal value for the symbol desired. This link can be used to locate other symbols.
Description | SMS_CDS084.SYMBOL | Displayed as |
---|
Fire | "F09F94A5" |  | Truck | "F09F9A9A" |  | Church | "E29BAA" | ⛪ | Flag in Hole | "E29BB3" | ⛳ |
| RESOLUTION |
Fax option | PRIORITY |
Fax option - controls where the fax is placed in the outgoing fax
queue. Higher priority faxes are sent before lower ones.L | Low | M | Medium (default) | H | High | U | Urgent |
Email Option - controls display of the message priority
indicator on the recipient's email application. L | Low | M | Medium (Normal) | H | High |
| CRLF | This option is used when printing to a file to set end of line
and end of page separators.Y | DOS/Windows line separator (carriage return and line
feed), no page separator | W | DOS/Windows line separator (carriage return and line
feed), Microsoft Windows page separator. This option
will leave the page breaks in the file, created by printing
'FF', which will cause applications such as Microsoft Word
to start a new page when opening the created file. | N | Unix line separator (line feed only), no page separator |
| FAXDATE | Date in JUL format to defer faxing until. Does not apply to Dynafax. | FAXTIME | Time in TIM format to defer faxing until. If not set, then
the fax is scheduled for immediate delivery. Useful when
sending broadcast faxes where you want to send at night. Does not apply to Dynafax. | FAXNOTIFY | Can be set by calling program to override the Company Default Dynafax Notification default setting specified using Company Information Maintenance. Effective with Dynamo Tools versions dated 12/5/14 or later.
F | Email sender only if fax fails | A | Email sender always | S | Email sender only if fax succeeds |
| COVERPAGE | When faxing, a coverpage is normally sent whenever the TONAME,
TOCOMP, or SUBJECT fields are non-blank or if a Cover Sheet Memo is
entered. You can disable the fax cover page by setting
S084.COVERPAGE$="N" . | EMAILTYPE |
This parameter only applies when emailing or emailing a PDF
attachment.blank | Application will print text, mnemonics such as 'LF', and column positioning expressions such as @(NN), to printer channel
Y6.CH . You are limited to 255 characters per printed line, otherwise you will encounter an error 1. | H | Application will print text and html tags, but no mnemonics nor column positioning expressions, to printer channel
Y6.CH . CDS084 will print <HTML> tag
and set appropriate Content-Type headers & separators.
Applications often use CDW000 and
CDW038 to create html tables and
reports. You are not limited to printing 255 characters per line, so you should not encounter any error 1's. Use $0A$ instead of 'LF' when using this option. |
| EMAILPDF |
This parameter only applies when emailing an attachment using the
EPDF printer.blank | Email body will contain 'PDF File Attached' | N | Application will send text or html for email body by
printing to channel Y6.CHEM . |
| REDIRECTEMAIL | This parameter can be used to redirect an applications email to
the user logged in on non-production servers where the Dynamo
Configuration Maintenance Parameter Redirect Email is also set to
"Y" . If both parameters are "Y" ,
then in addition to the email being redirected, the email Subject is
also modified to include the server name than initiated the email
(using the SMS_SERVER global), and the body of the
email includes the intended email address. Note that the user
logged in must also have an email address specified in Operator Information
Maintenance (SMC).Y | Redirect email to the logged in user's email address | Other | Email is sent to the S084.TOEMAIL$ address |
Note that the Dynamo Configuration Parameter record is saved to a
global variable upon login, so you will need to logout and back in
after using Dynamo Configuration Maintenance to change the Redirect
Email parameter. | FILEOUT | For file output options, the name of the file to be created can
be optionally passed to CDS084.FILEOUT | Result |
---|
not specified | CDS084 will define a unique file in the tmp folder below
the Dynamo Tools install directory. The file extension
will be .pdf if CDS084 is creating an Adobe PDF file,
otherwise the extension file be .txt. Actual file name
used will be returned both in S084.FILEOUT$ and
Y6.FILEOUT$ . If the application returns
to the Dynamo Tools menu (CDS001), then the temporary output
file will be erased. Otherwise files in tmp/ are
typically erased by a cron task once the file is 24 hours
old. Refer to CDS064 for
additional details regarding defining files. | specified with a comma in file name | The comma indicates that a unique file name should be
created by inserting a unique number before the comma.
If the comma is at the end of the file name, it will be
removed. If the comma is not at the end, it will be
replaced with a period. Example:
S084.FILEOUT$="TEMP/Report,txt" . Unique file
name such as TEMP/Report123.txt . If path
to file name includes File will be erased upon return to
CDS001. Refer to CDS064 for
additional details regarding defining files. | specified without a comma in file name | If this file already exists, and if not running in a
background task, and S084.MODE$ is F or E, then
operator will be notified that file File specified already
exists, and if it is OK to erase and replace the file.
If S084.MODE$="N" or if running in the
background, then the existing file will be erased without
prompt.File specified will be defined. File will not be
erased upon return to CDS001. |
Regardless of the option used, the name of the file used will be
returned to the calling application in Y6.FILEOUT$ . | TOEMAIL | Email address. Separate multiple addresses using a comma
with no spaces. | EMAILCC | Carbon Copy Email address(es) | EMAILBCC | Blind Carbon Copy Email address(es) | EMAILREPLYTO | This field can be used to specify the email address used if the
recipient chooses to reply to this email. Only required when
the REPLYTO address is different from the FROMEMAIL address.
For example, the O address might be a corporate email
address, where the REPLYTO address is a person or department
address. |
|
Y6 |
Obsolete. Use Y6.MAXL or Y6.MAXLPG instead. Lines
available for printing. |
Y6$ |
Template based printer information returned to application program.
Note, that if CDS084 exits with an error, Y6$ will be null, and not have
an associated template.
Y6$ Template |
---|
CH | Channel number used for printing. Within an application program,
PRINT (Y6.CH)... | CHEM | Channel number used for the email body when using printer Name
EPDF which attaches a PDF file to an email. The application
can print text or html to this channel which will appear in the
email body. See also S084.EMAILTYPE and
S084.EMAILPDF . | L | Number of lines left to print on the page. Application programs should decrement
Y6.L for each line printed.
The best practice is to use Y6.L and not L as the line counter.
This allows you to call programs like CDS038
or CDS257 and pass the current page and
line to (and back from) these routines via Y6$ . | P | The current page number. Incremented by CDS094. Printed by applications as
"Page",Y6.P | MAXL | The maximum number of detail lines to print or display per page. Assumes 6 heading lines. So printing on 11" paper at 6 lines per inch, with 1/2" margin on top and bottom, has
Y6.MAXL=54 . CDS094 assigns Y6.L to
Y6.MAXL . | MAXLPG | Similar to MAXL except that MAXLPG includes all lines to print on the page, with no allowance for heading lines. Programs that are not standard reports such as forms can set
Y6.MAXL=Y6.MAXLPG at the beginning of the job to insure printing on as much of the page as possible. | FF$ | Used by CDS094 to indicate when form feeds need to be printed. | RPTWIDTH$ | Report width from S084.RPTWIDTH$ . If calling
CDS038 multiple times within a group of
reports, as might be done in a Customer, Item, or Vendor Inquiry
hard copy, the application should set Y6.RPTWIDTH$ to N or W before
calling CDS038 so that each section of the report can be either
standard width (80 columns) or compressed width (132 columns) are
required for each section of the report. | RPTCOLS |
Number of columns the report requires. Typically 80 for
Narrow (N) reports, 132 for Wide (W) reports, and 233 for Extra
Wide (E) reports. However, this field is also assigned by
CDS038 to the actual number of columns
when more than 132 columns are required. This is needed
when printing to the Display (DISP) so that the window will be
exactly the correct width and look best when scrolling right and
left to view the report.
| METHOD$ |
Print method selected
P | printing directly to printer | T | printing to terminal/display | S | spooling using operating system or Dynamo spooler | F | printing to file | X | faxing (both VSIFAX and DynaFax) | E | emailing | A | creating Adobe PDF file, or attaching a PDF to an email |
| EMAILTYPE$ |
Email type from S084.EMAILTYPE$ blank | text only email | H | HTML email |
| DEVICE$ |
The device name opened, typically LPEX1 for the first printer
opened by the application. | PTRID$ |
The printer ID as specified in Printer Control Maintenance.
Use this instead of FID() to base program logic on the
particular printer opened. | PTRIDDESC$ |
Printer description associated with the Printer ID as specified in
Printer Control Maintenance. | PTRTYPE$ |
Printer type as specified in Printer Control Maintenance. | PTRTYPEDESC$ |
Printer type description (from Printer Type file SM31) | PTRWIDTH$ |
Printer width (from SM31)N | Narrow carriage (8") | W | Wide carriage (13.2"+") |
| LINEDRAW$ | Indicates if the printer supports printing of box and line drawing
graphics characters using high-order ASCII characters. From
Printer Type record (SM31). | PCL | Indicates the printers support for PCL commands. From Printer
Type record (SM31). Also used to indicate if the printer prints in
color or just black ink.0 | printer does not support PCL commands | 1 | printer supports PCL, but non-scalable fonts. Also
indicates printing to a file and S084.PCL$ was passed as "Y"
indicating that the application will send PCL commands to
printer channel. | 2 | printer supports PCL and scalable fonts | 3 | color printer with PCL, scalable fonts, simple colors only
(8 colors) | 4 | color printer with PCL, scalable fonts, full color support
including images |
| EPWIDTH | Indicates the number of print positions used per character when using
Y6.DWON$ to print double-width characters.Print method selected
1 | double wide characters not supported, print as single
width characters | 2 | double wide characters take 2 print positions |
| SIZE | Indicates the paper depth or orientation selected.1 | 11 inch paper depth - portrait orientation on a
laser printer | 2 | 8.5 inch paper depth - landscape orientation on a laser
printer |
| DYNASTORE | Should report be archived in DynaStore when the output device is
closed (Y/N) | SLAVE | Indicates if the printer is accessed by printing to the workstation
device using slave on/off characters.0 | printer selected is not a 'slave' printer | 1 | printer selected has the same device name as the
workstation or /dev/tty |
| FILEOUT | Name of file when printing to a file using printer name PFIL. | INITON$* | Initialization string upon printer open | INITOFF$* | Initialization string upon printer close | DWON$/DWOFF$* | Double Wide on/off | DHON$/DHOFF$* | Double High on/off | ULON$/ULOFF$* | Underline on/off | BLDON$/BLDOFF$* | Bold on/off | ITON$/ITOFF$* | Italics on/off | RVON$/RVOFF$* | Reverse printing (white letters on a black background) on/off | STLYENAME$[9] | Names of different print styles from Printer Type Maintenance | STYLE$[9]* | Codes to invoke each particular style | CPI10$* | 10 characters per inch | CPI12$* | 12 characters per inch | CPI15$* | 15 characters per inch | CPI17$* | 17 characters per inch | CPI20$* | 20 characters per inch | LPI6$* | 6 lines per inch | LPI8$* | 8 lines per inch | DEPTH11$* | Page depth of 11 inches (portrait orientation for laser/ink-jet printers) | DEPTH85$* | Page depth of 8.5 inches (landscape orientation for laser/ink-jet printers) | SOURCENAME$[6] | Name of different paper sources | SOURCE$[6]* | Codes to invoke each paper source | DESTNAME$[2] | Name of different paper output destination | DEST$[2]* | Codes to invoke destination | DUPLEX$[3]* | Codes for each simplex/duplex printing mode (see above) | MODE$ | The MODE= string used on the OPEN of the printer | MSG$ | Display message such as Printing..., Spooling..., etc. including cursor positioning expression so that the application program need only
PRINT Y6.MSG$ ,.Note the old PRINT Y6$(90) , is no longer supported. Use the Program Utility Search and Replace option with standard Search & Replace arguments to replace this code. |
|
* The fields in Y6$
marked with * can be used to change printing
characteristics within the application. For example, the PRINT
statement to print double wide text, assuming the printer supports double
wide printing, would be: PRINT (Y6.CH)'BO', Y6.DWON$, DATA$, Y6.DWOFF$,' EO'.
It is recommended that you only have one 'BO'
and 'EO'
per
PRINT
statement,
and that you do not include any positioning expressions @()
or other
mnemonics between the 'BO'
and 'EO'
.
CDS084 also sets 'SP'
and 'CP'
which should be used within an program
that needs to change from narrow to wide and/or wide to narrow characters
per inch within the application.
Note that application programs should not print the 'FF'
mnemonic,
instead, use CDS094 for all new page and close
printer logic. By using CDS094, the application will best support
printing to the display.
Applications that need to close the printer channel prior to returning to
the menu, should CALL "CDS094",Y6$,"E"
and not use
CLOSE()
.
Config.bbx
CDS084 does not require an entry in the config.bbx
file for each printer.
Printers are included on the printer selection list using Printer Control
Maintenance (SMC). The list of printers can be customized by
workstation, user, or groups of users. Refer to Printer Preference
Maintenance (SMC) for additional details. The only entries required in
config.bbx
are generic entries named LPEX1, LPEX2, LPEX3, LPEX4 and LPEX5.
You do not need to add entries as printers are added. These entries
will support up to 5 different printer channels open at one time per
program.
Should an application require more than 5 simultaneous printer channels open
at the same time, then additional config.bbx
entries can be made. Note
that the FID(Y6.CH)
will return LPEXn
and not the printer ID. The
actual printer ID can be accessed from Y6.PTRID$
.
If there is an entry for a printer in the config.bbx file, then CDS084
will use it instead of the generic LPEXn aliases. This should only be
done when applications open the printer directly without using CDS084.
When using CDS084 within a bbj stored procedure or trigger, be sure to
specify a config file for the stored procedure or trigger in the Basis
Enterprise Manager. Dynamo Tools includes a configuration file that
includes the required alias entries that can be used for this purpose.
The file name is $SMSDIR/bin/config.web
. Replace $SMSDIR
with it's value such as /u/CDI/bin/config.web
when entering the
config file name in the Enterprise Manager.
Cover Page Memo
A cover page memo may be entered by the operator when faxing.
Fax Cover Page Logo/Watermark
A logo or watermark can be printed on the fax coverpage by defining a
file named XX/faxcover.prn
. XX
represents the company code. This
document can be created using a word processor. Email the document to
support@excellware.com and we
will convert it to the proper format.
Example
CALL "CDS084",ERR=EOJ,Y$,Y5$,0,"N",Y6,Y6$
This example will prompt the operator to select an output device to an available channel number. The "N"
indicates that the program will not require more that 80 columns, so both narrow and wide carriage printers will be permitted using operator specified characters per inch, lines per inch, etc.
Example
CALL "CDS041","CDS084",S084$,"YY"
S084.NAME="PFIL"
S084.FILEOUT="/u/reports/REPORT001"
CALL "CDS084",ERR=EOJ,Y$,Y5$,0,S084$,Y6,Y6$
Faxing
You fax using CDS084 much the same way you print. You can populate
fields in S084$
to enable faxing with or without operator intervention.
Refer to the fields in S084$
described above. Use Fax Log & Options (PFM)
to see if the fax was successfully sent. By default, the fax software
attempts to fax 5 times in 5 minute intervals. If the line is busy or
does not answer each time, or the phone number provided is not a fax#, then
the fax will be unsuccessful. You can schedule another 5 attempts, and
change the fax# if desired, using the Fax Log & Options program.
When the fax is not successful, a Dynamo message is sent to the sender.
S084.NAME$
is "PFAX"
for faxing using a fax
modem and the third party VSIFAX software. S084.NAME$
="DFAX"
for DynaFax which emails the fax as a PDF attachment then delivers to the
fax machine. DynaFax requires a third party software product to create
the PDF file. Contact Excellware for more information.
Faxing Example - no operator intervention |
CALL "CDS041","CDS084",S084$,"YY"; REM "Obtain empty template S084.MODE$="E"; REM "No operator entries other than error messages S084.NAME$="DFAX"; REM "Fax using DynaFax S084.TONAME$="Jim Jones" S084.TOCOMP$="Power Tool and Supply" S084.TOFAXNO$="888-222-1234" S084.SUBJECT$="Purchase Order# "+WM40.PONO$ S084.COVERPAGE$="N" S084.PCL$="N"; REM "Application only sends text, not PCL commands CALL "CDS084",ERR=EOJ,Y$,Y5$,0,S084$,0,Y6$; REM "Open printer channel PRINT (Y6.CH)"Fax Example" CALL "CDS094",Y6$,"E"; REM "Close printer channel
|
Internet Emailing
You can internet email using CDS084 much the same way you would print to
a physical printer. You can populate fields in S084$
to enable
emailing with or without operator intervention. You can email regular
reports in the message body. You can also attach one or more data files to an email
using CDS184.
Internet Email Example with file attachment - no operator intervention |
CALL "CDS041","CDS084",S084$,"YY"; REM "Obtain S084 template S084.MODE$="E"; REM "No operator entries except for errors S084.NAME$="MAIL"; REM "Internet Email S084.TONAME$="Jim Jones" S084.TOCOMP$="Power Tool and Supply" S084.TOEMAIL$="jjones@powertool.com" S084.EMAILCC$="support@excellware.com,manager@mycompany.com"; REM "Separate with comma S084.SUBJECT$="Purchase Order# "+WM40.PONO$ S084.PCL$="N"; REM "Application program will send text, not PCL commands CALL "CDS084",ERR=EOJ,Y$,Y5$,0,S084$,0,Y6$; REM "Open printer channel PRINT (Y6.CH)"Email Test"; REM "This will appear in email body CALL "CDS184",Y$,Y6$,"PRT/FILENAME.PDF","PONO12345"; REM "Attach file to email CALL "CDS094",Y6$,"E"; REM "Close printer channel
|
When faxing and emailing, a record of the attempt is logged. See
the SMS menu for the fax and email logs.
You can disable the ability to fax and email by operator using Operator
Information Maintenance (SMC).
CDX084A - Example of changing page orientation within document |
0100 REM "CDX084A - 05/02/10 Example of portrait and
landscape pages in same document 0110 SETESC 8000; SETERR 8000 0120 CALL "CDS084",ERR=EOJ,Y$,Y5$,U0,S084$,Y6,Y6$ 0130 PRINT (Y6.CH)"This is plain text, on portrait page" 0140 CALL "CDS094",Y6$; REM "Finish page 1, start page 2 0150 PRINT (Y6.CH)'BO',Y6.DEPTH85$,'EO',;
REM "Page 2 in landscape orientation 0160 PRINT (Y6.CH)"This is plain text, on landscape page" 0170 CALL "CDS094",Y6$; REM "Finish page 2, start page 3 0180 PRINT (Y6.CH)'BO',Y6.DEPTH11$,'EO',;
REM "Page 3 in portrait orientation 0190 PRINT (Y6.CH)"This is plain text, on portrait page" 0200 CALL "CDS094",Y6$,"E"; REM "Complete document and close printer
channel 0210 GOTO EOJ
8000 REM "Call Error/Escape Routine 8010 CALL "CDS063",STR(TCB(5)),Y$,PGM(-2) 8020 ON Y.ERRSTS GOTO 8030,8040,8050,8060 8030 SETERR 0 8040 RETRY 8050 RETURN 8060 RETRY
9000 EOJ: 9010 IF TCB(13) THEN EXIT 9020 RUN "CDS001"
|
Click to view
example output |