class NetsuiteDDLConstants:

    ACCOUNT_SRC_COLS = [
        'accountsearchdisplayname',
        'accountsearchdisplaynamecopy',
        'acctnumber',
        'accttype',
        'cashflowrate',
        'category1099misc',
        'currency',
        'custrecord_acct_bank_account_number',
        'custrecord_bl001_bank_currency',
        'custrecord_fam_account_showinfixedasset',
        'description',
        'displaynamewithhierarchy',
        'eliminate',
        'externalid',
        'fullname',
        'generalrate',
        'id',
        'includechildren',
        'inventory',
        'isinactive',
        'issummary',
        'lastmodifieddate',
        'parent',
        'reconcilewithmatching',
        'restricttoaccountingbook',
        'revalue',
        'sbankname',
        'sbankroutingnumber',
        'sspecacct',
        'subsidiary',
        'unit',
        'unitstype'
    ]
    ACCOUNTTYPE_SRC_COLS = [
        'balancesheet',
        'defaultcashflowratetype',
        'defaultgeneralratetype',
        'eliminationalgo',
        'id',
        'includeinrevaldefault',
        'internalid',
        'left',
        'longname',
        'seqnum',
        'usercanchangerevaloption'
    ]
    CLASSIFICATION_SRC_COLS = [
        'fullname',
        'id',
        'includechildren',
        'isinactive',
        'lastmodifieddate',
        'name',
        'parent',
        'subsidiary'
    ]
    CURRENCY_SRC_COLS = [
        'currencyprecision',
        'displaysymbol',
        'exchangerate',
        'fxrateupdatetimezone',
        'id',
        'includeinfxrateupdates',
        'isbasecurrency',
        'isinactive',
        'lastmodifieddate',
        'name',
        'overridecurrencyformat',
        'symbol',
        'symbolplacement'
    ]
    CURRENCYRATE_SRC_COLS = [
        'basecurrency',
        'effectivedate',
        'exchangerate',
        'id',
        'lastmodifieddate',
        'transactioncurrency'
    ]
    CUSTOMER_SRC_COLS = [
        'accountnumber',
        'alcoholrecipienttype',
        'altname',
        'balancesearch',
        'category',
        'comments',
        'companyname',
        'contact',
        'contactlist',
        'creditholdoverride',
        'currency',
        'custentity1',
        'custentity10',
        'custentity11',
        'custentity12',
        'custentity13',
        'custentity2',
        'custentity3',
        'custentity5',
        'custentity6',
        'custentity7',
        'custentity8',
        'custentity9',
        'custentity_2663_customer_refund',
        'custentity_2663_direct_debit',
        'custentity_9572_custref_file_format',
        'custentity_9572_dd_file_format',
        'custentity_9572_ddcust_entitybank_sub',
        'custentity_9572_ddcust_entitybnkformat',
        'custentity_9572_refcust_entitybnkformat',
        'custentity_9572_refundcust_entitybnk_sub',
        'custentity_9997_dd_file_format',
        'custentity_customer_legalname',
        'custentity_eblock_ach',
        'custentity_eblock_afc',
        'custentity_eblock_nextgear',
        'custentity_eblock_pad',
        'custentity_eblock_shared_id',
        'custentity_edealer_contact_expiry',
        'custentity_naw_trans_need_approval',
        'custentity_pad_instruction',
        'dateclosed',
        'datecreated',
        'defaultbillingaddress',
        'defaultshippingaddress',
        'duplicate',
        'email',
        'emailpreference',
        'emailtransactions',
        'entityid',
        'entitystatus',
        'entitytitle',
        'externalid',
        'faxtransactions',
        'firstorderdate',
        'firstsaledate',
        'id',
        'isautogeneratedrepresentingentity',
        'isbudgetapproved',
        'isinactive',
        'isperson',
        'language',
        'lastmodifieddate',
        'lastorderdate',
        'lastsaledate',
        'oncredithold',
        'overduebalancesearch',
        'parent',
        'phone',
        'pricelevel',
        'printoncheckas',
        'printtransactions',
        'probability',
        'receivablesaccount',
        'representingsubsidiary',
        'salesrep',
        'searchstage',
        'shipcomplete',
        'shippingcarrier',
        'startdate',
        'terms',
        'unbilledorderssearch',
        'url'
    ]
    CUSTOMRECORD_CSEGCSEG_EB_BU_SRC_COLS = [
        'created',
        'id',
        'isinactive',
        'lastmodified',
        'name',
        'owner',
        'parent',
        'recordid',
        'scriptid'
    ]
    CUSTOMRECORD_VEHICLE_SELECTION_SRC_COLS = [
        'created',
        'custrecord142',
        'custrecord143',
        'custrecord144',
        'custrecord145',
        'custrecord146',
        'custrecord147',
        'custrecord148',
        'custrecord149',
        'custrecord150',
        'custrecord151',
        'externalid',
        'id',
        'isinactive',
        'lastmodified',
        'name',
        'owner',
        'recordid',
        'scriptid'
    ]
    CUSTOMSEGMENT_SRC_COLS = [
        'balancing',
        'displayorder',
        'glimpact',
        'internal',
        'internalid',
        'isinactive',
        'name',
        'recordtype',
        'scriptid'
    ]
    DEPARTMENT_SRC_COLS = [
        'externalid',
        'fullname',
        'id',
        'includechildren',
        'isinactive',
        'lastmodifieddate',
        'name',
        'parent',
        'subsidiary'
    ]
    EMPLOYEE_SRC_COLS = [
        'approvallimit',
        'approver',
        'comments',
        'csegcseg_eb_bu',
        'currency',
        'custentity_2663_eft_file_format',
        'custentity_2663_payment_method',
        'custentity_restrictexpensify',
        'datecreated',
        'defaultexpensereportcurrency',
        'department',
        'email',
        'employeetype',
        'entityid',
        'expenselimit',
        'externalid',
        'firstname',
        'gender',
        'giveaccess',
        'hiredate',
        'i9verified',
        'id',
        'inheritiprules',
        'initials',
        'isinactive',
        'issalesrep',
        'issupportrep',
        'lastmodifieddate',
        'lastname',
        'lastreviewdate',
        'location',
        'middlename',
        'phone',
        'purchaseorderapprovallimit',
        'purchaseorderapprover',
        'purchaseorderlimit',
        'releasedate',
        'rolesforsearch',
        'salutation',
        'subsidiary',
        'supervisor',
        'title',
        'workcalendar'
    ]
    ENTITY_SRC_COLS = [
        'altname',
        'altphone',
        'comments',
        'contact',
        'customer',
        'datecreated',
        'email',
        'employee',
        'entityid',
        'entitytitle',
        'externalid',
        'fax',
        'firstname',
        'group',
        'id',
        'isinactive',
        'isperson',
        'lastmodifieddate',
        'lastname',
        'middlename',
        'mobilephone',
        'othername',
        'parent',
        'phone',
        'project',
        'salutation',
        'title',
        'toplevelparent',
        'type',
        'vendor'
    ]
    ITEM_SRC_COLS = [
        'autoexpandkitforrevenuemgmt',
        'billingschedule',
        'class',
        'contingentrevenuehandling',
        'cost',
        'costestimatetype',
        'createddate',
        'createrevenueplanson',
        'csegrevenue_source',
        'custitem_prompt_payment_discount_item',
        'deferralaccount',
        'deferredrevenueaccount',
        'deferrevrec',
        'department',
        'description',
        'directrevenueposting',
        'displayname',
        'enforceminqtyinternally',
        'expenseaccount',
        'externalid',
        'fullname',
        'fxcost',
        'generateaccruals',
        'id',
        'includechildren',
        'incomeaccount',
        'intercoincomeaccount',
        'isfulfillable',
        'isinactive',
        'isonline',
        'itemid',
        'itemtype',
        'lastmodifieddate',
        'matchbilltoreceipt',
        'printitems',
        'purchasedescription',
        'quantityavailable',
        'revenuerecognitionrule',
        'revrecforecastrule',
        'shipindividually',
        'subsidiary',
        'subtype',
        'usemarginalrates',
        'vsoedelivered',
        'vsoesopgroup'
    ]
    LOCATION_SRC_COLS = [
        'externalid',
        'fullname',
        'id',
        'includechildren',
        'isinactive',
        'lastmodifieddate',
        'locationtype',
        'mainaddress',
        'name',
        'parent',
        'subsidiary'
    ]
    SALESINVOICED_SRC_COLS = [
        'account',
        'amount',
        'amountnet',
        'class',
        'costestimate',
        'department',
        'employee',
        'entity',
        'estgrossprofit',
        'estgrossprofitpercent',
        'item',
        'itemcount',
        'location',
        'memo',
        'subsidiary',
        'trandate',
        'tranline',
        'transaction',
        'type',
        'uniquekey'
    ]
    SUBSIDIARY_SRC_COLS = [
        'country',
        'currency',
        'custrecord_psg_lc_test_mode',
        'custrecord_stripe_account_id',
        'dropdownstate',
        'edition',
        'email',
        'federalidnumber',
        'fiscalcalendar',
        'fullname',
        'glimpactlocking',
        'id',
        'iselimination',
        'isinactive',
        'languagelocale',
        'lastmodifieddate',
        'legalname',
        'mainaddress',
        'name',
        'parent',
        'returnaddress',
        'shippingaddress',
        'showsubsidiaryname',
        'state',
        'tranprefix',
        'url'
    ]
    TRANSACTION_SRC_COLS = [
        'abbrevtype',
        'accountbasednumber',
        'actionitem',
        'actualshipdate',
        'altsalestotal',
        'approvalstatus',
        'balsegstatus',
        'billingaddress',
        'billingstatus',
        'bulkprocsubmission',
        'buyingreason',
        'buyingtimeframe',
        'closedate',
        'createdby',
        'createddate',
        'cseg1',
        'cseg_eb_opregion',
        'csegcseg_eb_bu',
        'csegrevenue_source',
        'currency',
        'custbody1',
        'custbody2',
        'custbody_11187_pref_entity_bank',
        'custbody_11724_bank_fee',
        'custbody_11724_pay_bank_fees',
        'custbody_15529_emp_entity_bank',
        'custbody_15529_vendor_entity_bank',
        'custbody_15699_exclude_from_ep_process',
        'custbody_2663_reference_num',
        'custbody_4110_customregnum',
        'custbody_4599_mx_operation_type',
        'custbody_4599_sg_import_permit_num',
        'custbody_9997_autocash_assertion_field',
        'custbody_9997_is_for_ep_dd',
        'custbody_9997_is_for_ep_eft',
        'custbody_9997_pfa_record',
        'custbody_adjustment_journal',
        'custbody_auction_name',
        'custbody_auctioncode',
        'custbody_blackline_source',
        'custbody_blackline_tranid',
        'custbody_cash_register',
        'custbody_contact_email_cc_list',
        'custbody_contact_recipient_email',
        'custbody_counterparty_vat',
        'custbody_country_of_origin',
        'custbody_createdfrom_expensify',
        'custbody_date_lsa',
        'custbody_date_of_taxable_supply',
        'custbody_delivery_terms',
        'custbody_document_date',
        'custbody_email1',
        'custbody_esc_campaign_category',
        'custbody_establishment_code',
        'custbody_fam_jrn_is_reversal',
        'custbody_fam_jrn_reversal_date',
        'custbody_fam_jrn_reversal_no',
        'custbody_fam_lp_asset',
        'custbody_fam_lp_assetdesc',
        'custbody_fam_lp_assetprop',
        'custbody_fam_lp_company',
        'custbody_fam_lp_contract',
        'custbody_fam_lp_contractnum',
        'custbody_fam_lp_financelease',
        'custbody_fam_lp_gainonmod',
        'custbody_fam_lp_intexpense',
        'custbody_fam_lp_leaseliability',
        'custbody_fam_lp_rightofuse',
        'custbody_fam_lp_startdate',
        'custbody_fam_lp_totalinterest',
        'custbody_fam_lp_totalleaseliab',
        'custbody_fam_lp_totalleasepayment',
        'custbody_fam_lp_totalnpv',
        'custbody_fam_lp_totalprincipal',
        'custbody_fam_specdeprjrn_shortage',
        'custbody_fam_specdeprjrn_specialdepr',
        'custbody_itr_doc_number',
        'custbody_itr_nexus',
        'custbody_je_bu_create',
        'custbody_je_main_location',
        'custbody_link_lsa',
        'custbody_link_name_lsa',
        'custbody_lqns_agree_upon_init_idx_rate',
        'custbody_lqns_associated_bill_ref_no',
        'custbody_lqns_assy_dept',
        'custbody_lqns_current_index_rate',
        'custbody_lqns_deferred_rent_balance',
        'custbody_lqns_executory_cost_type',
        'custbody_lqns_index_rate_type',
        'custbody_lqns_la_lease_ids',
        'custbody_lqns_la_tran_lease_acc_frmwrk',
        'custbody_lqns_la_tran_lease_version_id',
        'custbody_lqns_la_transaction_dep_line',
        'custbody_lqns_la_transaction_type',
        'custbody_lqns_la_transaction_version',
        'custbody_lqns_liability_schedule_line',
        'custbody_lqns_machine_shop',
        'custbody_lqns_straight_line_cost',
        'custbody_mode_of_transport',
        'custbody_my_import_declaration_num',
        'custbody_nexus_notc',
        'custbody_nondeductible_processed',
        'custbody_nondeductible_ref_genjrnl',
        'custbody_nondeductible_ref_tran',
        'custbody_notc',
        'custbody_nscs_bills_json1',
        'custbody_nscs_bills_json2',
        'custbody_nscs_bills_json3',
        'custbody_nscs_bills_json4',
        'custbody_nscs_bills_json5',
        'custbody_refno_originvoice',
        'custbody_regime_code',
        'custbody_regime_code_of_supply',
        'custbody_report_timestamp',
        'custbody_sii_accounting_date',
        'custbody_sii_article_61d',
        'custbody_sii_article_72_73',
        'custbody_sii_correction_type',
        'custbody_sii_exempt_details',
        'custbody_sii_external_reference',
        'custbody_sii_intra_txn_type',
        'custbody_sii_invoice_date',
        'custbody_sii_is_third_party',
        'custbody_sii_issued_inv_type',
        'custbody_sii_land_register',
        'custbody_sii_not_reported_in_time',
        'custbody_sii_operation_date',
        'custbody_sii_orig_bill',
        'custbody_sii_orig_invoice',
        'custbody_sii_property_location',
        'custbody_sii_received_inv_type',
        'custbody_sii_ref_no',
        'custbody_sii_registration_code',
        'custbody_sii_registration_msg',
        'custbody_sii_registration_status',
        'custbody_sii_spcl_scheme_code_purchase',
        'custbody_sii_spcl_scheme_code_sales',
        'custbody_stc_amount_after_discount',
        'custbody_stc_payment_transaction_id',
        'custbody_stc_tax_after_discount',
        'custbody_stc_total_after_discount',
        'custbody_stocknumber',
        'custbody_suitesync_authorization_code',
        'custbody_svb_aba_validations_passed',
        'custbody_svb_allocation_journal',
        'custbody_svb_bill_amount_based',
        'custbody_svb_distribute_taxes',
        'custbody_svb_error_logs',
        'custbody_svb_run_aba_server_side',
        'custbody_svb_sched_in_process',
        'custbody_svb_schedule_is_intercompany',
        'custbody_svb_vb_to_bell_dist_sched',
        'custbody_svb_vend_bill_link',
        'custbody_to_be_emailed',
        'custbody_tran_paymethod',
        'custbody_transaction_region',
        'custbody_vin',
        'customtype',
        'daysopen',
        'daysoverduesearch',
        'duedate',
        'email',
        'employee',
        'enddate',
        'entity',
        'entitystatus',
        'estgrossprofit',
        'estgrossprofitpercent',
        'estimatedbudget',
        'exchangerate',
        'expectedclosedate',
        'externalid',
        'fax',
        'firmed',
        'foreignamountpaid',
        'foreignamountunpaid',
        'foreignpaymentamountunused',
        'foreignpaymentamountused',
        'foreigntotal',
        'fulfillmenttype',
        'fxaltsalestotal',
        'fxnetaltsalestotal',
        'id',
        'includeinforecast',
        'incoterm',
        'intercostatus',
        'intercotransaction',
        'isbookspecific',
        'isbudgetapproved',
        'isfinchrg',
        'isreversal',
        'journaltype',
        'lastmodifiedby',
        'lastmodifieddate',
        'linkedtrackingnumberlist',
        'memdoc',
        'memo',
        'message',
        'netaltsalestotal',
        'nextapprover',
        'nextbilldate',
        'nexus',
        'number',
        'opportunity',
        'ordpicked',
        'ordreceived',
        'otherrefnum',
        'paymenthold',
        'paymentmethod',
        'paymentoption',
        'posting',
        'postingperiod',
        'printedpickingticket',
        'probability',
        'projectedtotal',
        'rangehigh',
        'rangelow',
        'recordtype',
        'reversal',
        'reversaldate',
        'reversaldefer',
        'revision',
        'salesreadiness',
        'shipcarrier',
        'shipcomplete',
        'shipdate',
        'shippingaddress',
        'source',
        'sourcetransaction',
        'startdate',
        'status',
        'terms',
        'title',
        'tosubsidiary',
        'totalcostestimate',
        'trackingnumberlist',
        'trandate',
        'trandisplayname',
        'tranid',
        'tranisvsoebundle',
        'transactionnumber',
        'type',
        'typebaseddocumentnumber',
        'userevenuearrangement',
        'visibletocustomer',
        'void',
        'voided',
        'website',
        'weightedtotal',
        'winlossreason'
    ]
    TRANSACTIONLINE_SRC_COLS = [
        'accountinglinetype',
        'actualshipdate',
        'amortizationenddate',
        'amortizationresidual',
        'amortizationsched',
        'amortizstartdate',
        'billeddate',
        'billingschedule',
        'billvariancestatus',
        'category',
        'class',
        'cleared',
        'cleareddate',
        'commitinventory',
        'commitmentfirm',
        'costestimate',
        'costestimaterate',
        'costestimatetype',
        'createdfrom',
        'creditforeignamount',
        'cseg1',
        'cseg_eb_opregion',
        'csegcseg_eb_bu',
        'csegrevenue_source',
        'custcol1',
        'custcol2',
        'custcol_5892_eutriangulation',
        'custcol_adjustment_field',
        'custcol_adjustment_tax_code',
        'custcol_car_vin',
        'custcol_charge_instructions',
        'custcol_counterparty_vat',
        'custcol_country_of_origin_code',
        'custcol_country_of_origin_name',
        'custcol_driver_name',
        'custcol_emirate',
        'custcol_establishment_code',
        'custcol_expense_code_of_supply',
        'custcol_expense_url',
        'custcol_far_trn_relatedasset',
        'custcol_lqns_account_posting_type',
        'custcol_nature_of_transaction_codes',
        'custcol_nondeductible_account',
        'custcol_sd_num',
        'custcol_sii_annual_prorate',
        'custcol_sii_exempt_line_details',
        'custcol_sii_service_date',
        'custcol_statistical_procedure_purc',
        'custcol_statistical_procedure_sale',
        'custcol_statistical_value',
        'custcol_statistical_value_base_curr',
        'custcol_svb_bill_distr_exclude',
        'custcol_svb_dist_alloc_det_hidden',
        'custcol_svb_item_exp_account',
        'custcol_svb_vend_bill_lineno',
        'custcol_year_make_model',
        'custcolcontract_end_date',
        'custcolcontract_start_date',
        'debitforeignamount',
        'department',
        'documentnumber',
        'donotdisplayline',
        'eliminate',
        'entity',
        'estgrossprofit',
        'estgrossprofitpercent',
        'estimatedamount',
        'expectedreceiptdate',
        'expenseaccount',
        'foreignamount',
        'foreignamountpaid',
        'foreignamountunpaid',
        'foreignpaymentamountunused',
        'foreignpaymentamountused',
        'fulfillable',
        'fxamountlinked',
        'fxvsoeprice',
        'id',
        'invsoebundle',
        'isbillable',
        'isclosed',
        'iscogs',
        'iscustomglline',
        'isfullyshipped',
        'isfxvariance',
        'isinventoryaffecting',
        'isrevrectransaction',
        'item',
        'itemtype',
        'linelastmodifieddate',
        'linesequencenumber',
        'location',
        'mainline',
        'matchbilltoreceipt',
        'memo',
        'needsrevenueelement',
        'netamount',
        'oldcommitmentfirm',
        'orderpriority',
        'paymentmethod',
        'price',
        'processedbyrevcommit',
        'quantity',
        'quantitybackordered',
        'quantitybilled',
        'quantitycommitted',
        'quantityrejected',
        'quantityshiprecv',
        'rate',
        'rateamount',
        'ratepercent',
        'requestnote',
        'revenueelement',
        'subsidiary',
        'taxline',
        'transaction',
        'transactiondiscount',
        'transactionlinetype',
        'uniquekey',
        'units',
        'vsoedelivered',
        'vsoeisestimate',
        'vsoepermitdiscount',
        'vsoeprice',
        'vsoesopgroup'
    ]
    VENDOR_SRC_COLS = [
        'accountnumber',
        'altname',
        'altphone',
        'balance',
        'balanceprimary',
        'category',
        'comments',
        'companyname',
        'contact',
        'contactlist',
        'currency',
        'custentity1',
        'custentity2',
        'custentity3',
        'custentity_11724_pay_bank_fees',
        'custentity_2663_eft_file_format',
        'custentity_2663_email_address_notif',
        'custentity_2663_payment_method',
        'custentity_9572_vendor_entitybank_format',
        'custentity_9572_vendor_entitybank_sub',
        'custentity_eb_t4a',
        'custentity_eblock_hca',
        'custentity_eblock_shared_id',
        'datecreated',
        'defaultbillingaddress',
        'defaultshippingaddress',
        'duplicate',
        'email',
        'emailpreference',
        'emailtransactions',
        'entityid',
        'entitytitle',
        'expenseaccount',
        'externalid',
        'fax',
        'faxtransactions',
        'firstname',
        'id',
        'isautogeneratedrepresentingentity',
        'isinactive',
        'isjobresourcevend',
        'isperson',
        'lastmodifieddate',
        'lastname',
        'legalname',
        'middlename',
        'payablesaccount',
        'phone',
        'printoncheckas',
        'printtransactions',
        'representingsubsidiary',
        'subsidiaryedition',
        'terms',
        'unbilledorders',
        'unbilledordersprimary',
        'url',
    ]


    DTYPES_TRANSACTIONLINE = {
        'accountinglinetype': 'string',
        'actualshipdate': 'timestamp',
        'amortizationenddate': 'timestamp',
        'amortizationresidual': 'string',
        'amortizationsched': 'bigint',
        'amortizstartdate': 'timestamp',
        'billeddate': 'timestamp',
        'billingschedule': 'bigint',
        'billvariancestatus': 'string',
        'category': 'bigint',
        'class': 'bigint',
        'cleared': 'string',
        'cleareddate': 'timestamp',
        'commitinventory': 'bigint',
        'commitmentfirm': 'string',
        'costestimate': 'double',
        'costestimaterate': 'double',
        'costestimatetype': 'string',
        'createdfrom': 'bigint',
        'creditforeignamount': 'double',
        'cseg1': 'bigint',
        'cseg_eb_opregion': 'bigint',
        'csegcseg_eb_bu': 'bigint',
        'csegrevenue_source': 'bigint',
        'custcol1': 'bigint',
        'custcol2': 'string',
        'custcol_5892_eutriangulation': 'string',
        'custcol_adjustment_field': 'string',
        'custcol_adjustment_tax_code': 'bigint',
        'custcol_car_vin': 'bigint',
        'custcol_charge_instructions': 'string',
        'custcol_counterparty_vat': 'string',
        'custcol_country_of_origin_code': 'string',
        'custcol_country_of_origin_name': 'string',
        'custcol_driver_name': 'string',
        'custcol_emirate': 'bigint',
        'custcol_establishment_code': 'string',
        'custcol_expense_code_of_supply': 'bigint',
        'custcol_expense_url': 'string',
        'custcol_far_trn_relatedasset': 'bigint',
        'custcol_lqns_account_posting_type': 'bigint',
        'custcol_nature_of_transaction_codes': 'bigint',
        'custcol_nondeductible_account': 'bigint',
        'custcol_sd_num': 'string',
        'custcol_sii_annual_prorate': 'double',
        'custcol_sii_exempt_line_details': 'bigint',
        'custcol_sii_service_date': 'timestamp',
        'custcol_statistical_procedure_purc': 'bigint',
        'custcol_statistical_procedure_sale': 'bigint',
        'custcol_statistical_value': 'double',
        'custcol_statistical_value_base_curr': 'double',
        'custcol_svb_bill_distr_exclude': 'string',
        'custcol_svb_dist_alloc_det_hidden': 'string',
        'custcol_svb_item_exp_account': 'bigint',
        'custcol_svb_vend_bill_lineno': 'bigint',
        'custcol_year_make_model': 'string',
        'custcolcontract_end_date': 'timestamp',
        'custcolcontract_start_date': 'timestamp',
        'debitforeignamount': 'double',
        'department': 'bigint',
        'documentnumber': 'string',
        'donotdisplayline': 'string',
        'eliminate': 'string',
        'entity': 'bigint',
        'estgrossprofit': 'double',
        'estgrossprofitpercent': 'double',
        'estimatedamount': 'double',
        'expectedreceiptdate': 'timestamp',
        'expenseaccount': 'bigint',
        'foreignamount': 'double',
        'foreignamountpaid': 'double',
        'foreignamountunpaid': 'double',
        'foreignpaymentamountunused': 'double',
        'foreignpaymentamountused': 'double',
        'fulfillable': 'string',
        'fxamountlinked': 'double',
        'fxvsoeprice': 'double',
        'id': 'bigint',
        'invsoebundle': 'string',
        'isbillable': 'string',
        'isclosed': 'string',
        'iscogs': 'string',
        'iscustomglline': 'string',
        'isfullyshipped': 'string',
        'isfxvariance': 'string',
        'isinventoryaffecting': 'string',
        'isrevrectransaction': 'string',
        'item': 'bigint',
        'itemtype': 'string',
        'linelastmodifieddate': 'timestamp',
        'linesequencenumber': 'bigint',
        'location': 'bigint',
        'mainline': 'string',
        'matchbilltoreceipt': 'string',
        'memo': 'string',
        'needsrevenueelement': 'string',
        'netamount': 'double',
        'oldcommitmentfirm': 'string',
        'orderpriority': 'double',
        'paymentmethod': 'bigint',
        'price': 'bigint',
        'processedbyrevcommit': 'string',
        'quantity': 'double',
        'quantitybackordered': 'double',
        'quantitybilled': 'double',
        'quantitycommitted': 'double',
        'quantityrejected': 'double',
        'quantityshiprecv': 'double',
        'rate': 'double',
        'rateamount': 'double',
        'ratepercent': 'double',
        'requestnote': 'string',
        'revenueelement': 'bigint',
        'subsidiary': 'bigint',
        'taxline': 'string',
        'transaction': 'bigint',
        'transactiondiscount': 'string',
        'transactionlinetype': 'string',
        'uniquekey': 'bigint',
        'units': 'bigint',
        'vsoedelivered': 'string',
        'vsoeisestimate': 'string',
        'vsoepermitdiscount': 'string',
        'vsoeprice': 'double',
        'vsoesopgroup': 'string'
    }
    DTYPES_TRANSACTION = {
        'abbrevtype': 'string',
        'accountbasednumber': 'string',
        'actionitem': 'string',
        'actualshipdate': 'timestamp',
        'altsalestotal': 'double',
        'approvalstatus': 'bigint',
        'balsegstatus': 'bigint',
        'billingaddress': 'bigint',
        'billingstatus': 'string',
        'bulkprocsubmission': 'string',
        'buyingreason': 'string',
        'buyingtimeframe': 'string',
        'closedate': 'timestamp',
        'createdby': 'string',
        'createddate': 'timestamp',
        'cseg1': 'string',
        'cseg_eb_opregion': 'string',
        'csegcseg_eb_bu': 'bigint',
        'csegrevenue_source': 'string',
        'currency': 'bigint',
        'custbody1': 'string',
        'custbody2': 'string',
        'custbody_11187_pref_entity_bank': 'string',
        'custbody_11724_bank_fee': 'string',
        'custbody_11724_pay_bank_fees': 'string',
        'custbody_15529_emp_entity_bank': 'string',
        'custbody_15529_vendor_entity_bank': 'string',
        'custbody_15699_exclude_from_ep_process': 'string',
        'custbody_2663_reference_num': 'string',
        'custbody_4110_customregnum': 'string',
        'custbody_4599_mx_operation_type': 'string',
        'custbody_4599_sg_import_permit_num': 'string',
        'custbody_9997_autocash_assertion_field': 'string',
        'custbody_9997_is_for_ep_dd': 'string',
        'custbody_9997_is_for_ep_eft': 'string',
        'custbody_9997_pfa_record': 'string',
        'custbody_adjustment_journal': 'string',
        'custbody_auction_name': 'string',
        'custbody_auctioncode': 'string',
        'custbody_blackline_source': 'string',
        'custbody_blackline_tranid': 'string',
        'custbody_cash_register': 'string',
        'custbody_contact_email_cc_list': 'string',
        'custbody_contact_recipient_email': 'string',
        'custbody_counterparty_vat': 'string',
        'custbody_country_of_origin': 'string',
        'custbody_createdfrom_expensify': 'string',
        'custbody_date_lsa': 'timestamp',
        'custbody_date_of_taxable_supply': 'timestamp',
        'custbody_delivery_terms': 'string',
        'custbody_document_date': 'timestamp',
        'custbody_email1': 'string',
        'custbody_esc_campaign_category': 'string',
        'custbody_establishment_code': 'string',
        'custbody_fam_jrn_is_reversal': 'string',
        'custbody_fam_jrn_reversal_date': 'timestamp',
        'custbody_fam_jrn_reversal_no': 'string',
        'custbody_fam_lp_asset': 'string',
        'custbody_fam_lp_assetdesc': 'string',
        'custbody_fam_lp_assetprop': 'string',
        'custbody_fam_lp_company': 'string',
        'custbody_fam_lp_contract': 'string',
        'custbody_fam_lp_contractnum': 'string',
        'custbody_fam_lp_financelease': 'string',
        'custbody_fam_lp_gainonmod': 'string',
        'custbody_fam_lp_intexpense': 'string',
        'custbody_fam_lp_leaseliability': 'string',
        'custbody_fam_lp_rightofuse': 'string',
        'custbody_fam_lp_startdate': 'timestamp',
        'custbody_fam_lp_totalinterest': 'string',
        'custbody_fam_lp_totalleaseliab': 'string',
        'custbody_fam_lp_totalleasepayment': 'string',
        'custbody_fam_lp_totalnpv': 'string',
        'custbody_fam_lp_totalprincipal': 'string',
        'custbody_fam_specdeprjrn_shortage': 'string',
        'custbody_fam_specdeprjrn_specialdepr': 'string',
        'custbody_itr_doc_number': 'string',
        'custbody_itr_nexus': 'string',
        'custbody_je_bu_create': 'string',
        'custbody_je_main_location': 'string',
        'custbody_link_lsa': 'string',
        'custbody_link_name_lsa': 'string',
        'custbody_lqns_agree_upon_init_idx_rate': 'string',
        'custbody_lqns_associated_bill_ref_no': 'string',
        'custbody_lqns_assy_dept': 'timestamp',
        'custbody_lqns_current_index_rate': 'string',
        'custbody_lqns_deferred_rent_balance': 'string',
        'custbody_lqns_executory_cost_type': 'string',
        'custbody_lqns_index_rate_type': 'string',
        'custbody_lqns_la_lease_ids': 'string',
        'custbody_lqns_la_tran_lease_acc_frmwrk': 'string',
        'custbody_lqns_la_tran_lease_version_id': 'string',
        'custbody_lqns_la_transaction_dep_line': 'string',
        'custbody_lqns_la_transaction_type': 'string',
        'custbody_lqns_la_transaction_version': 'string',
        'custbody_lqns_liability_schedule_line': 'string',
        'custbody_lqns_machine_shop': 'timestamp',
        'custbody_lqns_straight_line_cost': 'string',
        'custbody_mode_of_transport': 'string',
        'custbody_my_import_declaration_num': 'string',
        'custbody_nexus_notc': 'string',
        'custbody_nondeductible_processed': 'string',
        'custbody_nondeductible_ref_genjrnl': 'string',
        'custbody_nondeductible_ref_tran': 'string',
        'custbody_notc': 'string',
        'custbody_nscs_bills_json1': 'string',
        'custbody_nscs_bills_json2': 'string',
        'custbody_nscs_bills_json3': 'string',
        'custbody_nscs_bills_json4': 'string',
        'custbody_nscs_bills_json5': 'string',
        'custbody_refno_originvoice': 'string',
        'custbody_regime_code': 'string',
        'custbody_regime_code_of_supply': 'string',
        'custbody_report_timestamp': 'string',
        'custbody_sii_accounting_date': 'timestamp',
        'custbody_sii_article_61d': 'string',
        'custbody_sii_article_72_73': 'string',
        'custbody_sii_correction_type': 'string',
        'custbody_sii_exempt_details': 'string',
        'custbody_sii_external_reference': 'string',
        'custbody_sii_intra_txn_type': 'string',
        'custbody_sii_invoice_date': 'timestamp',
        'custbody_sii_is_third_party': 'string',
        'custbody_sii_issued_inv_type': 'string',
        'custbody_sii_land_register': 'string',
        'custbody_sii_not_reported_in_time': 'string',
        'custbody_sii_operation_date': 'timestamp',
        'custbody_sii_orig_bill': 'string',
        'custbody_sii_orig_invoice': 'string',
        'custbody_sii_property_location': 'string',
        'custbody_sii_received_inv_type': 'string',
        'custbody_sii_ref_no': 'string',
        'custbody_sii_registration_code': 'string',
        'custbody_sii_registration_msg': 'string',
        'custbody_sii_registration_status': 'string',
        'custbody_sii_spcl_scheme_code_purchase': 'string',
        'custbody_sii_spcl_scheme_code_sales': 'string',
        'custbody_stc_amount_after_discount': 'string',
        'custbody_stc_payment_transaction_id': 'string',
        'custbody_stc_tax_after_discount': 'string',
        'custbody_stc_total_after_discount': 'string',
        'custbody_stocknumber': 'string',
        'custbody_suitesync_authorization_code': 'string',
        'custbody_svb_aba_validations_passed': 'string',
        'custbody_svb_allocation_journal': 'string',
        'custbody_svb_bill_amount_based': 'string',
        'custbody_svb_distribute_taxes': 'string',
        'custbody_svb_error_logs': 'string',
        'custbody_svb_run_aba_server_side': 'string',
        'custbody_svb_sched_in_process': 'string',
        'custbody_svb_schedule_is_intercompany': 'string',
        'custbody_svb_vb_to_bell_dist_sched': 'string',
        'custbody_svb_vend_bill_link': 'string',
        'custbody_to_be_emailed': 'string',
        'custbody_tran_paymethod': 'string',
        'custbody_transaction_region': 'string',
        'custbody_vin': 'string',
        'customtype': 'string',
        'daysopen': 'string',
        'daysoverduesearch': 'string',
        'duedate': 'timestamp',
        'email': 'string',
        'employee': 'bigint',
        'enddate': 'timestamp',
        'entity': 'bigint',
        'entitystatus': 'string',
        'estgrossprofit': 'double',
        'estgrossprofitpercent': 'double',
        'estimatedbudget': 'double',
        'exchangerate': 'double',
        'expectedclosedate': 'timestamp',
        'externalid': 'string',
        'fax': 'string',
        'firmed': 'string',
        'foreignamountpaid': 'double',
        'foreignamountunpaid': 'double',
        'foreignpaymentamountunused': 'double',
        'foreignpaymentamountused': 'double',
        'foreigntotal': 'double',
        'fulfillmenttype': 'bigint',
        'fxaltsalestotal': 'double',
        'fxnetaltsalestotal': 'double',
        'id': 'bigint',
        'includeinforecast': 'string',
        'incoterm': 'string',
        'intercostatus': 'string',
        'intercotransaction': 'string',
        'isbookspecific': 'string',
        'isbudgetapproved': 'string',
        'isfinchrg': 'string',
        'isreversal': 'string',
        'journaltype': 'string',
        'lastmodifiedby': 'bigint',
        'lastmodifieddate': 'timestamp',
        'linkedtrackingnumberlist': 'string',
        'memdoc': 'string',
        'memo': 'string',
        'message': 'string',
        'netaltsalestotal': 'double',
        'nextapprover': 'string',
        'nextbilldate': 'timestamp',
        'nexus': 'bigint',
        'number': 'bigint',
        'opportunity': 'string',
        'ordpicked': 'string',
        'ordreceived': 'string',
        'otherrefnum': 'string',
        'paymenthold': 'string',
        'paymentmethod': 'string',
        'paymentoption': 'string',
        'posting': 'string',
        'postingperiod': 'string',
        'printedpickingticket': 'string',
        'probability': 'double',
        'projectedtotal': 'double',
        'rangehigh': 'double',
        'rangelow': 'double',
        'recordtype': 'string',
        'reversal': 'string',
        'reversaldate': 'timestamp',
        'reversaldefer': 'string',
        'revision': 'string',
        'salesreadiness': 'string',
        'shipcarrier': 'string',
        'shipcomplete': 'string',
        'shipdate': 'timestamp',
        'shippingaddress': 'string',
        'source': 'string',
        'sourcetransaction': 'string',
        'startdate': 'timestamp',
        'status': 'string',
        'terms': 'bigint',
        'title': 'string',
        'tosubsidiary': 'string',
        'totalcostestimate': 'double',
        'trackingnumberlist': 'string',
        'trandate': 'timestamp',
        'trandisplayname': 'string',
        'tranid': 'string',
        'tranisvsoebundle': 'string',
        'transactionnumber': 'string',
        'type': 'string',
        'typebaseddocumentnumber': 'string',
        'userevenuearrangement': 'string',
        'visibletocustomer': 'string',
        'void': 'string',
        'voided': 'string',
        'website': 'string',
        'weightedtotal': 'double',
        'winlossreason': 'string'
    }

    def get_dtypes(self, tbl):
        dtypes = None
        if (tbl == 'transaction'):
            dtypes = self.DTYPES_TRANSACTION
        elif (tbl == 'transactionline'):
            dtypes = self.DTYPES_TRANSACTIONLINE

        return dtypes

    def get_item_src_col(self, tbl):
        ddl = ''

        if (tbl == 'account'):
            ddl = self.ACCOUNT_SRC_COLS
        elif (tbl == 'accounttype'):
            ddl = self.ACCOUNTTYPE_SRC_COLS
        elif (tbl == 'classification'):
            ddl = self.CLASSIFICATION_SRC_COLS
        elif (tbl == 'currency'):
            ddl = self.CURRENCY_SRC_COLS
        elif (tbl == 'currencyrate'):
            ddl = self.CURRENCYRATE_SRC_COLS
        elif (tbl == 'customer'):
            ddl = self.CUSTOMER_SRC_COLS
        elif (tbl == 'customrecord_csegcseg_eb_bu'):
            ddl = self.CUSTOMRECORD_CSEGCSEG_EB_BU_SRC_COLS
        elif (tbl == 'customrecord_vehicle_selection'):
            ddl = self.CUSTOMRECORD_VEHICLE_SELECTION_SRC_COLS
        elif (tbl == 'customsegment'):
            ddl = self.CUSTOMSEGMENT_SRC_COLS
        elif (tbl == 'department'):
            ddl = self.DEPARTMENT_SRC_COLS
        elif (tbl == 'employee'):
            ddl = self.EMPLOYEE_SRC_COLS
        elif (tbl == 'entity'):
            ddl = self.ENTITY_SRC_COLS
        elif (tbl == 'item'):
            ddl = self.ITEM_SRC_COLS
        elif (tbl == 'location'):
            ddl = self.LOCATION_SRC_COLS
        elif (tbl == 'salesinvoiced'):
            ddl = self.SALESINVOICED_SRC_COLS
        elif (tbl == 'subsidiary'):
            ddl = self.SUBSIDIARY_SRC_COLS
        elif (tbl == 'transaction'):
            ddl = self.TRANSACTION_SRC_COLS
        elif (tbl == 'transactionline'):
            ddl = self.TRANSACTIONLINE_SRC_COLS
        elif (tbl == 'vendor'):
            ddl = self.VENDOR_SRC_COLS

        return ddl
