Reason:
The first word in a query must be FIND, SET, SORT, PRINT, or DISPLAY.
Action:
Verify that the first word is FIND, SET, SORT, PRINT, or DISPLAY. Make the necessary corrections, correct any spelling errors, and then VALIDATE your query.
If you are running DQBATCH in Sign/On mode, ensure all lines of the FIND or COUNT statement except the last one contain a continuation character in column 72.
Reason:
The query could not be validated because it is incomplete.
Action:
Review your query to check that the WITH and RELATED clauses are stated completely and correctly. Check that the table names are correct. You can use the list tables PF key to view a list of table names. See the CA Dataqueryrg for complete information about CA Dataqueryl syntax.
Reason:
The RELATED clause of your FIND statement is not complete. There are two formats of the RELATED clause. The simple format relates the two tables by a common key value. The first table can also be related by a column to a column or key in the second table. The required portions of each type of RELATED clause are as follows:
RELATED key-name table-name
RELATED column-name or key-name column-name or key-name table-name
The full syntax of the RELATED clause is as follows:
RELATED BY key-name KEY TO table-name
RELATED BY column-name or key-name VIA column-name or key-name
table-name
Action:
Change your RELATED clause so that it conforms with one of the formats shown above.
Reason:
You are attempting to access a table that you are not allowed to view or modify. Your site management has set up security on the table to control its use.
Action:
Contact your CA Dataquery Administrator to obtain retrieval authorization for this table.
Follow the directions below depending on your job responsibilities:
CA Dataquery Administrator
Contact your Security Administrator to determine if this user should be granted access to the table.
Security Administrator
If desired, grant the user the appropriate level of accessibility to the table by using the Security Control option from the Administrative Menu.
Reason:
The table name you used is not defined to Datadictionary and hence is not known to CA Dataquery. Tables must be defined to Datadictionary before they can be accessed through CA Dataquery.
Action:
Check the spelling of the table name that you want to use. To obtain the correct spelling, you can view the DIRECTORY OF TABLES panel.
Reason:
A comparison operator must appear between two data names or a data name and a literal unless the list form of the equal or not equal operator is used. The valid comparison operators are:
|
EQUAL |
EQ |
= |
|
GREATER |
GR |
> |
|
LESS |
LT |
< |
|
GTE |
LTE |
CONTAINING |
NOT may be placed in front of each operator.
Examples:
Action:
Select a comparison operator and place it between two data names or a data name and a literal.
Reason:
Your WITH statement contains a character literal that is not enclosed within apostrophes. A correct example is shown below.
Example: FIND PERSONNEL ROWS WITH NAME = 'SMITH'
Action:
Enclose the literal in apostrophes.
Reason:
You have defined a literal to compare against a compound key. The literal you defined contains more columns (as indicated by your use of a delimiter) than the key contains.
Example: Find all customers with cust-id = '/G/45678/'
Action:
Check the definition of the key that you are using for your comparison. If the number of columns in the literal is greater than the number of columns in the key, redefine the literal so that it does not contain more columns than the key. If the literal does not contain more columns than the key, and you receive this message, contact your CA Dataquery Administrator to make certain that you are using the correct site delimiter between the columns of your literal.
Reason:
You have attempted to mask a column for which a masking character cannot be used.
Action:
Remove the masking character from the literal to be used in the comparison. (To determine what character is the masking character at your site, look it up in the System Profile topic in the Topic Help Facility.) If the column you are attempting to mask is a numeric column, you may be able to use zeros in place of the masking character, and use GTE (greater than or equal to) as the comparison operator. Character, unsigned zoned decimal, and signed or unsigned packed decimal columns can be masked. See your CA Dataquery Administrator if you need more help.
Reason:
The column name the cursor was on is not defined in Datadictionary as part of the table named in the FIND statement. If the name was meant as a character literal, it must be enclosed in apostrophes. Example of a literal in a WITH clause:
FIND PERSONNEL ROWS WITH NAME = 'SMITH'
Note: If the column in question is an alphabetic DIALOG variable, apostrophes cannot be used. Therefore, use a character type DIALOG variable instead as a literal in your query.
Action:
If your query accesses multiple tables, be sure the column is in the last table referenced. If the name is a literal, enclose it in apostrophes. Otherwise, review the spelling of the column name. View a list of the column names for the table to obtain the correct spelling, or use the editor in create mode to transfer the column name from the list of columns to your query.
Reason:
A literal in a with clause cannot contain more than one decimal point.
Action:
Remove the extraneous decimal points.
Reason:
The column or key specified in this query statement is defined as numeric and the literal you provided is not a number.
For example:
WITH SALARY > 1000.00
Action:
Correct the literal by making it a number.
Reason:
The cursor is placed under a word that may be misplaced. This can occur in a WITH or a RELATED BY statement where valid words are used, but are not necessarily in the correct order. You would get this message if you were to use an arithmetic expression as the subject of a WITH statement, or if you were to use the word "NOT" as a comparison operator and not follow it with a true comparison operator (such as GT, LT, EQ, and so forth). These are only a few examples of statements that could cause this error.
Action:
Carefully review the entire statement, beginning with the WITH clause or the RELATED BY clause, and compare the clauses with the formats described with the TEMPLATE PF key display.
Reason:
You have specified a logical expression in the WITH clause of your FIND statement that will always be evaluated as false. This will prohibit you from finding any records. The conditions contained in the logical expression are contradictory, meaning that if one condition is true, the other is false. An example of a contradictory expression is (X > 10 AND X < 10).
Action:
Change the logical expression in the WITH clause. Review your use of the logical operators (AND,OR), comparison operators (=, >, <, and so forth), and parentheses.
Reason:
Your subscript specification is incorrect. A subscript can be specified for only repeating fields. These are fields that occur multiple times. In order to select a specific occurrence of a repeating field, a subscript, enclosed in parentheses is used following the field name. The subscript must be numeric, and cannot be larger than the number of occurrences defined for the field. Only two levels of subscripting are allowed.
Example: FIND COMPANY RECORDS WITH SALES(3) > 0
Action:
Correct or remove the subscript specification. To review the number of OCCURENCES defined for the field, view the extended definitions of the fields. The OCC column displays the number of occurrences.
Reason:
You have attempted to compare two columns or keys that are not the same type. When two columns or keys are compared, they must be of the same type, that is, numeric or character.
Action:
Change your comparison so that either a character column or key is compared with a character column or key, or a numeric columnar key is compared with a numeric column or key. You can review the Extended Column Display Panel to determine what type of column or key it is.
Reason:
You have used the THRU phrase incorrectly. It can be used only in a WITH clause in conjunction with the EQUAL comparison operator.
Example: WITH salary = 100 THRU 1000
Action:
Correct or remove the THRU clause from your query.
Reason:
The query contains too many columns or keys for CA Dataquery to process.
Action:
Eliminate some of the columns and keys from the query, or, divide the query into separate queries with the FIND statement in one and the PRINT/DISPLAY statements in the other. Or, ask your CA Dataquery Administrator if the QPAGES parameter in the CA Dataquery System Option Table can be increased if the size of QPAGES is less than four. Increasing it will increase the size of an internal table which has been exceeded.
Reason:
A SET statement has been found but no SORT, PRINT, or DISPLAY statement follows it, or, a SORT statement was found but no PRINT or DISPLAY statement follows it. If you are validating from the Editor, the erroneous line will be highlighted and the cursor will be on the word in error.
Action:
Check your query for a misspelled word or a format error following the SET or SORT statements. If the query has not been validated, return to the Editor and validate it. Correct any errors you find and validate the query before executing it.
Reason:
The row size for a table named in your query is too large for CA Dataquery to read.
Action:
Contact your CA Dataquery Administrator about having the "BUFSIZE" parameter in the CA Dataquery System Option Table increased so that this table may be used in queries.
Follow the directions for your job responsibilities:
CA Dataquery Administrator
Contact your Database Administrator and request that the BUFSIZE parameter in the CA Dataquery System Option Table be increased so that the table can be read by CA Dataquery.
Database Administrator
Increase the BUFSIZE parameter in the Systems Option Table and reassemble it. See the CA Dataquery Administrator Guide for further information.
Reason:
Your INSERT request is for a row that contains so many columns that the CA Dataquery Request Table has overflowed. The table has overflowed because the combined size of the number of columns in the row and the number of SET statements you have included in the query is too large to fit in the request table.
Action:
Remove SET statements from the query until the row can be inserted. You can change the values of the columns with an UPDATE query later. See your CA Dataquery Administrator for further assistance.
Reason:
The number of rows you specified in your FIND statement either is not a number or equals zero.
Action:
Correct the number of rows to find in your query text.
Reason:
Your query contains a SET statement after a SORT, PRINT, or DISPLAY statement. CA Dataquery must execute a SET statement first so that the calculation may be used in the SORT, PRINT or DISPLAY statements.
Action:
Use the Editor to move the SET statements in your query before any SORT, PRINT, or DISPLAY statements. Validate and execute your query again.
Reason:
The use of parentheses in your PRINT statement is not valid. Parentheses can be used to enclose a column name to request that the column be totaled on the report. The column must be a valid numeric type. The column name must be between left and right parentheses.
Example: PRINT NAME EMPLOYEE-NUMBER (SALARY) (COMMISSION)
Action:
Change your PRINT statement so that the parentheses are correctly used.
Reason:
The WITH clause in your FIND statement contains an incorrect arithmetic expression. An arithmetic expression can appear only on the left side of a comparison operator, and the expression must be enclosed in parentheses. A valid expression consists of an operator (+,-,*,/) with an operand on each side. There must be a space between an operator and an operand. An operand can be a numeric literal, a numeric column name, or another arithmetic expression.
Example: WITH (COL1 / COL2 + 25) > 100
Action:
Change your arithmetic expression to the correct format.
Reason:
You have requested more than 10 control breaks in your SORT statement.
Action:
Remove control break requests from your SORT statement until there are 10 or less.
Reason:
The total length of all columns or keys in the SORT statement exceeds the maximum allowable length of 100 characters.
Action:
Remove columns or keys to be sorted until their combined length no longer exceeds 100 characters.
Reason:
The SET statement result name is not valid. It must be no longer than 32 characters and the first character must be a letter. The name cannot be the same as another result field and cannot be a CA Dataquery reserved word.
Action:
Correct the result field name so that it meets the required criteria.
Reason:
The precision you specified for the result field of your SET statement is incorrect. The correct format is (nn.dd) where nn is the number of integers before the decimal and dd is the number of digit positions after the decimal. The sum of nn and dd cannot exceed 18. This is an optional part of the SET statement. If it is not specified, the precision will default to the value in the PRECISN System Option Table Parameter.
Example:
SET INCOME (9.2) = SALARY + COMMISSION
Action:
Correct the precision of your result field in the SET statement, or remove it and use the default precision. (If you want to know what the default precision is for your site, contact your CA Dataquery Administrator.)
Follow the directions for your job responsibilities:
CA Dataquery Administrator
Contact your Database Administrator to find out the default precision for result fields.
Database Administrator
Look up the value in the System Option Table assembly for the PRECISN parameter.
Reason:
You are attempting to retrieve a column or key that you are not allowed to view. Your Site Management has set up security on the column or key to control its retrieval.
Action:
Remove the column or key from your query, and try again. Contact your CA Dataquery Administrator if you want to obtain retrieval authorization for the column or key.
Reason:
One of the following:
Action:
Contact your CA Dataquery Administrator to obtain update authorization for the table or column.
Reason:
One of the following:
Action:
Contact your CA Dataquery Administrator if you want to obtain erase authorization for this table.
Reason:
One of the following:
Action:
Contact your CA Dataquery Administrator to obtain authorization to insert rows into this table.
Reason:
The PICTURE or ALTERNATE HEADING clause is not placed correctly within your PRINT statement. If an alternate heading is included, it must directly follow the column/key name, and it must be enclosed in apostrophes. The PICTURE clause must follow the column/key name and the ALTERNATE HEADING if one is used. The clause must begin with PICTURE or PIC, followed by an edit pattern enclosed in apostrophes.
Example:
PRINT FROM PAYROLL YTD-WAGES 'INCOME' PICTURE '$99,999.99'
Action:
Edit your PRINT or DISPLAY statement to correct the placement of the PICTURE or ALTERNATE HEADING clause.
Reason:
The edit pattern either does not correspond to the column definition or contains invalid symbols. The edit pattern can contain any of the following symbols: "9", "Z", "*", ",", ".", "$", "/", "-", "CR", "DB". To use an edit pattern, the column must be numeric. The default pattern is taken from the Datadictionary definition for the column. The length of the edited column cannot exceed 24 characters.
Action:
Verify that your edit pattern contains only valid symbols. If it does, check the extended column definition to determine the correct column length and the number of decimal places.
Reason:
After the PICTURE keyword in the PRINT statement, CA Dataquery encountered a character string that was not enclosed within apostrophes. A valid statement is shown below.
Example:
PRINT FROM PAYROLL YTD-WAGES PICTURE '$99,999.99'
Action:
Correct your edit pattern so that it is enclosed within apostrophes, as in the example above.
Reason:
Your PRINT statement contains an ALTERNATE HEADING clause which is not enclosed within apostrophes (') or contains more than 32 characters. If you want to specify a two line heading, then the two heading lines must be separated by an alternate heading separator character (HDG-SEP in the System Option Table) that was defined during CA Dataquery installation. Examples of PRINT statements with one and two line headings are shown below. The heading separator character used in the example is a slash (/).
Example:
PRINT FROM PERSONNEL CITY-ADDRESS 'CITY'
PRINT FROM PERSONNEL CITY-ADDRESS 'CITY/ADDRESS'
Action:
Correct the heading in your PRINT statement. If you do not know what the alternate heading separator character is at your site, look it up in the System Profile topic in the Topic Help Facility.
Reason:
The format of the SET statement is incorrect, or one of the column names is unknown. The SET statement contains the following:
Example:
SET SALARY (6.2) = (NET - YTD-TAX) + BONUS
Action:
Check the spelling of the column names. If they are correct, check that the format of your SET statement is as described above.
Reason:
Your SET statement does not contain a correct arithmetic expression, because it has either too many operators or operands. An operator must have an operand on each side, and a space must separate the operator and the operand. No space should follow a binary + or -. Parentheses can be used around an arithmetic expression. Valid operators are +, -, *, /. An operand can be a numeric literal, a numeric column name, a previous result field, a function, or an arithmetic expression.
Example:
SET PERCENT (3.2) = (PART / TOTAL) * 100
SET CREDIT-AMOUNT = -200.00
Action:
Verify that there are spaces around your operators, an operand on each side of an operator, and the parentheses are properly used. Correct your SET statement, and try again.
Reason:
You have included a numeric literal in your query that is longer than the maximum length of 18 digits.
Action:
Reduce the size of the number in your SET statement until it no longer exceeds 18 digits.
Reason:
The user-defined function which you requested could not be found by CA Dataquery. A user-defined function is used in SET statements for site-specific calculations. The correct format is:
UDF(arg1,arg2,........,arg*)
where arg1 is the number assigned to the particular user-defined function you want to use and arg2 through arg* are result field names, column names, or values for numeric literals to be used in the specified function.
Action:
Correct arg1, the number assigned to your user-defined function. If you receive the error again, contact your CA Dataquery Administrator to find out what number is assigned to the function you want to use. If the number is the one you are using, your CA Dataquery Administrator can determine if it is installed properly.
Follow the directions for your job responsibilities:
CA Dataquery Administrator
You should have a list of the user-defined functions installed with your system. Give your user the number that is associated with the function the user wants to include in the query. If this error is still encountered, contact your systems programmer to see if the function was installed correctly with CA Dataquery.
Systems Programmer
Check the program code for the user-defined function to see if it assembled and linked correctly. Correct any problems you find. Information about user-defined functions can be found in your CA Dataquery Administrator Guide.
Reason:
You have used a user-defined function incorrectly in your SET statement. The correct format is:
UDF(arg1, arg2, ......., arg*)
where arg1 is the number assigned to the particular user-defined function you want to use and arg2 through arg* are result field names, column names, or values for numeric literals to be used in the specified function.
Example:
SET A = (FLDB * FLDC) / AVG(X,Y,Z) + UDF(7,X,Y,Z)
Action:
Correct your use of the user-defined function. If everything appears to be correct and you still have this error, arg1 may be incorrect. Contact your CA Dataquery Administrator to find out what number has been assigned to the function you want to use.
Reason:
You have improperly used the DESCENDING/DOWN option in your SORT statement. A SORT statement must be in the following format:
SORT »BYº »table nameº column-name »DESCENDINGº ....column-name
SORT »BYº »table nameº column-name »DOWNº ....column-name »DOWNº
where table name is the name of a table and column-name is the name of a column, key, or the result-field of a previous SET statement. The column-name may be enclosed in parentheses to indicate that it is a control-break for your output report.
Note: If the DESCENDING/DOWN option is desired for all sort key columns, DESCENDING/DOWN must follow each column name.
Action:
Correct the format of your SORT statement and VALIDATE your query.
Reason:
The TITLE clause must occur within a PRINT statement. If a single line title is used, the clause must begin either with TITLE or TITLE1. If a two line title is used, the TITLE clause for the first line must begin with TITLE1, and the TITLE clause for the second line must begin with TITLE2. The title string may contain up to 55 characters, and must be enclosed in apostrophes ('). A TITLE2 clause must immediately follow a TITLE1 clause. The following are examples of a one and a two line title.
PRINT TITLE 'SALES REPORT' . . .
PRINT TITLE1 'SALES REPORT' TITLE2 'ABC CORPORATION'
Action:
Correct the TITLE clause of your PRINT statement.
Reason:
You can use a CONTAINING clause only when the data name preceding CONTAINING is a column or key name and the data succeeding CONTAINING is a literal. A key may be used only if every column that makes up the key is a character or unsigned zoned decimal column type. If a column name is used, its data type must be character or unsigned zoned decimal. You may place NOT in front of the containing operator. Some examples are:
WITH field1 CONTAINING 'john'
WITH field2 NOT CONTAINING 'occupant'
WITH field3 CONTAINING 782
Action:
Correct the format of the CONTAINING clause and validate the query again.
Reason:
You have referenced a compound field in a SET clause of an UPDATE or INSERT statement. You can reference only simple fields in the SET clause.
Action:
Remove all references to compound fields. Substitute references to simple fields. You may review the class of each field by displaying the Extended Field Display.
Reason:
This query has exceeded a system limitation, so execution was stopped. The output report may not be complete.
Action:
If you want to continue the execution of the query, press the PF3 key when you are ready to continue, or change the query so it will execute without exceeding the system limits. More information on the exceeded system limits may be found on the statistics panel. To view the statistics panel, press PF3 and then PF6. Contact your CA Dataquery Administrator for assistance.
Reason:
The combination of the number of RELATED BY statements plus the number of SET statements plus the length of the sort key has caused the query to become too complex.
Action:
Change the query by decreasing the number of RELATED BY statements, by decreasing the number of SET statements, by decreasing the length of the sort key, or by using a combination of these reductions to make the query less complex. Validate your query after making these changes.
Reason:
You are attempting to set a column to a value that does not conform to the number of decimal places defined for the column. A value must match the length and decimal positions that have been defined for the column.
Action:
Correct the number of decimal places in the value. To view the definition of the column, display the Extended Column Definitions.
Reason:
One of the system limits set for executing queries has been exceeded. Please check the statistics for more information.
Action:
If the statistics are not available or you are unable to determine the problem from the information available, contact your CA Dataquery Administrator for more help.
Reason:
You specified the same table twice. You cannot relate a table to itself. The full syntax of a FIND statement with a RELATED BY clause is:
FIND table1
RELATED BY key-name KEY TO table2
or FIND table1
RELATED BY column-name or key-name VIA
column-name or key-name TO table2
Action:
Correct your FIND statement so that any table name used occurs only once in the entire FIND statement. See the CA Dataquery User Reference manual for a complete explanation of the syntax of the FIND statement and RELATED BY clauses.
Reason:
The WHEN clause in your query was found, but a DO statement does not follow it. A WHEN statement must be immediately followed by a DO statement. The WHEN statement specifies which control break field to use. The DO statement specifies the function that will be performed when the value of the control break field changes.
Example:
WHEN DEPT BREAKS
DO 'DEPARTMENT AVERAGE SALARY' AVG SALARY
PIC '$99,999.99'
Action:
Either supply a DO statement after your WHEN statement, or remove the WHEN statement from your query. See the CA Dataqueryrg. for a complete explanation of the "WHEN/DO" statement.
Reason:
The indicated word following "WHEN" is invalid. WHEN may be followed by only one of the following: a table name and a control break name, a control break name, or the keyword FINISHED. If the keyword FINISHED is used, the function in the DO statement will be performed at the end of the report. Otherwise, the function will be performed when the value of the control break column named in the WHEN statement changes. The control break column must have been previously specified in the SORT statement.
Example:
WHEN DEPT BREAKS
DO 'DEPARTMENT AVERAGE SALARY' AVG SALARY
PIC '$99,999.99'
Action:
Correct your WHEN statement. See the CA Dataqueryrg for a complete explanation of the "WHEN/DO" statement.
Reason:
The key or column name you specified following "WHEN" has not been specified as a control break in the SORT statement. Only columns or keys that are control breaks in the SORT statement may be named as the control break column in the WHEN statement. A key or column is used as a control break when it is enclosed within parentheses in the SORT statement.
Action:
Either specify the column or key as a control break in the SORT statement, or choose a control break from the SORT statement to use in the WHEN statement.
Reason:
The legend you defined in your DO statement is too long. A legend cannot exceed 64 characters in length, not including the beginning and ending apostrophes.
Example: DO 'DEPARTMENT AVERAGE SALARY' AVG SALARY
where 'DEPARTMENT AVERAGE SALARY' is the legend.
Action:
Modify your legend so that it does not contain more than 64 characters.
Reason:
The highlighted word in your DO statement is not valid. The correct syntax for the DO statement is as follows:
DO {'legend'} function {table name} column name
{PIC 'edit pattern'}
or
DO PAGE-BREAK
Words in uppercase are keywords which must be included. Words in lowercase should be substituted with the names or strings that you want to use. Items enclosed in braces are optional.
Example:
DO 'DEPARTMENT AVERAGE SALARY' AVG SALARY
PIC '$99,999.99'
Action:
Correct your DO statement. See the CA Dataqueryrg for a complete explanation of the "WHEN/DO" statement.
Reason:
The function name in your DO statement is not one of the following: AVG, CNT, MAX, MIN, SUM. The elements of a DO statement must appear in the following order: the keyword DO, a legend enclosed in apostrophes (optional), a function name, a column name and a PICTURE clause (optional).
Example:
WHEN DEPT BREAKS
DO 'DEPARTMENT AVERAGE SALARY' AVG SALARY
PIC '$99,999.99'
Action:
Use AVG, CNT, MAX, MIN, or SUM as the function name in your DO statement. See the CA Dataqueryrg. for a complete explanation of "WHEN/DO" statements.
Reason:
The column you named in the DO statement is a data type that cannot be used with the function you have selected. The count (CNT) function can be performed on a column of any type, but the other functions can be performed only on columns comprised of one numeric field.
Action:
Either remove the DO statement from your query, or choose a simple numeric column for the function. You can use the Extended Column Definition display to view the data types of the columns.
Reason:
Your DO statement does not contain the minimum required elements. A DO statement must include at least a function name and a column name. The function must be one of the following: AVG, CNT, MIN, MAX, or SUM. The column name is the column on which the function will be performed. It must be a column from a table named in the FIND statement.
Example:
WHEN DEPT BREAKS
DO 'DEPARTMENT AVERAGE SALARY' AVG SALARY
PIC '$99,999.99'
where "SALARY" is the column name and "AVG" is the function name.
Action:
Correct your DO statement. See the CA Dataqueryrg for a complete explanation of "WHEN/DO" statements.
Reason:
You requested a table in a SORT, PRINT, SET or DISPLAY statement that was not named in the FIND statement of your query. Only tables named in the FIND are retrieved, so only those tables can be named in later statements.
Action:
Check the spelling of the table name in the FIND statement. If there is no spelling error, either add the table to the FIND statement or remove the table from the later statement.
Reason:
Your query contains more than one TITLE or TITLE1 statement. If you want to specify a one line title, you can use either one TITLE statement or one TITLE1 statement. To specify a two line title, use one TITLE1 statement followed by one TITLE2 statement.
Example of a one line title:
PRINT FROM PAYROLL WAGES TITLE 'WAGE REPORT'
or
PRINT FROM PAYROLL WAGES TITLE1 'WAGE REPORT'
Example of a two line title:
PRINT FROM PAYROLL WAGES
TITLE1 'ABC CORPORATION' TITLE2 'WAGE REPORT'
Action:
Remove the extra TITLE or TITLE1 statement from your query. If you want two title lines, use TITLE1 and TITLE2.
Reason:
The TITLE2 statement in your query does not immediately follow the TITLE1 statement. The title statements are optional parts of the PRINT statement. You can specify two title lines by including both a TITLE1 and a TITLE2 statement, and the TITLE2 statement must immediately follow the TITLE1 statement.
Example:
PRINT FROM PAYROLL WAGES
TITLE1 'ABC CORPORATION'
TITLE2 'WAGE REPORT'
Action:
Edit your query to move the TITLE2 statement immediately after the TITLE1 statement.
Reason:
The clause contains a column that has a data type which CA Dataquery cannot use. The following is a list of CA Dataquery statements and the data types which they can use.
CHAR, NUM, DEC, BIN, 1/2 BIN, FUL BIN, DBL CHAR, KANJI
CHAR, NUM, DEC, BIN, 1/2 BIN, FUL BIN, DBL CHAR, KANJI
NUM DEC, BIN, 1/2 BIN, FUL BIN, DBL CHAR, KANJI
NUM DEC, BIN, 1/2 BIN, FUL BIN, DBL CHAR, DBL MIXED, KANJI
CHAR NUM, DEC, BIN, FLOAT-PT SHRT, FLOAT-PT LONG, EXT, 1/2 BIN, FUL BIN, DBL CHAR, DBL MIXED, KANJI
CHAR NUM, DEC, BIN, FLOAT-PT SHRT, FLOAT-PT LONG, EXT, 1/2 BIN, FUL BIN, DBL CHAR, DBL MIXED, KANJI
Do not include columns defined as data types SQL-DATE, SQL-TIME, or SQL-TIMESTAMP. These data types are reserved for SQL Mode queries. These data types are listed as character types on Extended Column Display panels because SQL Mode queries return character-type data.
To test a column that is suspected of being one of these types before selecting it for a DQL Mode query, follow these steps.
Action:
Use the PF key for Extended Column Definitions to check the data type of the column you want to use, and correct your query.
Reason:
You have named a column whose length is greater than 240 characters. This column cannot be used in the WITH clause of a FIND statement or in a SET statement that is part of an INSERT or UPDATE query.
Action:
Remove the reference to this column from your query. To review the size of the column, display the Extended Column Definition Panel. Contact your CA Dataquery Administrator for more information.
Reason:
You have entered a name that contains more than 32 characters.
Action:
Shorten the data name to 32 characters or less, and revalidate the query.
Reason:
You have specified the Datadictionary status or version for a table incorrectly. The correct format is:
where NNN is a three-digit version number for the table entity.
Action:
Correct the status or version and revalidate the query.
Reason:
You have used one of the comparisons, NULL or NOT NULL, incorrectly. They can be used only for an entity which is defined to Datadictionary as a column which is nullable.
Action:
Change the name of the entity to the name of a nullable column, or change the comparison to a comparison operator and a value, such as "EQ 0" or "GT ' '" or "LTE 'ABC'".
Reason:
You included a RELATED BY clause in your UPDATE or ERASE statement. This is not allowed. You can use a WITH clause to limit the records that are updated or erased.
Action:
Remove the RELATED BY clause from your UPDATE or ERASE statement.
Reason:
You included a "FIRST" in a join clause using a join verb other than "RELATED BY." FIRST cannot be used with LEFT-JOIN, RIGHT- JOIN, OUTER-JOIN, LEFT-DISJOIN, RIGHT-DISJOIN, or OUTER-DISJOIN.
Action:
Remove the FIRST from your join clause.
Reason:
The term you are attempting to define contains more than eight levels of nesting. A term is nested when it is used in the definition of another term. The following example illustrates a term that contains another term as part of its definition.
INTEREST-RATE is defined as 0.0825
INTEREST-PMT is defined as BALANCE * INTEREST-RATE
Action:
Use the Directory of Terms to locate the nested term and find its definition. Substitute the term's definition in place of the term in the definition of your new term. For example, INTEREST-PMT could be redefined as BALANCE * 0.0825.
Reason:
The requested column is comprised of a field that has a Datadictionary class that cannot be used in CA Dataquery. Only columns defined in Datadictionary as simple (class "S"), compound (class "C"), or filler (class "F") can be used.
Action:
Remove the column from your query. If this presents a problem for you, see your CA Dataquery Administrator to see if this column can be defined using a different class.
Reason:
The referenced column exceeds the maximum length CA Dataquery. processes. Any column longer than 18 digits cannot be used in or defined for use in a query. The 18 digits maximum includes both integers and decimal places.
Action:
Remove the reference to any numeric column longer than 18 digits.
Reason:
Your PRINT or DISPLAY command cannot be processed because the key contains a column which is not defined in Datadictionary. This is an internal error. The key causing the error is highlighted.
Action:
Contact your CA Dataquery Administrator and describe what you were attempting when this error occurred and the error message you received, including the message number (DQ887E) and the name of the key.
Follow the directions for your job responsibilities:
CA Dataquery Administrator
Contact your Database Administrator and ask that the key definition be corrected.
Database Administrator
Examine the key definition and define the corrections that must be made. Contact your Datadictionary Administrator and request that the corrections you identified be made. After the corrections are made, run DDUPDATE and DDCFBLD to update the CXX the new key description.
Datadictionary Administrator
Make the required corrections to the key definition.
Reason:
You do not have the proper authorization to access the named table, key or column.
Action:
Contact your CA Dataquery Administrator for further information.
Follow the directions for your job responsibilities:
CA Dataquery Administrator
Contact your Security Administrator to determine if the user should have authorization to access the table, key, or column.
Security Administrator
Assist your CA Dataquery Administrator in determining if the user should have authorization to access the table, key, or column. If it is decided that the user does require authorization, assist in setting up the required security authorizations.
Reason:
An operand in your arithmetic expression or an argument in a mathematical function is not numeric. Only numeric literals or columns can be used as operands. Numeric literals consist of the digits 0 through 9 and they can optionally contain a sign and a decimal point.
Example:
FIND PAYROLL ROWS
WITH ((SALARY + COMMISSION) / 12) < 5000.00
Action:
Correct the arithmetic expression so it contains only numeric operands. You may view the Extended Column definition to see column types.
Reason:
Your query contains a qualified column that is part of an arithmetic expression in the WITH clause of the FIND statement. A qualified column is a column name that is preceded by the table name and a period (table-name.col-name). Since an arithmetic expression is not a column, it cannot be prefixed with a table name.
Action:
Remove the qualifier (table name) from the arithmetic expression in the WITH clause.
Reason:
You specified a column or key name from the first table to relate a column or key from a second table in the RELATED clause, but they are different types or lengths. If both are keys, the lengths need not be identical if column data types for the shorter key match the column data types for the same length in the longer key. Otherwise, the column or key from the primary table must have the same data type and length as the column or key from the secondary table.
Action:
Use a different column or key to relate the two tables. View a list of keys for the tables. You can then use the extended definition PF key to display information about the data types and lengths. The same can be done for columns by pressing the LIST COLUMNS PF key.
Reason:
The literal you specified is inconsistent with its Datadictionary definition. It must have the same data type and length as the column to which it is being compared. If the literal is character, it must be enclosed in apostrophes. If the literal is numeric, it may contain the digits 0 through 9, a decimal point and sign (if it is definited as signed on DD). If you are comparing it to a multicolumn key, it must be enclosed within apostrophes, and delimiters must separate each value. Following are some examples:
WITH NAME = 'SMITH' (Character)
WITH SALARY > 1000.00 (Numeric)
WITH NAME-KEY = '/SMITH/JOHN/' (Multi-column key)
Action:
Correct the literal. To see the key or column definition, view the list keys or list columns panels.
Reason:
You prefixed a column or key name with a table name, but either the use of the table name is unnecessary or the table was not previously named in FIND or RELATED statements.
Action:
Compare the table name to the table names in the previous FIND and RELATED statements. If the table name is correct, remove the prefix since it is probably unnecessary. If the table name is not in a previous FIND or RELATED statement, correct the spelling or add a RELATED statement for the table.
Reason:
The use of parentheses in the indicated statement is invalid. Parentheses can be used to enclose an arithmetic expression or an operand. An arithmetic expression contains an operator with an operand on each side. The operator can be +, -, *, /. An operand can be a numeric literal, a name of a numeric column, a set result, a function, or another arithmetic expression. Parentheses cannot be used within the argument list of a function. There must be the same number of left parentheses "(" as right parentheses ")".
Example:
SET VAL (6.2) = RATE * ((-22) + AVG(X,Y,Z))
Action:
Change the statement so that the parentheses are correctly placed.
Reason:
Your expression contains more than five levels of nested parentheses. CA Dataquery processes a maximum of five levels. Nested parentheses are a set of parentheses contained within another set of parentheses. The following is an example of three levels of nested parentheses.
Example: (X + (Y * (Z / 24)))
Action:
Remove sets of parentheses from your expression so that there are no more than five levels of nested parentheses. You may be able to rearrange the expression so that it will evaluate correctly without the additional parentheses. The order of evaluations is: expressions in parentheses, * and /, and then + and -.
Reason:
An internal error occurred while processing your request. The error occurred in a VPE subroutine, and processing could not continue. An error code is displayed at the end of the message.
Action:
Follow the directions for your job responsibilities:
CA Dataquery Administrator
Contact the systems programmer to report the error. Describe the error message and the return code that appears at the end of the message.
Systems Programmer
Please contact Technical Support CA Dataquery and describe the error message and the return code that appears at the end of the message.
Reason:
The table, or one of its entities: column, key, or row, cannot be accessed by CA Dataquery because it has been disabled. Your Database Administrator may have disabled the table for maintenance.
Action:
Contact your CA Dataquery Administrator to determine the status of the table and when it can be accessed.
Follow the directions for your job responsibilities:
CA Dataquery Administrator
Contact your Database Administrator for assistance. The DBA will be able to tell you whether this is planned maintenance or if there is a problem on Datadictionary.
Database Administrator
If this is planned maintenance, advise your CA Dataquery Administrator when the table will be available for CA Dataquery processing. If a problem exists on Datadictionary, work with your Datadictionary Administrator to correct the situation and "enable" the table and its entities.
Datadictionary Administrator
Work with your Database Administrator to "enable" the table and its entities so that users can access the table with CA Dataquery.
|
Copyright © 2014 CA.
All rights reserved.
|
|