ervu-dashboard-etl/mappings/region/total_registered.busyness(reg).ktr
2024-09-09 16:19:56 +03:00

1590 lines
44 KiB
XML
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.

<?xml version="1.0" encoding="UTF-8"?>
<transformation>
<info>
<name>total_registered.busyness(reg)</name>
<description/>
<extended_description/>
<trans_version/>
<trans_type>Normal</trans_type>
<trans_status>0</trans_status>
<directory>/</directory>
<parameters>
</parameters>
<log>
<trans-log-table>
<connection/>
<schema/>
<table/>
<size_limit_lines/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STATUS</id>
<enabled>Y</enabled>
<name>STATUS</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
<subject/>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
<subject/>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
<subject/>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
<subject/>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
<subject/>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
<subject/>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>STARTDATE</id>
<enabled>Y</enabled>
<name>STARTDATE</name>
</field>
<field>
<id>ENDDATE</id>
<enabled>Y</enabled>
<name>ENDDATE</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>DEPDATE</id>
<enabled>Y</enabled>
<name>DEPDATE</name>
</field>
<field>
<id>REPLAYDATE</id>
<enabled>Y</enabled>
<name>REPLAYDATE</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>Y</enabled>
<name>LOG_FIELD</name>
</field>
<field>
<id>EXECUTING_SERVER</id>
<enabled>N</enabled>
<name>EXECUTING_SERVER</name>
</field>
<field>
<id>EXECUTING_USER</id>
<enabled>N</enabled>
<name>EXECUTING_USER</name>
</field>
<field>
<id>CLIENT</id>
<enabled>N</enabled>
<name>CLIENT</name>
</field>
</trans-log-table>
<perf-log-table>
<connection/>
<schema/>
<table/>
<interval/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>SEQ_NR</id>
<enabled>Y</enabled>
<name>SEQ_NR</name>
</field>
<field>
<id>LOGDATE</id>
<enabled>Y</enabled>
<name>LOGDATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>INPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>INPUT_BUFFER_ROWS</name>
</field>
<field>
<id>OUTPUT_BUFFER_ROWS</id>
<enabled>Y</enabled>
<name>OUTPUT_BUFFER_ROWS</name>
</field>
</perf-log-table>
<channel-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>LOGGING_OBJECT_TYPE</id>
<enabled>Y</enabled>
<name>LOGGING_OBJECT_TYPE</name>
</field>
<field>
<id>OBJECT_NAME</id>
<enabled>Y</enabled>
<name>OBJECT_NAME</name>
</field>
<field>
<id>OBJECT_COPY</id>
<enabled>Y</enabled>
<name>OBJECT_COPY</name>
</field>
<field>
<id>REPOSITORY_DIRECTORY</id>
<enabled>Y</enabled>
<name>REPOSITORY_DIRECTORY</name>
</field>
<field>
<id>FILENAME</id>
<enabled>Y</enabled>
<name>FILENAME</name>
</field>
<field>
<id>OBJECT_ID</id>
<enabled>Y</enabled>
<name>OBJECT_ID</name>
</field>
<field>
<id>OBJECT_REVISION</id>
<enabled>Y</enabled>
<name>OBJECT_REVISION</name>
</field>
<field>
<id>PARENT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>PARENT_CHANNEL_ID</name>
</field>
<field>
<id>ROOT_CHANNEL_ID</id>
<enabled>Y</enabled>
<name>ROOT_CHANNEL_ID</name>
</field>
</channel-log-table>
<step-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>TRANSNAME</id>
<enabled>Y</enabled>
<name>TRANSNAME</name>
</field>
<field>
<id>STEPNAME</id>
<enabled>Y</enabled>
<name>STEPNAME</name>
</field>
<field>
<id>STEP_COPY</id>
<enabled>Y</enabled>
<name>STEP_COPY</name>
</field>
<field>
<id>LINES_READ</id>
<enabled>Y</enabled>
<name>LINES_READ</name>
</field>
<field>
<id>LINES_WRITTEN</id>
<enabled>Y</enabled>
<name>LINES_WRITTEN</name>
</field>
<field>
<id>LINES_UPDATED</id>
<enabled>Y</enabled>
<name>LINES_UPDATED</name>
</field>
<field>
<id>LINES_INPUT</id>
<enabled>Y</enabled>
<name>LINES_INPUT</name>
</field>
<field>
<id>LINES_OUTPUT</id>
<enabled>Y</enabled>
<name>LINES_OUTPUT</name>
</field>
<field>
<id>LINES_REJECTED</id>
<enabled>Y</enabled>
<name>LINES_REJECTED</name>
</field>
<field>
<id>ERRORS</id>
<enabled>Y</enabled>
<name>ERRORS</name>
</field>
<field>
<id>LOG_FIELD</id>
<enabled>N</enabled>
<name>LOG_FIELD</name>
</field>
</step-log-table>
<metrics-log-table>
<connection/>
<schema/>
<table/>
<timeout_days/>
<field>
<id>ID_BATCH</id>
<enabled>Y</enabled>
<name>ID_BATCH</name>
</field>
<field>
<id>CHANNEL_ID</id>
<enabled>Y</enabled>
<name>CHANNEL_ID</name>
</field>
<field>
<id>LOG_DATE</id>
<enabled>Y</enabled>
<name>LOG_DATE</name>
</field>
<field>
<id>METRICS_DATE</id>
<enabled>Y</enabled>
<name>METRICS_DATE</name>
</field>
<field>
<id>METRICS_CODE</id>
<enabled>Y</enabled>
<name>METRICS_CODE</name>
</field>
<field>
<id>METRICS_DESCRIPTION</id>
<enabled>Y</enabled>
<name>METRICS_DESCRIPTION</name>
</field>
<field>
<id>METRICS_SUBJECT</id>
<enabled>Y</enabled>
<name>METRICS_SUBJECT</name>
</field>
<field>
<id>METRICS_TYPE</id>
<enabled>Y</enabled>
<name>METRICS_TYPE</name>
</field>
<field>
<id>METRICS_VALUE</id>
<enabled>Y</enabled>
<name>METRICS_VALUE</name>
</field>
</metrics-log-table>
</log>
<maxdate>
<connection/>
<table/>
<field/>
<offset>0.0</offset>
<maxdiff>0.0</maxdiff>
</maxdate>
<size_rowset>10000</size_rowset>
<sleep_time_empty>50</sleep_time_empty>
<sleep_time_full>50</sleep_time_full>
<unique_connections>N</unique_connections>
<feedback_shown>Y</feedback_shown>
<feedback_size>50000</feedback_size>
<using_thread_priorities>Y</using_thread_priorities>
<shared_objects_file/>
<capture_step_performance>N</capture_step_performance>
<step_performance_capturing_delay>1000</step_performance_capturing_delay>
<step_performance_capturing_size_limit>100</step_performance_capturing_size_limit>
<dependencies>
</dependencies>
<partitionschemas>
</partitionschemas>
<slaveservers>
<slaveserver>
<name>local</name>
<hostname>localhost</hostname>
<port>8888</port>
<webAppName/>
<username>cluster</username>
<password>Encrypted 2be98afc86aa7f2e4cb1aa265cd86aac8</password>
<proxy_hostname/>
<proxy_port/>
<non_proxy_hosts/>
<master>Y</master>
<sslMode>N</sslMode>
</slaveserver>
</slaveservers>
<clusterschemas>
</clusterschemas>
<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>
<connection>
<name>ervu-dashboard</name>
<server>dashboard-dbhost</server>
<type>POSTGRESQL</type>
<access>Native</access>
<database>dashboard-dbname</database>
<port>1111</port>
<username>dashboard-dbuser</username>
<password>Encrypted 2daf9dca008c89396af54aa72ce93bcc9</password>
<servername/>
<data_tablespace/>
<index_tablespace/>
<attributes>
<attribute>
<code>FORCE_IDENTIFIERS_TO_LOWERCASE</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>FORCE_IDENTIFIERS_TO_UPPERCASE</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>IS_CLUSTERED</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>PORT_NUMBER</code>
<attribute>1111</attribute>
</attribute>
<attribute>
<code>PRESERVE_RESERVED_WORD_CASE</code>
<attribute>Y</attribute>
</attribute>
<attribute>
<code>QUOTE_ALL_FIELDS</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>SUPPORTS_BOOLEAN_DATA_TYPE</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>SUPPORTS_TIMESTAMP_DATA_TYPE</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>USE_POOLING</code>
<attribute>N</attribute>
</attribute>
</attributes>
</connection>
<connection>
<name>ervu_person_registry</name>
<server>person-dbhost</server>
<type>POSTGRESQL</type>
<access>Native</access>
<database>person-dbname</database>
<port>4444</port>
<username>person-dbuser</username>
<password>Encrypted 2be98afb80fd5818ba554aa72ce93bcc9</password>
<servername/>
<data_tablespace/>
<index_tablespace/>
<attributes>
<attribute>
<code>FORCE_IDENTIFIERS_TO_LOWERCASE</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>FORCE_IDENTIFIERS_TO_UPPERCASE</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>IS_CLUSTERED</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>PORT_NUMBER</code>
<attribute>4444</attribute>
</attribute>
<attribute>
<code>PRESERVE_RESERVED_WORD_CASE</code>
<attribute>Y</attribute>
</attribute>
<attribute>
<code>QUOTE_ALL_FIELDS</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>SUPPORTS_BOOLEAN_DATA_TYPE</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>SUPPORTS_TIMESTAMP_DATA_TYPE</code>
<attribute>N</attribute>
</attribute>
<attribute>
<code>USE_POOLING</code>
<attribute>N</attribute>
</attribute>
</attributes>
</connection>
<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>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</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Select values 3 2</from>
<to>Insert / update (total_registered.busyness)</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Select values 3 2 2</from>
<to>Insert / update (total_registered.busyness) 2</to>
<enabled>Y</enabled>
</hop>
<hop>
<from>Select values 3 2 2 2</from>
<to>Insert / update (total_registered.busyness) 3</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>Table input (person_registry) РФ/мужчины</from>
<to>Get variables 3 2 2</to>
<enabled>Y</enabled>
</hop>
</order>
<step>
<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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>672</xloc>
<yloc>192</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>672</xloc>
<yloc>352</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>672</xloc>
<yloc>512</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Insert / update (total_registered.busyness)</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>busyness</table>
<key>
<name>REG_ID</name>
<field>recruitment_id</field>
<condition>=</condition>
<name2/>
</key>
<value>
<name>study</name>
<rename>study</rename>
<update>Y</update>
</value>
<value>
<name>work</name>
<rename>work</rename>
<update>Y</update>
</value>
<value>
<name>study_percent</name>
<rename>study_percent</rename>
<update>Y</update>
</value>
<value>
<name>work_percent</name>
<rename>work_percent</rename>
<update>Y</update>
</value>
<value>
<name>recruitment_id</name>
<rename>recruitment_id</rename>
<update>N</update>
</value>
<value>
<name>registered</name>
<rename>registered</rename>
<update>N</update>
</value>
<value>
<name>"all_M_W"</name>
<rename>gender</rename>
<update>N</update>
</value>
<value>
<name>not_work</name>
<rename>not_work</rename>
<update>Y</update>
</value>
<value>
<name>not_work_percent</name>
<rename>not_work_percent</rename>
<update>Y</update>
</value>
<value>
<name>busyness</name>
<rename>total_people</rename>
<update>Y</update>
</value>
</lookup>
<attributes/>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>1072</xloc>
<yloc>192</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Insert / update (total_registered.busyness) 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>busyness</table>
<key>
<name>REG_ID</name>
<field>recruitment_id</field>
<condition>=</condition>
<name2/>
</key>
<value>
<name>study</name>
<rename>study</rename>
<update>Y</update>
</value>
<value>
<name>work</name>
<rename>work</rename>
<update>Y</update>
</value>
<value>
<name>study_percent</name>
<rename>study_percent</rename>
<update>Y</update>
</value>
<value>
<name>work_percent</name>
<rename>work_percent</rename>
<update>Y</update>
</value>
<value>
<name>recruitment_id</name>
<rename>recruitment_id</rename>
<update>N</update>
</value>
<value>
<name>registered</name>
<rename>registered</rename>
<update>N</update>
</value>
<value>
<name>"all_M_W"</name>
<rename>gender</rename>
<update>N</update>
</value>
<value>
<name>not_work</name>
<rename>not_work</rename>
<update>Y</update>
</value>
<value>
<name>not_work_percent</name>
<rename>not_work_percent</rename>
<update>Y</update>
</value>
<value>
<name>busyness</name>
<rename>total_people</rename>
<update>Y</update>
</value>
</lookup>
<attributes/>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>1072</xloc>
<yloc>352</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Insert / update (total_registered.busyness) 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>busyness</table>
<key>
<name>REG_ID</name>
<field>recruitment_id</field>
<condition>=</condition>
<name2/>
</key>
<value>
<name>study</name>
<rename>study</rename>
<update>Y</update>
</value>
<value>
<name>work</name>
<rename>work</rename>
<update>Y</update>
</value>
<value>
<name>study_percent</name>
<rename>study_percent</rename>
<update>Y</update>
</value>
<value>
<name>work_percent</name>
<rename>work_percent</rename>
<update>Y</update>
</value>
<value>
<name>recruitment_id</name>
<rename>recruitment_id</rename>
<update>N</update>
</value>
<value>
<name>registered</name>
<rename>registered</rename>
<update>N</update>
</value>
<value>
<name>"all_M_W"</name>
<rename>gender</rename>
<update>N</update>
</value>
<value>
<name>not_work</name>
<rename>not_work</rename>
<update>Y</update>
</value>
<value>
<name>not_work_percent</name>
<rename>not_work_percent</rename>
<update>Y</update>
</value>
<value>
<name>busyness</name>
<rename>total_people</rename>
<update>Y</update>
</value>
</lookup>
<attributes/>
<cluster_schema/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>1072</xloc>
<yloc>512</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>816</xloc>
<yloc>192</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>816</xloc>
<yloc>352</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>816</xloc>
<yloc>512</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<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>-- в json отсутствует инфа об обучении в школе
WITH status_info AS (
SELECT
-- Проверка на обучение в вузе (есть информация и обучается)
(
CASE
WHEN jsonb_typeof(info->'svedVUZ'->'vuz') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedVUZ'->'vuz') AS vuz
WHERE vuz->>'kodStatus' = '1'
)
ELSE false
END
) AS is_studying_in_vuz,
-- Проверка на обучение в колледже (есть информация и обучается)
(
CASE
WHEN jsonb_typeof(info->'svedKolledzh'->'kolledzh') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedKolledzh'->'kolledzh') AS kolledzh
WHERE kolledzh->>'kodStatus' = '1'
)
ELSE false
END
) AS is_studying_in_college,
-- Проверка на работу (есть информация и работает)
(
CASE
WHEN jsonb_typeof(info->'svedTrud'->'trudDeyat') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedTrud'->'trudDeyat') AS trud
WHERE trud->>'prAktMestRab' = '1'
)
ELSE false
END
) AS is_working,
-- Проверка на отсутствие сведений о вузе
info->'svedVUZ'->>'prOtsSvedVUZ' = '1' AS no_info_vuz,
-- Проверка на отсутствие сведений о колледже
info->'svedKolledzh'->>'prOtsSvedKolledzh' = '1' AS no_info_college,
-- Проверка на отсутствие сведений о работе
info->'svedTrud'->>'prOtsSvedTrud' = '1' AS no_info_work
FROM public.recruits_info ri
JOIN public.recruits r ON ri.recruit_id = r.id
WHERE r.vu_current_info -> 'isMilitaryRegistered' = 'true' and r.current_recruitment_id is not null and r.target_recruitment_id = any('${VK_ARRAY}')
),
summary AS (
SELECT
-- Количество людей, которые учатся (в вузе или колледже)
COUNT(CASE WHEN is_studying_in_vuz OR is_studying_in_college THEN 1 END) AS study,
-- Количество людей, которые работают
COUNT(CASE WHEN is_working THEN 1 END) AS work,
-- Количество людей, которые ни учатся, ни работают
-- COUNT(CASE WHEN NOT is_studying_in_vuz AND NOT is_studying_in_college AND NOT is_working THEN 1 END) AS not_work,
-- Количество людей, для которых отсутствуют сведения о вузе, колледже и работе
COUNT(CASE WHEN no_info_vuz AND no_info_college AND no_info_work THEN 1 END) AS no_info,
-- Общее количество людей
COUNT(*) AS total_people
FROM status_info
)
SELECT
'ALL' as gender,
'true' as registered,
'${REG_ID}' as recruitment_id,
study,
work,
0 as not_work,
0 as not_work_percent,
total_people,
-- Процент людей, которые учатся
ROUND(study * 100.0 / NULLIF(total_people, 0), 2) AS study_percent,
-- Процент людей, которые работают
ROUND(work * 100.0 / NULLIF(total_people, 0), 2) AS work_percent
-- Процент людей, которые ни учатся, ни работают
-- ROUND(not_work * 100.0 / NULLIF(total_people, 0), 2) AS not_work_percent
-- Процент людей, для которых отсутствуют сведения
-- ROUND(no_info * 100.0 / NULLIF(total_people, 0), 2) AS no_info_percent
FROM summary;</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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>432</xloc>
<yloc>192</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<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>-- в json отсутствует инфа об обучении в школе
WITH status_info AS (
SELECT
-- Проверка на обучение в вузе (есть информация и обучается)
(
CASE
WHEN jsonb_typeof(info->'svedVUZ'->'vuz') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedVUZ'->'vuz') AS vuz
WHERE vuz->>'kodStatus' = '1'
)
ELSE false
END
) AS is_studying_in_vuz,
-- Проверка на обучение в колледже (есть информация и обучается)
(
CASE
WHEN jsonb_typeof(info->'svedKolledzh'->'kolledzh') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedKolledzh'->'kolledzh') AS kolledzh
WHERE kolledzh->>'kodStatus' = '1'
)
ELSE false
END
) AS is_studying_in_college,
-- Проверка на работу (есть информация и работает)
(
CASE
WHEN jsonb_typeof(info->'svedTrud'->'trudDeyat') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedTrud'->'trudDeyat') AS trud
WHERE trud->>'prAktMestRab' = '1'
)
ELSE false
END
) AS is_working,
-- Проверка на отсутствие сведений о вузе
info->'svedVUZ'->>'prOtsSvedVUZ' = '1' AS no_info_vuz,
-- Проверка на отсутствие сведений о колледже
info->'svedKolledzh'->>'prOtsSvedKolledzh' = '1' AS no_info_college,
-- Проверка на отсутствие сведений о работе
info->'svedTrud'->>'prOtsSvedTrud' = '1' AS no_info_work
FROM public.recruits_info ri
JOIN public.recruits r ON ri.recruit_id = r.id
WHERE r.vu_current_info -> 'isMilitaryRegistered' = 'true' and r.current_recruitment_id is not null and r.target_recruitment_id = any('${VK_ARRAY}')
AND gender = 'FEMALE'
),
summary AS (
SELECT
-- Количество людей, которые учатся (в вузе или колледже)
COUNT(CASE WHEN is_studying_in_vuz OR is_studying_in_college THEN 1 END) AS study,
-- Количество людей, которые работают
COUNT(CASE WHEN is_working THEN 1 END) AS work,
-- Количество людей, которые ни учатся, ни работают
-- COUNT(CASE WHEN NOT is_studying_in_vuz AND NOT is_studying_in_college AND NOT is_working THEN 1 END) AS not_work,
-- Количество людей, для которых отсутствуют сведения о вузе, колледже и работе
COUNT(CASE WHEN no_info_vuz AND no_info_college AND no_info_work THEN 1 END) AS no_info,
-- Общее количество людей
COUNT(*) AS total_people
FROM status_info
)
SELECT
'W' as gender,
'true' as registered,
'${REG_ID}' as recruitment_id,
0 as not_work,
0 as not_work_percent,
study,
work,
total_people,
-- Процент людей, которые учатся
ROUND(study * 100.0 / NULLIF(total_people, 0), 2) AS study_percent,
-- Процент людей, которые работают
ROUND(work * 100.0 / NULLIF(total_people, 0), 2) AS work_percent
-- Процент людей, которые ни учатся, ни работают
-- ROUND(not_work * 100.0 / NULLIF(total_people, 0), 2) AS not_work_percent
-- Процент людей, для которых отсутствуют сведения
-- ROUND(no_info * 100.0 / NULLIF(total_people, 0), 2) AS no_info_percent
FROM summary;</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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>432</xloc>
<yloc>512</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<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>-- в json отсутствует инфа об обучении в школе
WITH status_info AS (
SELECT
-- Проверка на обучение в вузе (есть информация и обучается)
(
CASE
WHEN jsonb_typeof(info->'svedVUZ'->'vuz') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedVUZ'->'vuz') AS vuz
WHERE vuz->>'kodStatus' = '1'
)
ELSE false
END
) AS is_studying_in_vuz,
-- Проверка на обучение в колледже (есть информация и обучается)
(
CASE
WHEN jsonb_typeof(info->'svedKolledzh'->'kolledzh') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedKolledzh'->'kolledzh') AS kolledzh
WHERE kolledzh->>'kodStatus' = '1'
)
ELSE false
END
) AS is_studying_in_college,
-- Проверка на работу (есть информация и работает)
(
CASE
WHEN jsonb_typeof(info->'svedTrud'->'trudDeyat') = 'array' THEN
EXISTS (
SELECT 1
FROM jsonb_array_elements(info->'svedTrud'->'trudDeyat') AS trud
WHERE trud->>'prAktMestRab' = '1'
)
ELSE false
END
) AS is_working,
-- Проверка на отсутствие сведений о вузе
info->'svedVUZ'->>'prOtsSvedVUZ' = '1' AS no_info_vuz,
-- Проверка на отсутствие сведений о колледже
info->'svedKolledzh'->>'prOtsSvedKolledzh' = '1' AS no_info_college,
-- Проверка на отсутствие сведений о работе
info->'svedTrud'->>'prOtsSvedTrud' = '1' AS no_info_work
FROM public.recruits_info ri
JOIN public.recruits r ON ri.recruit_id = r.id
WHERE r.vu_current_info -> 'isMilitaryRegistered' = 'true' and r.current_recruitment_id is not null and r.target_recruitment_id = any('${VK_ARRAY}')
AND gender = 'MALE'
),
summary AS (
SELECT
-- Количество людей, которые учатся (в вузе или колледже)
COUNT(CASE WHEN is_studying_in_vuz OR is_studying_in_college THEN 1 END) AS study,
-- Количество людей, которые работают
COUNT(CASE WHEN is_working THEN 1 END) AS work,
-- Количество людей, которые ни учатся, ни работают
-- COUNT(CASE WHEN NOT is_studying_in_vuz AND NOT is_studying_in_college AND NOT is_working THEN 1 END) AS not_work,
-- Количество людей, для которых отсутствуют сведения о вузе, колледже и работе
COUNT(CASE WHEN no_info_vuz AND no_info_college AND no_info_work THEN 1 END) AS no_info,
-- Общее количество людей
COUNT(*) AS total_people
FROM status_info
)
SELECT
'M' as gender,
'true' as registered,
'${REG_ID}' as recruitment_id,
0 as not_work_percent,
0 as not_work,
study,
work,
total_people,
-- Процент людей, которые учатся
ROUND(study * 100.0 / NULLIF(total_people, 0), 2) AS study_percent,
-- Процент людей, которые работают
ROUND(work * 100.0 / NULLIF(total_people, 0), 2) AS work_percent
-- Процент людей, которые ни учатся, ни работают
-- ROUND(not_work * 100.0 / NULLIF(total_people, 0), 2) AS not_work_percent
-- Процент людей, для которых отсутствуют сведения
-- ROUND(no_info * 100.0 / NULLIF(total_people, 0), 2) AS no_info_percent
FROM summary;</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/>
<remotesteps>
<input>
</input>
<output>
</output>
</remotesteps>
<GUI>
<xloc>432</xloc>
<yloc>352</yloc>
<draw>Y</draw>
</GUI>
</step>
<step_error_handling>
</step_error_handling>
<slave-step-copy-partition-distribution>
</slave-step-copy-partition-distribution>
<slave_transformation>N</slave_transformation>
<attributes/>
</transformation>