added deployment folder with latest code

This commit is contained in:
Deepthi
2021-04-27 16:13:33 +05:30
parent 37f73d5dfd
commit c8985b2d62
112 changed files with 42492 additions and 0 deletions

View File

@@ -0,0 +1,196 @@
drop function if exists mmt_staging2.fn_PTO_GVG_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_GVG_ODS(p_file_syspk int)
RETURNS text AS $$
declare __test_instance_id int;
declare __file_syspk int;
declare __make text;
declare __model text;
declare v_state text;
declare v_msg text;
declare v_detail text;
declare v_hint text;
declare v_context text;
declare _error int;
begin
__file_syspk := p_file_syspk;
SET search_path TO mmt_staging2;
/*************************************************************
Function Name:fn_PTO_GVG_ODS
Function Desc: This function populates data into ODS blocks
File Format: PTOBST
Sheet Format: PTOBST_GVG
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_PTO_GVG_ODS(880)
***************************************************************/
select tractor_model into __model from mmt_ods.test_instance_tractor_info where test_file_ref_no =__file_syspk;
select tractor_make into __make from mmt_ods.test_instance_tractor_info where test_file_ref_no =__file_syspk;
insert into mmt_ods.PTO_Perf_Governing_Graph
(client_id,
function_id,
test_file_ref_no,
tractor_model,
tractor_make,
test_condition,
engine_speed_rpm,
torque_kg_m,
power_hp,
sfc_gm_per_hp_hr,
fuelling_mm3_per_stroke_per_cyl,
test_file_format,
test_file_sheet_format)
select
client_id,
function_id,
file_syspk,
model,
make,
c1,
c2::numeric,
c3::numeric,
c4::numeric,
c5::numeric,
c6::numeric,
file_format,
sheet_mnemonic
from mmt_staging2.PTOBST_GVG_performance_governing_trails_block
where ods_record=1
union
select
client_id,
function_id,
file_syspk,
model,
make,
c7_1,
c7::numeric,
c8::numeric,
c9::numeric,
c10::numeric,
c11::numeric,
file_format,
sheet_mnemonic
from mmt_staging2.PTOBST_GVG_performance_governing_trails_block
where ods_record=1
and (c7 is not null and c8 is not null and c9 is not null and c10 is not null and c11 is not null)
union
select
client_id,
function_id,
file_syspk,
model,
make,
c12_1,
c12::numeric,
c13::numeric,
c14::numeric,
c15::numeric,
c16::numeric,
file_format,
sheet_mnemonic
from mmt_staging2.PTOBST_GVG_performance_governing_trails_block
where ods_record=1
and (c12 is not null and c13 is not null and c14 is not null and c15 is not null and c16 is not null)
union
select
client_id,
function_id,
file_syspk,
model,
make,
c17_1,
c17::numeric,
c18::numeric,
c19::numeric,
c20::numeric,
c21::numeric,
file_format,
sheet_mnemonic
from mmt_staging2.PTOBST_GVG_performance_governing_trails_block
where ods_record=1
and (c17 is not null and c18 is not null and c19 is not null and c20 is not null and c21 is not null)
union
select
client_id,
function_id,
file_syspk,
model,
make,
c22_1,
c22::numeric,
c23::numeric,
c24::numeric,
c25::numeric,
c26::numeric,
file_format,
sheet_mnemonic
from mmt_staging2.PTOBST_GVG_performance_governing_trails_block
where ods_record=1
and (c22 is not null and c23 is not null and c24 is not null and c25 is not null and c26 is not null)
union
select
client_id,
function_id,
file_syspk,
model,
make,
c27_1,
c27::numeric,
c28::numeric,
c29::numeric,
c30::numeric,
c31::numeric,
file_format,
sheet_mnemonic
from mmt_staging2.PTOBST_GVG_performance_governing_trails_block
where ods_record=1
and (c27 is not null and c28 is not null and c29 is not null and c30 is not null and c32 is not null)
union
select
client_id,
function_id,
file_syspk,
model,
make,
c32_1,
c32::numeric,
c33::numeric,
c34::numeric,
c35::numeric,
c36::numeric,
file_format,
sheet_mnemonic
from mmt_staging2.PTOBST_GVG_performance_governing_trails_block
where ods_record=1
and (c32 is not null and c33 is not null and c34 is not null and c35 is not null and c36 is not null);
select file_syspk into __file_syspk from mmt_staging2.PTOBST_RPT_tractor_specs_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.PTO_Perf_Governing_Graph
set test_instance_id=__test_instance_id,
tractor_model =__model,
tractor_make=__make
where test_file_ref_no=__file_syspk;
v_context := '';
perform mmt_staging2.mmt_insert_db_error ( null, null, 1001, 'Compegence', __file_syspk ,'PTO','PTO_GVG' ,null,'ods', 'fn_PTO_GVG_ODS', v_state, v_msg, v_detail, v_hint, v_context,'success');
return v_context;
EXCEPTION when OTHERS then
GET STACKED DIAGNOSTICS
v_state = returned_sqlstate,
v_msg = message_text,
v_detail = pg_exception_detail,
v_hint = pg_exception_hint,
v_context = pg_exception_context;
perform mmt_staging2.mmt_insert_db_error ( null, null, 1001, 'Compegence', __file_syspk ,'PTO','PTO_GVG' ,null,'ods', 'fn_PTO_GVG_ODS', v_state, v_msg, v_detail, v_hint, v_context,'error');
return v_context;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,373 @@
drop function if exists mmt_staging2.fn_PTO_GVG_block;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_GVG_block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS text AS $$
declare __make text;
declare __model text;
declare __client_id int :=p_client_id;
declare __function_id int :=p_function_id;
declare __file_format text :=p_file_format;
declare __sheet_mnemonic text :=p_sheet_mnemonic;
declare __file_syspk int :=p_file_syspk;
declare v_state text;
declare v_msg text;
declare v_detail text;
declare v_hint text;
declare v_context text;
declare _error int;
declare v_block text;
begin
/**************************************************************************************
Function Name:fn_PTO_GVG_block
Function Desc: This function populates data into staging2 blocks
File Format: PTOBST
Sheet Format: PTOBST_GVG
Creation Date: March 25 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_PTO_GVG_block(1,1,'PTOBST','PTOBST_GVG',880)
***************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.stg_specific_table_PTO_GVG;
truncate table mmt_staging2.stg_process_table_PTO_GVG;
truncate table mmt_staging2.PTOBST_GVG_performance_governing_trails_block;
execute 'delete from mmt_ods.fw_jobctrl_file_sheet_block_run_schedule where file_syspk='||p_file_syspk||' and sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a
set row_number_start=null,
row_previous_number=null,
row_read_end=null,
run_time=null
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* transfer data from generic to specific for PTOBST */
execute 'insert into mmt_staging2.stg_specific_table_PTO_GVG
select * from mmt_staging1.mmt_staging_generic_table a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.file_syspk='||p_file_syspk||'';
/* trimming data */
update mmt_staging2.stg_specific_table_PTO_GVG set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_PTO_GVG set column3 = TRIM (LEADING FROM column3 );
update mmt_ods.mmt_config set F1_modified = TRIM (TRAILING FROM F1_modified) ;
update mmt_ods.mmt_config set F1_modified = TRIM (LEADING FROM F1_modified) ;
update mmt_ods.mmt_config set F1_source=F1_modified ;
update mmt_ods.mmt_config set F1_source = TRIM (TRAILING FROM F1_source);
update mmt_ods.mmt_config set F1_source = TRIM (LEADING FROM F1_source);
execute 'update mmt_ods.mmt_config a
set row_number_start=(select min(b.row_number)
from mmt_staging2.stg_specific_table_PTO_GVG b
where trim(upper(F1_modified))=trim(upper(column2))
and b.is_rownumber_fetched is null)
where a.row_number_start is null
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* keyword match in config table*/
execute 'update mmt_staging2.stg_specific_table_PTO_GVG a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_modified))=trim(upper(column3))
and b.row_number_start=a.row_number
and is_rownumber_fetched is null
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a set row_previous_number=row_number_start-1
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a
set row_read_end= (select b.row_number_start
from mmt_ods.mmt_config b
where b.syspk=a.syspk+1 and file_format='''||p_file_format||''' and sheet_mnemonic='''||p_sheet_mnemonic||''' )
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* config file last field update as null otherwise it picks up next format row number*/
execute 'update mmt_ods.mmt_config a
set row_read_end = null ,run_time=current_timestamp
where f1_modified =''Graphs - for Example''
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* tagging ranks*/
execute 'insert into mmt_staging2.stg_process_table_PTO_GVG
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_GVG a
join mmt_ods.mmt_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=''Governing Trails on Boost Mode''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_GVG
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_GVG a
join mmt_ods.mmt_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=''Graphs - for Example''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
select column3 into __make from mmt_staging2.stg_process_table_PTO_report a
where rank_tag='PTOBST_RPT_test_tractor_specifiactions' and rank=3 ;
select column4 into __model from mmt_staging2.stg_process_table_PTO_report a
where rank_tag='PTOBST_RPT_test_tractor_specifiactions' and rank=3;
/* block PTOBST_GVG_performance_governing_trails_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_GVG_performance_governing_trails_block',__file_format,__sheet_mnemonic,1);
v_block := 'PTOBST_GVG_performance_governing_trails_block';
insert into mmt_staging2.PTOBST_GVG_performance_governing_trails_block
(
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10,
c11,
c12,
c13,
c14,
c15,
c16,
c17,
c18,
c19,
c20,
c21,
c22,
c23,
c24,
c25,
c26,
c27,
c28,
c29,
c30,
c31,
c32,
c33,
c34,
c35,
c36,
rank
)
select column2,
column3,
column4,
column5,
column6,
column7,
column8,
column9,
column10,
column11,
column12,
column13,
column14,
column15,
column16,
column17,
column18,
column19,
column20,
column21,
column22,
column23,
column24,
column25,
column26,
column27,
column28,
column29,
column30,
column31,
column32,
column33,
column34,
column35,
column36,
rank
from mmt_staging2.stg_process_table_PTO_GVG a
where rank_tag='PTOBST_GVG_performance_governing_trails';
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set test_condition=c2
where rank=1;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set c2=null
where rank=1;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_GVG_performance_governing_trails_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set c1=c2 where rank=4;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block a
set c1= b.first_value from (SELECT
rank, c1, value_partition, first_value(c1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c1,
sum(case when c1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_GVG_performance_governing_trails_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set c7_1=c7 where rank=4;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block a
set c7_1= b.first_value from (SELECT
rank, c7_1, value_partition, first_value(c7_1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c7_1,
sum(case when c7_1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_GVG_performance_governing_trails_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set c12_1=c12 where rank=4;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block a
set c12_1= b.first_value from (SELECT
rank, c12_1, value_partition, first_value(c12_1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c12_1,
sum(case when c12_1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_GVG_performance_governing_trails_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set c17_1=c17 where rank=4;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block a
set c17_1= b.first_value from (SELECT
rank, c17_1, value_partition, first_value(c17_1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c17_1,
sum(case when c17_1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_GVG_performance_governing_trails_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set c22_1=c22 where rank=4;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block a
set c22_1= b.first_value from (SELECT
rank, c22_1, value_partition, first_value(c22_1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c22_1,
sum(case when c22_1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_GVG_performance_governing_trails_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set c27_1=c27 where rank=4;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block a
set c27_1= b.first_value from (SELECT
rank, c27_1, value_partition, first_value(c27_1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c27_1,
sum(case when c27_1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_GVG_performance_governing_trails_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set c32_1=c32 where rank=4;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block a
set c32_1= b.first_value from (SELECT
rank, c32_1, value_partition, first_value(c32_1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c32_1,
sum(case when c32_1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_GVG_performance_governing_trails_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block
set ods_record=0 where rank in (1,2,3,4);
execute 'update mmt_staging2.PTOBST_GVG_performance_governing_trails_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_GVG_performance_governing_trails_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_GVG_performance_governing_trails_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_GVG_performance_governing_trails_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_GVG_performance_governing_trails_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block set make=__make;
update mmt_staging2.PTOBST_GVG_performance_governing_trails_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_GVG_performance_governing_trails_block');
v_context := '';
perform mmt_staging2.mmt_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_format,__sheet_mnemonic ,null,'stg2', 'fn_PTO_GVG_block', v_state, v_msg, v_detail, v_hint, v_context,'success');
return v_context;
EXCEPTION when OTHERS then
GET STACKED DIAGNOSTICS
v_state = returned_sqlstate,
v_msg = message_text,
v_detail = pg_exception_detail,
v_hint = pg_exception_hint,
v_context = pg_exception_context;
perform mmt_staging2.mmt_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_format,__sheet_mnemonic ,v_block,'stg2', 'fn_PTO_GVG_block', v_state, v_msg, v_detail, v_hint, v_context,'error');
return v_context;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,188 @@
drop function if exists mmt_staging2.fn_PTO_MPM_block;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_MPM_block(p_client_id int,p_function_id int, p_file_format text,p_sheet_mnemonic text, p_file_syspk int)
RETURNS text AS $$
declare __make text;
declare __model text;
declare __client_id int :=p_client_id;
declare __function_id int :=p_function_id;
declare __file_format text :=p_file_format;
declare __sheet_mnemonic text :=p_sheet_mnemonic;
declare __file_syspk int :=p_file_syspk;
declare v_state text;
declare v_msg text;
declare v_detail text;
declare v_hint text;
declare v_context text;
declare _error int;
declare v_block text;
begin
/**************************************************************************************
Function Name:fn_PTO_MPM_block
Function Desc: This function populates data into staging2 blocks
File Format: PTOBST
Sheet Format: PTOBST_MPM
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_PTO_MPM_block(1,1,'PTOBST','PTOBST_MPM',880)
***************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.stg_specific_table_PTO_MPM;
truncate table mmt_staging2.stg_process_table_PTO_MPM;
truncate table mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block;
execute 'delete from mmt_ods.fw_jobctrl_file_sheet_block_run_schedule where file_syspk='||p_file_syspk||' and sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a
set row_number_start=null,
row_previous_number=null,
row_read_end=null,
run_time=null
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* transfer data from generic to specific for PTOBST */
execute 'insert into mmt_staging2.stg_specific_table_PTO_MPM
select * from mmt_staging1.mmt_staging_generic_table a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.file_syspk='||p_file_syspk||'';
/* trimming data */
update mmt_staging2.stg_specific_table_PTO_MPM set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_PTO_MPM set column3 = TRIM (LEADING FROM column3 );
update mmt_ods.mmt_config set F1_modified = TRIM (TRAILING FROM F1_modified) ;
update mmt_ods.mmt_config set F1_modified = TRIM (LEADING FROM F1_modified) ;
update mmt_ods.mmt_config set F1_source=F1_modified ;
update mmt_ods.mmt_config set F1_source = TRIM (TRAILING FROM F1_source);
update mmt_ods.mmt_config set F1_source = TRIM (LEADING FROM F1_source);
/* keyword match in config table*/
execute 'update mmt_ods.mmt_config a
set row_number_start=(select min(b.row_number)
from mmt_staging2.stg_specific_table_PTO_MPM b
where trim(upper(F1_modified))=trim(upper(column2))
and b.is_rownumber_fetched is null)
where a.row_number_start is null
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* reverese update*/
execute 'update mmt_staging2.stg_specific_table_PTO_MPM a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_modified))=trim(upper(column3))
and b.row_number_start=a.row_number
and is_rownumber_fetched is null
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a set row_previous_number=row_number_start-1
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a
set row_read_end= (select b.row_number_start
from mmt_ods.mmt_config b
where b.syspk=a.syspk+1 and file_format='''||p_file_format||''' and sheet_mnemonic='''||p_sheet_mnemonic||''' )
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* config file last field update as null otherwise it picks up next format row number*/
execute 'update mmt_ods.mmt_config a
set row_read_end = null ,run_time=current_timestamp
where f1_modified =''Performance - Boost Mode @ Natural Ambient''
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* tagging ranks*/
execute 'insert into mmt_staging2.stg_process_table_PTO_MPM
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_MPM a
join mmt_ods.mmt_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=''Performance - Boost Mode @ Natural Ambient''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
select column3 into __make from mmt_staging2.stg_process_table_PTO_report a
where rank_tag='PTOBST_RPT_test_tractor_specifiactions' and rank=3 ;
select column4 into __model from mmt_staging2.stg_process_table_PTO_report a
where rank_tag='PTOBST_RPT_test_tractor_specifiactions' and rank=3;
/* block - PTOBST_MPM_performance_boost_natuaral_block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_MPM_performance_boost_natuaral_block',__file_format,__sheet_mnemonic,1);
v_block :='PTOBST_MPM_performance_boost_natuaral_block';
insert into mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block
(
c2,
c3,
c4,
c5,
rank
)
select column2,column3,column4 ,column5,rank from mmt_staging2.stg_process_table_PTO_MPM
where rank_tag='PTOBST_MPM_performance_boost_natuaral';
update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block
set test_condition=c2
where rank=1;
update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block
set c2=null
where rank=1;
update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block
set ods_record=0
where rank in (1,2);
execute 'update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block set make=__make;
update mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_MPM_performance_boost_natuaral_block');
v_context := '';
perform mmt_staging2.mmt_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_format,__sheet_mnemonic ,null,'stg2', 'fn_PTO_MPM_block', v_state, v_msg, v_detail, v_hint, v_context,'success');
return v_context;
EXCEPTION when OTHERS then
GET STACKED DIAGNOSTICS
v_state = returned_sqlstate,
v_msg = message_text,
v_detail = pg_exception_detail,
v_hint = pg_exception_hint,
v_context = pg_exception_context;
perform mmt_staging2.mmt_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_format,__sheet_mnemonic ,v_block,'stg2', 'fn_PTO_MPM_block', v_state, v_msg, v_detail, v_hint, v_context,'error');
return v_context;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,72 @@
drop function if exists mmt_staging2.fn_PTO_MPM_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_MPM_ODS(p_file_syspk int)
RETURNS text AS $$
declare __test_instance_id int;
declare __file_syspk int;
declare __make text;
declare __model text;
declare v_state text;
declare v_msg text;
declare v_detail text;
declare v_hint text;
declare v_context text;
declare _error int;
begin
__file_syspk := p_file_syspk;
/*************************************************************
Function Name:fn_PTO_MPM_ODS
Function Desc: This function populates data into ODS blocks
File Format: PTOBST
Sheet Format: PTOBST_MPM
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_PTO_MPM_ODS(880)
***************************************************************/
select tractor_model into __model from mmt_ods.test_instance_tractor_info where test_file_ref_no =__file_syspk;
select tractor_make into __make from mmt_ods.test_instance_tractor_info where test_file_ref_no =__file_syspk;
insert into mmt_ods.PTO_Multipoint_Mapping
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make ,tractor_model ,
test_condition,
engine_speed_rpm,
engine_load_pct,
sfc_gm_per_hp_hr,
fuel_consumption_ltr_per_hr
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,test_condition,
c2::numeric,c3::numeric,c4::numeric,c5::numeric
from mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block
where ods_record=1 ;
select file_syspk into __file_syspk from mmt_staging2.PTOBST_RPT_tractor_specs_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.PTO_Multipoint_Mapping
set test_instance_id=__test_instance_id,
tractor_model =__model,
tractor_make=__make
where test_file_ref_no=__file_syspk;
v_context := '';
perform mmt_staging2.mmt_insert_db_error ( null, null, 1001, 'Compegence', __file_syspk ,'PTO','PTO_MPM' ,null,'ods', 'fn_PTO_MPM_ODS', v_state, v_msg, v_detail, v_hint, v_context,'success');
return v_context;
EXCEPTION when OTHERS then
GET STACKED DIAGNOSTICS
v_state = returned_sqlstate,
v_msg = message_text,
v_detail = pg_exception_detail,
v_hint = pg_exception_hint,
v_context = pg_exception_context;
perform mmt_staging2.mmt_insert_db_error ( null, null, 1001, 'Compegence', __file_syspk ,'PTO','PTO_MPM' ,null,'ods', 'fn_PTO_MPM_ODS', v_state, v_msg, v_detail, v_hint, v_context,'error');
return v_context;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,479 @@
/*
select mmt_staging2.fn_PTO_PHA_block(1,1,'PTOBST','PTOBST_PHA',183)
select * from mmt_ods.mmt_config where file_format='PTOBST' and sheet_mnemonic ='PTOBST_PHA' order by syspk
select * from mmt_staging1.mmt_staging_generic_table where file_format='PTOBST' and sheet_mnemonic ='PTOBST_PHA'
*/
drop function if exists mmt_staging2.fn_PTO_PHA_block;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_PHA_block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS text AS $$
declare __make text;
declare __model text;
declare __client_id int :=p_client_id;
declare __function_id int :=p_function_id;
declare __file_format text :=p_file_format;
declare __sheet_mnemonic text :=p_sheet_mnemonic;
declare __file_syspk int :=p_file_syspk;
declare v_state text;
declare v_msg text;
declare v_detail text;
declare v_hint text;
declare v_context text;
declare _error int;
declare v_block text;
begin
/**************************************************************************************
Function Name:fn_PTO_PHA_block
Function Desc: This function populates data into staging2 blocks
File Format: PTOBST
Sheet Format: PTOBST_PHA
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_PTO_PHA_block(1,1,'PTOBST','PTOBST_PHA',880)
***************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.stg_specific_table_PTO_PHA;
truncate table mmt_staging2.stg_process_table_PTO_PHA;
truncate table mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_int;
truncate table mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block;
truncate table mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block;
truncate table mmt_staging2.PTOBST_PHA_varying_speed_test_block;
truncate table mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block;
execute 'delete from mmt_ods.fw_jobctrl_file_sheet_block_run_schedule where file_syspk='||p_file_syspk||' and sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a
set row_number_start=null,
row_previous_number=null,
row_read_end=null,
run_time=null
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* transfer data from generic to specific for PTOBST */
execute 'insert into mmt_staging2.stg_specific_table_PTO_PHA
select * from mmt_staging1.mmt_staging_generic_table a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.file_syspk='||p_file_syspk||'';
/* trimming data */
update mmt_staging2.stg_specific_table_PTO_PHA set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_PTO_PHA set column3 = TRIM (LEADING FROM column3 );
update mmt_ods.mmt_config set F1_modified = TRIM (TRAILING FROM F1_modified) ;
update mmt_ods.mmt_config set F1_modified = TRIM (LEADING FROM F1_modified) ;
update mmt_ods.mmt_config set F1_source=F1_modified ;
update mmt_ods.mmt_config set F1_source = TRIM (TRAILING FROM F1_source);
update mmt_ods.mmt_config set F1_source = TRIM (LEADING FROM F1_source);
/* keyword match in config table*/
execute 'update mmt_ods.mmt_config a
set row_number_start=(select min(b.row_number)
from mmt_staging2.stg_specific_table_PTO_PHA b
where trim(upper(F1_modified))=trim(upper(column2))
and b.is_rownumber_fetched is null)
where a.row_number_start is null
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* update config files for row numbers start, end */
execute 'update mmt_staging2.stg_specific_table_PTO_PHA a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_modified))=trim(upper(column3))
and b.row_number_start=a.row_number
and is_rownumber_fetched is null
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a set row_previous_number=row_number_start-1
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a
set row_read_end= (select b.row_number_start
from mmt_ods.mmt_config b
where b.syspk=a.syspk+1 and file_format='''||p_file_format||''' and sheet_mnemonic='''||p_sheet_mnemonic||''' )
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* config file last field update as null otherwise it picks up next format row number*/
execute 'update mmt_ods.mmt_config a
set row_read_end = null ,run_time=current_timestamp
where f1_modified =''Engine Oil Consumption''
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_PTO_PHA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_PHA a
join mmt_ods.mmt_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=''KEY Performance Parameters''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PHA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_PHA a
join mmt_ods.mmt_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=''2Hrs Max Power Test''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PHA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag from mmt_staging2.stg_specific_table_PTO_PHA a
join mmt_ods.mmt_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=''Varying Speed Test''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PHA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag from mmt_staging2.stg_specific_table_PTO_PHA a
join mmt_ods.mmt_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 Oil Consumption''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/*
execute format('select column6 from mmt_staging2.stg_process_table_PTO a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and rank_tag=''PTO_test_tractor_specifications'' and trim(column4)=''Make''') into __make;
execute format('select column6 from mmt_staging2.stg_process_table_PTO a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and rank_tag=''PTO_test_tractor_specifications'' and trim(column4)=''Model''') into __model;
*/
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_PTO_report a
where rank_tag='PTOBST_RPT_test_tractor_specifiactions' and rank=3 ;
select column4 into __model from mmt_staging2.stg_process_table_PTO_report a
where rank_tag='PTOBST_RPT_test_tractor_specifiactions' and rank=3;
/* int data loading PTOBST_PHA_key_perfomrance_parameters_int */
insert into mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_int
( file_syspk,c1,c2,rank)
select file_syspk,column2,column5,rank from mmt_staging2.stg_process_table_PTO_PHA
where rank_tag = 'PTOBST_PHA_KEY_performance_parameters' and rank<>1
union
select file_syspk,column8,column12,rank from mmt_staging2.stg_process_table_PTO_PHA
where rank_tag = 'PTOBST_PHA_KEY_performance_parameters' and rank<>1
union
select file_syspk,column13,column16,rank from mmt_staging2.stg_process_table_PTO_PHA
where rank_tag = 'PTOBST_PHA_KEY_performance_parameters' and rank<>1
union
select file_syspk,column17,column20,rank from mmt_staging2.stg_process_table_PTO_PHA
where rank_tag = 'PTOBST_PHA_KEY_performance_parameters' and rank<>1
union
select file_syspk,column21,column24 ,rank from mmt_staging2.stg_process_table_PTO_PHA
where rank_tag = 'PTOBST_PHA_KEY_performance_parameters' and rank<>1
order by rank,column2;
delete from mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_int where c1 is null;
/* block data loading PTOBST_PHA_key_perfomrance_parameters_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PHA_key_perfomrance_parameters_block',__file_format,__sheet_mnemonic,1);
v_block := 'PTOBST_PHA_key_perfomrance_parameters_block';
insert into mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block
(
dummy_f,
Ambient_pressure_mm_of_hg ,
PTO_gear_ratio ,
PTO_power_hp ,
Rated_engine_speed ,
Test_engineer ,
Engine_high_Idle_speed ,
PTO_SFC_gm_hp ,
Relative_humidity ,
Test_bed ,
Backup_Torque ,
Engine_low_idle_speed ,
Exhaust_temperature ,
Place ,
Specific_gravity_of_Fuel ,
back_pressure ,
Dyno_Constant ,
Engine_oil_temp ,
Maximum_Equ_Crankshaft ,
Total_run_hrs ,
Coolant_temp ,
Engine_oil_pressure_bar ,
Equ_crankshaft_torque_at_maximum_power ,
Test_date
)
SELECT *
FROM crosstab(
'SELECT unnest(''{c1,c2}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[c1::text,c2::text]) AS val
FROM mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_int
ORDER BY generate_series(1,15),2'
) t (col text,a1 text,a2 text,a3 text,a4 text,a5 text,
a6 text,a7 text,a8 text,a9 text,a10 text,a11 text,a12 text,a13 text,a14 text,
a15 text,a16 text,a17 text,a18 text,a19 text,a20 text,a21 text,a22 text,a23 text);
delete from mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block where dummy_f is null;
update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set ods_record=0 where dummy_f='c1';
update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set test_condition='key_performance_parameters';
execute 'update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set make=__make;
update mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PHA_key_perfomrance_parameters_block');
/* block - PTOBST_PHA_2Hrs_max_power_test_block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PHA_2Hrs_max_power_test_block',__file_format,__sheet_mnemonic,2);
v_block := 'PTOBST_PHA_2Hrs_max_power_test_block';
insert into mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block
(
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10,
c11,
c12,
c13,
c14,
c15,
c16,
c17,
c18,
c19,
c20,
c21,
c22,
c23,
c24,
c25,
rank
)
select column2,
column3,
column4,
column5,
column6,
column7,
column8,
column9,
column10,
column11,
column12,
column13,
column14,
column15,
column16,
column17,
column18,
column19,
column20,
column21,
column22,
column23,
column24,
column25,
rank
from mmt_staging2.stg_process_table_PTO_PHA
where rank_tag = 'PTOBST_PHA_2Hrs_max_power_test';
update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block
set test_condition=c2 where rank=1;
update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block set ods_record=0 where
rank in (1,2,3,4);
execute 'update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block set make=__make;
update mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PHA_2Hrs_max_power_test_block');
/* block - PTOBST_PHA_varying_speed_test_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PHA_varying_speed_test_block',__file_format,__sheet_mnemonic,3);
v_block := 'PTOBST_PHA_varying_speed_test_block';
insert into mmt_staging2.PTOBST_PHA_varying_speed_test_block
(
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10,
c11,
c12,
c13,
c14,
c15,
c16,
c17,
c18,
c19,
c20,
c21,
c22,
c23,
c24,
c25,
rank
)
select column2,
column3,
column4,
column5,
column6,
column7,
column8,
column9,
column10,
column11,
column12,
column13,
column14,
column15,
column16,
column17,
column18,
column19,
column20,
column21,
column22,
column23,
column24,
column25,
rank
from mmt_staging2.stg_process_table_PTO_PHA
where rank_tag='PTOBST_PHA_varying_speed_test';
update mmt_staging2.PTOBST_PHA_varying_speed_test_block
set test_condition=c2 where rank=1;
update mmt_staging2.PTOBST_PHA_varying_speed_test_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PHA_varying_speed_test_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PHA_varying_speed_test_block set ods_record=0 where
rank in (1,2,3,4);
execute 'update mmt_staging2.PTOBST_PHA_varying_speed_test_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PHA_varying_speed_test_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PHA_varying_speed_test_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PHA_varying_speed_test_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PHA_varying_speed_test_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PHA_varying_speed_test_block set make=__make;
update mmt_staging2.PTOBST_PHA_varying_speed_test_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PHA_varying_speed_test_block');
/* block PTOBST_PHA_Engine_oil_consumption_block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PHA_Engine_oil_consumption_block',__file_format,__sheet_mnemonic,4);
v_block := 'PTOBST_PHA_Engine_oil_consumption_block';
insert into mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block
(
c2,
c3,c5,
rank
)
select column2,column3,column5 ,rank from mmt_staging2.stg_process_table_PTO_PHA
where rank_tag='PTOBST_PHA_Engine_oil_consumption';
update mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block set ods_record=0 where
rank in (1,2);
execute 'update mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block set make=__make;
update mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PHA_Engine_oil_consumption_block');
v_context := '';
perform mmt_staging2.mmt_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_format,__sheet_mnemonic ,null,'stg2', 'fn_PTO_PHA_block', v_state, v_msg, v_detail, v_hint, v_context,'success');
return v_context;
EXCEPTION when OTHERS then
GET STACKED DIAGNOSTICS
v_state = returned_sqlstate,
v_msg = message_text,
v_detail = pg_exception_detail,
v_hint = pg_exception_hint,
v_context = pg_exception_context;
perform mmt_staging2.mmt_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_format,__sheet_mnemonic ,v_block,'stg2', 'fn_PTO_PHA_block', v_state, v_msg, v_detail, v_hint, v_context,'error');
return v_context;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,155 @@
drop function if exists mmt_staging2.fn_PTO_PHA_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_PHA_ODS(p_file_syspk int)
RETURNS text AS $$
declare __test_instance_id int;
declare __file_syspk int;
declare __make text;
declare __model text;
declare v_state text;
declare v_msg text;
declare v_detail text;
declare v_hint text;
declare v_context text;
declare _error int;
begin
__file_syspk := p_file_syspk;
/*************************************************************
Function Name:fn_PTO_PHA_ODS
Function Desc: This function populates data into ODS blocks
File Format: PTOBST
Sheet Format: PTOBST_PHA
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_PTO_PHA_ODS(880)
***************************************************************/
SET search_path TO mmt_staging2;
select tractor_model into __model from mmt_ods.test_instance_tractor_info where test_file_ref_no =__file_syspk;
select tractor_make into __make from mmt_ods.test_instance_tractor_info where test_file_ref_no =__file_syspk;
insert into mmt_ods.PTO_Key_Perf_Parameters
(client_id,function_id,test_condtion,test_file_ref_no,
tractor_model,tractor_make,pto_gear_ratio,specific_gravity_of_fuel,dyno_constant,pto_power_hp,
pto_sfc_gm_per_hp_hr,backup_torque_pct,engine_oil_temp_c,coolant_temp_c,rated_engine_speed_rpm,
engine_high_idle_speed_rpm,engine_low_idle_speed_rpm,maximum_equi_crankshaft_torque_nm,
equi_crankshaft_torque_at_max_power_nm,ambient_presure_mm_of_hg,related_humidity_pct,
exhaust_temperature_c,back_pressure_mm_of_hg,engine_oil_pressure_bar,test_engineer,test_bed,
location_name,total_run_hrs,test_date,test_file_format,test_file_sheet_format
)
select
client_id,function_id,test_condition,file_syspk,
model,make,pto_gear_ratio::numeric,specific_gravity_of_fuel::numeric,dyno_constant::numeric,pto_power_hp::numeric,
pto_sfc_gm_hp::numeric,backup_torque::numeric,engine_oil_temp::numeric,coolant_temp::numeric,
rated_engine_speed::numeric,engine_high_idle_speed::numeric,engine_low_idle_speed::numeric,
maximum_equ_crankshaft::numeric,equ_crankshaft_torque_at_maximum_power::numeric,
ambient_pressure_mm_of_hg::numeric,relative_humidity::numeric,
exhaust_temperature::numeric,back_pressure::numeric,engine_oil_pressure_bar::numeric,test_engineer,test_bed,
place,total_run_hrs::int, to_Date(test_Date, 'DD-MM-YYYY'),file_format,sheet_mnemonic
from mmt_staging2.PTOBST_PHA_key_perfomrance_parameters_block
where ods_record=1;
/* block */
insert into mmt_ods.PTO_Perf_Results
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
pto_test_type,serial_number,speed_engine_rpm,
speed_pto_rpm,torque_n_m,torque_kg_m,power_kw,
power_hp,eq_crank_torque_nm,fuel_consumption_g_per_min,fuel_consumption_kg_per_hr,
fuel_consumption_ltr_per_hr,fuel_consumption_sfc_kg_per_kwh,fuel_consumption_sfc_g_per_hph,
sp_energy_kwh_per_ltr,temperatures_fuel_c,temperatures_ambient_c,temperatures_air_in_c,
temperatures_water_outlet_c,temperatures_exh_c,engine_oil_c,pressure_ambient_mm_of_hg,pressure_exh_mm_of_hg,
pressure_lub_oil_bar,rh_pct
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
test_condition,c2,c3::numeric,c4::numeric,c5::numeric,c6::numeric,c7::numeric,c8::numeric,c9::numeric,c10::numeric,
c11::numeric,
c12::numeric,c13::numeric,c14::numeric,c15::numeric,c16::numeric,c17::numeric,c18::numeric,
c19::numeric,c20::numeric,c21::numeric,c22::numeric,c23::numeric,c24::numeric,c25::numeric
from mmt_staging2.PTOBST_PHA_2Hrs_max_power_test_block
where ods_record=1 ;
/* block */
insert into mmt_ods.PTO_Perf_Results
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
pto_test_type,serial_number,speed_engine_rpm,
speed_pto_rpm,torque_n_m,torque_kg_m,power_kw,
power_hp,eq_crank_torque_nm,fuel_consumption_g_per_min,fuel_consumption_kg_per_hr,
fuel_consumption_ltr_per_hr,fuel_consumption_sfc_kg_per_kwh,fuel_consumption_sfc_g_per_hph,
sp_energy_kwh_per_ltr,temperatures_fuel_c,temperatures_ambient_c,temperatures_air_in_c,
temperatures_water_outlet_c,temperatures_exh_c,engine_oil_c,pressure_ambient_mm_of_hg,pressure_exh_mm_of_hg,
pressure_lub_oil_bar,rh_pct
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
test_condition,c2,c3::numeric,c4::numeric,c5::numeric,c6::numeric,c7::numeric,c8::numeric,c9::numeric,c10::numeric,
c11::numeric,
c12::numeric,c13::numeric,c14::numeric,c15::numeric,c16::numeric,c17::numeric,c18::numeric,
c19::numeric,c20::numeric,c21::numeric,c22::numeric,c23::numeric,c24::numeric,c25::numeric
from mmt_staging2.PTOBST_PHA_varying_speed_test_block
where ods_record=1 ;
/* block */
insert into mmt_ods.pto_engine_oil_consumption
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
srl_no,
oil_consumption_gm_per_hr,
oil_consumption_pct_of_fuel_consumption
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
c2::int,c3::numeric,c5::numeric
from mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block
where ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.PTOBST_RPT_tractor_specs_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.PTO_Key_Perf_Parameters
set test_instance_id=__test_instance_id,
tractor_model =__model,
tractor_make=__make
where test_file_ref_no=__file_syspk;
update mmt_ods.PTO_Perf_Results
set test_instance_id=__test_instance_id,
tractor_model =__model,
tractor_make=__make
where test_file_ref_no=__file_syspk;
update mmt_ods.pto_engine_oil_consumption
set test_instance_id=__test_instance_id,
tractor_model =__model,
tractor_make=__make
where test_file_ref_no=__file_syspk;
v_context := '';
perform mmt_staging2.mmt_insert_db_error ( null, null, 1001, 'Compegence', __file_syspk ,'PTO','PTO_PHA' ,null,'ods', 'fn_PTO_PHA_ODS', v_state, v_msg, v_detail, v_hint, v_context,'success');
return v_context;
EXCEPTION when OTHERS then
GET STACKED DIAGNOSTICS
v_state = returned_sqlstate,
v_msg = message_text,
v_detail = pg_exception_detail,
v_hint = pg_exception_hint,
v_context = pg_exception_context;
perform mmt_staging2.mmt_insert_db_error ( null, null, 1001, 'Compegence', __file_syspk ,'PTO','PTO_PHA' ,null,'ods', 'fn_PTO_PHA_ODS', v_state, v_msg, v_detail, v_hint, v_context,'error');
return v_context;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,226 @@
drop function if exists mmt_staging2.fn_PTO_PNA_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_PNA_ODS(p_file_syspk int)
RETURNS text AS $$
declare __test_instance_id int;
declare __file_syspk int;
declare __make text;
declare __model text;
declare v_state text;
declare v_msg text;
declare v_detail text;
declare v_hint text;
declare v_context text;
declare _error int;
begin
__file_syspk := p_file_syspk;
/*************************************************************
Function Name:fn_PTO_PNA_ODS
Function Desc: This function populates data into ODS blocks
File Format: PTOBST
Sheet Format: PTOBST_PNA
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_PTO_PNA_ODS(880)
***************************************************************/
SET search_path TO mmt_staging2;
select tractor_model into __model from mmt_ods.test_instance_tractor_info where test_file_ref_no =__file_syspk;
select tractor_make into __make from mmt_ods.test_instance_tractor_info where test_file_ref_no =__file_syspk;
insert into mmt_ods.PTO_Key_Perf_Parameters
(client_id,function_id,test_condtion,test_file_ref_no,
tractor_model,tractor_make,pto_gear_ratio,specific_gravity_of_fuel,dyno_constant,pto_power_hp,
pto_sfc_gm_per_hp_hr,backup_torque_pct,engine_oil_temp_c,coolant_temp_c,rated_engine_speed_rpm,
engine_high_idle_speed_rpm,engine_low_idle_speed_rpm,maximum_equi_crankshaft_torque_nm,
equi_crankshaft_torque_at_max_Power_Nm,ambient_presure_mm_of_hg,related_humidity_pct,
exhaust_temperature_c,back_pressure_mm_of_hg,engine_oil_pressure_bar,test_engineer,test_bed,
location_name,total_run_hrs,test_date,test_file_format,test_file_sheet_format
)
select
client_id,function_id,test_condition,file_syspk,
model,make,pto_gear_ratio::numeric,specific_gravity_of_fuel::numeric,dyno_constant::numeric,pto_power_hp::numeric,
pto_sfc_gm_hp::numeric,backup_torque::numeric,engine_oil_temp::numeric,coolant_temp::numeric,
rated_engine_speed::numeric,engine_high_idle_speed::numeric,engine_low_idle_speed::numeric,
maximum_equ_crankshaft::numeric,equ_crankshaft_torque_at_maximum_power::numeric,
ambient_pressure_mm_of_hg::numeric,relative_humidity::numeric,
exhaust_temperature::numeric,back_pressure::numeric,engine_oil_pressure_bar::numeric,test_engineer,test_bed,
place,total_run_hrs::int, to_Date(test_Date, 'DD-MM-YYYY'),file_format,sheet_mnemonic
from mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block
where ods_record=1;
/* block */
insert into mmt_ods.PTO_Perf_Results
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
pto_test_type,serial_number,speed_engine_rpm,
speed_pto_rpm,torque_n_m,torque_kg_m,power_kw,
power_hp,eq_crank_torque_nm,fuel_consumption_g_per_min,fuel_consumption_kg_per_hr,
fuel_consumption_ltr_per_hr,fuel_consumption_sfc_kg_per_kwh,fuel_consumption_sfc_g_per_hph,
sp_energy_kwh_per_ltr,temperatures_fuel_c,temperatures_ambient_c,temperatures_air_in_c,
temperatures_water_outlet_c,temperatures_exh_c,engine_oil_c,pressure_ambient_mm_of_hg,pressure_exh_mm_of_hg,
pressure_lub_oil_bar,rh_pct
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
test_condition,c2,c3::int,c4::numeric,c5::numeric,c6::numeric,c7::numeric,c8::numeric,c9::numeric,c10::numeric,
c11::numeric,
c12::numeric,c13::numeric,c14::numeric,c15::numeric,c16::numeric,c17::numeric,c18::numeric,
c19::numeric,c20::numeric,c21::numeric,c22::numeric,c23::numeric,c24::numeric,c25::numeric
from mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block
where ods_record=1;
/* block */
insert into mmt_ods.PTO_Perf_Results
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
pto_test_type,serial_number,speed_engine_rpm,
speed_pto_rpm,torque_n_m,torque_kg_m,power_kw,
power_hp,eq_crank_torque_nm,fuel_consumption_g_per_min,fuel_consumption_kg_per_hr,
fuel_consumption_ltr_per_hr,fuel_consumption_sfc_kg_per_kwh,fuel_consumption_sfc_g_per_hph,
sp_energy_kwh_per_ltr,temperatures_fuel_c,temperatures_ambient_c,temperatures_air_in_c,
temperatures_water_outlet_c,temperatures_exh_c,engine_oil_c,pressure_ambient_mm_of_hg,pressure_exh_mm_of_hg,
pressure_lub_oil_bar,rh_pct
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
test_condition,c2,c3::numeric,c4::numeric,c5::numeric,c6::numeric,c7::numeric,c8::numeric,c9::numeric,c10::numeric,
c11::numeric,
c12::numeric,c13::numeric,c14::numeric,c15::numeric,c16::numeric,c17::numeric,c18::numeric,
c19::numeric,c20::numeric,c21::numeric,c22::numeric,c23::numeric,c24::numeric,c25::numeric
from mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block
where ods_record=1 ;
/*and c2<>'Avg' */
/* block */
insert into mmt_ods.PTO_Perf_Results
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
pto_test_type,serial_number,speed_engine_rpm,
speed_pto_rpm,torque_n_m,torque_kg_m,power_kw,
power_hp,eq_crank_torque_nm,fuel_consumption_g_per_min,fuel_consumption_kg_per_hr,
fuel_consumption_ltr_per_hr,fuel_consumption_sfc_kg_per_kwh,fuel_consumption_sfc_g_per_hph,
sp_energy_kwh_per_ltr,temperatures_fuel_c,temperatures_ambient_c,temperatures_air_in_c,
temperatures_water_outlet_c,temperatures_exh_c,engine_oil_c,pressure_ambient_mm_of_hg,pressure_exh_mm_of_hg,
pressure_lub_oil_bar,rh_pct
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
test_condition,c2,c3::int,c4::numeric,c5::numeric,c6::numeric,c7::numeric,c8::numeric,c9::numeric,c10::numeric,
c11::numeric,
c12::numeric,c13::numeric,c14::numeric,c15::numeric,c16::numeric,c17::numeric,c18::numeric,
c19::numeric,c20::numeric,c21::numeric,c22::numeric,c23::numeric,c24::numeric,c25::numeric
from mmt_staging2.PTOBST_PNA_varying_speed_test_block
where ods_record=1 ;
/* block */
insert into mmt_ods.PTO_Perf_Results
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
pto_test_type,pto_test_sub_type,serial_number,speed_engine_rpm,
speed_pto_rpm,torque_n_m,torque_kg_m,power_kw,
power_hp,eq_crank_torque_nm,fuel_consumption_g_per_min,fuel_consumption_kg_per_hr,
fuel_consumption_ltr_per_hr,fuel_consumption_sfc_kg_per_kwh,fuel_consumption_sfc_g_per_hph,
sp_energy_kwh_per_ltr,temperatures_fuel_c,temperatures_ambient_c,temperatures_air_in_c,
temperatures_water_outlet_c,temperatures_exh_c,engine_oil_c,pressure_ambient_mm_of_hg,pressure_exh_mm_of_hg,
pressure_lub_oil_bar,rh_pct
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
test_condition,c1,c2,c3::numeric,c4::numeric,c5::numeric,c6::numeric,c7::numeric,c8::numeric,c9::numeric,c10::numeric,
c11::numeric,
c12::numeric,c13::numeric,c14::numeric,c15::numeric,c16::numeric,c17::numeric,c18::numeric,
c19::numeric,c20::numeric,c21::numeric,c22::numeric,c23::numeric,c24::numeric,c25::numeric
from mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block
where ods_record=1 ;
/* block */
insert into mmt_ods.PTO_Perf_Results
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
pto_test_type,pto_test_sub_type,serial_number,speed_engine_rpm,
speed_pto_rpm,torque_n_m,torque_kg_m,power_kw,
power_hp,eq_crank_torque_nm,fuel_consumption_g_per_min,fuel_consumption_kg_per_hr,
fuel_consumption_ltr_per_hr,fuel_consumption_sfc_kg_per_kwh,fuel_consumption_sfc_g_per_hph,
sp_energy_kwh_per_ltr,temperatures_fuel_c,temperatures_ambient_c,temperatures_air_in_c,
temperatures_water_outlet_c,temperatures_exh_c,engine_oil_c,pressure_ambient_mm_of_hg,pressure_exh_mm_of_hg,
pressure_lub_oil_bar,rh_pct
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
test_condition,c1,c2,c3::numeric,c4::numeric,c5::numeric,c6::numeric,c7::numeric,c8::numeric,c9::numeric,c10::numeric,
c11::numeric,
c12::numeric,c13::numeric,c14::numeric,c15::numeric,c16::numeric,c17::numeric,c18::numeric,
c19::numeric,c20::numeric,c21::numeric,c22::numeric,c23::numeric,c24::numeric,c25::numeric
from mmt_staging2.PTOBST_PNA_varying_load_block
where ods_record=1 ;
/* block */
insert into mmt_ods.pto_smoke_test
(
client_id,function_id,test_file_ref_no,test_file_format,test_file_sheet_format,
tractor_make,
tractor_model,
engine_speed_rpm,
pto_speed_rpm ,
torque_100_pct ,
torque_80_pct ,
smoke_fsn_100_pct ,
smoke_fsn_80_pct
)
select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
c2::numeric,c3::numeric,c4::numeric,c5::numeric,c6::numeric,c7::numeric
from mmt_staging2.PTOBST_PNA_smoke_test_block
where ods_record=1 ;
select file_syspk into __file_syspk from mmt_staging2.PTOBST_RPT_tractor_specs_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.PTO_Key_Perf_Parameters
set test_instance_id=__test_instance_id,
tractor_model =__model,
tractor_make=__make
where test_file_ref_no=__file_syspk;
update mmt_ods.PTO_Perf_Results
set test_instance_id=__test_instance_id,
tractor_model =__model,
tractor_make=__make
where test_file_ref_no=__file_syspk;
update mmt_ods.pto_smoke_test
set test_instance_id=__test_instance_id,
tractor_model =__model,
tractor_make=__make
where test_file_ref_no=__file_syspk;
v_context := '';
perform mmt_staging2.mmt_insert_db_error ( null, null, 1001, 'Compegence', __file_syspk ,'PTO','PTO_PNA' ,null,'ods', 'fn_PTO_PNA_ODS', v_state, v_msg, v_detail, v_hint, v_context,'success');
return v_context;
EXCEPTION when OTHERS then
GET STACKED DIAGNOSTICS
v_state = returned_sqlstate,
v_msg = message_text,
v_detail = pg_exception_detail,
v_hint = pg_exception_hint,
v_context = pg_exception_context;
perform mmt_staging2.mmt_insert_db_error ( null, null, 1001, 'Compegence', __file_syspk ,'PTO','PTO_PNA' ,null,'ods', 'fn_PTO_PNA_ODS', v_state, v_msg, v_detail, v_hint, v_context,'error');
return v_context;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,837 @@
drop function if exists mmt_staging2.fn_PTO_PNA_block;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_PNA_block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS text AS $$
declare __make text;
declare __model text;
declare __client_id int :=p_client_id;
declare __function_id int :=p_function_id;
declare __file_format text :=p_file_format;
declare __sheet_mnemonic text :=p_sheet_mnemonic;
declare __file_syspk int :=p_file_syspk;
declare v_state text;
declare v_msg text;
declare v_detail text;
declare v_hint text;
declare v_context text;
declare _error int;
declare v_block text;
begin
/**************************************************************************************
Function Name:fn_PTO_PNA_block
Function Desc: This function populates data into staging2 blocks
File Format: PTOBST
Sheet Format: PTOBST_PNA
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_PTO_PNA_block(1,1,'PTOBST','PTOBST_PNA',880)
***************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.stg_specific_table_PTO_PNA;
truncate table mmt_staging2.stg_process_table_PTO_PNA;
truncate table mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_int;
truncate table mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block;
truncate table mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block;
truncate table mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block;
truncate table mmt_staging2.PTOBST_PNA_varying_speed_test_block;
truncate table mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block;
truncate table mmt_staging2.PTOBST_PNA_varying_load_block;
truncate table mmt_staging2.PTOBST_PNA_smoke_test_block ;
execute 'delete from mmt_ods.fw_jobctrl_file_sheet_block_run_schedule where file_syspk='||p_file_syspk||' and sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a
set row_number_start=null,
row_previous_number=null,
row_read_end=null,
run_time=null
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* transfer data from generic to specific for PTOBST */
execute 'insert into mmt_staging2.stg_specific_table_PTO_PNA
select * from mmt_staging1.mmt_staging_generic_table a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.file_syspk='||p_file_syspk||'';
/* trimming data */
update mmt_staging2.stg_specific_table_PTO_PNA set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_PTO_PNA set column3 = TRIM (LEADING FROM column3 );
update mmt_ods.mmt_config set F1_modified = TRIM (TRAILING FROM F1_modified) ;
update mmt_ods.mmt_config set F1_modified = TRIM (LEADING FROM F1_modified) ;
update mmt_ods.mmt_config set F1_source=F1_modified ;
update mmt_ods.mmt_config set F1_source = TRIM (TRAILING FROM F1_source);
update mmt_ods.mmt_config set F1_source = TRIM (LEADING FROM F1_source);
/* keyword match in config table*/
execute 'update mmt_ods.mmt_config a
set row_number_start=(select min(b.row_number)
from mmt_staging2.stg_specific_table_PTO_PNA b
where trim(upper(F1_modified))=trim(upper(column2))
and b.is_rownumber_fetched is null)
where a.row_number_start is null
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* update config files for row numbers start, end */
execute 'update mmt_staging2.stg_specific_table_PTO_PNA a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_modified))=trim(upper(column3))
and b.row_number_start=a.row_number
and is_rownumber_fetched is null
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a set row_previous_number=row_number_start-1
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_ods.mmt_config a
set row_read_end= (select b.row_number_start
from mmt_ods.mmt_config b
where b.syspk=a.syspk+1 and file_format='''||p_file_format||''' and sheet_mnemonic='''||p_sheet_mnemonic||''' )
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* config file last field update as null otherwise it picks up next format row number*/
execute 'update mmt_ods.mmt_config a
set row_read_end = null ,run_time=current_timestamp
where f1_modified =''Smoke Test''
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_PTO_PNA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_PNA a
join mmt_ods.mmt_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=''Key Performance Parameters''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PNA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_PNA a
join mmt_ods.mmt_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=''Max Power Occurring Test''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PNA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag from mmt_staging2.stg_specific_table_PTO_PNA a
join mmt_ods.mmt_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=''2Hrs Max Power Test''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PNA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag from mmt_staging2.stg_specific_table_PTO_PNA a
join mmt_ods.mmt_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=''Varying Speed Test - Full Throttle Performance''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PNA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_PNA a
join mmt_ods.mmt_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=''Part load @ Rated RPM''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PNA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_PNA a
join mmt_ods.mmt_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=''Varying load @ STD. PTO''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_PTO_PNA
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_PTO_PNA a
join mmt_ods.mmt_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=''Smoke Test''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* fetcching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_PTO_report a
where rank_tag='PTOBST_RPT_test_tractor_specifiactions' and rank=3 ;
select column4 into __model from mmt_staging2.stg_process_table_PTO_report a
where rank_tag='PTOBST_RPT_test_tractor_specifiactions' and rank=3;
/* blocks data loading start - PTOBST_PNA_key_perfomrance_parameters_int */
insert into mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_int
( file_syspk,c1,c2,rank)
select file_syspk,column2,column5,rank from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag = 'PTOBST_PNA_key_perfomrance_parameters' and rank<>1
union
select file_syspk,column8,column12,rank from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag = 'PTOBST_PNA_key_perfomrance_parameters' and rank<>1
union
select file_syspk,column13,column16,rank from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag = 'PTOBST_PNA_key_perfomrance_parameters' and rank<>1
union
select file_syspk,column17,column20,rank from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag = 'PTOBST_PNA_key_perfomrance_parameters' and rank<>1
union
select file_syspk,column21,column24 ,rank from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag = 'PTOBST_PNA_key_perfomrance_parameters' and rank<>1
order by rank,column2;
delete from mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_int where c1 is null;
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PNA_key_perfomrance_parameters_block',__file_format,__sheet_mnemonic,1);
v_block := 'PTOBST_PNA_key_perfomrance_parameters_block';
insert into mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block
(
dummy_f,
Ambient_pressure_mm_of_hg ,
PTO_gear_ratio ,
PTO_power_hp ,
Rated_engine_speed ,
Test_engineer ,
Engine_high_Idle_speed ,
PTO_SFC_gm_hp ,
Relative_humidity ,
Test_bed ,
Backup_Torque ,
Engine_low_idle_speed ,
Exhaust_temperature ,
Place ,
Specific_gravity_of_Fuel ,
back_pressure ,
Dyno_Constant ,
Engine_oil_temp ,
Maximum_Equ_Crankshaft ,
Total_run_hrs ,
Coolant_temp ,
Engine_oil_pressure_bar ,
Equ_crankshaft_torque_at_maximum_power ,
Test_date
)
SELECT *
FROM crosstab(
'SELECT unnest(''{c1,c2}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[c1::text,c2::text]) AS val
FROM mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_int
ORDER BY generate_series(1,15),2'
) t (col text,a1 text,a2 text,a3 text,a4 text,a5 text,
a6 text,a7 text,a8 text,a9 text,a10 text,a11 text,a12 text,a13 text,a14 text,
a15 text,a16 text,a17 text,a18 text,a19 text,a20 text,a21 text,a22 text,a23 text);
delete from mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block where dummy_f is null;
update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set ods_record=0 where dummy_f='c1';
update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set test_condition='key_performance_parameters';
execute 'update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set make=__make;
update mmt_staging2.PTOBST_PNA_key_perfomrance_parameters_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PNA_key_perfomrance_parameters_block');
/* blocks data loading start - PTOBST_PNA_boostmode_maxpower_test_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PNA_boostmode_maxpower_test_block',__file_format,__sheet_mnemonic,2);
v_block := 'PTOBST_PNA_boostmode_maxpower_test_block';
insert into mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block
(
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10,
c11,
c12,
c13,
c14,
c15,
c16,
c17,
c18,
c19,
c20,
c21,
c22,
c23,
c24,
c25,
rank
)
select column2,
column3,
column4,
column5,
column6,
column7,
column8,
column9,
column10,
column11,
column12,
column13,
column14,
column15,
column16,
column17,
column18,
column19,
column20,
column21,
column22,
column23,
column24,
column25,
rank
from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag = 'PTOBST_PNA_boostmode_maxpower_test';
update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block
set test_condition=c2 where rank=1;
update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block set ods_record=0 where
rank in (1,2,3,4);
execute 'update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block set make=__make;
update mmt_staging2.PTOBST_PNA_boostmode_maxpower_test_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PNA_boostmode_maxpower_test_block');
/* blocks data loading - PTOBST_PNA_2Hrs_max_power_test_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PNA_2Hrs_max_power_test_block',__file_format,__sheet_mnemonic,3);
v_block := 'PTOBST_PNA_2Hrs_max_power_test_block';
insert into mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block
(
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10,
c11,
c12,
c13,
c14,
c15,
c16,
c17,
c18,
c19,
c20,
c21,
c22,
c23,
c24,
c25,
rank
)
select column2,
column3,
column4,
column5,
column6,
column7,
column8,
column9,
column10,
column11,
column12,
column13,
column14,
column15,
column16,
column17,
column18,
column19,
column20,
column21,
column22,
column23,
column24,
column25,
rank
from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag = 'PTOBST_PNA_2Hrs_max_power_test';
update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block
set test_condition=c2 where rank=1;
update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block set ods_record=0 where
rank in (1,2,3,4);
execute 'update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block set make=__make;
update mmt_staging2.PTOBST_PNA_2Hrs_max_power_test_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PNA_2Hrs_max_power_test_block');
/* blocks data loading - PTOBST_PNA_varying_speed_test_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PNA_varying_speed_test_block',__file_format,__sheet_mnemonic,4);
v_block := 'PTOBST_PNA_varying_speed_test_block';
insert into mmt_staging2.PTOBST_PNA_varying_speed_test_block
(
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10,
c11,
c12,
c13,
c14,
c15,
c16,
c17,
c18,
c19,
c20,
c21,
c22,
c23,
c24,
c25,
rank
)
select column2,
column3,
column4,
column5,
column6,
column7,
column8,
column9,
column10,
column11,
column12,
column13,
column14,
column15,
column16,
column17,
column18,
column19,
column20,
column21,
column22,
column23,
column24,
column25,
rank
from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag='PTOBST_PNA_varying_speed_test';
update mmt_staging2.PTOBST_PNA_varying_speed_test_block
set test_condition=c2 where rank=1;
update mmt_staging2.PTOBST_PNA_varying_speed_test_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PNA_varying_speed_test_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PNA_varying_speed_test_block set ods_record=0 where
rank in (1,2,3,4);
execute 'update mmt_staging2.PTOBST_PNA_varying_speed_test_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PNA_varying_speed_test_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PNA_varying_speed_test_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PNA_varying_speed_test_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PNA_varying_speed_test_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PNA_varying_speed_test_block set make=__make;
update mmt_staging2.PTOBST_PNA_varying_speed_test_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PNA_varying_speed_test_block');
/* blocks data loading start - PTOBST_PNA_part_load_rated_rpm_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PNA_part_load_rated_rpm_block',__file_format,__sheet_mnemonic,5);
v_block := 'PTOBST_PNA_part_load_rated_rpm_block';
insert into mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block
(
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10,
c11,
c12,
c13,
c14,
c15,
c16,
c17,
c18,
c19,
c20,
c21,
c22,
c23,
c24,
c25,
rank
)
select column2,
column3,
column4,
column5,
column6,
column7,
column8,
column9,
column10,
column11,
column12,
column13,
column14,
column15,
column16,
column17,
column18,
column19,
column20,
column21,
column22,
column23,
column24,
column25,
rank
from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag='PTOBST_PNA_part_load_rated_rpm,' ;
update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block set ods_record=0 where
rank in (1,2,3,4);
update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block
set c1 =c3
where c2 is null and ods_record=1;
update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block a
set c1= b.first_value from (SELECT
rank, c1, value_partition, first_value(c1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c1,
sum(case when c1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block
set test_condition=c2 where rank=1;
update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block
set c3 = null,ods_record=0
where c1=c3;
execute 'update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block set make=__make;
update mmt_staging2.PTOBST_PNA_part_load_rated_rpm_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PNA_part_load_rated_rpm_block');
/* block loading data PTOBST_PNA_varying_load_block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PNA_varying_load_block',__file_format,__sheet_mnemonic,6);
v_block := 'PTOBST_PNA_varying_load_block';
insert into mmt_staging2.PTOBST_PNA_varying_load_block
(
c2,
c3,
c4,
c5,
c6,
c7,
c8,
c9,
c10,
c11,
c12,
c13,
c14,
c15,
c16,
c17,
c18,
c19,
c20,
c21,
c22,
c23,
c24,
c25,
rank
)
select column2,
column3,
column4,
column5,
column6,
column7,
column8,
column9,
column10,
column11,
column12,
column13,
column14,
column15,
column16,
column17,
column18,
column19,
column20,
column21,
column22,
column23,
column24,
column25,
rank
from mmt_staging2.stg_process_table_PTO_PNA
where rank_tag='PTOBST_PNA_varying_load,';
update mmt_staging2.PTOBST_PNA_varying_load_block set ods_record=0 where
rank in (1,2,3,4);
update mmt_staging2.PTOBST_PNA_varying_load_block
set c1 =c3
where c2 is null and ods_record=1;
update mmt_staging2.PTOBST_PNA_varying_load_block a
set c1= b.first_value from (SELECT
rank, c1, value_partition, first_value(c1) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
c1,
sum(case when c1 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PNA_varying_load_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PNA_varying_load_block
set test_condition=c2 where rank=1;
update mmt_staging2.PTOBST_PNA_varying_load_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PNA_varying_load_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PNA_varying_load_block
set c3 = null,ods_record=0
where c1=c3;
execute 'update mmt_staging2.PTOBST_PNA_varying_load_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PNA_varying_load_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PNA_varying_load_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PNA_varying_load_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PNA_varying_load_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PNA_varying_load_block set make=__make;
update mmt_staging2.PTOBST_PNA_varying_load_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PNA_varying_load_block');
/* block data loading PTOBST_PNA_smoke_test_block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'PTOBST_PNA_smoke_test_block',__file_format,__sheet_mnemonic,7);
v_block := 'PTOBST_PNA_smoke_test_block';
insert into mmt_staging2.PTOBST_PNA_smoke_test_block
(
c2,
c3,
c4,
c5,
c6,
c7,
rank
)
select
column2,
column3,column4,column5,
column6,column7 ,rank
from mmt_staging2.stg_process_table_PTO_PNA where rank_tag='PTOBST_PNA_smoke_test';
update mmt_staging2.PTOBST_PNA_smoke_test_block
set test_condition=c2 where rank=1;
update mmt_staging2.PTOBST_PNA_smoke_test_block a
set test_condition= b.first_value from (SELECT
rank, test_condition, value_partition, first_value(test_condition) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
test_condition,
sum(case when test_condition is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.PTOBST_PNA_smoke_test_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.PTOBST_PNA_smoke_test_block
set ods_record=0 where rank in (1,2,3);
execute 'update mmt_staging2.PTOBST_PNA_smoke_test_block set client_id='||p_client_id||'';
execute 'update mmt_staging2.PTOBST_PNA_smoke_test_block set function_id='||p_function_id||'';
execute 'update mmt_staging2.PTOBST_PNA_smoke_test_block set file_format='''||p_file_format||'''';
execute 'update mmt_staging2.PTOBST_PNA_smoke_test_block set sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'update mmt_staging2.PTOBST_PNA_smoke_test_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.PTOBST_PNA_smoke_test_block set make=__make;
update mmt_staging2.PTOBST_PNA_smoke_test_block set model=__model;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'PTOBST_PNA_smoke_test_block');
v_context := '';
perform mmt_staging2.mmt_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_format,__sheet_mnemonic ,null,'stg2', 'fn_PTO_PNA_block', v_state, v_msg, v_detail, v_hint, v_context,'success');
return v_context;
EXCEPTION when OTHERS then
GET STACKED DIAGNOSTICS
v_state = returned_sqlstate,
v_msg = message_text,
v_detail = pg_exception_detail,
v_hint = pg_exception_hint,
v_context = pg_exception_context;
perform mmt_staging2.mmt_insert_db_error ( __client_id, __function_id, 1001, 'Compegence', __file_syspk ,__file_format,__sheet_mnemonic ,v_block,'stg2', 'fn_PTO_PNA_block', v_state, v_msg, v_detail, v_hint, v_context,'error');
return v_context;
end
$$ LANGUAGE plpgsql;