Before you begin…
The Resort Management System contains a report generator that can be used to create custom reports. Custom reports can selectively retrieve information, sort the information and print or display information. The report generator is called Micro-ENGLISH. To use Micro-ENGLISH, refer to the file layouts or file descriptions contained in the File Descriptions section of your RMS Help files. In order to create a report, you must first decide which file contains the information you want. File names are listed in the right hand column of the File Descriptions. If you wanted an arrival listing you must use the RMSRESV file because this file contains each reservation's information. If you wanted a unit listing report, you must use the RMSUNIT file because this file contains each unit's information. The summary information on the file layouts describes the function of the file and general information on its contents.
Micro-ENGLISH stores reports in your workstation's dictionary file or in a report file. Each workstation has its own dictionary file. When you create a report the report is stored in the workstation’s dictionary file. Therefore, if you are in a multi-user system, whichever console you created the custom report on will be the only console where you can run that report.
Starting Micro-ENGLISH :
Select the Report Menu from the Main Menu of your RMS. Choose Custom Reports from the Report Menu.
Choose Maintain a Select Report with your mouse.
The Micro-English screen will be displayed along with a select prompt. The Micro- ENGLISH screen will display the last sentence used by the workstation. This sentence may be removed, modified or executed. These commands and others are discussed below. The first word on the sentence must be the file name you wish to report from. File names are listed in the right hand column of File Descriptions in the Help files. If you do not know which file that you wish to report from see the File Descriptions list.
Prompt descriptions…
HELP
After you have denoted which file to use, HELP will display an alphabetical list of the field names (also called dictionary- items) available for use. Field names are the labels given each piece of data in the file you have chosen to use. For example, the field name for the date of arrival in the reservation file is called ARRIVAL. These field names will be used with the Sentence Clauses described in this section.
MODIFY
When a sentence already exists on the screen, it may be recalled and changed using this command. The sentence shown will be placed in the prompt input area and you may edit the sentence using your standard editing/movement keys. This command is used to fix an incorrect sentence that has been entered, add to an existing sentence or take away from an existing sentence. Using the MODIFY command you can "borrow" from an existing report to create a new report. To do this you would RETRIEVE an existing report, MODIFY the sentence, and SAVE the report under a new report name. The RETRIEVE and SAVE commands are discussed below.
BEGIN
When finished entering a sentence this command will execute the sentence and produce the report.
NEW
This command removes any current sentence displayed. Use this option to clear the sentence shown in order to enter a new sentence.
LAST
This command will recall the last sentence executed by Micro- ENGLISH and display it on the screen. This can be useful if you wish to start over the process of modifying the last sentence you executed.
RETRIEVE
This command will load a sentence that was previously saved using the SAVE command. You will be prompted for the report name to retrieve. The report name must exist in your report file or an error message will be displayed.
SAVE
This command allows you to name and store the current sentence you are working with. In the future, you can use the RETRIEVE command to recall the sentence. You will be prompted for the report name. The report name you enter would be used to RETRIEVE the report. If a report by that name already exists, you will be warned of such. If you continue, you will overwrite any existing report with the current sentence. If you are modifying an existing report and wish to save it under the same name, continue with the save. If you are modifying an existing report and wish to keep both the existing report and the new modified report just created, do not continue with this save. Exit this save and save again using a different report name.
EXIT
You will exit Micro-ENGLISH and return to the Reports Menu. Be sure and save the sentence you are working with, if desired, prior to using this command. You must exit the report generator before going back to any RMS menus.
Micro-ENGLISH Sentence Clauses
Any of the following clauses may be used in a Micro-ENGLISH sentence. The only requirement of a Micro-ENGLISH sentence is the filename. If only the filename is used, the count of records in the file will be displayed (you would normally use the HOLD clause to pause the record count). Any combination of the following clauses may be used and may be in any order (except the USING clause must follow the file name), but they may only be used once in a sentence. You may not have a field name that uses any of these clause words; they are reserved for this purpose. The following is a brief definition of the Micro-ENGLISH clauses, a detailed discussion of these clauses follows.
BREAK
Will denote report control breaks.
BUILD TEXT FILE
Denotes fields to output to text file.
BY
Denotes sort criteria.
DISPLAY
Denotes output to be displayed to screen.
FROM
Denote an existing list file to be used.
HOLD
Denotes a pause after each display page.
INTO
Denotes alternate file name for key list.
LENGTH
Denotes page length for report.
Denotes output to be printed to printer.
RECORDS
Denotes a list of records to be used in report.
SPACING
Denotes spacing for detail line.
SUPPRESS
Denotes suppression of output feature(s).
USING
Denotes alternate dictionary file to use.
WIDTH
Denotes page width for report.
WITH
Denotes selection criteria for report.
BREAK
Controls the "breaking" of the report. A break is defined as a change in the output information that occurs when a specified field changes. At a minimum, the change in the output information will be a blank line. Totals are often printed when a break occurs. The BREAK clause is normally used in conjunction with the BY clause which sorts the information. For example, if you sorted your information in sequence of date (BY DATE) and requested a break on date (BREAK DATE) a break would occur each time the date changed. If you had specified an amount field to be totaled, a sub-total for the amount field would be printed each time the date changed. The format of the BREAK clause is:
BREAK field-name-1 field-name-2 ...
Or
BREAK PAGE field-name-1 field-name-2 ...
Field-name is a field name from the file being selected.
The order of the field names, from left to right, denotes the order the breaking is to occur. The most major break is listed first then descending to the most minor break. If BREAK is used a minimum of 1 field name must be used. A maximum of 15 fields may be specified in the BREAK clause.
The PAGE option is used to force the printer to the top of a new page when the break field changes. First, any break totals will be printed, and then the printer will advance to the top of a new page. This is useful when a report needs different information on a new page.
For example:
BREAK PAGE UNIT.NUMBER STATUS.CODE
This clause will result in a minor break when the status code changes, printing any totals or a blank line on the same page. A major break will occur when the unit number changes, printing totals for the arrival and for the unit and then feeding the paper to a new page due to the PAGE option. This would create a report with each unit starting on a new page and at minimum (depending on whether any totals were requested) a blank line between status codes. Use the PRINT or DISPLAY clauses to denote any fields to be totaled during the BREAK process.
BUILD TEXT FILE
This clause denotes the output of the select is to create a text file. Other programs could use the file produced. The output will be an ASCII text file with the fields quote comma delimited and the record carriage return/line feed delimited. This is a standard file format for exchanging data between programs. The format for the BUILD TEXT FILE clause is:
BUILD TEXT FILE filename field-name-1 field-name-2 ...
Or
BUILD TEXT FILE filename ALL
The filename denotes the name of the file to create and where to output the information. This name is in the DOS format of 1 to 8 characters or 1 to 8 characters a period and 1 to 3 characters.
The field-name is a field name from the file layout that you wish to output into the file specified in filename. As many field names as needed may be specified, but a minimum of one must be specified unless the ALL option is used. The fields will be output in the sequence they are entered, from left to right.
The ALL clause is optional and when used denotes that all of the field names for the file being reported on should be output into the file specified in filename.
The BREAK, DISPLAY, LENGTH, PRINT, SUPPRESS or WIDTH clauses may not be used in conjunction with the BUILD TEXT FILE clause.
For example:
SELECT RMSMAIL BUILD TEXT FILE MAIL.TXT NAME ADDRESS.LINE.1 ADDRESS.LINE.2 CITY STATE ZIP.CODE
This sentence will select the mailing list file and build a text file named MAIL.TXT containing the name, address line one, address line two, city, state and zip code for all mail entries in the file.
BY
This clause is used to specify the sequence in which the report is to be sorted. The format of this clause is:
BY field-name-1 field-name-2 ...
The order of the field names, from left to right, denotes the sequence from major sort to minor sort. A minimum of one field name must be specified when using the BY clause up to a maximum of 15 field names. The sorting justification is automatically determined by the field name dictionary information.
Each field-name may denote whether the sorting is to occur from high to low or from low to high as follows:
ASCENDING field-name-1
Or
DESCENDING field-name-1
The ASCENDING option denotes the sort is to be from low to high, the most common method, i.e. lowest date to highest date. The DESCENDING option denotes the sort, for the field name specified, is to be from high to low. Each field name can denote the high to low or low to high sequence of the sort. If no option is stated ASCENDING or low to high is assumed.
For example:
BY UNIT.NUMBER STATUS.CODE DESCENDING OWNERS.GROSS.INCOME
This would sort the records first by unit number, from lowest to highest, then within unit number (all the records with the same unit number) sorted by status code, from lowest to highest, and finally within status code (all the records with the same unit number and the same status code) by owners gross income from highest to lowest. If printed the report may look like this:
Unit Status Code Owners Gross Income
100 A 1000.00
100 A 800.00
100 B 1000.00
100 B 600.00
100 C 0.00
101 A 600.00
101 A 500.00
101 C 0.00
102 A 2000.00
102 A 1800.00
DISPLAY and PRINT
This clause is used to specify the field names to be output to the workstation screen or the printer. Only one DISPLAY or PRINT clause is allowed. The format of the clause is:
DISPLAY field-name-1 field-name-2 ...
Or
PRINT field-name-1 field-name-2 ...
Or
DISPLAY ALL
Or
PRINT ALL
The DISPLAY clause denotes the output is to be displayed on the workstation screen. The HOLD clause is assumed when DISPLAY is used. The PRINT clause denotes the output is to be printed on the printer. All other aspects of these clauses are interchangeable in their usage.
Field-name
Field-name denotes the field name to output. A minimum of one field name must be specified up to as many field names as are contained in the file being used. The sequence of the field names, from left to right, denote the sequence they will be output. If the length of the output line exceeds the output width of the printer, the report will print non-columnar (in paragraph format). To not have his occur you must either reduce the fields to output, change the width of your printer and use the WIDTH clause, reduce the length of the fields being output by using the [output-format] option or use some combination of these three. It is common that the output sequence matches the sort sequence established with the BY clause, although this is not required. Each field name can use the following options:
TOTAL field-name-1 [output-format]
or
UNIQUE field-name-1 [output-format]
where field-name is a field name to output.
TOTAL
The TOTAL option specifies the field name following the TOTAL option is to be totaled and the total is to be part of the output. The total for the specified field name will by output at the end of the report and for each BREAK encountered. This option is commonly used in conjunction with the BREAK clause to produce sub-totals. The option TOTAL must be placed in front of each field name that is to be totaled.
UNIQUE
The UNIQUE option denotes that the value for the field is to be output only when the field value is different from the previous record's value. This is normally used in conjunction with the BY clause and is used to only print the information once on the report. For example you may report on all reservations for a unit and UNIQUE the unit number. This would cause the unit number to print only on the first line of the report (and on the first line of any additional pages), easing the readability of the report.
[Output-format]
The optional [output-format] denotes the normal output length is to be overridden by the entered format. The most common usage of this option is to reduce the length of a long field in order to fit additional fields on the output line. For character fields, i.e. name, the number of spaces to occupy is denoted by a number. For example "NAME [20]" would specify the name is to occupy 20 characters of the output line, with the left most 20 characters output. For numeric fields, i.e. owners gross income, the number of spaces to occupy is denoted by using a '#' for each output position, a comma if desired to separate groups of 3 numbers, a period for the decimal position (if needed) and a '#' for each fraction position. For example, AMOUNT [#, ###. ##] would hold a maximum of 9,999.99 dollars. For numbers a '%' sign will be output if the number was too large to fit in the allotted space and usually the fractions portion of the number will not be displayed. Any math on the number will still be performed correctly. It is not very common to override a numeric field.
Some examples:
DISPLAY UNIT.NUMBER RESERVATION.NUMBER PRIMARY.NAME
This report will display the unit number, reservation number, status code and primary name on the screen.
PRINT UNIQUE UNIT.NUMBER RESERVATION.NUMBER PRIMARY.NAME[20]
This report will print the unit number, reservation number and primary name. Due to using the UNIQUE option in front of the field name UNIT, the unit number would only print when its value is different from the last unit number printed (or on the first line of a new page). Using the [output-format] option following the PRIMARY.NAME field (no spaces between the field name and the [output-format] option) reduces the printed length of the primary name to 20 characters.
PRINT UNIT.NUMBER TOTAL OWNERS.GROSS.INCOME TOTAL COMMISSION
This report will print the unit number, owner gross income and the commission. The owner gross income and commission fields would be totaled. If a break were being performed, these fields would also produce sub-totals.
FROM
This clause allows you to denote the name of a file that contains the records to process or to denote the cross-reference words to use in
HOLD
This clause forces the output process to pause when a full page has been output or the end of the output process has occurred. The system will pause and wait for a key to be pressed before continuing. HOLD is automatically assumed when using the DISPLAY clause. The most common usage of this clause is to pause the system so a record count can be seen after using a sentence that did not contain a PRINT or DISPLAY clause. The format of this clause is:
For example:
RMSRESV WITH ARRIVAL="010199" HOLD
This sentence would select the reservation file and find all records (reservations) that are arriving on the 1st of January 1999. No output was requested so only a record count will be displayed, reflecting the number of arrivals for that day. The HOLD clause forces the system to pause, enabling you to note the number of records selected. You must touch a key to continue when the system pauses.
INTO
Every time Micro-ENGLISH, is used a file containing the record keys (field 0 of the file) is output. This file is then used by the reporting phase as the master list of records to work with. This is an automatic function of Micro-ENGLISH. This clause is used to direct the output key list produced by Micro-ENGLISH into a named DOS file instead of the default list file. The format for this clause is:
INTO filename
The filename is the name of the DOS file to create containing the list of record keys selected. This name is in the DOS format of 1 to 8 characters or 1 to 8 characters a period and 1 to 3 characters.
This option is rarely used; however, a good example of usage is shown below.
For example:
SELECT RMSMAIL BY ZIP.CODE WITH ADVERTISING.SOURCE='SL' INTO LABELS.FIL
The example sentence would select all entries in the mailing list file that used the advertising source 'SL', sort them by zip code and output their mailing list number (the key to the record) into a file named LABELS.FIL. The label print program in the RMS system will allow you to print labels for all mailing list entries listed in the LABELS.FIL file. To use this option you would first select the mailing list file, using the INTO clause as shown above. Then using the print labels option on the reservations menu you would choose the "Use last select list for mass labels" option. Labels would be printed for the mail entries you selected.
LENGTH
This clause overrides the installed workstation or printer page length. The format of this clause is:
LENGTH number
The number is the number of vertical lines on the output page. This clause is only useful when a DISPLAY or PRINT clause is used. The page length cannot be less than 5 or greater than 255. This option is rarely used.
For example:
LENGTH 80
Could be used to set the page length for 14" legal-sized paper.
See DISPLAY or PRINT
RECORDS
This clause provides a list of record keys to use for the rest of the sentence. When this clause is used, the file will not be read to determine the records to output as they have been provided by the use of this clause. The format for this clause is:
RECORDS reckey1 reckey2 ...
where reckey is a key to the file being reported on.
The FROM clause may not be used with this clause.
For example:
SELECT RMSRESV RECORDS 120 182 194 DISPLAY RESV.MADE.BY LAST.CHANGE.DATE
would print the initials for the operator that made the reservation and the last change date for reservation numbers 120, 182 and 194. The reservation number is the record key to the reservation file.
SPACING
This clause is used to increase the number of blank lines to print between the lines. This clause would enable you to set the output to double-spaced. The format of this clause is:
SPACING number
Where number is the number of blank lines to print between each detail line plus one. A minimum number of 1 must be used with a maximum of the length of the report page.
For example:
SPACING 2
Would double space the report.
SUPPRESS
This clause denotes standard operations that are not to be performed for the entered sentence. The format of the clause is:
SUPPRESS standard-operation1 standard-operation2 ...
Where each standard-operation is one of the following: Columnar, Count or Detail
COLUMNAR
Suppress the normal automatic column style format of the output. Force this report to use the non-column paragraph style format even if the detail line does not exceed the available report width.
COUNT
Suppress the normal automatic number of record count output.
DETAIL
Suppress the printing of the detail line. This is useful when creating summary reports when using BREAK and TOTAL.
HEADING
Suppress the normal automatic report headings such as page number, etc.
HOLD
Suppress the normal pause associated with the DISPLAY clause.
PAGE
Suppress the page break normally issued when the screen or printer page is due to be paged up.
TITLE
Suppress the normal column headings used when producing a report.
Any of these options can be used together.
USING
This clause denotes the dictionary file Micro-ENGLISH is to use to locate the field names specified in the select sentence. The format of this clause is:
USING filename.DCT
Where filename.DCT is the name of the dictionary file to use for the entered sentence. In most cases, the USING clause is not needed because the dictionary file name is the same as the main data file name. The file layout sheets in the File Descriptions chapter denote which files require the usage of the USING clause.
For example:
RMSRSVA USING RMSRESV.DCT PRINT RESERVATION.NUMBER
The above sentence would select all records in the reservation archive file and print the reservation number. There is no dictionary file for the file RMSRSVA thus requiring the usage of the USING clause. There is no dictionary file for the reservation archive file because its file layout is identical to the layout of the current reservation file (RMSRESV).
WIDTH
This clause overrides the installed workstation or printer page width. The format of this clause is:
WIDTH number
Where number is the number of characters to be printed on a line of the output page. This clause is only useful when a DISPLAY or PRINT clause is used. The page length cannot be fewer than 10 or greater than 255. This option is rarely used.
For example:
WIDTH 132
Could be used to set the line length to Micro-ENGLISH after you have set your printer to the condensed printing mode.
WITH
This clause denotes which data is to be selected from the file. The ability to "pick out" particular information to report on in the function of this clause. This clause is usually used in a sentence in order to report on only a desired set of information verses every record in the file. The format of the WITH clause is:
WITH field-name-1 operator value connector condition-2 operator value connector ...
Where field-name is a field name in the dictionary file for the file being selected.
Operator is one of the following values:
= compare for equal to
# or <> compare for not equal to
< compare for less than
> compare for greater than
<= compare for less than or equal to
>= compare for greater than or equal to
Value is the value to compare against and is in the form:
'characters'
or
"characters"
or
&prompt-message&
or
number
Where characters a string of non-exclusive-numeric characters. For example, 'ABC133' or "A".
&prompt-message& is using the ability to prompt for a value when the report is executed. This process is explained in the 'Prompt at Execution' section below.
Number is a numeric value. This value is used when comparing a known numeric field: for example, 123 or 1000.
Connector provides the ability to request more than one criteria and is in the form:
AND
or
OR
Where AND is used to denote that the value to the left of the AND and the value to the right of the AND must both be true. This connector allows you to select records that match more than one criteria.
OR is used to denote that either the value to the left of the OR or the value to the right of the OR must be true. This connector allows you to select records that match one of two (or more) criteria.
Parenthesis may also be used to group conditions.
If you want a Prompt at Execution:
When the &prompt-message& format is used Micro-ENGLISH will prompt for the value when the report is run. The value entered becomes the compare value.
For example:
RMSRESV WITH ARRIVAL=&Enter arrival date : & ...
This will cause the prompt message:
Enter arrival date : xxxxxx to be asked when the report is run. The entered arrival date would become the date of arrival records must have to qualify for the report.