Batch Ticket Import: Difference between revisions

From KeystoneIntranet
Jump to navigation Jump to search
m (1 revision imported)
No edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
<b>CompuCrete GH 1.5/1.6</b>
In Keystone, input fields are specified with the following parameters: (where xxx specifies the field name)<br>
<b>CC 3.9 Batch Import Parameters Comparison</b>
 
 
In CCGH, input fields are specified with the following parameters: (where xxx specifies the field name)<br>


'''FIELD'''.xxx=<col>,<len>[,alt_specifier>][,<col>,<len>[,<alt_specifier>]]*
'''FIELD'''.xxx=<col>,<len>[,alt_specifier>][,<col>,<len>[,<alt_specifier>]]*
Line 39: Line 35:


'''<alt_specifier>''' syntax is as follows:
'''<alt_specifier>''' syntax is as follows:
:'''[<string>]'''  (*NOTE: The square brackets here are LITERALS, they do NOT indicate that the string is optional&#33;)
::If specified, the <alt_specifier> indicates that if the contents of the field segment (previously specified with <col> and <len>) match the <string> (which can be the empty string), that field segment is ignored and remaining field segments are processed. If the field segment does NOT match the <string>, then that field segment is concatenated to the current field value, and all remaining field segments are ignored.


'''<compare_data>'''  If the value begins with an at sign (@), the remainder of the value specifies the import record field name whose value will be used instead. Otherwise the value is used as-is.


'''[<string>]''' (*NOTE: The square brackets here are LITERALS, they do NOT indicate that the string is optional&#33;)
'''<result_value>'''   If the value begins with an at sign (@), the remainder of the value specifies the import record field name whose value will be used instead. Otherwise the value is used as-is.
 
 
If specified, the <alt_specifier> indicates that if the contents of the field segment (previously specified with <col> and <len>) match the <string> (which can be the empty string), that field segment is ignored and remaining field segments are processed. If the field segment does NOT match the <string>,
then that field segment is concatenated to the current field value,
and all remaining field segments are ignored.<br>


'''<conv_rule>''' may be one of the following:<br>
'''<conv_rule>''' may be one of the following:<br>


'''[A]HH:MM[A]'''  Convert field value as time ([A] specifies position of AM/PM indicator)
:'''[A]HH:MM[A]'''  Convert field value as time ([A] specifies position of AM/PM indicator)
 
'''MM/DD/YY'''  Convert field value as a date of the format MM/DD/YY
 
'''MM-DD-YY'''  Convert field value as a date of the format MM-DD-YY
 
'''MMDDYYYY'''  Convert field value as a date of the format MMDDYYYY
 
'''YYYYMMDD'''  Convert field value as a date of the format YYYYMMDD
 
'''DATE(<format>)'''    Convert field using Delphi DateFormat.  E.G. conv.TICKET_DATE=date(DDMMYY) converts the value 020517 into May 2nd, 2017.
(<format> follows the syntax of the Delphi FormatDateTime function)<br>See: http://www.delphibasics.co.uk/RTL.asp?Name=formatdatetime


'''TIME(<format>)'''  Converts time field value according to <format>   
:'''MM/DD/YY'''  Convert field value as a date of the format MM/DD/YY


(<format> follows the syntax of the Delphi FormatDateTime function)<br>See http://www.delphibasics.co.uk/RTL.asp?Name=formatdatetime
:'''MM-DD-YY'''  Convert field value as a date of the format MM-DD-YY


'''UPPER'''   Converts field value to uppercase equivalent
:'''MMDDYYYY'''   Convert field value as a date of the format MMDDYYYY


'''NUM(<format>)'''  Converts numeric field value according to <format>:
:'''YYYYMMDD'''  Convert field value as a date of the format YYYYMMDD


:'''0''' = digit, zero padded
:'''DATE(<format>)'''   Convert field using Delphi DateFormat.
::Ex: conv.TICKET_DATE=date(DDMMYY) converts the value 020517 into May 2nd, 2017.
::(<format> follows the syntax of the Delphi FormatDateTime function)  See: http://www.delphibasics.co.uk/RTL.asp?Name=formatdatetime


:'''#''' = digit, zero suppressed
:'''TIME(<format>)'''   Converts time field value according to <format>   
::(<format> follows the syntax of the Delphi FormatDateTime function)  See http://www.delphibasics.co.uk/RTL.asp?Name=formatdatetime


:'''.''' = decimal point
:'''UPPER'''   Converts field value to uppercase equivalent


:''',''' = thousand separator)
:'''NUM(<format>)'''  Converts numeric field value according to <format>:
::'''0''' = digit, zero padded
::'''#''' = digit, zero suppressed
::'''.''' = decimal point
::''',''' = thousand separator)


'''DEC(<n>)'''  Converts numeric field value with <n> implied decimal places
:'''DEC(<n>)'''  Converts numeric field value with <n> implied decimal places
::Ex: field value 15000 converted with DEC(2) results in the value 150.00


(ex: field value 15000 converted with DEC(2) results in ‘150.00’)
:'''UMCONV(<prodid>,<prodtype>,<sourceUM>[,<targetUM>])'''  Converts numeric field value from one U/M to another
::<prodid> should be an at sign (@) followed by the product id import field name
::<prodtype> is the product type that must match the product type of the associated product (use asterisk (*) to match all product types)
::<sourceUM> should be an at sign (@) followed by the unit of measure import field name (or a U/M code if there is no U/M in the import file)
::<targetUM> is the target U/M to convert the field value to (if not specified the U/M of the associated product is used)
::Ex: CONV.QTY_SOLD_1=UMCONV(@PRODUCT_CODE_1,T,@IN_UNIT_OF_MEASURE_1) converts the quantity sold for the first product if it's product type is Asphalt from the source U/M from the IN_UNIT_OF_MEASURE_1 import field into the target U/M specified in the product table


<compare_value>  If either of these values begins with an at sign (@), the remainder of the value specifies the import record field name whose value will be used instead.


'''<result_value>'''
<b>Keystone<->CompuCrete 3.9 Batch Import Parameters Comparison</b>


<div align="left">
<div align="left">
Line 91: Line 86:
| <b>Compu-Crete  
| <b>Compu-Crete  
Parameter</b>
Parameter</b>
| <b>CCGH Parameter</b>
| <b>Keystone Parameter</b>
| <b>CCGH Default</b>
| <b>Keystone Default</b>
| <b>Description/Comments</b>
| <b>Description/Comments</b>
| <b>Done</b>
| <b>Done</b>

Latest revision as of 20:19, 2 April 2024

In Keystone, input fields are specified with the following parameters: (where xxx specifies the field name)

FIELD.xxx=<col>,<len>[,alt_specifier>][,<col>,<len>[,<alt_specifier>]]*

LOOKUP.xxx=<search_field>[,<match_field>,<result_field>]* Lookup search field in a list of match fields, if found use <result_field> value

TRANSLATE.xxx=<batch_value>,<CC_value>[,<batch_value>,<CC_value>]* Translate field value to <CC_value> if field matches <batch_value>. (*Note: not to be used for Tax_Authority)

CONV.xxx=<conv_rule> Use <conv_rule> to convert data

IF.xxx=<compare_data>,<result_value> Force field to <result_value> if field matches <compare_data>

IFVAL.xxx=<compare_data>,<result_value> Force field to <result_value> if numeric value of field matches <compare_data>

IFNOT.xxx=<compare_data>,<result_value> Force field to <result_value> if field does not match <compare_data>

IFNOTVAL.xxx=<compare_data>,<result_value> Force field to <result_value> if numeric value of field does not match <compare_data>

FORCE.xxx=<result_value> Force field to have <result_value>

(two single quotes indicate blank)

VALIDATE.xxx=Y Validate that the item exists in the CC master files

DEFAULT.xxx=<result_value> Assign <result_value> to field if blank

(two single quotes indicate blank)

REQUIRED.xxx=Y The field cannot be blank


<alt_specifier> syntax is as follows:

[<string>] (*NOTE: The square brackets here are LITERALS, they do NOT indicate that the string is optional!)
If specified, the <alt_specifier> indicates that if the contents of the field segment (previously specified with <col> and <len>) match the <string> (which can be the empty string), that field segment is ignored and remaining field segments are processed. If the field segment does NOT match the <string>, then that field segment is concatenated to the current field value, and all remaining field segments are ignored.

<compare_data> If the value begins with an at sign (@), the remainder of the value specifies the import record field name whose value will be used instead. Otherwise the value is used as-is.

<result_value> If the value begins with an at sign (@), the remainder of the value specifies the import record field name whose value will be used instead. Otherwise the value is used as-is.

<conv_rule> may be one of the following:

[A]HH:MM[A] Convert field value as time ([A] specifies position of AM/PM indicator)
MM/DD/YY Convert field value as a date of the format MM/DD/YY
MM-DD-YY Convert field value as a date of the format MM-DD-YY
MMDDYYYY Convert field value as a date of the format MMDDYYYY
YYYYMMDD Convert field value as a date of the format YYYYMMDD
DATE(<format>) Convert field using Delphi DateFormat.
Ex: conv.TICKET_DATE=date(DDMMYY) converts the value 020517 into May 2nd, 2017.
(<format> follows the syntax of the Delphi FormatDateTime function) See: http://www.delphibasics.co.uk/RTL.asp?Name=formatdatetime
TIME(<format>) Converts time field value according to <format>
(<format> follows the syntax of the Delphi FormatDateTime function) See http://www.delphibasics.co.uk/RTL.asp?Name=formatdatetime
UPPER Converts field value to uppercase equivalent
NUM(<format>) Converts numeric field value according to <format>:
0 = digit, zero padded
# = digit, zero suppressed
. = decimal point
, = thousand separator)
DEC(<n>) Converts numeric field value with <n> implied decimal places
Ex: field value 15000 converted with DEC(2) results in the value 150.00
UMCONV(<prodid>,<prodtype>,<sourceUM>[,<targetUM>]) Converts numeric field value from one U/M to another
<prodid> should be an at sign (@) followed by the product id import field name
<prodtype> is the product type that must match the product type of the associated product (use asterisk (*) to match all product types)
<sourceUM> should be an at sign (@) followed by the unit of measure import field name (or a U/M code if there is no U/M in the import file)
<targetUM> is the target U/M to convert the field value to (if not specified the U/M of the associated product is used)
Ex: CONV.QTY_SOLD_1=UMCONV(@PRODUCT_CODE_1,T,@IN_UNIT_OF_MEASURE_1) converts the quantity sold for the first product if it's product type is Asphalt from the source U/M from the IN_UNIT_OF_MEASURE_1 import field into the target U/M specified in the product table


Keystone<->CompuCrete 3.9 Batch Import Parameters Comparison

Compu-Crete

Parameter

Keystone Parameter Keystone Default Description/Comments Done
Add_Job=Yes|No, <batch_job_key_field>,

<batch_job_name_field>

No Specifies whether to add jobs

automatically. Will only add jobs if <batch_job_key_field> is not blank.

Y
Batch_Control_Type=Eagle8|Eagle7 Unknown Activates special pre-processing

for certain batch controls

Y
CSV_Delimiter (Double quote) Specifies the character that

encloses string fields for CSV format

Y
CSV_Separator (Comma) Specifies the character that

separates fields for CSV format

Y
Desc_Method=Office|Batch Office Office descriptions override

batch, Batch descriptions used always

Y
Eagle_Converter BIN\EXPS8.EXE Specifies the location of the

Command Data supplied Eagle 8 conversion utility.

Y
Eagle_Converter_Options /R /F /T~ Specifies the command-line options

for the Eagle 7/8 conversion utility.

Y
FIELD.CSZ Used when importing a combined

City, State, Zip field

N
FIELD.DELV_INST_n Y
FIELD.SALESPERSON Y
JobPrice_Method=Office|Batch|Update|Ask Office When the job price does not match

the batch price:

Office – Use office price

Batch – Use batch price

Update – Use batch price and update office

Ask – Ask for one of these options

TaxCode_Method=Office|Batch|ExemptOffice

[,<taxcode>]

Office Normal office tax code determination,

Batch tax code overrides if valid

<taxcode> used as default

ExemptOffice uses office tax code if both batch and office are exempt

Y
TICKET_RENAME_EXT Change the file extension of

the ticket file after a successful import

Y
UOFM_Method=Office|Batch Office Office u/m override batch, Batch

U/M used always

Y
USE_PLANT_TAXAUTH=Y|N Y Plant tax authority overrides

ticket tax authority if present

Y
ADDCUSTOMER=YES|NO[,<start_cust_no>(default

90000)]

Add_Customer=Yes|No

Add_Customer_Starting_Cust_No=<cust_no>

N

90000

Specifies whether to add new

customers automatically

Y
BATCHCUSTADR1=<col>,<len> FIELD.ADDRESS_1 Y
BATCHCUSTADR2=<col>,<len> FIELD.ADDRESS_2 Y
BATCHCUSTCITY=<col>,<len> FIELD.CITY Y
BATCHCUSTID=<col>,<len> N/A (see FIELD.SEQUENCE_CODE) Y
BATCHCUSTNAME=<col>,<len> <a href="http://FIELD.NAME" target="_blank">FIELD.NAME</a> Y
BATCHCUSTSTATE=<col>,<len> FIELD.STATE Y
BATCHCUSTZIP=<col>,<len> FIELD.ZIP Y
BATCHSYSFILE=<filename> Ticket_File <none> Path/Filename of batch ticket

file

Y
BATCHTAXCODEDEFAULT=<tax_code> N/A (use DEFAULT.TAX_CODE_1) Tax Code to use if all else fails Y
CASHCUSTOMER=<cust_no> N/A (use Cash indicator from

Customer table)

Specifies the cash customer Id Y
CHECKTRUCK=YES|NO[,<col>,<len>] FIELD.TRUCK_NO and VAL.TRUCK_NO Y
CODCODE=LOOKUP|,<col>,<len> FIELD.COD_FLAG (LOOKUP no longer

needed)

Y
CODTRANS=YES|NO N/A (see Add_Transportation) Y
COMMENT=<col>,<len> FIELD.COMMENT_n Y
CUSTOMERID=<col>,<len> FIELD.CUST_NO Y
CUSTOMERPO=<col>,<len> FIELD.CUSTOMER_PO Y
CUSTOMERSEQUENCE=<col>,<len> FIELD.SEQUENCE_CODE_LOOKUP Y
DEFAULTCUSTOMER=<cust_no> N/A (use DEFAULT.CUST_NO) Customer Id to use if all else

fails

Y
DEFAULTPLANT=ASK|<plant_no>[,OVERRIDE] N/A (see FIELD.PLANT_NO) Y
DEFAULTPRODUCTCODE=<product_code> N/A (use DEFAULT.PRODUCT_CODE_1) Product Code to use if all else

fails

Y
DEFAULTTAXAUTHORITY=<tax_authority> N/A (use DEFAULT.TAX_AUTHORITY) Y
DISCCODES=<col>,<len> N/A N
DRIVER=<col>,<len>[,NOLOOKUP|LOOKUP] FIELD.DRIVER Y
FILETYPE=FIXED|COMMA Record_Format=Fixed|CSV

Record_Delimiter=CRLF|LF|CR|<Hex>

Record_Length=n

File_Format=Single|Multiple

(NOTE: When using File_Format=Multiple, field CONTROL_NO must be unique per ticket)

Fixed

CRLF

Delimited Records

Single

Format of batch ticket file

Fixed Length Records of length <n>

Number of Records per ticket

Y

Y

Y

Y

HEADER=Y Header_Record_Count=n Ignore the first n records of

the import file

Y
JOBID=<col>,<len>[,<alt_job_id>] FIELD.JOB_PO_LOC

(use <alt_specifier> for <alt_job_id>)

Y
JOBPRICE=YES|NO N/A (if job is specified, always

performs job price lookup)

LOOKUPMETHOD=NUMSEQ|SEQNUM|NUMONLY|SEQONLY Cust_Lookup=<batch_field>,

<CC_field> [<batch_field>, <CC_field>]*

Matches CC fields against batch

fields to lookup customers

Y
MULTIPLEPLANTS=ALL|YES|NO[,<mask>[,<plantlo>[,<planthi]]] Append_Plant_No=All|First|None[,<mask>[,<plantlo>[,<planthi>]]]

CONV.PLANT_NO=NUM(xx)

<mask> = -%s

<plantlo> = all plants

<planthi> = only <plantlo>

Append plant number to All, First

or None of the products [If the plant number is in the specified range] <mask> is based on Delphi Format function.

Y
NONTAXAUTHORITY=<batch_non_tax_code>,<non_tax_authority>[,<tax_code>(default=2)] Translate_Tax_Authority=<batch_tax_auth>,

<CC_tax_auth>, <CC_tax_code> [,<batch_tax_auth>, <CC_tax_auth>, <CC_tax_code>]* -or- Translate.Tax_Authority

Translate_Tax_Authority#n (where n starts at 1) can be used to concatenate multiple lines of tax authority translation

Provides a translation for tax

authority

Y
PLANTID=<plant_name> N/A (specified in Plants section

of CCWBIMP.INI)

Y
PLANTNO=<col>,<len> FIELD.PLANT_NO use FORCE.PLANT_NO to force the

plant number

Y
PRICEMETHOD=BATCHSYS|OFFICE|COD Price_Method=Office|Batch|COD Office Price calculation method: Office

price except for CASH, Batch price used always, COD uses batch price for COD & CASH customers

Y
PRODDESC=<col>,<len> FIELD.DESCRIPTION_n Y
PRODUCTCODE=<col>,<len> FIELD.PRODUCT_CODE_n Y
PRODUCTCODES=<col>,<len> N/A (see FIELD.PRODUCT_CODE_n) Y
QUANTITY=<col>,<len> FIELD.QTY_SOLD_n Y
SHIPADDRESS=<col>,<len> FIELD.SHIP_TO_n Y
SUPPRESSDEFAULTS=Y N/A
TAXAUTHORITY=<col>,<len> FIELD.TAX_AUTHORITY Y
TAXCODES=<col>,<len> FIELD.TAX_CODE_n Y
TICKETDATE=<col>,<len>[,<date_mask>] FIELD.TICKET_DATE Y
TICKETNO=<col>,<len> FIELD.TICKET_NO Y
TIMEARRIVESITE=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.ARRIVE_JOB_TIME Y
TIMEBATCHSTART=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.BATCH_START_TIME Y
TIMEBATCHSTOP=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.BATCH_END_TIME Y
TIMEELAPSED=<col>,<len>[,<time_mask>[,<col2>,<len2>[,<default>]]

[,NOWARN|WARN]]

FIELD.ELAPSED_TIME -or-

Calc_Elapsed_Time=<start_time_field>,<end_time_field>


use DEFAULT.ELAPSED_TIME to specify a default elapsed time

Y

Y

TIMELEAVESITE=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.LEAVE_JOB_TIME Y
TIMELEAVEYARD=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.LEAVE_PLANT_TIME Y
TIMEMODE=TIMEOFDAY|ELAPSED,<col>,<len>[<time_mask>[,<col2>,<len2>[,<default>]][,NOWARN|WARN]] N/A (see FIELD.TICKET_TIME, FIELD.ELAPSED_TIME

and Calc_Elapsed_Time)

N
TIMERETURNYARD=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.RETURN_PLANT_TIME Y
TIMESTARTPOUR=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.BEGIN_POUR_TIME Y
TIMESTOPPOUR=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.END_POUR_TIME Y
TIMETICKETED=<col>,<len>[,<time_mask>[,NOWARN|WARN]] FIELD.TICKET_TIME Y
TRANSPORTATIONSPLIT=YES[,<col>,<len>[,<product_prefix>[,<concrete_product_classes>]]]|NO N/A (use AUTO PRODUCT) Add transportation product to

All, Charge or None of the tickets

Y
UNITDISC=<col>,<len> FIELD.UNIT_DISC_n Y
UNITPRICE=<col>,<len> FIELD.UNIT_PRICE_n Y
VERIFYTRANSPORTATION=<concrete_product_class_list>,<trans_product_class_list>[,<trans_product_prefix>] Check_Transportation_Concrete_Product_Class=<product_class>[,<product_class>]*

Check_Transportation_Trans_Product_Class=<product_class>[,<product_class>]*

Check_Transportation_Product_Code_Prefix=<prefix>

N
VOIDINDICATOR=<void_code>,<col>,<len>[,NOWRITE] FIELD.VOID_FLAG (NOWRITE no longer

used)

Y
WARNNOJOB=YES|NO N/A (use VAL.JOB_PO_LOC, REQ.JOB_PO_LOC) Y
WARNQUANTITY=<qty_lo>,<qty_hi> Check_Quantity=<qty_lo>[,<qty_hi>] Issue warning if quantity of

first product is outside the range given

N
ZONE=<col>,<len> FIELD.ZONE Y