This commit is contained in:
r.gaztdinov 2025-08-19 17:06:41 +03:00
parent aee4854a8c
commit 88b66f4624
12 changed files with 1498 additions and 314 deletions

View file

@ -40,31 +40,51 @@
<to>Abort</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>Table output</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table output</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table output</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Table output</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table output</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Abort</name>
@ -82,8 +102,8 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1376</xloc>
<yloc>512</yloc>
<xloc>1472</xloc>
<yloc>832</yloc>
</GUI>
</transform>
<transform>
@ -117,8 +137,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>512</yloc>
<xloc>1472</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1632</xloc>
<yloc>160</yloc>
<xloc>1952</xloc>
<yloc>512</yloc>
</GUI>
</transform>
<transform>
@ -177,8 +197,8 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
</sql>
<attributes/>
<GUI>
<xloc>288</xloc>
<yloc>320</yloc>
<xloc>432</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
@ -194,8 +214,8 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
</partitioning>
<attributes/>
<GUI>
<xloc>1632</xloc>
<yloc>320</yloc>
<xloc>1696</xloc>
<yloc>512</yloc>
</GUI>
</transform>
<transform>
@ -230,8 +250,43 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>160</yloc>
<xloc>1696</xloc>
<yloc>608</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_appealing_violations_fz53</aggregate>
<subject>has_appealing_violations_fz53</subject>
<type>MAX</type>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>832</xloc>
<yloc>512</yloc>
</GUI>
</transform>
<transform>
@ -248,15 +303,15 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>752</xloc>
<yloc>320</yloc>
<xloc>1024</xloc>
<yloc>512</yloc>
</GUI>
</transform>
<transform>
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -281,11 +336,15 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
END AS result_appeal, -- код рассмотрения
ad.commission_name AS name_commission, -- наименование комиссии, принявшей решение
ad.reason_for_add_entry AS grounds, -- основание для внесения записи
ad.hidden --has_appealing_violations_fz53
ad.hidden,
CASE
WHEN ad.hidden is false THEN 1
ELSE 0
END AS has_appealing_violations_fz53
FROM public.appeal_document_dto ad
JOIN public.recruit r ON r.id = ad.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
AND '${M_R_CR_DATE}' >= ad.created_at
AND '${M_R_CR_DATE}' >= ad.create_date
--AND '${INFRINGEMENT_DATE}'::timestamp &lt;= coalesce(ad.updated_at, ad.created_at) -- для дельты
--WHERE hidden IS FALSE
@ -293,15 +352,15 @@ ${LIMIT_FW}</sql>
<variables_active>Y</variables_active>
<attributes/>
<GUI>
<xloc>496</xloc>
<yloc>320</yloc>
<xloc>640</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
<name>Table output</name>
<type>TableOutput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -367,8 +426,68 @@ ${LIMIT_FW}</sql>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>320</yloc>
<xloc>832</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_appealing_violations_fz53</name>
<rename>has_appealing_violations_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1472</xloc>
<yloc>512</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_appealing_violations_fz53</field_name>
<formula_string>has_appealing_violations_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>512</yloc>
</GUI>
</transform>
<transform_error_handling>
@ -384,6 +503,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -25,11 +25,6 @@
<to>Table input</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Detect empty stream</from>
<to>Change job status on success</to>
@ -46,23 +41,48 @@
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<from>Insert / update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Insert / update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Filter rows</to>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Change job status on error</to>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
</order>
@ -82,8 +102,8 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1168</xloc>
<yloc>400</yloc>
<xloc>1360</xloc>
<yloc>384</yloc>
</GUI>
</transform>
<transform>
@ -117,8 +137,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>944</xloc>
<yloc>400</yloc>
<xloc>1360</xloc>
<yloc>224</yloc>
</GUI>
</transform>
<transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>64</yloc>
<xloc>1728</xloc>
<yloc>144</yloc>
</GUI>
</transform>
<transform>
@ -197,8 +217,8 @@ and recruitment_id = '${IDM_ID}';</sql>
</partitioning>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>224</yloc>
<xloc>1552</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
@ -233,7 +253,42 @@ and recruitment_id = '${IDM_ID}';</sql>
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>944</xloc>
<xloc>1472</xloc>
<yloc>144</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_appealing_violations_fz53</aggregate>
<subject>has_appealing_violations_fz53</subject>
<type>MAX</type>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>720</xloc>
<yloc>64</yloc>
</GUI>
</transform>
@ -251,15 +306,15 @@ and recruitment_id = '${IDM_ID}';</sql>
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>736</xloc>
<yloc>224</yloc>
<xloc>912</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
<name>Insert / update</name>
<type>InsertUpdate</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -335,7 +390,7 @@ and recruitment_id = '${IDM_ID}';</sql>
<update_bypassed>N</update_bypassed>
<attributes/>
<GUI>
<xloc>944</xloc>
<xloc>720</xloc>
<yloc>224</yloc>
</GUI>
</transform>
@ -343,7 +398,7 @@ and recruitment_id = '${IDM_ID}';</sql>
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -368,7 +423,11 @@ and recruitment_id = '${IDM_ID}';</sql>
END AS result_appeal, -- код рассмотрения
ad.commission_name AS name_commission, -- наименование комиссии, принявшей решение
ad.reason_for_add_entry AS grounds, -- основание для внесения записи
ad.hidden --has_appealing_violations_fz53
ad.hidden,
CASE
WHEN ad.hidden is false THEN 1
ELSE 0
END AS has_appealing_violations_fz53
FROM public.appeal_document_dto ad
JOIN public.recruit r ON r.id = ad.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
@ -384,6 +443,66 @@ ${LIMIT_FW}</sql>
<yloc>224</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_appealing_violations_fz53</name>
<rename>has_appealing_violations_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1360</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_appealing_violations_fz53</field_name>
<formula_string>has_appealing_violations_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1136</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform_error_handling>
<error>
<source_transform>Insert / update</source_transform>
@ -397,6 +516,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -25,11 +25,6 @@
<to>Table input</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Filter rows</from>
<to>Change job status on success</to>
@ -46,25 +41,50 @@
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<from>Insert / update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Insert / update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Abort</name>
@ -82,8 +102,8 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>400</yloc>
<xloc>1328</xloc>
<yloc>368</yloc>
</GUI>
</transform>
<transform>
@ -117,8 +137,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>960</xloc>
<yloc>400</yloc>
<xloc>1328</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1440</xloc>
<yloc>48</yloc>
<xloc>1792</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
@ -212,8 +232,8 @@ DO UPDATE SET
</partitioning>
<attributes/>
<GUI>
<xloc>1440</xloc>
<yloc>208</yloc>
<xloc>1520</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
@ -248,8 +268,43 @@ DO UPDATE SET
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>960</xloc>
<yloc>48</yloc>
<xloc>1536</xloc>
<yloc>176</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_appealing_violations_fz53</aggregate>
<subject>has_appealing_violations_fz53</subject>
<type>MAX</type>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>688</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
@ -266,8 +321,8 @@ DO UPDATE SET
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>720</xloc>
<yloc>208</yloc>
<xloc>880</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
@ -350,7 +405,7 @@ DO UPDATE SET
<update_bypassed>N</update_bypassed>
<attributes/>
<GUI>
<xloc>960</xloc>
<xloc>688</xloc>
<yloc>208</yloc>
</GUI>
</transform>
@ -358,7 +413,7 @@ DO UPDATE SET
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -383,11 +438,15 @@ DO UPDATE SET
END AS result_appeal, -- код рассмотрения
ad.commission_name AS name_commission, -- наименование комиссии, принявшей решение
ad.reason_for_add_entry AS grounds, -- основание для внесения записи
ad.hidden --has_appealing_violations_fz53
ad.hidden,
CASE
WHEN ad.hidden is false THEN 1
ELSE 0
END AS has_appealing_violations_fz53
FROM public.appeal_document_dto ad
JOIN public.recruit r ON r.id = ad.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
AND '${M_R_CR_DATE}' >= ad.created_at
AND '${M_R_CR_DATE}' >= ad.create_date
--AND '${INFRINGEMENT_DATE}'::timestamp &lt;= coalesce(ad.updated_at, ad.created_at) -- для дельты
--WHERE hidden IS FALSE
@ -399,6 +458,66 @@ ${LIMIT_FW}</sql>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_appealing_violations_fz53</name>
<rename>has_appealing_violations_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1328</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_appealing_violations_fz53</field_name>
<formula_string>has_appealing_violations_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1104</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform_error_handling>
<error>
<source_transform>Insert / update</source_transform>
@ -412,6 +531,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -73,7 +73,7 @@
<sql>SELECT EXISTS (
SELECT 1
FROM etl.job_execution
WHERE job_name = 'recruits_info_job'
WHERE job_name = 'citizen_criminal_liability_fz53_job'
limit 1
) AS job_executed_flag;</sql>
<variables_active>N</variables_active>

View file

@ -40,31 +40,51 @@
<to>Abort</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>Table output</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table output</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table output</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Table output</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table output</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Abort</name>
@ -82,8 +102,8 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1376</xloc>
<yloc>512</yloc>
<xloc>1536</xloc>
<yloc>832</yloc>
</GUI>
</transform>
<transform>
@ -117,8 +137,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>512</yloc>
<xloc>1536</xloc>
<yloc>640</yloc>
</GUI>
</transform>
<transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1632</xloc>
<yloc>160</yloc>
<xloc>1952</xloc>
<yloc>496</yloc>
</GUI>
</transform>
<transform>
@ -177,8 +197,8 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
</sql>
<attributes/>
<GUI>
<xloc>288</xloc>
<yloc>320</yloc>
<xloc>496</xloc>
<yloc>640</yloc>
</GUI>
</transform>
<transform>
@ -194,8 +214,8 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
</partitioning>
<attributes/>
<GUI>
<xloc>1632</xloc>
<yloc>320</yloc>
<xloc>1728</xloc>
<yloc>496</yloc>
</GUI>
</transform>
<transform>
@ -230,8 +250,43 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>160</yloc>
<xloc>1728</xloc>
<yloc>608</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_criminal_liability_fz53</aggregate>
<subject>has_criminal_liability_fz53</subject>
<type>MAX</type>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>896</xloc>
<yloc>496</yloc>
</GUI>
</transform>
<transform>
@ -248,15 +303,15 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>752</xloc>
<yloc>320</yloc>
<xloc>1088</xloc>
<yloc>496</yloc>
</GUI>
</transform>
<transform>
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -289,8 +344,11 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
WHEN i.decision_reason = '2' THEN 'Уклонение от прохождения альтернативной гражданской службы лиц, освобожденных от военной службы'
ELSE null
END AS decision_reason, -- Причины уголовного наказания в связи с фз53
i.hidden
--has_criminal_liability_fz53
i.hidden,
CASE
WHEN i.hidden is false THEN 1
ELSE 0
END AS has_criminal_liability_fz53
FROM public.infringement i
JOIN public.recruit r ON r.id = i.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
@ -303,8 +361,8 @@ ${LIMIT_FW}</sql>
<variables_active>Y</variables_active>
<attributes/>
<GUI>
<xloc>496</xloc>
<yloc>320</yloc>
<xloc>704</xloc>
<yloc>640</yloc>
</GUI>
</transform>
<transform>
@ -385,8 +443,68 @@ ${LIMIT_FW}</sql>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>320</yloc>
<xloc>896</xloc>
<yloc>640</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_criminal_liability_fz53</name>
<rename>has_criminal_liability_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1536</xloc>
<yloc>496</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_liability_fz53</field_name>
<formula_string>has_criminal_liability_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1312</xloc>
<yloc>496</yloc>
</GUI>
</transform>
<transform_error_handling>
@ -402,6 +520,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -25,11 +25,6 @@
<to>Table input</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Detect empty stream</from>
<to>Change job status on success</to>
@ -46,23 +41,48 @@
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<from>Insert / update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Insert / update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Filter rows</to>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Change job status on error</to>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
</order>
@ -82,8 +102,8 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1168</xloc>
<yloc>400</yloc>
<xloc>1360</xloc>
<yloc>704</yloc>
</GUI>
</transform>
<transform>
@ -117,8 +137,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>944</xloc>
<yloc>400</yloc>
<xloc>1360</xloc>
<yloc>528</yloc>
</GUI>
</transform>
<transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>64</yloc>
<xloc>1744</xloc>
<yloc>384</yloc>
</GUI>
</transform>
<transform>
@ -180,8 +200,8 @@ where job_name = '${JOB_NAME}'
and recruitment_id = '${IDM_ID}';</sql>
<attributes/>
<GUI>
<xloc>336</xloc>
<yloc>224</yloc>
<xloc>384</xloc>
<yloc>528</yloc>
</GUI>
</transform>
<transform>
@ -197,8 +217,8 @@ and recruitment_id = '${IDM_ID}';</sql>
</partitioning>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>224</yloc>
<xloc>1520</xloc>
<yloc>384</yloc>
</GUI>
</transform>
<transform>
@ -233,26 +253,8 @@ and recruitment_id = '${IDM_ID}';</sql>
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>944</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
<name>Identify last row in a stream</name>
<type>DetectLastRow</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>736</xloc>
<yloc>224</yloc>
<xloc>1520</xloc>
<yloc>480</yloc>
</GUI>
</transform>
<transform>
@ -273,11 +275,13 @@ and recruitment_id = '${IDM_ID}';</sql>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
<name2/>
</key>
<key>
<condition>=</condition>
<field>created_at</field>
<name>created_at</name>
<name2/>
</key>
<schema>ervu_dashboard</schema>
<table>citizen_criminal_liability_fz53</table>
@ -345,15 +349,15 @@ and recruitment_id = '${IDM_ID}';</sql>
<update_bypassed>N</update_bypassed>
<attributes/>
<GUI>
<xloc>944</xloc>
<yloc>224</yloc>
<xloc>720</xloc>
<yloc>528</yloc>
</GUI>
</transform>
<transform>
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -386,8 +390,11 @@ and recruitment_id = '${IDM_ID}';</sql>
WHEN i.decision_reason = '2' THEN 'Уклонение от прохождения альтернативной гражданской службы лиц, освобожденных от военной службы'
ELSE null
END AS decision_reason, -- Причины уголовного наказания в связи с фз53
i.hidden
--has_criminal_liability_fz53
i.hidden,
CASE
WHEN i.hidden is false THEN 1
ELSE 0
END AS has_criminal_liability_fz53
FROM public.infringement i
JOIN public.recruit r ON r.id = i.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
@ -400,8 +407,121 @@ ${LIMIT_FW}</sql>
<variables_active>Y</variables_active>
<attributes/>
<GUI>
<xloc>544</xloc>
<yloc>224</yloc>
<xloc>592</xloc>
<yloc>528</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_criminal_liability_fz53</aggregate>
<subject>has_criminal_liability_fz53</subject>
<type>MAX</type>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>720</xloc>
<yloc>384</yloc>
</GUI>
</transform>
<transform>
<name>Identify last row in a stream</name>
<type>DetectLastRow</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>912</xloc>
<yloc>384</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_criminal_liability_fz53</field_name>
<formula_string>has_criminal_liability_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1136</xloc>
<yloc>384</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_criminal_liability_fz53</name>
<rename>has_criminal_liability_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1360</xloc>
<yloc>384</yloc>
</GUI>
</transform>
<transform_error_handling>
@ -417,6 +537,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -25,11 +25,6 @@
<to>Table input</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Filter rows</from>
<to>Change job status on success</to>
@ -46,23 +41,48 @@
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<from>Insert / update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Insert / update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Filter rows</to>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Change job status on error</to>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
</order>
@ -82,8 +102,8 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>400</yloc>
<xloc>1296</xloc>
<yloc>432</yloc>
</GUI>
</transform>
<transform>
@ -117,8 +137,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>960</xloc>
<yloc>400</yloc>
<xloc>1296</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1440</xloc>
<yloc>48</yloc>
<xloc>1824</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
@ -212,8 +232,8 @@ DO UPDATE SET
</partitioning>
<attributes/>
<GUI>
<xloc>1440</xloc>
<yloc>208</yloc>
<xloc>1536</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
@ -248,26 +268,8 @@ DO UPDATE SET
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>960</xloc>
<yloc>48</yloc>
</GUI>
</transform>
<transform>
<name>Identify last row in a stream</name>
<type>DetectLastRow</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>720</xloc>
<yloc>208</yloc>
<xloc>1536</xloc>
<yloc>176</yloc>
</GUI>
</transform>
<transform>
@ -360,7 +362,7 @@ DO UPDATE SET
<update_bypassed>N</update_bypassed>
<attributes/>
<GUI>
<xloc>960</xloc>
<xloc>656</xloc>
<yloc>208</yloc>
</GUI>
</transform>
@ -368,7 +370,7 @@ DO UPDATE SET
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -401,8 +403,11 @@ DO UPDATE SET
WHEN i.decision_reason = '2' THEN 'Уклонение от прохождения альтернативной гражданской службы лиц, освобожденных от военной службы'
ELSE null
END AS decision_reason, -- Причины уголовного наказания в связи с фз53
i.hidden
--has_criminal_liability_fz53
i.hidden,
CASE
WHEN i.hidden is false THEN 1
ELSE 0
END AS has_criminal_liability_fz53
FROM public.infringement i
JOIN public.recruit r ON r.id = i.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
@ -419,6 +424,123 @@ ${LIMIT_FW}</sql>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_criminal_liability_fz53</aggregate>
<subject>has_criminal_liability_fz53</subject>
<type>MAX</type>
<valuefield/>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<linenr_fieldname/>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>656</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
<name>Identify last row in a stream</name>
<type>DetectLastRow</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>848</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_criminal_liability_fz53</field_name>
<formula_string>has_criminal_liability_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1072</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<ignore_flag_field/>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
<name2/>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_criminal_liability_fz53</name>
<rename>has_criminal_liability_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1296</xloc>
<yloc>64</yloc>
</GUI>
</transform>
<transform_error_handling>
<error>
<source_transform>Insert / update</source_transform>
@ -432,6 +554,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -73,7 +73,7 @@
<sql>SELECT EXISTS (
SELECT 1
FROM etl.job_execution
WHERE job_name = 'recruits_info_job'
WHERE job_name = 'citizen_liability_fz53_job'
limit 1
) AS job_executed_flag;</sql>
<variables_active>N</variables_active>

View file

@ -342,7 +342,7 @@
<height>150</height>
<xloc>1200</xloc>
<yloc>80</yloc>
<note>recruits_info_job
<note>citizen_liability_fz53_job
M_R_UP_DATE
@ -351,7 +351,7 @@ M_R_CR_DATE
0001-01-01 00:00:00
3001-01-01 00:00:00</note>
<width>114</width>
<width>136</width>
</notepad>
</notepads>
<attributes/>

View file

@ -40,21 +40,6 @@
<to>Abort</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>Table output</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table output</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table output</from>
<to>Change job status on error</to>
@ -62,9 +47,44 @@
</hop>
<hop>
<from>Table output</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Table output</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Abort</name>
@ -82,8 +102,8 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1376</xloc>
<yloc>512</yloc>
<xloc>1360</xloc>
<yloc>1056</yloc>
</GUI>
</transform>
<transform>
@ -117,8 +137,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>512</yloc>
<xloc>1360</xloc>
<yloc>832</yloc>
</GUI>
</transform>
<transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1632</xloc>
<yloc>160</yloc>
<xloc>1808</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
@ -177,8 +197,8 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
</sql>
<attributes/>
<GUI>
<xloc>288</xloc>
<yloc>320</yloc>
<xloc>320</xloc>
<yloc>832</yloc>
</GUI>
</transform>
<transform>
@ -194,8 +214,8 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
</partitioning>
<attributes/>
<GUI>
<xloc>1632</xloc>
<yloc>320</yloc>
<xloc>1584</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
@ -230,8 +250,45 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>160</yloc>
<xloc>1584</xloc>
<yloc>768</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_liability_fz53</aggregate>
<subject>has_liability_fz53</subject>
<type>MAX</type>
<valuefield/>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<linenr_fieldname/>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>720</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
@ -248,15 +305,15 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>752</xloc>
<yloc>320</yloc>
<xloc>912</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -291,8 +348,11 @@ VALUES (DEFAULT, '${JOB_NAME}', 'PROCESSING', DEFAULT, null, '${IDM_ID}');
WHEN i.extra_info->>'punishment' = '2' THEN 'Административный штраф'
ELSE NULL
END AS type_punishment, -- вид наказания
i.hidden
--has_liability_fz53
i.hidden,
CASE
WHEN i.hidden is false THEN 1
ELSE 0
END AS has_liability_fz53
FROM public.infringement i
JOIN public.recruit r ON r.id = i.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
@ -305,8 +365,8 @@ ${LIMIT_FW}</sql>
<variables_active>Y</variables_active>
<attributes/>
<GUI>
<xloc>496</xloc>
<yloc>320</yloc>
<xloc>512</xloc>
<yloc>832</yloc>
</GUI>
</transform>
<transform>
@ -403,8 +463,70 @@ ${LIMIT_FW}</sql>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1024</xloc>
<yloc>320</yloc>
<xloc>720</xloc>
<yloc>832</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_liability_fz53</field_name>
<formula_string>has_liability_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1136</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<ignore_flag_field/>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
<name2/>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_liability_fz53</name>
<rename>has_liability_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1360</xloc>
<yloc>656</yloc>
</GUI>
</transform>
<transform_error_handling>
@ -420,6 +542,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -25,11 +25,6 @@
<to>Table input</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Detect empty stream</from>
<to>Change job status on success</to>
@ -46,22 +41,47 @@
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<from>Insert / update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Insert / update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Filter rows</to>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
@ -82,8 +102,8 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1168</xloc>
<yloc>400</yloc>
<xloc>1520</xloc>
<yloc>560</yloc>
</GUI>
</transform>
<transform>
@ -117,7 +137,7 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>944</xloc>
<xloc>1520</xloc>
<yloc>400</yloc>
</GUI>
</transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>64</yloc>
<xloc>1920</xloc>
<yloc>240</yloc>
</GUI>
</transform>
<transform>
@ -180,8 +200,8 @@ where job_name = '${JOB_NAME}'
and recruitment_id = '${IDM_ID}';</sql>
<attributes/>
<GUI>
<xloc>336</xloc>
<yloc>224</yloc>
<xloc>416</xloc>
<yloc>400</yloc>
</GUI>
</transform>
<transform>
@ -197,8 +217,8 @@ and recruitment_id = '${IDM_ID}';</sql>
</partitioning>
<attributes/>
<GUI>
<xloc>1248</xloc>
<yloc>224</yloc>
<xloc>1712</xloc>
<yloc>240</yloc>
</GUI>
</transform>
<transform>
@ -233,8 +253,43 @@ and recruitment_id = '${IDM_ID}';</sql>
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>944</xloc>
<yloc>64</yloc>
<xloc>1712</xloc>
<yloc>336</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_liability_fz53</aggregate>
<subject>has_liability_fz53</subject>
<type>MAX</type>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>880</xloc>
<yloc>240</yloc>
</GUI>
</transform>
<transform>
@ -251,8 +306,8 @@ and recruitment_id = '${IDM_ID}';</sql>
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>736</xloc>
<yloc>224</yloc>
<xloc>1072</xloc>
<yloc>240</yloc>
</GUI>
</transform>
<transform>
@ -365,15 +420,15 @@ and recruitment_id = '${IDM_ID}';</sql>
<update_bypassed>N</update_bypassed>
<attributes/>
<GUI>
<xloc>944</xloc>
<yloc>224</yloc>
<xloc>880</xloc>
<yloc>400</yloc>
</GUI>
</transform>
<transform>
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -382,6 +437,7 @@ and recruitment_id = '${IDM_ID}';</sql>
</partitioning>
<connection>postgres.decision-document-service</connection>
<execute_each_row>N</execute_each_row>
<limit/>
<sql>SELECT
i.recruit_id,
i.created_at,
@ -407,8 +463,11 @@ and recruitment_id = '${IDM_ID}';</sql>
WHEN i.extra_info->>'punishment' = '2' THEN 'Административный штраф'
ELSE NULL
END AS type_punishment, -- вид наказания
i.hidden
--has_liability_fz53
i.hidden,
CASE
WHEN i.hidden is false THEN 1
ELSE 0
END AS has_liability_fz53
FROM public.infringement i
JOIN public.recruit r ON r.id = i.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
@ -421,8 +480,68 @@ ${LIMIT_FW}</sql>
<variables_active>Y</variables_active>
<attributes/>
<GUI>
<xloc>544</xloc>
<yloc>224</yloc>
<xloc>624</xloc>
<yloc>400</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_liability_fz53</name>
<rename>has_liability_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1520</xloc>
<yloc>240</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_liability_fz53</field_name>
<formula_string>has_liability_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1296</xloc>
<yloc>240</yloc>
</GUI>
</transform>
<transform_error_handling>
@ -438,6 +557,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>

View file

@ -25,16 +25,6 @@
<to>Table input</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Filter rows</from>
<to>Change job status on success</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Detect empty stream</from>
<to>Change job status on success</to>
@ -46,23 +36,53 @@
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<from>Insert / update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input</from>
<to>Insert / update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Filter rows</to>
<from>Group by</from>
<to>Identify last row in a stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Identify last row in a stream</from>
<to>User defined Java expression</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>User defined Java expression</from>
<to>Update</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Group by</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Change job status on error</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Update</from>
<to>Detect empty stream</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Insert / update</from>
<to>Change job status on error</to>
<from>Update</from>
<to>Filter rows</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Filter rows</from>
<to>Change job status on success</to>
<enabled>Y</enabled>
</hop>
</order>
@ -82,7 +102,7 @@
<row_threshold>0</row_threshold>
<attributes/>
<GUI>
<xloc>1248</xloc>
<xloc>1312</xloc>
<yloc>400</yloc>
</GUI>
</transform>
@ -117,8 +137,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>960</xloc>
<yloc>400</yloc>
<xloc>1312</xloc>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
@ -148,8 +168,8 @@ and recruitment_id = '${IDM_ID}';
</sql>
<attributes/>
<GUI>
<xloc>1440</xloc>
<yloc>48</yloc>
<xloc>1872</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
@ -212,8 +232,8 @@ DO UPDATE SET
</partitioning>
<attributes/>
<GUI>
<xloc>1440</xloc>
<yloc>208</yloc>
<xloc>1584</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
@ -248,8 +268,43 @@ DO UPDATE SET
<send_true_to>Change job status on success</send_true_to>
<attributes/>
<GUI>
<xloc>960</xloc>
<yloc>48</yloc>
<xloc>1584</xloc>
<yloc>176</yloc>
</GUI>
</transform>
<transform>
<name>Group by</name>
<type>GroupBy</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<add_linenr>N</add_linenr>
<all_rows>N</all_rows>
<directory>${java.io.tmpdir}</directory>
<fields>
<field>
<aggregate>has_liability_fz53</aggregate>
<subject>has_liability_fz53</subject>
<type>MAX</type>
</field>
</fields>
<give_back_row>N</give_back_row>
<group>
<field>
<name>recruit_id</name>
</field>
</group>
<ignore_aggregate>N</ignore_aggregate>
<prefix>grp</prefix>
<attributes/>
<GUI>
<xloc>672</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
@ -266,8 +321,8 @@ DO UPDATE SET
<resultfieldname>last_row</resultfieldname>
<attributes/>
<GUI>
<xloc>720</xloc>
<yloc>208</yloc>
<xloc>864</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
@ -380,7 +435,7 @@ DO UPDATE SET
<update_bypassed>N</update_bypassed>
<attributes/>
<GUI>
<xloc>960</xloc>
<xloc>672</xloc>
<yloc>208</yloc>
</GUI>
</transform>
@ -388,7 +443,7 @@ DO UPDATE SET
<name>Table input</name>
<type>TableInput</type>
<description/>
<distribute>N</distribute>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
@ -423,8 +478,11 @@ DO UPDATE SET
WHEN i.extra_info->>'punishment' = '2' THEN 'Административный штраф'
ELSE NULL
END AS type_punishment, -- вид наказания
i.hidden
--has_liability_fz53
i.hidden,
CASE
WHEN i.hidden is false THEN 1
ELSE 0
END AS has_liability_fz53
FROM public.infringement i
JOIN public.recruit r ON r.id = i.recruit_id AND '${IDM_ID}' != '' -- Проверка на пустую строку
AND COALESCE(r.current_recruitment, r.target_recruitment) = '${IDM_ID}'
@ -441,6 +499,66 @@ ${LIMIT_FW}</sql>
<yloc>208</yloc>
</GUI>
</transform>
<transform>
<name>Update</name>
<type>Update</type>
<description/>
<distribute>N</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<commit>100</commit>
<connection>ervu-dashboard</connection>
<error_ignored>Y</error_ignored>
<lookup>
<key>
<condition>=</condition>
<field>recruit_id</field>
<name>recruit_id</name>
</key>
<schema>ervu_dashboard</schema>
<table>citizen</table>
<value>
<name>has_liability_fz53</name>
<rename>has_liability_fz53</rename>
</value>
</lookup>
<skip_lookup>N</skip_lookup>
<use_batch>Y</use_batch>
<attributes/>
<GUI>
<xloc>1312</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform>
<name>User defined Java expression</name>
<type>Janino</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<formula>
<field_name>has_liability_fz53</field_name>
<formula_string>has_liability_fz53 == 1</formula_string>
<value_type>Boolean</value_type>
<value_length>-1</value_length>
<value_precision>-1</value_precision>
<replace_field/>
</formula>
<attributes/>
<GUI>
<xloc>1088</xloc>
<yloc>80</yloc>
</GUI>
</transform>
<transform_error_handling>
<error>
<source_transform>Insert / update</source_transform>
@ -454,6 +572,18 @@ ${LIMIT_FW}</sql>
<max_pct_errors/>
<min_pct_rows/>
</error>
<error>
<source_transform>Update</source_transform>
<target_transform>Change job status on error</target_transform>
<is_enabled>Y</is_enabled>
<nr_valuename/>
<descriptions_valuename/>
<fields_valuename/>
<codes_valuename/>
<max_errors/>
<max_pct_errors/>
<min_pct_rows/>
</error>
</transform_error_handling>
<attributes/>
</pipeline>