1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?xml version="1.0" encoding="UTF-8"?>
<bm:model xmlns:bm="http://www.leaf-framework.org/schema/bm">
<bm:operations>
<bm:operation name="query">
<bm:query-sql><![CDATA[
SELECT
t.project_number,
t.contract_number,
t.bp_id_tenant_n,
t.contract_status_n,
t.contract_status,
t.creation_date,
t.contract_id
FROM
con_contract_lv t #WHERE_CLAUSE#
]]></bm:query-sql>
</bm:operation>
</bm:operations>
<bm:fields>
<bm:field name="project_number" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="PROJECT_NUMBER"/>
<bm:field name="contract_number" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CONTRACT_NUMBER"/>
<bm:field name="bp_id_tenant_n" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="BP_ID_TENANT_N"/>
<bm:field name="contract_status_n" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CONTRACT_STATUS_N"/>
<bm:field name="contract_status" databaseType="VARCHAR2" datatype="java.lang.String" physicalName="CONTRACT_STATUS" required="true"/>
<bm:field name="contract_id" databaseType="NUMBER" datatype="java.lang.Long" physicalName="CONTRACT_ID" required="true"/>
<bm:field name="creation_date" databaseType="DATE" datatype="java.util.Date" physicalName="CREATION_DATE"/>
</bm:fields>
<bm:data-filters>
<bm:data-filter name="data_class" enforceOperations="query" expression="t.data_class='NORMAL'"/>
<bm:data-filter name="user_id" enforceOperations="query" expression="exists (select 1 from aut_trx_user_authorize a1, aut_owner_user_authorize a2 where a1.trx_category = 'CONTRACT' and a1.trx_id = t.contract_id and trunc(sysdate) between a1.start_date and nvl(a1.end_date, trunc(sysdate)) and a1.user_id = a2.owner_user_id and a1.trx_category = a2.trx_category and a2.authorized_user_id = nvl(${/session/@user_id},${@user_id}) and trunc(sysdate) between a2.start_date and nvl(a2.end_date, trunc(sysdate)))"/>
</bm:data-filters>
<bm:query-fields>
<bm:query-field field="project_number" matchany="true" queryOperator="like"/>
<bm:query-field field="contract_number" matchany="true" queryOperator="like"/>
<bm:query-field field="bp_id_tenant_n" matchany="true" queryOperator="like"/>
<bm:query-field field="contract_status" queryOperator="="/>
<bm:query-field field="creation_date" queryExpression="trunc(t.creation_date) = to_date(${@creation_date},'yyyy-mm-dd')"/>
</bm:query-fields>
</bm:model>