ervu-dashboard-etl/mappings/region/total_registered.marital_status(reg).hpl

848 lines
22 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<pipeline>
<info>
<name>total_registered.marital_status(reg)</name>
<name_sync_with_filename>Y</name_sync_with_filename>
<description/>
<extended_description/>
<pipeline_version/>
<pipeline_type>Normal</pipeline_type>
<pipeline_status>0</pipeline_status>
<directory>/</directory>
<parameters>
</parameters>
<capture_transform_performance>N</capture_transform_performance>
<transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
<transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
<created_user>-</created_user>
<created_date>2024/08/02 11:56:22.507</created_date>
<modified_user>-</modified_user>
<modified_date>2024/08/02 11:56:22.507</modified_date>
<key_for_session_key>H4sIAAAAAAAAAAMAAAAAAAAAAAA=</key_for_session_key>
<is_key_private>N</is_key_private>
</info>
<notepads>
</notepads>
<order>
<hop>
<from>Get variables 3 2</from>
<to>Select values 3 2</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Get variables 3 2 2</from>
<to>Select values 3 2 2</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input (person_registry) регионы/все</from>
<to>Get variables 3 2</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Get variables 3 2 2 2</from>
<to>Select values 3 2 2 2</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input (person_registry) регионы/мужчины</from>
<to>Get variables 3 2 2</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Table input (person_registry) регионы/женщины</from>
<to>Get variables 3 2 2 2</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Select values 3 2</from>
<to>Insert / update (total_registered.marital_status) </to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Select values 3 2 2</from>
<to>Insert / update (total_registered.marital_status) 2</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Select values 3 2 2 2</from>
<to>Insert / update (total_registered.marital_status) 3</to>
<enabled>Y</enabled>
</hop>
</order>
<transform>
<name>Get variables 3 2</name>
<type>GetVariable</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<field>
<name>REG_ID</name>
<variable/>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
</field>
<field>
<name>VK_ARRAY</name>
<variable/>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
</field>
</fields>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>672</xloc>
<yloc>192</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Get variables 3 2 2</name>
<type>GetVariable</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<field>
<name>REG_ID</name>
<variable/>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
</field>
<field>
<name>VK_ARRAY</name>
<variable/>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
</field>
</fields>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>672</xloc>
<yloc>352</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Get variables 3 2 2 2</name>
<type>GetVariable</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<field>
<name>REG_ID</name>
<variable/>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
</field>
<field>
<name>VK_ARRAY</name>
<variable/>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<trim_type>none</trim_type>
</field>
</fields>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>672</xloc>
<yloc>512</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Insert / update (total_registered.marital_status) </name>
<type>InsertUpdate</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<commit>100</commit>
<update_bypassed>Y</update_bypassed>
<lookup>
<schema>total_registered</schema>
<table>marital_status</table>
<key>
<name>REG_ID</name>
<field>recruitment_id</field>
<condition>=</condition>
<name2/>
</key>
<value>
<name>married</name>
<rename>married</rename>
<update>Y</update>
</value>
<value>
<name>not_married</name>
<rename>not_married</rename>
<update>Y</update>
</value>
<value>
<name>married_percent</name>
<rename>married_percent</rename>
<update>Y</update>
</value>
<value>
<name>not_married_percent</name>
<rename>not_married_percent</rename>
<update>Y</update>
</value>
<value>
<name>"all_M_W"</name>
<rename>gender</rename>
<update>N</update>
</value>
<value>
<name>recruitment_id</name>
<rename>recruitment_id</rename>
<update>N</update>
</value>
<value>
<name>marital_status</name>
<rename>total</rename>
<update>Y</update>
</value>
</lookup>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>1072</xloc>
<yloc>192</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Insert / update (total_registered.marital_status) 2</name>
<type>InsertUpdate</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<commit>100</commit>
<update_bypassed>Y</update_bypassed>
<lookup>
<schema>total_registered</schema>
<table>marital_status</table>
<key>
<name>REG_ID</name>
<field>recruitment_id</field>
<condition>=</condition>
<name2/>
</key>
<value>
<name>married</name>
<rename>married</rename>
<update>Y</update>
</value>
<value>
<name>not_married</name>
<rename>not_married</rename>
<update>Y</update>
</value>
<value>
<name>married_percent</name>
<rename>married_percent</rename>
<update>Y</update>
</value>
<value>
<name>not_married_percent</name>
<rename>not_married_percent</rename>
<update>Y</update>
</value>
<value>
<name>"all_M_W"</name>
<rename>gender</rename>
<update>N</update>
</value>
<value>
<name>recruitment_id</name>
<rename>recruitment_id</rename>
<update>N</update>
</value>
<value>
<name>marital_status</name>
<rename>total</rename>
<update>Y</update>
</value>
</lookup>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>1072</xloc>
<yloc>352</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Insert / update (total_registered.marital_status) 3</name>
<type>InsertUpdate</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu-dashboard</connection>
<commit>100</commit>
<update_bypassed>Y</update_bypassed>
<lookup>
<schema>total_registered</schema>
<table>marital_status</table>
<key>
<name>REG_ID</name>
<field>recruitment_id</field>
<condition>=</condition>
<name2/>
</key>
<value>
<name>married</name>
<rename>married</rename>
<update>Y</update>
</value>
<value>
<name>not_married</name>
<rename>not_married</rename>
<update>Y</update>
</value>
<value>
<name>married_percent</name>
<rename>married_percent</rename>
<update>Y</update>
</value>
<value>
<name>not_married_percent</name>
<rename>not_married_percent</rename>
<update>Y</update>
</value>
<value>
<name>"all_M_W"</name>
<rename>gender</rename>
<update>N</update>
</value>
<value>
<name>recruitment_id</name>
<rename>recruitment_id</rename>
<update>N</update>
</value>
<value>
<name>marital_status</name>
<rename>total</rename>
<update>Y</update>
</value>
</lookup>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>1072</xloc>
<yloc>512</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Select values 3 2</name>
<type>SelectValues</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<select_unspecified>N</select_unspecified>
<meta>
<name>REG_ID</name>
<rename>REG_ID</rename>
<type>String</type>
<length>-2</length>
<precision>-2</precision>
<conversion_mask/>
<date_format_lenient>false</date_format_lenient>
<date_format_locale/>
<date_format_timezone/>
<lenient_string_to_number>false</lenient_string_to_number>
<encoding/>
<decimal_symbol/>
<grouping_symbol/>
<currency_symbol/>
<storage_type/>
</meta>
<meta>
<name>VK_ARRAY</name>
<rename>VK_ARRAY</rename>
<type>String</type>
<length>-2</length>
<precision>-2</precision>
<conversion_mask/>
<date_format_lenient>false</date_format_lenient>
<date_format_locale/>
<date_format_timezone/>
<lenient_string_to_number>false</lenient_string_to_number>
<encoding/>
<decimal_symbol/>
<grouping_symbol/>
<currency_symbol/>
<storage_type/>
</meta>
</fields>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>816</xloc>
<yloc>192</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Select values 3 2 2</name>
<type>SelectValues</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<select_unspecified>N</select_unspecified>
<meta>
<name>REG_ID</name>
<rename>REG_ID</rename>
<type>String</type>
<length>-2</length>
<precision>-2</precision>
<conversion_mask/>
<date_format_lenient>false</date_format_lenient>
<date_format_locale/>
<date_format_timezone/>
<lenient_string_to_number>false</lenient_string_to_number>
<encoding/>
<decimal_symbol/>
<grouping_symbol/>
<currency_symbol/>
<storage_type/>
</meta>
<meta>
<name>VK_ARRAY</name>
<rename>VK_ARRAY</rename>
<type>String</type>
<length>-2</length>
<precision>-2</precision>
<conversion_mask/>
<date_format_lenient>false</date_format_lenient>
<date_format_locale/>
<date_format_timezone/>
<lenient_string_to_number>false</lenient_string_to_number>
<encoding/>
<decimal_symbol/>
<grouping_symbol/>
<currency_symbol/>
<storage_type/>
</meta>
</fields>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>816</xloc>
<yloc>352</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Select values 3 2 2 2</name>
<type>SelectValues</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<select_unspecified>N</select_unspecified>
<meta>
<name>REG_ID</name>
<rename>REG_ID</rename>
<type>String</type>
<length>-2</length>
<precision>-2</precision>
<conversion_mask/>
<date_format_lenient>false</date_format_lenient>
<date_format_locale/>
<date_format_timezone/>
<lenient_string_to_number>false</lenient_string_to_number>
<encoding/>
<decimal_symbol/>
<grouping_symbol/>
<currency_symbol/>
<storage_type/>
</meta>
<meta>
<name>VK_ARRAY</name>
<rename>VK_ARRAY</rename>
<type>String</type>
<length>-2</length>
<precision>-2</precision>
<conversion_mask/>
<date_format_lenient>false</date_format_lenient>
<date_format_locale/>
<date_format_timezone/>
<lenient_string_to_number>false</lenient_string_to_number>
<encoding/>
<decimal_symbol/>
<grouping_symbol/>
<currency_symbol/>
<storage_type/>
</meta>
</fields>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>816</xloc>
<yloc>512</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Table input (person_registry) регионы/все</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu_person_registry</connection>
<sql>SELECT
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('Вдова/Вдовец', 'В разводе')
OR ri.info->'svedSemPolozh'->'semPolozhNaim' IS NULL
)
END AS not_married,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('В браке')
)
END AS married,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*)
END AS total,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' OR COUNT(*) = 0 THEN 0
ELSE ROUND(
COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('Вдова/Вдовец', 'В разводе')
OR ri.info->'svedSemPolozh'->'semPolozhNaim' IS NULL
) * 100.0 / COUNT(*), 2
)
END AS not_married_percent,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' OR COUNT(*) = 0 THEN 0
ELSE ROUND(
COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('В браке')
) * 100.0 / COUNT(*), 2
)
END AS married_percent,
'ALL' AS gender,
'${REG_ID}' AS recruitment_id
FROM
public.recruits r
JOIN
public.recruits_info ri ON ri.recruit_id = r.id
WHERE
r.vu_current_info->>'isMilitaryRegistered' = 'true'
AND r.current_recruitment_id IS NOT NULL
AND (
'${VK_ARRAY}' IS NULL
OR '${VK_ARRAY}' = ''
OR r.target_recruitment_id = ANY (
string_to_array(
trim(both '{}' FROM replace('${VK_ARRAY}', ' ', '')), ','
)::uuid[]
)
);
</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>Y</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>448</xloc>
<yloc>192</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Table input (person_registry) регионы/женщины</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu_person_registry</connection>
<sql>SELECT
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('Вдова/Вдовец', 'В разводе')
OR ri.info->'svedSemPolozh'->'semPolozhNaim' IS NULL
)
END AS not_married,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('В браке')
)
END AS married,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*)
END AS total,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' OR COUNT(*) = 0 THEN 0
ELSE ROUND(
COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('Вдова/Вдовец', 'В разводе')
OR ri.info->'svedSemPolozh'->'semPolozhNaim' IS NULL
) * 100.0 / COUNT(*), 2
)
END AS not_married_percent,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' OR COUNT(*) = 0 THEN 0
ELSE ROUND(
COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('В браке')
) * 100.0 / COUNT(*), 2
)
END AS married_percent,
'W' AS gender,
'${REG_ID}' AS recruitment_id
FROM
public.recruits r
JOIN
public.recruits_info ri ON ri.recruit_id = r.id
WHERE
r.vu_current_info->>'isMilitaryRegistered' = 'true'
AND r.gender = 'FEMALE'
AND r.current_recruitment_id IS NOT NULL
AND (
'${VK_ARRAY}' IS NULL
OR '${VK_ARRAY}' = ''
OR r.target_recruitment_id = ANY (
string_to_array(
trim(both '{}' FROM replace('${VK_ARRAY}', ' ', '')), ','
)::uuid[]
)
);
</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>Y</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>432</xloc>
<yloc>512</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform>
<name>Table input (person_registry) регионы/мужчины</name>
<type>TableInput</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<connection>ervu_person_registry</connection>
<sql>SELECT
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('Вдова/Вдовец', 'В разводе')
OR ri.info->'svedSemPolozh'->'semPolozhNaim' IS NULL
)
END AS not_married,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('В браке')
)
END AS married,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' THEN 0
ELSE COUNT(*)
END AS total,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' OR COUNT(*) = 0 THEN 0
ELSE ROUND(
COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('Вдова/Вдовец', 'В разводе')
OR ri.info->'svedSemPolozh'->'semPolozhNaim' IS NULL
) * 100.0 / COUNT(*), 2
)
END AS not_married_percent,
CASE
WHEN '${VK_ARRAY}' IS NULL OR '${VK_ARRAY}' = '' OR COUNT(*) = 0 THEN 0
ELSE ROUND(
COUNT(*) FILTER (
WHERE
ri.info->'svedSemPolozh'->>'semPolozhNaim' IN ('В браке')
) * 100.0 / COUNT(*), 2
)
END AS married_percent,
'M' AS gender,
'${REG_ID}' AS recruitment_id
FROM
public.recruits r
JOIN
public.recruits_info ri ON ri.recruit_id = r.id
WHERE
r.vu_current_info->>'isMilitaryRegistered' = 'true'
AND r.gender = 'MALE'
AND r.current_recruitment_id IS NOT NULL
AND (
'${VK_ARRAY}' IS NULL
OR '${VK_ARRAY}' = ''
OR r.target_recruitment_id = ANY (
string_to_array(
trim(both '{}' FROM replace('${VK_ARRAY}', ' ', '')), ','
)::uuid[]
)
);
</sql>
<limit>0</limit>
<lookup/>
<execute_each_row>N</execute_each_row>
<variables_active>Y</variables_active>
<lazy_conversion_active>N</lazy_conversion_active>
<attributes/>
<cluster_schema/>
<GUI>
<xloc>432</xloc>
<yloc>352</yloc>
<draw>Y</draw>
</GUI>
</transform>
<transform_error_handling>
</transform_error_handling>
<attributes/>
</pipeline>