CROSSTAB command

Used to count the number of records and subtotal numeric fields based on a combination of character fields.

Syntax

CROSSTAB <ON> row_field <...n> COLUMNS column_field <SUBTOTAL numeric_fields>
TO {SCREEN|table_name|filename|GRAPH|PRINT} <IF test> <WHILE test> 
<{FIRST|NEXT} range> <APPEND> <COUNT> <OPEN> <LOCAL> <HEADER header_text>
<FOOTER footer_text>

Parameters

ON row_field

Specifies the fields or expressions to use for rows. You can specify multiple fields or expressions for the rows. The ON parameter can be omitted.

COLUMNS column_field

Specifies the field to use for columns. You can specify only one field or expression for the columns.

SUBTOTAL numeric_fields

Optional. Specifies the numeric fields or expressions to subtotal.

TO SCREEN | table_name | filename | GRAPH | PRINT
  • Specify TO SCREEN to display the results on screen in ACL. This is the default output if the TO parameter is not specified.

  • Specify TO table_name to write the results to an ACL table. You must specify the table_name value as a quoted string with a .FIL file extension to create an ACL table.

    For example: TO "Output.FIL"

    You can also specify an absolute or relative file path to an existing folder to write the .FIL file to.

    For example: TO "C:\Output.FIL" or TO "Results\Output.FIL"

  • Specify TO filename to write the results to a file. You must specify the filename value as a quoted string with the appropriate file extension. For example, specify the .TXT file extension to create a text file.

    For example: TO "Output.TXT"

    You can also specify an absolute or relative file path to an existing folder to write the file to.

    For example: TO "C:\Output.TXT" or TO "Results\Output.TXT"

  • Specify TO PRINT to send the results to the default printer.

  • Specify TO GRAPH to create a graph of the command results and display it on screen in ACL.

IF test

Optional. Specifies a condition that must be met. The command is only executed on records that pass the test.

WHILE test

Optional. Specifies that the command should only be executed while a condition is true. The command processing terminates as soon as the specified test evaluates as false, or the end of the table is reached.

FIRST | NEXT range

Optional. Specify FIRST to start processing at the first record or NEXT to start processing at the currently selected record. Use the range value to specify the number of records to process.

APPEND

Optional. Specifies that command output should be appended to the end of an existing file instead of overwriting the existing file. You must ensure that the structure of the two files is identical when using this parameter, if maintaining a consistent file structure is important (e.g., when you are appending data to an existing ACL table), because ACL appends output to an existing file regardless of its structure.

COUNT

Includes record counts as columns. This is useful when you use the SUBTOTAL parameter.

OPEN

Optional. Specifies that the table created by the command should be opened after the command executes. This parameter is only valid if the command creates an output table.

LOCAL

Optional. Specifies that the output file should be saved in the same location as the ACL project. This parameter only applies when the command is run on an ACL Server table and the output file is an ACL table.

HEADER header_text

Optional. Specifies the text to insert at the top of each page of a report. The header_text value must be specified as a quoted string. The value overrides any value set for the ACL HEADER system variable.

FOOTER footer_text

Optional. Specifies the text to insert at the bottom of each page of a report. The footer_text value must be specified as a quoted string. The value overrides any value set for the ACL FOOTER system variable.

Remarks

The CROSSTAB command produces a summary of two or more character fields by arranging the fields into columns and rows. It then gives either the count for each field intersection or the total for the selected numeric field(s). To use the CROSSTAB command, you need to:

Example

The following example opens and cross-tabulates the “Ar” table in ACL DATA\Sample Data Files\Sample Project.ACL on the customer number (No) and transaction type (Type) columns.

OPEN Ar
CROSSTAB ON No COLUMNS Type SUBTOTAL Amount COUNT TO SCREEN


(C) 2013 ACL Services Ltd. All Rights Reserved. | Send feedback