918 lines
33 KiB
PL/PgSQL
Executable File
918 lines
33 KiB
PL/PgSQL
Executable File
drop function if exists staging2.fn_IHTNST_NST_block;
|
||
CREATE OR REPLACE FUNCTION staging2.fn_IHTNST_NST_block(p_client_id int,p_function_id int, p_file_mnemonic text,p_file_sheet_mnemonic text, p_file_syspk int)
|
||
RETURNS void
|
||
LANGUAGE plpgsql
|
||
AS $function$
|
||
declare __make text;
|
||
declare __model text;
|
||
|
||
declare __client_id int :=p_client_id;
|
||
declare __function_id int :=p_function_id;
|
||
declare __file_mnemonic text :=p_file_mnemonic;
|
||
declare __file_sheet_mnemonic text :=p_file_sheet_mnemonic;
|
||
declare __file_syspk int :=p_file_syspk;
|
||
declare err_state text;
|
||
declare err_msg text;
|
||
declare err_detail text;
|
||
declare err_hint text;
|
||
declare err_context text;
|
||
declare err_query int;
|
||
declare err_block text;
|
||
|
||
|
||
begin
|
||
|
||
/************************************************************
|
||
Function Name:fn_IHTNST_NST_block
|
||
Function Desc: This function populates data into staging 2 block
|
||
File Format: IHTNST
|
||
Sheet Format: IHTNST_NST
|
||
Creation Date: March 25 2021
|
||
Updation Date:
|
||
Author: compegence team
|
||
Function Call: select staging2.fn_IHTNST_NST_block(p_client_id,p_function_id, p_file_mnemonic,
|
||
p_file_sheet_mnemonic, p_file_syspk)
|
||
Function call ex: select staging2.fn_IHTNST_NST_block(1,2,'IHTNST','IHTNST_NST',456)
|
||
***************************************************************/
|
||
|
||
|
||
SET search_path TO staging2;
|
||
|
||
/* to process multiple files - re-runnability*/
|
||
|
||
truncate table staging2.IHTNST_NST_H1_Int;
|
||
truncate table staging2.IHTNST_NST_H1_block;
|
||
truncate table staging2.IHTNST_NST_Tyre_Details_Block;
|
||
truncate table staging2.IHTNST_NST_Engine_RPM_Atmos_Int;
|
||
truncate table staging2.IHTNST_NST_Engine_RPM_Block;
|
||
truncate table staging2.IHTNST_NST_Weight_Block;
|
||
truncate table staging2.IHTNST_NST_Atmos_Cond_Block;
|
||
truncate table staging2.IHTNST_NST_STAND_Noise_Block;
|
||
truncate table staging2.IHTNST_NST_OEL_Noise_Block;
|
||
truncate table staging2.IHTNST_NST_OEL_Noise_Load_Block;
|
||
truncate table staging2.IHTNST_NST_Footer_Block;
|
||
truncate table staging2.stg_specific_table_IHTNST_NST;
|
||
truncate table staging2.stg_process_table_IHTNST_NST;
|
||
|
||
|
||
execute 'delete from fw_core.fw_jobctl_file_sheet_block_run_schedule where file_syspk='||p_file_syspk||' and file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
|
||
execute 'update transactional.source_config a
|
||
set row_number_start=null,
|
||
row_previous_number=null,
|
||
row_read_end=null,
|
||
run_time=null
|
||
where a.file_mnemonic='''||p_file_mnemonic||''' and a.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
/* transfer data from generic to specific for IHTNST */
|
||
execute 'insert into staging2.stg_specific_table_IHTNST_NST
|
||
select * from staging1.staging_generic_table a
|
||
where a.file_mnemonic='''||p_file_mnemonic||''' and a.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''
|
||
and a.file_syspk='||p_file_syspk||'';
|
||
|
||
select count(*) into err_query from staging2.stg_specific_table_IHTNST_NST;
|
||
|
||
|
||
if err_query=0 then
|
||
err_context := 'data not present';
|
||
raise exception using
|
||
message = 'No Data for IHT NST',
|
||
detail = 'No data in table stg_specific_table_IHTNST_NST',
|
||
errcode = '42704',
|
||
hint = 'check sheet mnemonic in generic table, if it is null update it';
|
||
end if;
|
||
|
||
/* trimming data */
|
||
update staging2.stg_specific_table_IHTNST_NST set column8='Objective' where lower(column8) like 'objective%';
|
||
|
||
update staging2.stg_specific_table_IHTNST_NST set column8='Condition' where lower(column8) like 'condition%';
|
||
|
||
update staging2.stg_specific_table_IHTNST_NST set column3='Remarks' where lower(column3) like 'remarks%';
|
||
|
||
update staging2.stg_specific_table_IHTNST_NST set column7='Acceptance Criteria'
|
||
where lower(column7) like 'acceptance criteria%';
|
||
|
||
|
||
update transactional.source_config set F1_source=F1_modified ;
|
||
|
||
|
||
/* keyword match in config table*/
|
||
execute 'update transactional.source_config a
|
||
set row_number_start=(select min(b.row_number)
|
||
from staging2.stg_specific_table_IHTNST_NST b
|
||
where upper(F1_modified)=upper(column3)
|
||
and b.is_rownumber_fetched is null)
|
||
where a.row_number_start is null
|
||
and a.file_mnemonic='''||p_file_mnemonic||''' and a.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
/* reverese update in process table for match*/
|
||
execute 'update staging2.stg_specific_table_IHTNST_NST a
|
||
set is_rownumber_fetched=1
|
||
from transactional.source_config b
|
||
where upper(F1_modified)=upper(column3)
|
||
and b.row_number_start=a.row_number
|
||
and is_rownumber_fetched is null
|
||
and a.file_mnemonic='''||p_file_mnemonic||''' and a.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
execute 'update transactional.source_config a set row_previous_number=row_number_start-1
|
||
where a.file_mnemonic='''||p_file_mnemonic||''' and a.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
/* update config files for row numbers start, end */
|
||
execute 'update transactional.source_config a
|
||
set row_read_end= (select b.row_number_start
|
||
from transactional.source_config b
|
||
where b.syspk=a.syspk+1 and file_mnemonic='''||p_file_mnemonic||''' and file_sheet_mnemonic='''||p_file_sheet_mnemonic||''' )
|
||
where a.file_mnemonic='''||p_file_mnemonic||''' and a.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
/* config file last field update as null otherwise it picks up next format row number*/
|
||
execute 'update transactional.source_config a
|
||
set row_read_end = null ,run_time=current_timestamp
|
||
where f1_modified =''Prepared by''
|
||
and a.file_mnemonic='''||p_file_mnemonic||''' and a.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
/* tagging block_row_numbers*/
|
||
execute 'insert into staging2.stg_process_table_IHTNST_NST
|
||
select a.* , RANK () OVER ( ORDER BY row_number) as block_row_number,b.block_tag as block_tag
|
||
from staging2.stg_specific_table_IHTNST_NST a
|
||
join transactional.source_config b
|
||
on a.row_number >=row_number_start
|
||
and (a.row_number< row_read_end or row_read_end is null)
|
||
and f1_modified=''Test Request No''
|
||
and b.file_mnemonic='''||p_file_mnemonic||''' and b.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
execute 'insert into staging2.stg_process_table_IHTNST_NST
|
||
select a.* , RANK () OVER ( ORDER BY row_number) as block_row_number,b.block_tag as block_tag
|
||
from staging2.stg_specific_table_IHTNST_NST a
|
||
join transactional.source_config b
|
||
on a.row_number >=row_number_start
|
||
and (a.row_number< row_read_end or row_read_end is null)
|
||
and f1_modified=''Tyre Details''
|
||
and b.file_mnemonic='''||p_file_mnemonic||''' and b.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
execute 'insert into staging2.stg_process_table_IHTNST_NST
|
||
select a.* , RANK () OVER ( ORDER BY row_number) as block_row_number,b.block_tag as block_tag
|
||
from staging2.stg_specific_table_IHTNST_NST a
|
||
join transactional.source_config b
|
||
on a.row_number >=row_number_start
|
||
and (a.row_number< row_read_end or row_read_end is null)
|
||
and f1_modified=''Engine RPM''
|
||
and b.file_mnemonic='''||p_file_mnemonic||''' and b.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
execute 'insert into staging2.stg_process_table_IHTNST_NST
|
||
select a.* , RANK () OVER ( ORDER BY row_number) as block_row_number,b.block_tag as block_tag
|
||
from staging2.stg_specific_table_IHTNST_NST a
|
||
join transactional.source_config b
|
||
on a.row_number >=row_number_start
|
||
and (a.row_number< row_read_end or row_read_end is null)
|
||
and f1_modified=''BY STANDER’S NOISE''
|
||
and b.file_mnemonic='''||p_file_mnemonic||''' and b.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
execute 'insert into staging2.stg_process_table_IHTNST_NST
|
||
select a.* , RANK () OVER ( ORDER BY row_number) as block_row_number,b.block_tag as block_tag
|
||
from staging2.stg_specific_table_IHTNST_NST a
|
||
join transactional.source_config b
|
||
on a.row_number >=row_number_start
|
||
and (a.row_number< row_read_end or row_read_end is null)
|
||
and f1_modified=''OEL Noise without Load''
|
||
and b.file_mnemonic='''||p_file_mnemonic||''' and b.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
execute 'insert into staging2.stg_process_table_IHTNST_NST
|
||
select a.* , RANK () OVER ( ORDER BY row_number) as block_row_number,b.block_tag as block_tag
|
||
from staging2.stg_specific_table_IHTNST_NST a
|
||
join transactional.source_config b
|
||
on a.row_number >=row_number_start
|
||
and (a.row_number< row_read_end or row_read_end is null)
|
||
and f1_modified=''OEL Noise with Load''
|
||
and b.file_mnemonic='''||p_file_mnemonic||''' and b.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
execute 'insert into staging2.stg_process_table_IHTNST_NST
|
||
select a.* , RANK () OVER ( ORDER BY row_number) as block_row_number,b.block_tag as block_tag
|
||
from staging2.stg_specific_table_IHTNST_NST a
|
||
join transactional.source_config b
|
||
on a.row_number >=row_number_start
|
||
and (a.row_number< row_read_end or row_read_end is null)
|
||
and f1_modified=''Prepared by''
|
||
and b.file_mnemonic='''||p_file_mnemonic||''' and b.file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
/*selecting tractor model*/
|
||
select column4 into __model from staging2.stg_process_table_IHTNST_nst a
|
||
where block_tag='IHTNST_NST_H1' and trim(column3)='Tractor Model';
|
||
|
||
/*block starts - IHTNST_NST_H1_BLOCK */
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_H1_BLOCK',__file_mnemonic,__file_sheet_mnemonic,1);
|
||
err_block:='IHTNST_NST_H1_BLOCK';
|
||
insert into staging2.IHTNST_NST_H1_INT (c1,c2)
|
||
select a.column3,column4 from staging2.stg_process_table_IHTNST_NST a where block_tag='IHTNST_NST_H1';
|
||
|
||
insert into staging2.IHTNST_NST_H1_INT (c1,c2)
|
||
select a.column6,column7 from staging2.stg_process_table_IHTNST_NST a where block_tag='IHTNST_NST_H1';
|
||
|
||
insert into staging2.IHTNST_NST_H1_INT (c1,c2)
|
||
select 'Objective',column8
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_H1'
|
||
and row_number=
|
||
(
|
||
select row_number+1 from
|
||
staging2.stg_process_table_IHTNST_NST a
|
||
where column8='Objective'
|
||
and block_tag='IHTNST_NST_H1'
|
||
);
|
||
|
||
insert into staging2.IHTNST_NST_H1_INT (c1,c2)
|
||
select 'Condition',column8
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_Tyre_Details'
|
||
and row_number=
|
||
(
|
||
select row_number+1 from
|
||
staging2.stg_process_table_IHTNST_NST a
|
||
where column8='Condition'
|
||
and block_tag='IHTNST_NST_Tyre_Details'
|
||
);
|
||
|
||
insert into staging2.IHTNST_NST_H1_INT (c1,c2)
|
||
select 'Test Purpose',column6
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where column3='Test Purpose' and block_tag ='IHTNST_NST_Engine_RPM_Atmos';
|
||
|
||
|
||
update staging2.IHTNST_NST_H1_Int set model=__model;
|
||
execute 'update staging2.IHTNST_NST_H1_Int set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
insert into staging2.IHTNST_NST_H1_Block
|
||
(
|
||
dummy_f,
|
||
Test_Request_no,
|
||
Sample_Receipt_Date,
|
||
Test_report_No,
|
||
Tractor_Model,
|
||
Generation,
|
||
Customer_Name,
|
||
Test_Engineer,
|
||
Test_Report_Date,
|
||
No_of_Sample,
|
||
Test_Start_Date,
|
||
Test_End_Date,
|
||
Tractor_Sr_No,
|
||
Test_Facility,
|
||
Operator_Name,
|
||
Project_Group,
|
||
Test_standard_refer,
|
||
Objective,
|
||
condition,
|
||
Test_Purpose
|
||
)
|
||
SELECT *
|
||
FROM crosstab(
|
||
'SELECT unnest(''{c2}''::text[]) AS col
|
||
, row_number() OVER ()
|
||
, unnest(ARRAY[c2::text]) AS val
|
||
FROM staging2.IHTNST_NST_H1_INT
|
||
ORDER BY generate_series(1,15),2'
|
||
) t (col text,a_1 text,a_2 text,a_3 text,a_4 text,a_5 text,a_6 text,a_7 text,a_8 text,
|
||
a_9 text,a_10 text,a_11 text,a_12 text,a_13 text,a_14 text,a_15 text,a_16 text,a_17 text,a_18 text,a_19 text);
|
||
|
||
|
||
delete from staging2.IHTNST_NST_H1_Block where dummy_f is null ;
|
||
update staging2.IHTNST_NST_H1_Block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_H1_Block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_H1_BLOCK');
|
||
|
||
/*block starts - IHTNST_NST_Tyre_Details_Block */
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_Tyre_Details_Block',__file_mnemonic,__file_sheet_mnemonic,2);
|
||
err_block:='IHTNST_NST_Tyre_Details_Block';
|
||
|
||
insert into staging2.IHTNST_NST_Tyre_Details_Block
|
||
(
|
||
dummy_f,
|
||
Tyre_Details,
|
||
Tyre_Make,
|
||
Tyre_size,
|
||
Ply_Rating,
|
||
Load_Carrying_Capacity,
|
||
Wheel_rim_Make_size
|
||
)
|
||
SELECT *
|
||
FROM crosstab(
|
||
'SELECT unnest(''{column4,column6}''::text[]) AS col
|
||
, row_number() OVER ()
|
||
, unnest(ARRAY[column4::text,column6::text]) AS val
|
||
FROM staging2.stg_process_table_IHTNST_NST where block_tag=''IHTNST_NST_Tyre_Details''
|
||
ORDER BY generate_series(1,15),2'
|
||
) t (col text,a_1 text,a_2 text,a_3 text,a_4 text,a_5 text,a_6 text);
|
||
|
||
update staging2.IHTNST_NST_Tyre_Details_Block
|
||
set ply_rating =replace(ply_rating,' Ply','');
|
||
|
||
delete from staging2.IHTNST_NST_Tyre_Details_Block where dummy_f is null ;
|
||
update staging2.IHTNST_NST_Tyre_Details_Block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_Tyre_Details_Block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_Tyre_Details_Block');
|
||
|
||
|
||
/* inserting Engine_RPM_Atmos_INT */
|
||
|
||
insert into staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
(
|
||
column3,column4,column5,column6,column7,
|
||
column8,column9,block_row_number
|
||
)
|
||
select
|
||
column3,column4,column5,column6,column7,
|
||
column8,column9,block_row_number
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_Engine_RPM_Atmos'
|
||
order by block_row_number;
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
set column8=(select column6 from staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=9) where block_row_number=5;
|
||
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
set column6 = null where block_row_number=9;
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
set column9=(select column7 from staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=9) where block_row_number=5;
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
set column7=null where block_row_number=9;
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
set column8=(select column8 from staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=9)where block_row_number=6;
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
set column8 =null where block_row_number=9;
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
set column9=(select column9 from staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=9)where block_row_number=6;
|
||
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
set column9 =null where block_row_number=9;
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Atmos_Int set model=__model;
|
||
execute 'update staging2.IHTNST_NST_Engine_RPM_Atmos_Int set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
/*block starts - IHTNST_NST_Engine_RPM_Block */
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_Engine_RPM_Block',__file_mnemonic,__file_sheet_mnemonic,3);
|
||
err_block:='IHTNST_NST_Engine_RPM_Block';
|
||
insert into staging2.IHTNST_NST_Engine_RPM_Block(dummy_f) values ('dummy');
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set low_idle_declared=(select column4 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=2 and column3='Low Idle RPM')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set low_idle_observed=(select column6 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=2 and column3='Low Idle RPM')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set high_idle_declared=(select column4 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=3 and column3='High IdleRPM')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set high_idle_observed=(select column6 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=3 and column3='High IdleRPM')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set rated_rpm_declared=(select column4 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=4 and column3='Rated RPM')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set rated_rpm_observed=(select column6 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=4 and column3='Rated RPM')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set Engine_to_PTO_Ratio=(select column4 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=9 and column3='Engine to PTO Ratio')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set low_idle_remark= (select column7
|
||
FROM staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=2 and column3='Low Idle RPM')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block
|
||
set high_idle_remark= (select column7
|
||
FROM staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=3 and column3='High IdleRPM')
|
||
where dummy_f='dummy';
|
||
|
||
|
||
update staging2.IHTNST_NST_Engine_RPM_Block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_Engine_RPM_Block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_Engine_RPM_Block');
|
||
|
||
/*block starts -IHTNST_NST_Weight_Block*/
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_Weight_Block',__file_mnemonic,__file_sheet_mnemonic,4);
|
||
err_block:='IHTNST_NST_Weight_Block';
|
||
insert into staging2.IHTNST_NST_Weight_Block(dummy_f) values ('dummy');
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set Front_weight_declared=(select column4 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=6 and column3='Front')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set Front_weight_observed=(select column6 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=6 and column3='Front')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set Rear_weight_declared=(select column4 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=7 and column3='Rear')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set Rear_weight_observed=(select column6 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=7 and column3='Rear')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set Total_weight_declared=(select column4 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=8 and column3='Total')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set Total_weight_observed=(select column6 from
|
||
staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=8 and column3='Total')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set front_weight_remark= (select column7
|
||
FROM staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=6 and column3='Front')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set rear_weight_remark= (select column7
|
||
FROM staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=7 and column3='Rear')
|
||
where dummy_f='dummy';
|
||
|
||
update staging2.IHTNST_NST_Weight_Block
|
||
set total_weight_remark= (select column7
|
||
FROM staging2.IHTNST_NST_Engine_RPM_Atmos_Int
|
||
where block_row_number=8 and column3='Total')
|
||
where dummy_f='dummy';
|
||
|
||
|
||
update staging2.IHTNST_NST_Weight_Block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_Weight_Block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_Weight_Block');
|
||
|
||
|
||
/*block starts - IHTNST_NST_Atmos_Cond_Block */
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_Atmos_Cond_Block',__file_mnemonic,__file_sheet_mnemonic,5);
|
||
err_block:='IHTNST_NST_Atmos_Cond_Block';
|
||
insert into staging2.IHTNST_NST_Atmos_Cond_Block
|
||
(
|
||
dummy_f,
|
||
Ambient_temp_C,
|
||
humidity,
|
||
Pressure_kPa,
|
||
Background_Noise,
|
||
wind_velocity
|
||
)
|
||
SELECT *
|
||
FROM crosstab(
|
||
'SELECT unnest(''{column9}''::text[]) AS col
|
||
, row_number() OVER ()
|
||
, unnest(ARRAY[column9::text]) AS val
|
||
FROM staging2.IHTNST_NST_Engine_RPM_Atmos_Int where block_row_number between 2 and 6
|
||
ORDER BY generate_series(1,15),block_row_number,2'
|
||
) t (col text,a_1 text,a_2 text,a_3 text,a_4 text,a_5 text);
|
||
|
||
delete from staging2.IHTNST_NST_Atmos_Cond_Block where dummy_f is null ;
|
||
update staging2.IHTNST_NST_Atmos_Cond_Block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_Atmos_Cond_Block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_Atmos_Cond_Block');
|
||
|
||
|
||
/*block starts - IHTNST_NST_STAND_Noise_Block */
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_STAND_Noise_Block',__file_mnemonic,__file_sheet_mnemonic,6);
|
||
err_block:='IHTNST_NST_STAND_Noise_Block';
|
||
insert into staging2.IHTNST_NST_STAND_Noise_Block
|
||
(
|
||
column3,column4,column5,column6,column7,
|
||
column8,column9,block_row_number
|
||
)
|
||
select
|
||
column3,column4,column5,column6,column7,
|
||
column8,column9,block_row_number
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_STAND_Noise'
|
||
order by block_row_number;
|
||
|
||
update staging2.IHTNST_NST_STAND_Noise_Block
|
||
set column2=column3 where column4 is null and block_row_number in (2,6);
|
||
|
||
update staging2.IHTNST_NST_STAND_Noise_Block
|
||
set column1=column3 where column4 is null and block_row_number =1;
|
||
|
||
update staging2.IHTNST_NST_STAND_Noise_Block a
|
||
set column1= b.first_value from (SELECT
|
||
block_row_number, column1, value_partition, first_value(column1) over (partition by value_partition order by block_row_number)
|
||
FROM (
|
||
SELECT
|
||
block_row_number,
|
||
column1,
|
||
sum(case when column1 is null then 0 else 1 end) over (order by block_row_number) as value_partition
|
||
FROM staging2.IHTNST_NST_STAND_Noise_Block
|
||
ORDER BY block_row_number ASC
|
||
) as q) b where a.block_row_number = b.block_row_number;
|
||
|
||
update staging2.IHTNST_NST_STAND_Noise_Block a
|
||
set column2= b.first_value from (SELECT
|
||
block_row_number, column2, value_partition, first_value(column2) over (partition by value_partition order by block_row_number)
|
||
FROM (
|
||
SELECT
|
||
block_row_number,
|
||
column2,
|
||
sum(case when column2 is null then 0 else 1 end) over (order by block_row_number) as value_partition
|
||
FROM staging2.IHTNST_NST_STAND_Noise_Block
|
||
ORDER BY block_row_number ASC
|
||
) as q) b where a.block_row_number = b.block_row_number;
|
||
|
||
update staging2.IHTNST_NST_STAND_Noise_Block
|
||
set trx_record=0 where block_row_number <>5;
|
||
|
||
update staging2.IHTNST_NST_STAND_Noise_Block
|
||
set remarks=(select column3
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_STAND_Noise' and row_number=
|
||
(
|
||
select row_number+1 from
|
||
staging2.stg_process_table_IHTNST_NST a
|
||
where lower(column3)='remarks'
|
||
and block_tag='IHTNST_NST_STAND_Noise'
|
||
));
|
||
|
||
update staging2.IHTNST_NST_STAND_Noise_Block
|
||
set acceptance_criteria=(select column7
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_STAND_Noise' and row_number=
|
||
(
|
||
select row_number+1 from
|
||
staging2.stg_process_table_IHTNST_NST a
|
||
where lower(column7)='acceptance criteria'
|
||
and block_tag='IHTNST_NST_STAND_Noise'
|
||
));
|
||
|
||
update staging2.IHTNST_NST_STAND_Noise_Block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_STAND_Noise_Block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_STAND_Noise_Block');
|
||
|
||
|
||
/*block starts - IHTNST_NST_OEL_Noise_Block */
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_OEL_Noise_Block',__file_mnemonic,__file_sheet_mnemonic,7);
|
||
err_block:='IHTNST_NST_OEL_Noise_Block';
|
||
insert into staging2.IHTNST_NST_OEL_Noise_Block
|
||
(
|
||
column3,column4,column5,column6,column7,
|
||
column8,column9,block_row_number
|
||
)
|
||
select
|
||
column3,column4,column5,column6,column7,
|
||
column8,column9,block_row_number
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_OEL_Noise'
|
||
order by block_row_number;
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Block
|
||
set column2=column3 where column4 is null and block_row_number in (2,8,14);
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Block
|
||
set column1=column3 where column4 is null and block_row_number =1;
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Block a
|
||
set column1= b.first_value from (SELECT
|
||
block_row_number, column1, value_partition, first_value(column1) over (partition by value_partition order by block_row_number)
|
||
FROM (
|
||
SELECT
|
||
block_row_number,
|
||
column1,
|
||
sum(case when column1 is null then 0 else 1 end) over (order by block_row_number) as value_partition
|
||
FROM staging2.IHTNST_NST_OEL_Noise_Block
|
||
ORDER BY block_row_number ASC
|
||
) as q) b where a.block_row_number = b.block_row_number;
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Block a
|
||
set column2= b.first_value from (SELECT
|
||
block_row_number, column2, value_partition, first_value(column2) over (partition by value_partition order by block_row_number)
|
||
FROM (
|
||
SELECT
|
||
block_row_number,
|
||
column2,
|
||
sum(case when column2 is null then 0 else 1 end) over (order by block_row_number) as value_partition
|
||
FROM staging2.IHTNST_NST_OEL_Noise_Block
|
||
ORDER BY block_row_number ASC
|
||
) as q) b where a.block_row_number = b.block_row_number;
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Block
|
||
set trx_record=0 where block_row_number in (1,2,3,4,8,9,10,14,15,16,17,18);
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Block
|
||
set remarks=(select column3
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_OEL_Noise' and row_number=
|
||
(
|
||
select row_number+1 from
|
||
staging2.stg_process_table_IHTNST_NST a
|
||
where lower(column3)='remarks'
|
||
and block_tag='IHTNST_NST_OEL_Noise'
|
||
));
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Block
|
||
set acceptance_criteria=(select column7
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_OEL_Noise' and row_number=
|
||
(
|
||
select row_number+1 from
|
||
staging2.stg_process_table_IHTNST_NST a
|
||
where lower(column7)='acceptance criteria'
|
||
and block_tag='IHTNST_NST_OEL_Noise'
|
||
));
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_OEL_Noise_Block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_OEL_Noise_Block');
|
||
|
||
/*block starts - IHTNST_NST_OEL_Noise_Block */
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_OEL_Noise_Load_Block',__file_mnemonic,__file_sheet_mnemonic,8);
|
||
err_block:='IHTNST_NST_OEL_Noise_Load_Block';
|
||
insert into staging2.IHTNST_NST_OEL_Noise_Load_Block
|
||
(
|
||
column3,column4,column5,column6,column7,
|
||
column8,column9,block_row_number
|
||
)
|
||
select
|
||
column3,column4,column5,column6,column7,
|
||
column8,column9,block_row_number
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_OEL_Noise_Load'
|
||
order by block_row_number;
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Load_Block
|
||
set column2=column3 where column4 is null and block_row_number in (2,5,11);
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Load_Block
|
||
set column1=column3 where column4 is null and block_row_number =1;
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Load_Block a
|
||
set column1= b.first_value from (SELECT
|
||
block_row_number, column1, value_partition, first_value(column1) over (partition by value_partition order by block_row_number)
|
||
FROM (
|
||
SELECT
|
||
block_row_number,
|
||
column1,
|
||
sum(case when column1 is null then 0 else 1 end) over (order by block_row_number) as value_partition
|
||
FROM staging2.IHTNST_NST_OEL_Noise_Load_Block
|
||
ORDER BY block_row_number ASC
|
||
) as q) b where a.block_row_number = b.block_row_number;
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Load_Block a
|
||
set column2= b.first_value from (SELECT
|
||
block_row_number, column2, value_partition, first_value(column2) over (partition by value_partition order by block_row_number)
|
||
FROM (
|
||
SELECT
|
||
block_row_number,
|
||
column2,
|
||
sum(case when column2 is null then 0 else 1 end) over (order by block_row_number) as value_partition
|
||
FROM staging2.IHTNST_NST_OEL_Noise_Load_Block
|
||
ORDER BY block_row_number ASC
|
||
) as q) b where a.block_row_number = b.block_row_number;
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Load_Block
|
||
set trx_record=0 where block_row_number not in (8,9,10,14,15,16);
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Load_Block
|
||
set remarks=(select column3
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_OEL_Noise_Load' and row_number=
|
||
(
|
||
select row_number+1 from
|
||
staging2.stg_process_table_IHTNST_NST a
|
||
where lower(column3)='remarks'
|
||
and block_tag='IHTNST_NST_OEL_Noise_Load'
|
||
));
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Load_Block
|
||
set acceptance_criteria=(select column7
|
||
from staging2.stg_process_table_IHTNST_NST a
|
||
where block_tag='IHTNST_NST_OEL_Noise_Load' and row_number=
|
||
(
|
||
select row_number+1 from
|
||
staging2.stg_process_table_IHTNST_NST a
|
||
where lower(column7)='acceptance criteria'
|
||
and block_tag='IHTNST_NST_OEL_Noise_Load'
|
||
));
|
||
|
||
update staging2.IHTNST_NST_OEL_Noise_Load_Block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_OEL_Noise_Load_Block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_OEL_Noise_Load_Block');
|
||
|
||
|
||
|
||
/*block starts - IHTNST_NST_Footer_block */
|
||
|
||
perform fw_core.fn_jobctl_block_begin(__client_id,__function_id,__file_syspk,
|
||
'IHTNST_NST_Footer_block',__file_mnemonic,__file_sheet_mnemonic,9);
|
||
err_block:='IHTNST_NST_Footer_block';
|
||
|
||
insert into staging2.IHTNST_NST_Footer_block(dummy_f) values ('dummy');
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set prepared_by=( select column4 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and lower(column3)='prepared by' )
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set reviewed_by=( select column4 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and lower(column3)='reviewed by' )
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set approved_by=( select column4 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and lower(column3)='approved by' )
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set comments=( select column3 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=5 )
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set rev1=( select column3 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=6 )
|
||
where dummy_F='dummy';
|
||
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set rev2=( select column5 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=6 )
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set rev3=( select column8 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=6 )
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set replaces=( select column9 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=1)
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set revision_no=( select column9 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=2)
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set prepared_date=( select column8 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=1)
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set reviewed_date=( select column8 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=2)
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block a
|
||
set approved_date=( select column8 from staging2.stg_process_table_IHTNST_NST b
|
||
where b.block_tag='IHTNST_NST_Footer'
|
||
and block_row_number=3)
|
||
where dummy_F='dummy';
|
||
|
||
update staging2.IHTNST_NST_Footer_block set model=__model;
|
||
execute 'update staging2.IHTNST_NST_Footer_block set
|
||
client_id='||p_client_id||',
|
||
function_id='||p_function_id||',
|
||
file_syspk='||p_file_syspk||',
|
||
file_mnemonic='''||p_file_mnemonic||''',
|
||
file_sheet_mnemonic='''||p_file_sheet_mnemonic||'''';
|
||
|
||
perform fw_core.fn_jobctl_block_end(__file_syspk,'IHTNST_NST_Footer_block');
|
||
perform fw_core.fn_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_mnemonic,__file_sheet_mnemonic ,null,'stg2', 'fn_IHTNST_NST_block', err_state, err_msg, err_detail, err_hint, err_context,'success');
|
||
|
||
end
|
||
$function$
|
||
;
|
||
|
||
|
||
|
||
|
||
|
||
|