<?xml version="1.0" encoding="UTF-8"?>
<bm:model xmlns:bm="http://www.leaf-framework.org/schema/bm" xmlns:f="leaf.database.features" alias="t1" baseTable="CON_CONTRACT">
    <bm:fields>
        <bm:field name="contract_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="CONTRACT_ID" prompt="CON_CONTRACT.CONTRACT_ID"/>
        <bm:field name="calc_session_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="CALC_SESSION_ID" prompt="CON_CONTRACT.CALC_SESSION_ID"/>
        <bm:field name="contract_number" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CONTRACT_NUMBER" prompt="CON_CONTRACT.CONTRACT_NUMBER"/>
        <bm:field name="contract_name" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CONTRACT_NAME" prompt="CON_CONTRACT.CONTRACT_NAME"/>
        <bm:field name="business_type" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="BUSINESS_TYPE" prompt="CON_CONTRACT.BUSINESS_TYPE"/>
        <bm:field name="business_type_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select bt.description from hls_business_type bt where bt.business_type = t1.business_type)" forInsert="false" forUpdate="false"/>
        <bm:field name="document_type" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DOCUMENT_TYPE" prompt="CON_CONTRACT.DOCUMENT_TYPE"/>
        <bm:field name="document_category" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DOCUMENT_CATEGORY" prompt="CON_CONTRACT.DOCUMENT_CATEGORY"/>
        <bm:field name="project_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="PROJECT_ID" prompt="CON_CONTRACT.PROJECT_ID"/>
        <bm:field name="project_name" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select m.project_name from prj_project m where m.project_id = t1.project_id)" forInsert="false" forUpdate="false"/>
        <bm:field name="company_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="COMPANY_ID" prompt="CON_CONTRACT.COMPANY_ID"/>
        <bm:field name="lease_organization" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="LEASE_ORGANIZATION" prompt="CON_CONTRACT.LEASE_ORGANIZATION"/>
        <bm:field name="lease_channel" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="LEASE_CHANNEL" prompt="CON_CONTRACT.LEASE_CHANNEL"/>
        <bm:field name="division" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DIVISION" prompt="CON_CONTRACT.DIVISION"/>
        <bm:field name="bp_id_tenant" databaseType="NUMBER" datatype="java.lang.Long" physicalName="BP_ID_TENANT" prompt="CON_CONTRACT.BP_ID_TENANT"/>
        <bm:field name="bp_id_tenant_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select m.bp_code from hls_bp_master m where m.bp_id = t1.bp_id_tenant)" forInsert="false" forUpdate="false"/>
        <bm:field name="bp_name" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select m.bp_name from hls_bp_master m where m.bp_id = t1.bp_id_tenant)" forInsert="false" forUpdate="false"/>
        <bm:field name="bp_id_agent_level1" databaseType="NUMBER" datatype="java.lang.Long" physicalName="BP_ID_AGENT_LEVEL1" prompt="CON_CONTRACT.BP_ID_AGENT_LEVEL1"/>
        <bm:field name="bp_id_agent_level2" databaseType="NUMBER" datatype="java.lang.Long" physicalName="BP_ID_AGENT_LEVEL2" prompt="CON_CONTRACT.BP_ID_AGENT_LEVEL2"/>
        <bm:field name="bp_id_agent_level3" databaseType="NUMBER" datatype="java.lang.Long" physicalName="BP_ID_AGENT_LEVEL3" prompt="CON_CONTRACT.BP_ID_AGENT_LEVEL3"/>
        <bm:field name="owner_user_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="OWNER_USER_ID" prompt="CON_CONTRACT.OWNER_USER_ID"/>
        <bm:field name="employee_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="EMPLOYEE_ID" prompt="CON_CONTRACT.EMPLOYEE_ID"/>
        <bm:field name="employee_name" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select e.name from exp_employees e where e.employee_id = t1.employee_id)" forInsert="false" forUpdate="false"/>
        <bm:field name="unit_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="UNIT_ID" prompt="CON_CONTRACT.UNIT_ID"/>
        <bm:field name="unit_name" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select u.description from exp_org_unit_vl u where u.unit_id = t1.unit_id)" forInsert="false" forUpdate="false"/>
        <bm:field name="employee_id_of_manager" databaseType="NUMBER" datatype="java.lang.Long" physicalName="EMPLOYEE_ID_OF_MANAGER" prompt="CON_CONTRACT.EMPLOYEE_ID_OF_MANAGER"/>
        <bm:field name="employee_name_of_manager" databaseType="VARCHAR2" datatype="java.lang.String"/>
        <bm:field name="search_term_1" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="SEARCH_TERM_1" prompt="CON_CONTRACT.SEARCH_TERM_1"/>
        <bm:field name="search_term_2" databaseType="NUMBER" datatype="java.lang.Double" physicalName="SEARCH_TERM_2" prompt="CON_CONTRACT.SEARCH_TERM_2"/>
        <bm:field name="factoring_type" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="FACTORING_TYPE" prompt="CON_CONTRACT.FACTORING_TYPE"/>
        <bm:field name="description" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DESCRIPTION" prompt="CON_CONTRACT.DESCRIPTION"/>
        <bm:field name="price_list" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="PRICE_LIST" prompt="CON_CONTRACT.PRICE_LIST"/>
        <bm:field name="calc_method" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CALC_METHOD" prompt="CON_CONTRACT.CALC_METHOD"/>
        <bm:field name="cdd_list_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="CDD_LIST_ID" prompt="CON_CONTRACT.CDD_LIST_ID"/>
        <bm:field name="inception_of_lease" databaseType="DATE" datatype="java.util.Date" physicalName="INCEPTION_OF_LEASE" prompt="CON_CONTRACT.INCEPTION_OF_LEASE"/>
        <bm:field name="lease_start_date" databaseType="DATE" datatype="java.util.Date" physicalName="LEASE_START_DATE" prompt="CON_CONTRACT.LEASE_START_DATE"/>
        <bm:field name="first_pay_date" databaseType="DATE" datatype="java.util.Date" physicalName="FIRST_PAY_DATE" prompt="CON_CONTRACT.FIRST_PAY_DATE"/>
        <bm:field name="last_pay_date" databaseType="DATE" datatype="java.util.Date" physicalName="LAST_PAY_DATE" prompt="CON_CONTRACT.LAST_PAY_DATE"/>
        <bm:field name="lease_end_date" databaseType="DATE" datatype="java.util.Date" physicalName="LEASE_END_DATE" prompt="CON_CONTRACT.LEASE_END_DATE"/>
        <bm:field name="lease_times" databaseType="NUMBER" datatype="java.lang.Long" physicalName="LEASE_TIMES" prompt="CON_CONTRACT.LEASE_TIMES"/>
        <bm:field name="pay_times" databaseType="NUMBER" datatype="java.lang.Long" physicalName="PAY_TIMES" prompt="CON_CONTRACT.PAY_TIMES"/>
        <bm:field name="annual_pay_times" databaseType="NUMBER" datatype="java.lang.Long" physicalName="ANNUAL_PAY_TIMES" prompt="CON_CONTRACT.ANNUAL_PAY_TIMES"/>
        <bm:field name="lease_term" databaseType="NUMBER" datatype="java.lang.Double" physicalName="LEASE_TERM" prompt="CON_CONTRACT.LEASE_TERM"/>
        <bm:field name="pay_type" databaseType="NUMBER" datatype="java.lang.Long" physicalName="PAY_TYPE" prompt="CON_CONTRACT.PAY_TYPE"/>
        <bm:field name="currency" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CURRENCY" prompt="CON_CONTRACT.CURRENCY"/>
        <bm:field name="currency_precision" databaseType="NUMBER" datatype="java.lang.Long" physicalName="CURRENCY_PRECISION" prompt="CON_CONTRACT.CURRENCY_PRECISION"/>
        <bm:field name="machinery_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="MACHINERY_AMOUNT" prompt="CON_CONTRACT.MACHINERY_AMOUNT"/>
        <bm:field name="parts_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="PARTS_AMOUNT" prompt="CON_CONTRACT.PARTS_AMOUNT"/>
        <bm:field name="lease_item_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="LEASE_ITEM_AMOUNT" prompt="CON_CONTRACT.LEASE_ITEM_AMOUNT"/>
        <bm:field name="net_lease_item_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_LEASE_ITEM_AMOUNT" prompt="CON_CONTRACT.NET_LEASE_ITEM_AMOUNT"/>
        <bm:field name="vat_input" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_INPUT" prompt="CON_CONTRACT.VAT_INPUT"/>
        <bm:field name="lease_item_cost" databaseType="NUMBER" datatype="java.lang.Double" physicalName="LEASE_ITEM_COST" prompt="CON_CONTRACT.LEASE_ITEM_COST"/>
        <bm:field name="down_payment_ratio" databaseType="NUMBER" datatype="java.lang.Double" physicalName="DOWN_PAYMENT_RATIO" prompt="CON_CONTRACT.DOWN_PAYMENT_RATIO"/>
        <bm:field name="down_payment" databaseType="NUMBER" datatype="java.lang.Double" physicalName="DOWN_PAYMENT" prompt="CON_CONTRACT.DOWN_PAYMENT"/>
        <bm:field name="net_down_payment" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_DOWN_PAYMENT" prompt="CON_CONTRACT.NET_DOWN_PAYMENT"/>
        <bm:field name="vat_down_payment" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_DOWN_PAYMENT" prompt="CON_CONTRACT.VAT_DOWN_PAYMENT"/>
        <bm:field name="finance_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="FINANCE_AMOUNT" prompt="CON_CONTRACT.FINANCE_AMOUNT"/>
        <bm:field name="net_finance_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_FINANCE_AMOUNT" prompt="CON_CONTRACT.NET_FINANCE_AMOUNT"/>
        <bm:field name="vat_finance_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_FINANCE_AMOUNT" prompt="CON_CONTRACT.VAT_FINANCE_AMOUNT"/>
        <bm:field name="actual_finance_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="ACTUAL_FINANCE_AMOUNT" prompt="CON_CONTRACT.ACTUAL_FINANCE_AMOUNT"/>
        <bm:field name="total_rental" databaseType="NUMBER" datatype="java.lang.Double" physicalName="TOTAL_RENTAL" prompt="CON_CONTRACT.TOTAL_RENTAL"/>
        <bm:field name="net_total_rental" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_TOTAL_RENTAL" prompt="CON_CONTRACT.NET_TOTAL_RENTAL"/>
        <bm:field name="vat_total_rental" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_TOTAL_RENTAL" prompt="CON_CONTRACT.VAT_TOTAL_RENTAL"/>
        <bm:field name="total_interest" databaseType="NUMBER" datatype="java.lang.Double" physicalName="TOTAL_INTEREST" prompt="CON_CONTRACT.TOTAL_INTEREST"/>
        <bm:field name="net_total_interest" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_TOTAL_INTEREST" prompt="CON_CONTRACT.NET_TOTAL_INTEREST"/>
        <bm:field name="vat_total_interest" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_TOTAL_INTEREST" prompt="CON_CONTRACT.VAT_TOTAL_INTEREST"/>
        <bm:field name="total_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="TOTAL_FEE" prompt="CON_CONTRACT.TOTAL_FEE"/>
        <bm:field name="net_total_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_TOTAL_FEE" prompt="CON_CONTRACT.NET_TOTAL_FEE"/>
        <bm:field name="vat_total_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_TOTAL_FEE" prompt="CON_CONTRACT.VAT_TOTAL_FEE"/>
        <bm:field name="finance_income" databaseType="NUMBER" datatype="java.lang.Double" physicalName="FINANCE_INCOME" prompt="CON_CONTRACT.FINANCE_INCOME"/>
        <bm:field name="net_finance_income" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_FINANCE_INCOME" prompt="CON_CONTRACT.NET_FINANCE_INCOME"/>
        <bm:field name="vat_finance_income" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_FINANCE_INCOME" prompt="CON_CONTRACT.VAT_FINANCE_INCOME"/>
        <bm:field name="contract_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="CONTRACT_AMOUNT" prompt="CON_CONTRACT.CONTRACT_AMOUNT"/>
        <bm:field name="tax_type_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="TAX_TYPE_ID" prompt="CON_CONTRACT.TAX_TYPE_ID"/>
        <bm:field name="vat_flag" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="VAT_FLAG" prompt="CON_CONTRACT.VAT_FLAG"/>
        <bm:field name="vat_rate" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_RATE" prompt="CON_CONTRACT.VAT_RATE"/>
        <bm:field name="lease_charge_ratio" databaseType="NUMBER" datatype="java.lang.Double" physicalName="LEASE_CHARGE_RATIO" prompt="CON_CONTRACT.LEASE_CHARGE_RATIO"/>
        <bm:field name="lease_charge" databaseType="NUMBER" datatype="java.lang.Double" physicalName="LEASE_CHARGE" prompt="CON_CONTRACT.LEASE_CHARGE"/>
        <bm:field name="net_lease_charge" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_LEASE_CHARGE" prompt="CON_CONTRACT.NET_LEASE_CHARGE"/>
        <bm:field name="vat_lease_charge" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_LEASE_CHARGE" prompt="CON_CONTRACT.VAT_LEASE_CHARGE"/>
        <bm:field name="lease_mgt_fee_ratio" databaseType="NUMBER" datatype="java.lang.Double" physicalName="LEASE_MGT_FEE_RATIO" prompt="CON_CONTRACT.LEASE_MGT_FEE_RATIO"/>
        <bm:field name="lease_mgt_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="LEASE_MGT_FEE" prompt="CON_CONTRACT.LEASE_MGT_FEE"/>
        <bm:field name="net_lease_mgt_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_LEASE_MGT_FEE" prompt="CON_CONTRACT.NET_LEASE_MGT_FEE"/>
        <bm:field name="vat_lease_mgt_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_LEASE_MGT_FEE" prompt="CON_CONTRACT.VAT_LEASE_MGT_FEE"/>
        <bm:field name="lease_mgt_fee_rule" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="LEASE_MGT_FEE_RULE" prompt="CON_CONTRACT.LEASE_MGT_FEE_RULE"/>
        <bm:field name="deposit_ratio" databaseType="NUMBER" datatype="java.lang.Double" physicalName="DEPOSIT_RATIO" prompt="CON_CONTRACT.DEPOSIT_RATIO"/>
        <bm:field name="deposit" databaseType="NUMBER" datatype="java.lang.Double" physicalName="DEPOSIT" prompt="CON_CONTRACT.DEPOSIT"/>
        <bm:field name="deposit_deduction" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DEPOSIT_DEDUCTION" prompt="CON_CONTRACT.DEPOSIT_DEDUCTION"/>
        <bm:field name="residual_ratio" databaseType="NUMBER" datatype="java.lang.Double" physicalName="RESIDUAL_RATIO" prompt="CON_CONTRACT.RESIDUAL_RATIO"/>
        <bm:field name="residual_value" databaseType="NUMBER" datatype="java.lang.Double" physicalName="RESIDUAL_VALUE" prompt="CON_CONTRACT.RESIDUAL_VALUE"/>
        <bm:field name="net_residual_value" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_RESIDUAL_VALUE" prompt="CON_CONTRACT.NET_RESIDUAL_VALUE"/>
        <bm:field name="vat_residual_value" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_RESIDUAL_VALUE" prompt="CON_CONTRACT.VAT_RESIDUAL_VALUE"/>
        <bm:field name="balloon_ratio" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BALLOON_RATIO" prompt="CON_CONTRACT.BALLOON_RATIO"/>
        <bm:field name="balloon" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BALLOON" prompt="CON_CONTRACT.BALLOON"/>
        <bm:field name="net_balloon" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_BALLOON" prompt="CON_CONTRACT.NET_BALLOON"/>
        <bm:field name="vat_balloon" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_BALLOON" prompt="CON_CONTRACT.VAT_BALLOON"/>
        <bm:field name="interim_rent_period" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="INTERIM_RENT_PERIOD" prompt="CON_CONTRACT.INTERIM_RENT_PERIOD"/>
        <bm:field name="interim_times" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INTERIM_TIMES" prompt="CON_CONTRACT.INTERIM_TIMES"/>
        <bm:field name="interim_rental" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INTERIM_RENTAL" prompt="CON_CONTRACT.INTERIM_RENTAL"/>
        <bm:field name="net_interim_rental" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_INTERIM_RENTAL" prompt="CON_CONTRACT.NET_INTERIM_RENTAL"/>
        <bm:field name="vat_interim_rental" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_INTERIM_RENTAL" prompt="CON_CONTRACT.VAT_INTERIM_RENTAL"/>
        <bm:field name="insurance_rate" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INSURANCE_RATE" prompt="CON_CONTRACT.INSURANCE_RATE"/>
        <bm:field name="insurance_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INSURANCE_FEE" prompt="CON_CONTRACT.INSURANCE_FEE"/>
        <bm:field name="net_insurance_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_INSURANCE_FEE" prompt="CON_CONTRACT.NET_INSURANCE_FEE"/>
        <bm:field name="vat_insurance_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_INSURANCE_FEE" prompt="CON_CONTRACT.VAT_INSURANCE_FEE"/>
        <bm:field name="insurance_fee_payable" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INSURANCE_FEE_PAYABLE" prompt="CON_CONTRACT.INSURANCE_FEE_PAYABLE"/>
        <bm:field name="notarial_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NOTARIAL_FEE" prompt="CON_CONTRACT.NOTARIAL_FEE"/>
        <bm:field name="net_notarial_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_NOTARIAL_FEE" prompt="CON_CONTRACT.NET_NOTARIAL_FEE"/>
        <bm:field name="vat_notarial_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_NOTARIAL_FEE" prompt="CON_CONTRACT.VAT_NOTARIAL_FEE"/>
        <bm:field name="notarial_fee_payable" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NOTARIAL_FEE_PAYABLE" prompt="CON_CONTRACT.NOTARIAL_FEE_PAYABLE"/>
        <bm:field name="commission_receivable" databaseType="NUMBER" datatype="java.lang.Double" physicalName="COMMISSION_RECEIVABLE" prompt="CON_CONTRACT.COMMISSION_RECEIVABLE"/>
        <bm:field name="net_commission_receivable" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_COMMISSION_RECEIVABLE" prompt="CON_CONTRACT.NET_COMMISSION_RECEIVABLE"/>
        <bm:field name="vat_commission_receivable" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_COMMISSION_RECEIVABLE" prompt="CON_CONTRACT.VAT_COMMISSION_RECEIVABLE"/>
        <bm:field name="commission_payable" databaseType="NUMBER" datatype="java.lang.Double" physicalName="COMMISSION_PAYABLE" prompt="CON_CONTRACT.COMMISSION_PAYABLE"/>
        <bm:field name="third_party_deposit" databaseType="NUMBER" datatype="java.lang.Double" physicalName="THIRD_PARTY_DEPOSIT" prompt="CON_CONTRACT.THIRD_PARTY_DEPOSIT"/>
        <bm:field name="promise_to_pay" databaseType="NUMBER" datatype="java.lang.Double" physicalName="PROMISE_TO_PAY" prompt="CON_CONTRACT.PROMISE_TO_PAY"/>
        <bm:field name="other_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="OTHER_FEE" prompt="CON_CONTRACT.OTHER_FEE"/>
        <bm:field name="net_other_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_OTHER_FEE" prompt="CON_CONTRACT.NET_OTHER_FEE"/>
        <bm:field name="vat_other_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_OTHER_FEE" prompt="CON_CONTRACT.VAT_OTHER_FEE"/>
        <bm:field name="other_fee2" databaseType="NUMBER" datatype="java.lang.Double" physicalName="OTHER_FEE2" prompt="CON_CONTRACT.OTHER_FEE2"/>
        <bm:field name="net_other_fee2" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_OTHER_FEE2" prompt="CON_CONTRACT.NET_OTHER_FEE2"/>
        <bm:field name="vat_other_fee2" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_OTHER_FEE2" prompt="CON_CONTRACT.VAT_OTHER_FEE2"/>
        <bm:field name="other_fee3" databaseType="NUMBER" datatype="java.lang.Double" physicalName="OTHER_FEE3" prompt="CON_CONTRACT.OTHER_FEE3"/>
        <bm:field name="net_other_fee3" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NET_OTHER_FEE3" prompt="CON_CONTRACT.NET_OTHER_FEE3"/>
        <bm:field name="vat_other_fee3" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VAT_OTHER_FEE3" prompt="CON_CONTRACT.VAT_OTHER_FEE3"/>
        <bm:field name="other_payment" databaseType="NUMBER" datatype="java.lang.Double" physicalName="OTHER_PAYMENT" prompt="CON_CONTRACT.OTHER_PAYMENT"/>
        <bm:field name="other_payment2" databaseType="NUMBER" datatype="java.lang.Double" physicalName="OTHER_PAYMENT2" prompt="CON_CONTRACT.OTHER_PAYMENT2"/>
        <bm:field name="other_payment3" databaseType="NUMBER" datatype="java.lang.Double" physicalName="OTHER_PAYMENT3" prompt="CON_CONTRACT.OTHER_PAYMENT3"/>
        <bm:field name="rounding_object" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="ROUNDING_OBJECT" prompt="CON_CONTRACT.ROUNDING_OBJECT"/>
        <bm:field name="rounding_method" databaseType="NUMBER" datatype="java.lang.Long" physicalName="ROUNDING_METHOD" prompt="CON_CONTRACT.ROUNDING_METHOD"/>
        <bm:field name="int_rate_fixing_way" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="INT_RATE_FIXING_WAY" prompt="CON_CONTRACT.INT_RATE_FIXING_WAY"/>
        <bm:field name="int_rate_fixing_range" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INT_RATE_FIXING_RANGE" prompt="CON_CONTRACT.INT_RATE_FIXING_RANGE"/>
        <bm:field name="int_rate_display" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INT_RATE_DISPLAY" prompt="CON_CONTRACT.INT_RATE_DISPLAY"/>
        <bm:field name="base_rate_type" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="BASE_RATE_TYPE" prompt="CON_CONTRACT.BASE_RATE_TYPE"/>
        <bm:field name="base_rate" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BASE_RATE" prompt="CON_CONTRACT.BASE_RATE"/>
        <bm:field name="int_rate" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INT_RATE" prompt="CON_CONTRACT.INT_RATE"/>
        <bm:field name="int_rate_implicit" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INT_RATE_IMPLICIT" prompt="CON_CONTRACT.INT_RATE_IMPLICIT"/>
        <bm:field name="int_rate_type" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="INT_RATE_TYPE" prompt="CON_CONTRACT.INT_RATE_TYPE"/>
        <bm:field name="flt_rate_profile" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="FLT_RATE_PROFILE" prompt="CON_CONTRACT.FLT_RATE_PROFILE"/>
        <bm:field name="flt_rate_adj_method" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="FLT_RATE_ADJ_METHOD" prompt="CON_CONTRACT.FLT_RATE_ADJ_METHOD"/>
        <bm:field name="flt_simulate_step" databaseType="NUMBER" datatype="java.lang.Double" physicalName="FLT_SIMULATE_STEP" prompt="CON_CONTRACT.FLT_SIMULATE_STEP"/>
        <bm:field name="flt_simulate_range" databaseType="NUMBER" datatype="java.lang.Double" physicalName="FLT_SIMULATE_RANGE" prompt="CON_CONTRACT.FLT_SIMULATE_RANGE"/>
        <bm:field name="flt_unit_adj_amt" databaseType="NUMBER" datatype="java.lang.Double" physicalName="FLT_UNIT_ADJ_AMT" prompt="CON_CONTRACT.FLT_UNIT_ADJ_AMT"/>
        <bm:field name="flt_execute_times_rule" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="FLT_EXECUTE_TIMES_RULE" prompt="CON_CONTRACT.FLT_EXECUTE_TIMES_RULE"/>
        <bm:field name="flt_int_rate_adj_date" databaseType="DATE" datatype="java.util.Date" physicalName="FLT_INT_RATE_ADJ_DATE" prompt="CON_CONTRACT.FLT_INT_RATE_ADJ_DATE"/>
        <bm:field name="int_rate_precision" databaseType="NUMBER" datatype="java.lang.Long" physicalName="INT_RATE_PRECISION" prompt="CON_CONTRACT.INT_RATE_PRECISION"/>
        <bm:field name="irr" databaseType="NUMBER" datatype="java.lang.Double" physicalName="IRR" prompt="CON_CONTRACT.IRR"/>
        <bm:field name="irr_after_tax" databaseType="NUMBER" datatype="java.lang.Double" physicalName="IRR_AFTER_TAX" prompt="CON_CONTRACT.IRR_AFTER_TAX"/>
        <bm:field name="int_rate_implicit_after_tax" databaseType="NUMBER" datatype="java.lang.Double" physicalName="INT_RATE_IMPLICIT_AFTER_TAX" prompt="CON_CONTRACT.INT_RATE_IMPLICIT_AFTER_TAX"/>
        <bm:field name="irr_reserved1" databaseType="NUMBER" datatype="java.lang.Double" physicalName="IRR_RESERVED1" prompt="CON_CONTRACT.IRR_RESERVED1"/>
        <bm:field name="irr_reserved2" databaseType="NUMBER" datatype="java.lang.Double" physicalName="IRR_RESERVED2" prompt="CON_CONTRACT.IRR_RESERVED2"/>
        <bm:field name="irr_reserved3" databaseType="NUMBER" datatype="java.lang.Double" physicalName="IRR_RESERVED3" prompt="CON_CONTRACT.IRR_RESERVED3"/>
        <bm:field name="npv_using_cof" databaseType="NUMBER" datatype="java.lang.Double" physicalName="NPV_USING_COF" prompt="CON_CONTRACT.NPV_USING_COF"/>
        <bm:field name="pmt" databaseType="NUMBER" datatype="java.lang.Double" physicalName="PMT" prompt="CON_CONTRACT.PMT"/>
        <bm:field name="pmt_first" databaseType="NUMBER" datatype="java.lang.Double" physicalName="PMT_FIRST" prompt="CON_CONTRACT.PMT_FIRST"/>
        <bm:field name="annual_mean_rate" databaseType="NUMBER" datatype="java.lang.Double" physicalName="ANNUAL_MEAN_RATE" prompt="CON_CONTRACT.ANNUAL_MEAN_RATE"/>
        <bm:field name="total_salestax" databaseType="NUMBER" datatype="java.lang.Double" physicalName="TOTAL_SALESTAX" prompt="CON_CONTRACT.TOTAL_SALESTAX"/>
        <bm:field name="biz_day_convention" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="BIZ_DAY_CONVENTION" prompt="CON_CONTRACT.BIZ_DAY_CONVENTION"/>
        <bm:field name="calc_with_residual_value" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CALC_WITH_RESIDUAL_VALUE" prompt="CON_CONTRACT.CALC_WITH_RESIDUAL_VALUE"/>
        <bm:field name="exchange_rate_type" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="EXCHANGE_RATE_TYPE" prompt="CON_CONTRACT.EXCHANGE_RATE_TYPE"/>
        <bm:field name="exchange_rate_quotation" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="EXCHANGE_RATE_QUOTATION" prompt="CON_CONTRACT.EXCHANGE_RATE_QUOTATION"/>
        <bm:field name="exchange_rate" databaseType="NUMBER" datatype="java.lang.Double" physicalName="EXCHANGE_RATE" prompt="CON_CONTRACT.EXCHANGE_RATE"/>
        <bm:field name="penalty_profile" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="PENALTY_PROFILE" prompt="CON_CONTRACT.PENALTY_PROFILE"/>
        <bm:field name="grace_period" databaseType="NUMBER" datatype="java.lang.Double" physicalName="GRACE_PERIOD" prompt="CON_CONTRACT.GRACE_PERIOD"/>
        <bm:field name="penalty_rate" databaseType="NUMBER" datatype="java.lang.Double" physicalName="PENALTY_RATE" prompt="CON_CONTRACT.PENALTY_RATE"/>
        <bm:field name="penalty_calc_base" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="PENALTY_CALC_BASE" prompt="CON_CONTRACT.PENALTY_CALC_BASE"/>
        <bm:field name="penalty_total_base_ratio" databaseType="NUMBER" datatype="java.lang.Double" physicalName="PENALTY_TOTAL_BASE_RATIO" prompt="CON_CONTRACT.PENALTY_TOTAL_BASE_RATIO"/>
        <bm:field name="credit_write_off_order" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CREDIT_WRITE_OFF_ORDER" prompt="CON_CONTRACT.CREDIT_WRITE_OFF_ORDER"/>
        <bm:field name="fin_income_recognize_method" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="FIN_INCOME_RECOGNIZE_METHOD" prompt="CON_CONTRACT.FIN_INCOME_RECOGNIZE_METHOD"/>
        <bm:field name="early_termination_profile" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="EARLY_TERMINATION_PROFILE" prompt="CON_CONTRACT.EARLY_TERMINATION_PROFILE"/>
        <bm:field name="reschedule_profile" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="RESCHEDULE_PROFILE" prompt="CON_CONTRACT.RESCHEDULE_PROFILE"/>
        <bm:field name="contract_split_profile" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CONTRACT_SPLIT_PROFILE" prompt="CON_CONTRACT.CONTRACT_SPLIT_PROFILE"/>
        <bm:field name="repur_profile" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="REPUR_PROFILE" prompt="CON_CONTRACT.REPUR_PROFILE"/>
        <bm:field name="payment_method_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="PAYMENT_METHOD_ID" prompt="CON_CONTRACT.PAYMENT_METHOD_ID"/>
        <bm:field name="telex_transfer_bank_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="TELEX_TRANSFER_BANK_ID" prompt="CON_CONTRACT.TELEX_TRANSFER_BANK_ID"/>
        <bm:field name="tt_bank_branch_name" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="TT_BANK_BRANCH_NAME" prompt="CON_CONTRACT.TT_BANK_BRANCH_NAME"/>
        <bm:field name="tt_bank_account_num" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="TT_BANK_ACCOUNT_NUM" prompt="CON_CONTRACT.TT_BANK_ACCOUNT_NUM"/>
        <bm:field name="tt_bank_account_name" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="TT_BANK_ACCOUNT_NAME" prompt="CON_CONTRACT.TT_BANK_ACCOUNT_NAME"/>
        <bm:field name="tt_remark" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="TT_REMARK" prompt="CON_CONTRACT.TT_REMARK"/>
        <bm:field name="direct_debit_bank_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="DIRECT_DEBIT_BANK_ID" prompt="CON_CONTRACT.DIRECT_DEBIT_BANK_ID"/>
        <bm:field name="dd_bank_branch_name" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DD_BANK_BRANCH_NAME" prompt="CON_CONTRACT.DD_BANK_BRANCH_NAME"/>
        <bm:field name="dd_bank_account_num" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DD_BANK_ACCOUNT_NUM" prompt="CON_CONTRACT.DD_BANK_ACCOUNT_NUM"/>
        <bm:field name="dd_bank_account_name" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DD_BANK_ACCOUNT_NAME" prompt="CON_CONTRACT.DD_BANK_ACCOUNT_NAME"/>
        <bm:field name="dd_agreement_no" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DD_AGREEMENT_NO" prompt="CON_CONTRACT.DD_AGREEMENT_NO"/>
        <bm:field name="dd_agreement_status" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DD_AGREEMENT_STATUS" prompt="CON_CONTRACT.DD_AGREEMENT_STATUS"/>
        <bm:field name="dd_remark" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DD_REMARK" prompt="CON_CONTRACT.DD_REMARK"/>
        <bm:field name="purchase_order_no" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="PURCHASE_ORDER_NO" prompt="CON_CONTRACT.PURCHASE_ORDER_NO"/>
        <bm:field name="contract_status" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CONTRACT_STATUS" prompt="CON_CONTRACT.CONTRACT_STATUS"/>
        <bm:field name="contract_status_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select v.code_value_name from sys_code_values_v v where v.code = &apos;CON500_CONTRACT_STATUS&apos; and v.code_value = t1.contract_status)" forInsert="false" forUpdate="false"/>
        <bm:field name="user_status_1" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="USER_STATUS_1" prompt="CON_CONTRACT.USER_STATUS_1"/>
        <bm:field name="user_status_2" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="USER_STATUS_2" prompt="CON_CONTRACT.USER_STATUS_2"/>
        <bm:field name="user_status_3" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="USER_STATUS_3" prompt="CON_CONTRACT.USER_STATUS_3"/>
        <bm:field name="print_status" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="PRINT_STATUS" prompt="CON_CONTRACT.PRINT_STATUS"/>
        <bm:field name="print_times" databaseType="NUMBER" datatype="java.lang.Long" physicalName="PRINT_TIMES" prompt="CON_CONTRACT.PRINT_TIMES"/>
        <bm:field name="first_print_date" databaseType="DATE" datatype="java.util.Date" physicalName="FIRST_PRINT_DATE" prompt="CON_CONTRACT.FIRST_PRINT_DATE"/>
        <bm:field name="first_print_by" databaseType="NUMBER" datatype="java.lang.Long" physicalName="FIRST_PRINT_BY" prompt="CON_CONTRACT.FIRST_PRINT_BY"/>
        <bm:field name="delivery_status" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DELIVERY_STATUS" prompt="CON_CONTRACT.DELIVERY_STATUS"/>
        <bm:field name="delivery_date" databaseType="DATE" datatype="java.util.Date" physicalName="DELIVERY_DATE" prompt="CON_CONTRACT.DELIVERY_DATE"/>
        <bm:field name="billing_method" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="BILLING_METHOD" prompt="CON_CONTRACT.BILLING_METHOD"/>
        <bm:field name="billing_status" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="BILLING_STATUS" prompt="CON_CONTRACT.BILLING_STATUS"/>
        <bm:field name="signing_date" databaseType="DATE" datatype="java.util.Date" physicalName="SIGNING_DATE" prompt="CON_CONTRACT.SIGNING_DATE"/>
        <bm:field name="original_recall_date" databaseType="DATE" datatype="java.util.Date" physicalName="ORIGINAL_RECALL_DATE" prompt="CON_CONTRACT.ORIGINAL_RECALL_DATE"/>
        <bm:field name="lease_card_recall_date" databaseType="DATE" datatype="java.util.Date" physicalName="LEASE_CARD_RECALL_DATE" prompt="CON_CONTRACT.LEASE_CARD_RECALL_DATE"/>
        <bm:field name="early_termination_date" databaseType="DATE" datatype="java.util.Date" physicalName="EARLY_TERMINATION_DATE" prompt="CON_CONTRACT.EARLY_TERMINATION_DATE"/>
        <bm:field name="termination_date" databaseType="DATE" datatype="java.util.Date" physicalName="TERMINATION_DATE" prompt="CON_CONTRACT.TERMINATION_DATE"/>
        <bm:field name="assignment_agreement_no" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="ASSIGNMENT_AGREEMENT_NO" prompt="CON_CONTRACT.ASSIGNMENT_AGREEMENT_NO"/>
        <bm:field name="assignment_date" databaseType="DATE" datatype="java.util.Date" physicalName="ASSIGNMENT_DATE" prompt="CON_CONTRACT.ASSIGNMENT_DATE"/>
        <bm:field name="btb_payment_date" databaseType="DATE" datatype="java.util.Date" physicalName="BTB_PAYMENT_DATE" prompt="CON_CONTRACT.BTB_PAYMENT_DATE"/>
        <bm:field name="btb_int_rate" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_INT_RATE" prompt="CON_CONTRACT.BTB_INT_RATE"/>
        <bm:field name="btb_int_rate_implicit" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_INT_RATE_IMPLICIT" prompt="CON_CONTRACT.BTB_INT_RATE_IMPLICIT"/>
        <bm:field name="btb_finance_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_FINANCE_AMOUNT" prompt="CON_CONTRACT.BTB_FINANCE_AMOUNT"/>
        <bm:field name="btb_net_finance_amount" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_NET_FINANCE_AMOUNT" prompt="CON_CONTRACT.BTB_NET_FINANCE_AMOUNT"/>
        <bm:field name="btb_total_repayment" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_TOTAL_REPAYMENT" prompt="CON_CONTRACT.BTB_TOTAL_REPAYMENT"/>
        <bm:field name="btb_total_interest" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_TOTAL_INTEREST" prompt="CON_CONTRACT.BTB_TOTAL_INTEREST"/>
        <bm:field name="btb_total_fee_pv" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_TOTAL_FEE_PV" prompt="CON_CONTRACT.BTB_TOTAL_FEE_PV"/>
        <bm:field name="btb_total_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_TOTAL_FEE" prompt="CON_CONTRACT.BTB_TOTAL_FEE"/>
        <bm:field name="btb_finance_ratio" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_FINANCE_RATIO" prompt="CON_CONTRACT.BTB_FINANCE_RATIO"/>
        <bm:field name="btb_interest_margin" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_INTEREST_MARGIN" prompt="CON_CONTRACT.BTB_INTEREST_MARGIN"/>
        <bm:field name="btb_vat_interest" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_VAT_INTEREST" prompt="CON_CONTRACT.BTB_VAT_INTEREST"/>
        <bm:field name="btb_vat_fee" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_VAT_FEE" prompt="CON_CONTRACT.BTB_VAT_FEE"/>
        <bm:field name="btb_interest_after_tax" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_INTEREST_AFTER_TAX" prompt="CON_CONTRACT.BTB_INTEREST_AFTER_TAX"/>
        <bm:field name="btb_fee_after_tax" databaseType="NUMBER" datatype="java.lang.Double" physicalName="BTB_FEE_AFTER_TAX" prompt="CON_CONTRACT.BTB_FEE_AFTER_TAX"/>
        <bm:field name="hd_user_col_d01" databaseType="DATE" datatype="java.util.Date" physicalName="HD_USER_COL_D01" prompt="CON_CONTRACT.HD_USER_COL_D01"/>
        <bm:field name="hd_user_col_d02" databaseType="DATE" datatype="java.util.Date" physicalName="HD_USER_COL_D02" prompt="CON_CONTRACT.HD_USER_COL_D02"/>
        <bm:field name="hd_user_col_d03" databaseType="DATE" datatype="java.util.Date" physicalName="HD_USER_COL_D03" prompt="CON_CONTRACT.HD_USER_COL_D03"/>
        <bm:field name="hd_user_col_d04" databaseType="DATE" datatype="java.util.Date" physicalName="HD_USER_COL_D04" prompt="CON_CONTRACT.HD_USER_COL_D04"/>
        <bm:field name="hd_user_col_d05" databaseType="DATE" datatype="java.util.Date" physicalName="HD_USER_COL_D05" prompt="CON_CONTRACT.HD_USER_COL_D05"/>
        <bm:field name="hd_user_col_v01" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V01" prompt="CON_CONTRACT.HD_USER_COL_V01"/>
        <!-- <bm:field name="hd_user_col_v01_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select s.scope_name from by_con_contract_scope s where s.scope_code = t1.hd_user_col_v01)" forInsert="false" forUpdate="false"/> -->
        <bm:field name="registered_capital_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="decode((select &apos;N&apos; from dual where (SELECT SUM(c.finance_amount) FROM con_contract c WHERE c.contract_status = &apos;INCEPT&apos; AND t1.hd_user_col_v04 IN (&apos;03&apos;, &apos;04&apos;)) &gt; 5000000),&apos;N&apos;,&apos;否&apos;,&apos;是&apos;)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_v02" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V02" prompt="CON_CONTRACT.HD_USER_COL_V02"/>
        <bm:field name="hd_user_col_v02_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select v.code_value_name from sys_code_values_v v where v.code = &apos;BY_HLS_CON_GUARANT_MODE&apos; and v.code_value = t1.hd_user_col_v02)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_v03" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V03" prompt="CON_CONTRACT.HD_USER_COL_V03"/>
        <bm:field name="hd_user_col_v03_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select v.code_value_name from sys_code_values_v v where v.code = &apos;BY_HLS_CON_HOUSE_PROPERTY&apos; and v.code_value = t1.hd_user_col_v03)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_v04" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V04" prompt="CON_CONTRACT.HD_USER_COL_V04"/>
        <bm:field name="hd_user_col_v04_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select v.code_value_name from sys_code_values_v v where v.code = &apos;BY_HLS_BP_MASTER_SCAPE&apos; and v.code_value = t1.hd_user_col_v04)" forInsert="false" forUpdate="false"/>
        <bm:field name="bp_master_ref_v08" databaseType="VARCHAR2" datatype="java.lang.String" expression="(SELECT b.ref_v08 FROM con_contract a ,hls_bp_master b  where a.bp_id_tenant=b.bp_id and a.contract_id=t1.contract_id)" forInsert="false" forUpdate="false"/>
        <bm:field name="bp_master_ref_v09" databaseType="VARCHAR2" datatype="java.lang.String" expression="(SELECT b.ref_v09 FROM con_contract a ,hls_bp_master b  where a.bp_id_tenant=b.bp_id and a.contract_id=t1.contract_id)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_v05" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V05" prompt="CON_CONTRACT.HD_USER_COL_V05"/>
        <bm:field name="hd_user_col_v05_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="sys_code_pkg.get_sys_code_value_name(&apos;YES_NO&apos;,t1.hd_user_col_v05)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_v06" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V06" prompt="CON_CONTRACT.HD_USER_COL_V06"/>
        <bm:field name="hd_user_col_v06_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="sys_code_pkg.get_sys_code_value_name(&apos;CBRC702_AFFILIATED_PARTY_TYPE&apos;,t1.hd_user_col_v06)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_v07" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V07" prompt="CON_CONTRACT.HD_USER_COL_V07"/>
        <bm:field name="hd_user_col_v07_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="sys_code_pkg.get_sys_code_value_name(&apos;CBRC702_ASSOCIATED_TRANSACTION_TYPE&apos;,t1.hd_user_col_v07)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_v08" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V08" prompt="CON_CONTRACT.HD_USER_COL_V08"/>
        <bm:field name="hd_user_col_v09" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V09" prompt="CON_CONTRACT.HD_USER_COL_V09"/>
        <bm:field name="hd_user_col_v10" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="HD_USER_COL_V10" prompt="CON_CONTRACT.HD_USER_COL_V10"/>
        <bm:field name="hd_user_col_n01" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N01" prompt="CON_CONTRACT.HD_USER_COL_N01"/>
        <bm:field name="hd_user_col_n01_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select description from hls_stat_class c where c.class_usage = &apos;CONTRACT&apos; and c.class_id = t1.hd_user_col_n01)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n02" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N02" prompt="CON_CONTRACT.HD_USER_COL_N02"/>
        <bm:field name="hd_user_col_n02_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select description from hls_stat_class c where c.class_usage = &apos;CONTRACT&apos; and c.class_id = t1.hd_user_col_n02)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n03" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N03" prompt="CON_CONTRACT.HD_USER_COL_N03"/>
        <bm:field name="hd_user_col_n03_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select description from hls_stat_class c where c.class_usage = &apos;CONTRACT&apos; and c.class_id = t1.hd_user_col_n03)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n04" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N04" prompt="CON_CONTRACT.HD_USER_COL_N04"/>
        <bm:field name="hd_user_col_n04_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select c.description from hls_stat_class c where c.class_id = t1.hd_user_col_n04)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n05" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N05" prompt="CON_CONTRACT.HD_USER_COL_N05"/>
        <bm:field name="hd_user_col_n05_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select c.description from hls_stat_class c where c.class_id = t1.hd_user_col_n05)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n06" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N06" prompt="CON_CONTRACT.HD_USER_COL_N06"/>
        <bm:field name="hd_user_col_n06_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select c.description from hls_stat_class c where c.class_id = t1.hd_user_col_n06)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n07" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N07" prompt="CON_CONTRACT.HD_USER_COL_N07"/>
        <bm:field name="hd_user_col_n07_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select fp.description from fnd_province fp where fp.province_id = t1.hd_user_col_n07)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n08" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N08" prompt="CON_CONTRACT.HD_USER_COL_N08"/>
        <bm:field name="hd_user_col_n08_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select fct.description from fnd_city fct where fct.city_id = t1.hd_user_col_n08)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n09" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N09" prompt="CON_CONTRACT.HD_USER_COL_N09"/>
        <bm:field name="hd_user_col_n09_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select fd.description from fnd_district fd where fd.district_id = t1.hd_user_col_n09)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n10" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N10" prompt="CON_CONTRACT.HD_USER_COL_N10"/>
        <bm:field name="hd_user_col_n11" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N11" prompt="CON_CONTRACT.HD_USER_COL_N11"/>
        <bm:field name="hd_user_col_n12" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N12" prompt="CON_CONTRACT.HD_USER_COL_N12"/>
        <bm:field name="hd_user_col_n13" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N13" prompt="CON_CONTRACT.HD_USER_COL_N13"/>
        <bm:field name="hd_user_col_n14" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N14" prompt="CON_CONTRACT.HD_USER_COL_N14"/>
        <bm:field name="hd_user_col_n14_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select c.description from hls_stat_class c where c.class_id = t1.hd_user_col_n14)" forInsert="false" forUpdate="false"/>
        <bm:field name="hd_user_col_n15" databaseType="NUMBER" datatype="java.lang.Double" physicalName="HD_USER_COL_N15" prompt="CON_CONTRACT.HD_USER_COL_N15"/>
        <bm:field name="overdue_status" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="OVERDUE_STATUS" prompt="CON_CONTRACT.OVERDUE_STATUS"/>
        <bm:field name="overdue_max_days" databaseType="NUMBER" datatype="java.lang.Double" physicalName="OVERDUE_MAX_DAYS" prompt="CON_CONTRACT.OVERDUE_MAX_DAYS"/>
        <bm:field name="five_class_code" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="FIVE_CLASS_CODE" prompt="CON_CONTRACT.FIVE_CLASS_CODE"/>
        <bm:field name="five_class_code_n" databaseType="VARCHAR2" datatype="java.lang.String" expression="(select r.description from rsc_five_class_code r where t1.five_class_code = r.five_class_code)" forInsert="false" forUpdate="false"/>
        <bm:field name="main_business_income" databaseType="NUMBER" datatype="java.lang.Double" physicalName="MAIN_BUSINESS_INCOME" prompt="CON_CONTRACT.MAIN_BUSINESS_INCOME"/>
        <bm:field name="main_business_cost" databaseType="NUMBER" datatype="java.lang.Double" physicalName="MAIN_BUSINESS_COST" prompt="CON_CONTRACT.MAIN_BUSINESS_COST"/>
        <bm:field name="financing_cost" databaseType="NUMBER" datatype="java.lang.Double" physicalName="FINANCING_COST" prompt="CON_CONTRACT.FINANCING_COST"/>
        <bm:field name="calc_prompt" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CALC_PROMPT" prompt="CON_CONTRACT.CALC_PROMPT"/>
        <bm:field name="calc_prompt_msg" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CALC_PROMPT_MSG" prompt="CON_CONTRACT.CALC_PROMPT_MSG"/>
        <bm:field name="lease_item_price_agent" databaseType="NUMBER" datatype="java.lang.Double" physicalName="LEASE_ITEM_PRICE_AGENT" prompt="CON_CONTRACT.LEASE_ITEM_PRICE_AGENT"/>
        <bm:field name="flt_annual_adj_times" databaseType="NUMBER" datatype="java.lang.Long" physicalName="FLT_ANNUAL_ADJ_TIMES" prompt="CON_CONTRACT.FLT_ANNUAL_ADJ_TIMES"/>
        <bm:field name="flt_delay_execute_period" databaseType="NUMBER" datatype="java.lang.Double" physicalName="FLT_DELAY_EXECUTE_PERIOD" prompt="CON_CONTRACT.FLT_DELAY_EXECUTE_PERIOD"/>
        <bm:field name="flt_next_adj_date" databaseType="DATE" datatype="java.util.Date" physicalName="FLT_NEXT_ADJ_DATE" prompt="CON_CONTRACT.FLT_NEXT_ADJ_DATE"/>
        <bm:field name="version" databaseType="NUMBER" datatype="java.lang.Double" physicalName="VERSION" prompt="CON_CONTRACT.VERSION"/>
        <bm:field name="version_date" databaseType="DATE" datatype="java.util.Date" physicalName="VERSION_DATE" prompt="CON_CONTRACT.VERSION_DATE"/>
        <bm:field name="version_display" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="VERSION_DISPLAY" prompt="CON_CONTRACT.VERSION_DISPLAY"/>
        <bm:field name="version_external" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="VERSION_EXTERNAL" prompt="CON_CONTRACT.VERSION_EXTERNAL"/>
        <bm:field name="version_reason" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="VERSION_REASON" prompt="CON_CONTRACT.VERSION_REASON"/>
        <bm:field name="version_note" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="VERSION_NOTE" prompt="CON_CONTRACT.VERSION_NOTE"/>
        <bm:field name="data_class" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="DATA_CLASS" prompt="CON_CONTRACT.DATA_CLASS"/>
        <!-- <bm:field name="comp_province_desc" databaseType="VARCHAR2" datatype="java.lang.String" expression="(SELECT p.description FROM fnd_companies c,fnd_province  p WHERE c.company_id = t1.company_id AND c.province_id = p.province_id)" physicalName="COMP_PROVINCE_DESC"/> -->
        <bm:field name="lease_organization_desc" databaseType="VARCHAR2" datatype="java.lang.String"/>
        <bm:field name="document_category_desc" databaseType="VARCHAR2" datatype="java.lang.String"/>
        <bm:field name="document_type_desc" databaseType="VARCHAR2" datatype="java.lang.String"/>
    </bm:fields>
    <bm:operations>
        <bm:operation name="query">
            <bm:query-sql><![CDATA[
            select * from 
            (
            SELECT t.CONTRACT_ID,
			       t.CALC_SESSION_ID,
			       t.CONTRACT_NUMBER,
			       t.CONTRACT_NAME,
			       t.BUSINESS_TYPE,
			       (select bt.description
			          from hls_business_type bt
			         where bt.business_type = t.business_type) AS business_type_n,
			       t.DOCUMENT_TYPE,
			       t.DOCUMENT_CATEGORY,
			       t.PROJECT_ID,
			       (select m.project_name
			          from prj_project m
			         where m.project_id = t.project_id) AS project_name,
			       t.COMPANY_ID,
			       t.LEASE_ORGANIZATION,
			       t.LEASE_CHANNEL,
			       t.DIVISION,
			       t.BP_ID_TENANT,
			       (select m.bp_code
			          from hls_bp_master m
			         where m.bp_id = t.bp_id_tenant) AS bp_id_tenant_n,
			       (select m.bp_name
			          from hls_bp_master m
			         where m.bp_id = t.bp_id_tenant) AS bp_name,
			       t.BP_ID_AGENT_LEVEL1,
			       t.BP_ID_AGENT_LEVEL2,
			       t.BP_ID_AGENT_LEVEL3,
			       t.OWNER_USER_ID,
			       t.EMPLOYEE_ID,
			       (select e.name
			          from exp_employees e
			         where e.employee_id = t.employee_id) AS employee_name,
			       t.UNIT_ID,
			       (select u.description
			          from exp_org_unit_vl u
			         where u.unit_id = t.unit_id) AS unit_name,
			       t.EMPLOYEE_ID_OF_MANAGER,
			       (select e.name
			          from exp_employees e
			         where e.employee_id = t.employee_id_of_manager) AS employee_name_of_manager,
			       t.SEARCH_TERM_1,
			       t.SEARCH_TERM_2,
			       t.FACTORING_TYPE,
			       t.DESCRIPTION,
			       t.PRICE_LIST,
			       t.CALC_METHOD,
			       t.CDD_LIST_ID,
			       t.INCEPTION_OF_LEASE,
			       t.LEASE_START_DATE,
			       t.FIRST_PAY_DATE,
			       t.LAST_PAY_DATE,
			       t.LEASE_END_DATE,
			       t.LEASE_TIMES,
			       t.PAY_TIMES,
			       t.ANNUAL_PAY_TIMES,
			       t.LEASE_TERM,
			       t.PAY_TYPE,
			       t.CURRENCY,
			       t.CURRENCY_PRECISION,
			       t.MACHINERY_AMOUNT,
			       t.PARTS_AMOUNT,
			       t.LEASE_ITEM_AMOUNT,
			       t.NET_LEASE_ITEM_AMOUNT,
			       t.VAT_INPUT,
			       t.LEASE_ITEM_COST,
			       t.DOWN_PAYMENT_RATIO,
			       t.DOWN_PAYMENT,
			       t.NET_DOWN_PAYMENT,
			       t.VAT_DOWN_PAYMENT,
			       t.FINANCE_AMOUNT,
			       t.NET_FINANCE_AMOUNT,
			       t.VAT_FINANCE_AMOUNT,
			       t.ACTUAL_FINANCE_AMOUNT,
			       t.TOTAL_RENTAL,
			       t.NET_TOTAL_RENTAL,
			       t.VAT_TOTAL_RENTAL,
			       t.TOTAL_INTEREST,
			       t.NET_TOTAL_INTEREST,
			       t.VAT_TOTAL_INTEREST,
			       t.TOTAL_FEE,
			       t.NET_TOTAL_FEE,
			       t.VAT_TOTAL_FEE,
			       t.FINANCE_INCOME,
			       t.NET_FINANCE_INCOME,
			       t.VAT_FINANCE_INCOME,
			       t.CONTRACT_AMOUNT,
			       t.TAX_TYPE_ID,
			       t.VAT_FLAG,
			       t.VAT_RATE,
			       t.LEASE_CHARGE_RATIO,
			       t.LEASE_CHARGE,
			       t.NET_LEASE_CHARGE,
			       t.VAT_LEASE_CHARGE,
			       t.LEASE_MGT_FEE_RATIO,
			       t.LEASE_MGT_FEE,
			       t.NET_LEASE_MGT_FEE,
			       t.VAT_LEASE_MGT_FEE,
			       t.LEASE_MGT_FEE_RULE,
			       t.DEPOSIT_RATIO,
			       t.DEPOSIT,
			       t.DEPOSIT_DEDUCTION,
			       t.RESIDUAL_RATIO,
			       t.RESIDUAL_VALUE,
			       t.NET_RESIDUAL_VALUE,
			       t.VAT_RESIDUAL_VALUE,
			       t.BALLOON_RATIO,
			       t.BALLOON,
			       t.NET_BALLOON,
			       t.VAT_BALLOON,
			       t.INTERIM_RENT_PERIOD,
			       t.INTERIM_TIMES,
			       t.INTERIM_RENTAL,
			       t.NET_INTERIM_RENTAL,
			       t.VAT_INTERIM_RENTAL,
			       t.INSURANCE_RATE,
			       t.INSURANCE_FEE,
			       t.NET_INSURANCE_FEE,
			       t.VAT_INSURANCE_FEE,
			       t.INSURANCE_FEE_PAYABLE,
			       t.NOTARIAL_FEE,
			       t.NET_NOTARIAL_FEE,
			       t.VAT_NOTARIAL_FEE,
			       t.NOTARIAL_FEE_PAYABLE,
			       t.COMMISSION_RECEIVABLE,
			       t.NET_COMMISSION_RECEIVABLE,
			       t.VAT_COMMISSION_RECEIVABLE,
			       t.COMMISSION_PAYABLE,
			       t.THIRD_PARTY_DEPOSIT,
			       t.PROMISE_TO_PAY,
			       t.OTHER_FEE,
			       t.NET_OTHER_FEE,
			       t.VAT_OTHER_FEE,
			       t.OTHER_FEE2,
			       t.NET_OTHER_FEE2,
			       t.VAT_OTHER_FEE2,
			       t.OTHER_FEE3,
			       t.NET_OTHER_FEE3,
			       t.VAT_OTHER_FEE3,
			       t.OTHER_PAYMENT,
			       t.OTHER_PAYMENT2,
			       t.OTHER_PAYMENT3,
			       t.ROUNDING_OBJECT,
			       t.ROUNDING_METHOD,
			       t.INT_RATE_FIXING_WAY,
			       t.INT_RATE_FIXING_RANGE,
			       t.INT_RATE_DISPLAY,
			       t.BASE_RATE_TYPE,
			       t.BASE_RATE,
			       t.INT_RATE,
			       t.INT_RATE_IMPLICIT,
			       t.INT_RATE_TYPE,
			       t.FLT_RATE_PROFILE,
			       t.FLT_RATE_ADJ_METHOD,
			       t.FLT_SIMULATE_STEP,
			       t.FLT_SIMULATE_RANGE,
			       t.FLT_UNIT_ADJ_AMT,
			       t.FLT_EXECUTE_TIMES_RULE,
			       t.FLT_INT_RATE_ADJ_DATE,
			       t.INT_RATE_PRECISION,
			       t.IRR,
			       t.IRR_AFTER_TAX,
			       t.INT_RATE_IMPLICIT_AFTER_TAX,
			       t.IRR_RESERVED1,
			       t.IRR_RESERVED2,
			       t.IRR_RESERVED3,
			       t.NPV_USING_COF,
			       t.PMT,
			       t.PMT_FIRST,
			       t.ANNUAL_MEAN_RATE,
			       t.TOTAL_SALESTAX,
			       t.BIZ_DAY_CONVENTION,
			       t.CALC_WITH_RESIDUAL_VALUE,
			       t.EXCHANGE_RATE_TYPE,
			       t.EXCHANGE_RATE_QUOTATION,
			       t.EXCHANGE_RATE,
			       t.PENALTY_PROFILE,
			       t.GRACE_PERIOD,
			       t.PENALTY_RATE,
			       t.PENALTY_CALC_BASE,
			       t.PENALTY_TOTAL_BASE_RATIO,
			       t.CREDIT_WRITE_OFF_ORDER,
			       t.FIN_INCOME_RECOGNIZE_METHOD,
			       t.EARLY_TERMINATION_PROFILE,
			       t.RESCHEDULE_PROFILE,
			       t.CONTRACT_SPLIT_PROFILE,
			       t.REPUR_PROFILE,
			       t.PAYMENT_METHOD_ID,
			       t.TELEX_TRANSFER_BANK_ID,
			       t.TT_BANK_BRANCH_NAME,
			       t.TT_BANK_ACCOUNT_NUM,
			       t.TT_BANK_ACCOUNT_NAME,
			       t.TT_REMARK,
			       t.DIRECT_DEBIT_BANK_ID,
			       t.DD_BANK_BRANCH_NAME,
			       t.DD_BANK_ACCOUNT_NUM,
			       t.DD_BANK_ACCOUNT_NAME,
			       t.DD_AGREEMENT_NO,
			       t.DD_AGREEMENT_STATUS,
			       t.DD_REMARK,
			       t.PURCHASE_ORDER_NO,
			       t.CONTRACT_STATUS,
			       (select v.code_value_name
			          from sys_code_values_v v
			         where v.code = 'CON500_CONTRACT_STATUS'
			           and v.code_value = t.contract_status) AS contract_status_n,
			       t.USER_STATUS_1,
			       t.USER_STATUS_2,
			       t.USER_STATUS_3,
			       t.PRINT_STATUS,
			       t.PRINT_TIMES,
			       t.FIRST_PRINT_DATE,
			       t.FIRST_PRINT_BY,
			       t.DELIVERY_STATUS,
			       t.DELIVERY_DATE,
			       t.BILLING_METHOD,
			       t.BILLING_STATUS,
			       t.SIGNING_DATE,
			       t.ORIGINAL_RECALL_DATE,
			       t.LEASE_CARD_RECALL_DATE,
			       t.EARLY_TERMINATION_DATE,
			       t.TERMINATION_DATE,
			       t.ASSIGNMENT_AGREEMENT_NO,
			       t.ASSIGNMENT_DATE,
			       t.BTB_PAYMENT_DATE,
			       t.BTB_INT_RATE,
			       t.BTB_INT_RATE_IMPLICIT,
			       t.BTB_FINANCE_AMOUNT,
			       t.BTB_NET_FINANCE_AMOUNT,
			       t.BTB_TOTAL_REPAYMENT,
			       t.BTB_TOTAL_INTEREST,
			       t.BTB_TOTAL_FEE_PV,
			       t.BTB_TOTAL_FEE,
			       t.BTB_FINANCE_RATIO,
			       t.BTB_INTEREST_MARGIN,
			       t.BTB_VAT_INTEREST,
			       t.BTB_VAT_FEE,
			       t.BTB_INTEREST_AFTER_TAX,
			       t.BTB_FEE_AFTER_TAX,
			       t.HD_USER_COL_D01,
			       t.HD_USER_COL_D02,
			       t.HD_USER_COL_D03,
			       t.HD_USER_COL_D04,
			       t.HD_USER_COL_D05,
			       t.HD_USER_COL_V01,
			       /* (select s.scope_name
			          from by_con_contract_scope s
			         where s.scope_code = t.hd_user_col_v01) AS hd_user_col_v01_n, */
			       decode((select 'N'
			                from dual
			               where (SELECT SUM(c.finance_amount)
			                        FROM con_contract c
			                       WHERE c.contract_status = 'INCEPT'
			                         AND t.hd_user_col_v04 IN ('03', '04')) > 5000000),
			              'N',
			              '否',
			              '是') AS registered_capital_n,
			       t.HD_USER_COL_V02,
			       (select v.code_value_name
			          from sys_code_values_v v
			         where v.code = 'BY_HLS_CON_GUARANT_MODE'
			           and v.code_value = t.hd_user_col_v02) AS hd_user_col_v02_n,
			       t.HD_USER_COL_V03,
			       (select v.code_value_name
			          from sys_code_values_v v
			         where v.code = 'BY_HLS_CON_HOUSE_PROPERTY'
			           and v.code_value = t.hd_user_col_v03) AS hd_user_col_v03_n,
			       t.HD_USER_COL_V04,
			       (select v.code_value_name
			          from sys_code_values_v v
			         where v.code = 'BY_HLS_BP_MASTER_SCAPE'
			           and v.code_value = t.hd_user_col_v04) AS hd_user_col_v04_n,
			       (SELECT b.ref_v08
			          FROM con_contract a, hls_bp_master b
			         where a.bp_id_tenant = b.bp_id
			           and a.contract_id = t.contract_id) AS bp_master_ref_v08,
			       (SELECT b.ref_v09
			          FROM con_contract a, hls_bp_master b
			         where a.bp_id_tenant = b.bp_id
			           and a.contract_id = t.contract_id) AS bp_master_ref_v09,
			       t.HD_USER_COL_V05,
			       sys_code_pkg.get_sys_code_value_name('YES_NO', t.hd_user_col_v05) AS hd_user_col_v05_n,
			       t.HD_USER_COL_V06,
			       sys_code_pkg.get_sys_code_value_name('CBRC702_AFFILIATED_PARTY_TYPE',
			                                            t.hd_user_col_v06) AS hd_user_col_v06_n,
			       t.HD_USER_COL_V07,
			       sys_code_pkg.get_sys_code_value_name('CBRC702_ASSOCIATED_TRANSACTION_TYPE',
			                                            t.hd_user_col_v07) AS hd_user_col_v07_n,
			       t.HD_USER_COL_V08,
			       t.HD_USER_COL_V09,
			       t.HD_USER_COL_V10,
			       t.HD_USER_COL_N01,
			       (select description
			          from hls_stat_class c
			         where c.class_usage = 'CONTRACT'
			           and c.class_id = t.hd_user_col_n01) AS hd_user_col_n01_n,
			       t.HD_USER_COL_N02,
			       (select description
			          from hls_stat_class c
			         where c.class_usage = 'CONTRACT'
			           and c.class_id = t.hd_user_col_n02) AS hd_user_col_n02_n,
			       t.HD_USER_COL_N03,
			       (select description
			          from hls_stat_class c
			         where c.class_usage = 'CONTRACT'
			           and c.class_id = t.hd_user_col_n03) AS hd_user_col_n03_n,
			       t.HD_USER_COL_N04,
			       (select c.description
			          from hls_stat_class c
			         where c.class_id = t.hd_user_col_n04) AS hd_user_col_n04_n,
			       t.HD_USER_COL_N05,
			       (select c.description
			          from hls_stat_class c
			         where c.class_id = t.hd_user_col_n05) AS hd_user_col_n05_n,
			       t.HD_USER_COL_N06,
			       (select c.description
			          from hls_stat_class c
			         where c.class_id = t.hd_user_col_n06) AS hd_user_col_n06_n,
			       t.HD_USER_COL_N07,
			       (select fp.description
			          from fnd_province fp
			         where fp.province_id = t.hd_user_col_n07) AS hd_user_col_n07_n,
			       t.HD_USER_COL_N08,
			       (select fct.description
			          from fnd_city fct
			         where fct.city_id = t.hd_user_col_n08) AS hd_user_col_n08_n,
			       t.HD_USER_COL_N09,
			       (select fd.description
			          from fnd_district fd
			         where fd.district_id = t.hd_user_col_n09) AS hd_user_col_n09_n,
			       t.HD_USER_COL_N10,
			       t.HD_USER_COL_N11,
			       t.HD_USER_COL_N12,
			       t.HD_USER_COL_N13,
			       t.HD_USER_COL_N14,
			       (select c.description
			          from hls_stat_class c
			         where c.class_id = t.hd_user_col_n14) AS hd_user_col_n14_n,
			       t.HD_USER_COL_N15,
			       t.OVERDUE_STATUS,
			       t.OVERDUE_MAX_DAYS,
			       t.FIVE_CLASS_CODE,
			       (select r.description
			          from rsc_five_class_code r
			         where t.five_class_code = r.five_class_code) AS five_class_code_n,
			       t.MAIN_BUSINESS_INCOME,
			       t.MAIN_BUSINESS_COST,
			       t.FINANCING_COST,
			       t.CALC_PROMPT,
			       t.CALC_PROMPT_MSG,
			       t.LEASE_ITEM_PRICE_AGENT,
			       t.FLT_ANNUAL_ADJ_TIMES,
			       t.FLT_DELAY_EXECUTE_PERIOD,
			       t.FLT_NEXT_ADJ_DATE,
			       t.VERSION,
			       t.VERSION_DATE,
			       t.VERSION_DISPLAY,
			       t.VERSION_EXTERNAL,
			       t.VERSION_REASON,
			       t.VERSION_NOTE,
			       t.DATA_CLASS,
			       /* (SELECT p.description
			          FROM fnd_companies c, fnd_province p
			         WHERE c.company_id = t.company_id
			           AND c.province_id = p.province_id) AS comp_province_desc, */
			        (select ca.description
          			   from hls_document_category ca
                      where ca.document_category = t.document_category) as document_category_desc,
                    (select dt.description
        		       from hls_document_type dt
          			  where dt.document_type = t.document_type) as document_type_desc,
			        (select o.description
         			   from hls_lease_organization o
       				  where o.lease_organization = t.lease_organization) as lease_organization_desc
			  FROM CON_CONTRACT t
			 WHERE t.document_category = 'CONTRACT'
			   and t.data_class='NORMAL'
			   and t.contract_status ='INCEPT'
			   and t.hd_user_col_v03 <>'FIXED'
			   and  t.price_list = 'FREE_CF_CAL_HN'
			            ) t1
               #WHERE_CLAUSE#
                                    ]]></bm:query-sql>
            <bm:parameters>
                <bm:parameter inputPath="/session/@company_id"/>
            </bm:parameters>
        </bm:operation>
    </bm:operations>
    <bm:primary-key>
        <bm:pk-field name="contract_id"/>
    </bm:primary-key>
    <bm:query-fields>
        <bm:query-field field="contract_id" queryOperator="="/>
        <bm:query-field field="contract_name" queryOperator="like"/>
        <bm:query-field field="bp_id_tenant" queryOperator="="/>
        <bm:query-field field="bp_name" queryOperator="like"/>
        <bm:query-field field="project_id" queryOperator="="/>
        <bm:query-field field="employee_id_of_manager" queryOperator="="/>
        <bm:query-field field="lease_organization" queryOperator="="/>
        <bm:query-field name="lease_start_date_from" queryExpression=" trunc(t1.lease_start_date) &gt;= to_date(${@lease_start_date_from},&apos;yyyy-mm-dd&apos;)"/>
        <bm:query-field name="lease_start_date_to" queryExpression=" trunc(t1.lease_start_date) &lt;= to_date(${@lease_start_date_to},&apos;yyyy-mm-dd&apos;)"/>
    </bm:query-fields>
    <bm:data-filters>
        <bm:data-filter enforceOperations="query" expression="t1.document_category=&apos;CONTRACT&apos;"/>
    </bm:data-filters>
</bm:model>
