Function | Description | Custom or in VFP subset? | ||||||||||||||
DETAILS(CHAR_EXPRESSION) DETAILS(CHAR_EXPRESSION, LOGICAL) | Loops through all of the records in the AllTrans table and converts the expression to readable text. Similar to ITERATE_OVER() except it uses only the AllTrans table (created just for the DETAILS() function) and sync’s the guests and gst_pass tables as well. CHAR_EXPRESSION is the same as in ITERATE_OVER(), only the SEPARATOR is included at the end of the expression. In the second form, if LOGICAL is set to TRUE, then the function loops through all of the records in the AllTrans table and only prints the record if it is a new item added to the receipt. Note: With the DETAILS() function, you are sure to get all of the payments (either deposits or account payments) and all relevant information from both the Transact and Tr_Save tables. The DETAILS() function is “one-stop shopping” for all of your Sale_Hdr/Sh_Save Transact/Tr_Save needs. Inside the DETAILS() function, the following tables get synced, so are available for use:
| Custom | ||||||||||||||
ITERATE_OVER(TABLE, INDEX, FILTER, EXPRESSION, SEPARATOR) | Loops through the specified table for all records that match the filter expression in the table’s indexed field and converts the expression to readable text. The separator is placed between every line – typically NEWLINE(). When iterating over the tr_save or transact table, the following tables get synced, so are available for use:
When iterating over the tr_info, trs_info, sh_info or shs_info table, the following table gets synced, so is available for use:
| Custom | ||||||||||||||
SEEK(TABLE, INDEX, VALUE) | Selects the TABLE, sets the index to the INDEX value and seeks to the first record that matches the VALUE in the INDEX field. | Custom | ||||||||||||||
NEWLINE() | Returns CHR(13)+CHR(10) (i.e., carriage return + line feed) | Custom | ||||||||||||||
CENTER(EXPRESSION, NUM_COLS) | Centers the expression on the page based on the number of character columns you have on the printer – typically 40 or 80. | Custom | ||||||||||||||
JUSTLEFT(EXPRESSION, NUM_COLS) | Left-justifies the text. | Custom | ||||||||||||||
JUSTRIGHT(EXPRESSION, NUM_COLS) | Right-justifies the expression on the page based on the number of character columns you have on the printer – typically 40 or 80. | Custom | ||||||||||||||
FOP() | Displays the form(s) of payment used to pay for the sale. Note: This is only valid on Receipt printing. It cannot be used for Saved Sales. Additionally, this only returns payments made on finalize and not any previous payments. | Custom | ||||||||||||||
DSTR1(TABLEàFIELD) | Returns a character representation of the Date/Time field in the format CCYY/MM/DD. | Custom | ||||||||||||||
DSTR2(TABLEàFIELD) | Returns a character representation of the Date/Time field in the format MM/DD/CCYY HH:MM:SS AM/PM | Custom | ||||||||||||||
TIPS(EXPRESSION) | Evaluates the expression if and only if the salespoint has Tips=TRUE in the Sales32c.INI file. Mostly used only in Ticket layouts (e.g., Charge Cards Ticket layout), but is available for Receipt layouts as well. | Custom | ||||||||||||||
MODIFIER() | Returns .T. (TRUE) if the item in the AllTrans table is a product modifier. Used only in the DETAILS() function. Typically used for kitchen printing. | Custom | ||||||||||||||
TOTAL(DISCOUNT/PRICE/EXTENSION) | Used for Z-Tape Reports in conjunction with ITERATE_OVER(). Sums the specified quantity for DISCOUNT, PRICE or EXTENSION fields for all of the records in the ITERATE_OVER() statement preceding the TOTALS() call. | Custom |