398 lines
15 KiB
PL/PgSQL
398 lines
15 KiB
PL/PgSQL
drop function if exists mmt_staging2.fn_FTDRY_SUM_Block ;
|
|
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTDRY_SUM_Block(p_client_id int,p_function_id int, p_file_format text,
|
|
p_sheet_mnemonic text, p_file_syspk int)
|
|
RETURNS void AS $$
|
|
begin
|
|
|
|
SET search_path TO mmt_staging2;
|
|
|
|
delete from mmt_staging2.ftdry_sum_trac_h1_block;
|
|
delete from mmt_staging2.ftdry_sum_implement_block;
|
|
delete from mmt_staging2.ftdry_sum_test_condition_1_block;
|
|
delete from mmt_staging2.ftdry_sum_test_condition_2_block;
|
|
delete from mmt_staging2.ftdry_sum_comments_by_block;
|
|
delete from mmt_staging2.stg_specific_table_ftdry_sum;
|
|
delete from mmt_staging2.stg_process_table_ftdry_sum;
|
|
|
|
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||'''';
|
|
|
|
|
|
|
|
execute 'insert into mmt_staging2.stg_specific_table_ftdry_sum
|
|
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||'';
|
|
|
|
|
|
update mmt_staging2.stg_specific_table_ftdry_sum set column2 = TRIM (TRAILING FROM column2 );
|
|
update mmt_staging2.stg_specific_table_ftdry_sum set column2 = TRIM (LEADING FROM column2 );
|
|
|
|
|
|
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 f1_source = replace(f1_source,''_1'','''')
|
|
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
execute 'update mmt_ods.mmt_config a
|
|
set row_number_start=(select min(b.row_number)
|
|
from mmt_staging2.stg_specific_table_ftdry_sum b
|
|
where F1_source=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||'''';
|
|
|
|
execute 'update mmt_staging2.stg_specific_table_ftdry_sum a
|
|
set is_rownumber_fetched=1
|
|
from mmt_ods.mmt_config b
|
|
where F1_source=column2
|
|
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 f1_source = replace(f1_source,''_2'','''')
|
|
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
execute 'update mmt_ods.mmt_config a
|
|
set row_number_start=(select min(b.row_number)
|
|
from mmt_staging2.stg_specific_table_ftdry_sum b
|
|
where F1_source=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||'''';
|
|
|
|
execute 'update mmt_staging2.stg_specific_table_ftdry_sum a
|
|
set is_rownumber_fetched=1
|
|
from mmt_ods.mmt_config b
|
|
where F1_source=column2
|
|
and b.row_number_start=a.row_number
|
|
and is_rownumber_fetched is null and b.file_format='''||p_file_format||''' and b.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 )
|
|
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 = null where f1_modified =''Test Manager Comments_2'' and
|
|
a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
execute 'update mmt_ods.mmt_config a
|
|
set run_time=current_timestamp where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
execute 'insert into mmt_staging2.stg_process_table_ftdry_sum
|
|
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
|
|
from mmt_staging2.stg_specific_table_ftdry_sum 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=''Tractor Model''
|
|
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
order by a.row_number';
|
|
|
|
|
|
|
|
execute 'insert into mmt_staging2.stg_process_table_ftdry_sum
|
|
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
|
|
from mmt_staging2.stg_specific_table_ftdry_sum 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=''Make of Implement''
|
|
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
order by a.row_number';
|
|
|
|
execute 'insert into mmt_staging2.stg_process_table_ftdry_sum
|
|
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
|
|
from mmt_staging2.stg_specific_table_ftdry_sum 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=''Test Condition_1:''
|
|
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
order by a.row_number';
|
|
|
|
execute 'insert into mmt_staging2.stg_process_table_ftdry_sum
|
|
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
|
|
from mmt_staging2.stg_specific_table_ftdry_sum 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=''Test Engineer Comments_1''
|
|
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
order by a.row_number';
|
|
|
|
execute 'insert into mmt_staging2.stg_process_table_ftdry_sum
|
|
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
|
|
from mmt_staging2.stg_specific_table_ftdry_sum 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=''Test Manager Comments_1''
|
|
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
order by a.row_number';
|
|
|
|
|
|
execute 'insert into mmt_staging2.stg_process_table_ftdry_sum
|
|
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
|
|
from mmt_staging2.stg_specific_table_ftdry_sum 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=''Test Condition_2:''
|
|
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
order by a.row_number';
|
|
|
|
execute 'insert into mmt_staging2.stg_process_table_ftdry_sum
|
|
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
|
|
from mmt_staging2.stg_specific_table_ftdry_sum 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=''Test Engineer Comments_2''
|
|
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
order by a.row_number';
|
|
|
|
execute 'insert into mmt_staging2.stg_process_table_ftdry_sum
|
|
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
|
|
from mmt_staging2.stg_specific_table_ftdry_sum 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=''Test Manager Comments_2''
|
|
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
order by a.row_number';
|
|
|
|
|
|
insert into mmt_staging2.FTDRY_SUM_Trac_H1_Block
|
|
(
|
|
Tractor_Model,
|
|
Tractor_Make,
|
|
Tractor_Engine_HP,
|
|
Rated_RPM,
|
|
Transmission_Type,
|
|
Wheel_Drive_Type,
|
|
FIP_Type,
|
|
Steering_Type,
|
|
Tractor_Weight_kg_Front,
|
|
Tractor_Weight_kg_Rear,
|
|
Tractor_Weight_kg_Total
|
|
)
|
|
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12
|
|
from mmt_staging2.stg_process_table_ftdry_sum
|
|
where rank_tag='FTDRY_SUM_Trac_H1' and rank <> 1;
|
|
|
|
/*delete from mmt_staging2.FTWET_TRS_SPEC_Block where dummy_f is null ;*/
|
|
execute 'update mmt_staging2.FTDRY_SUM_Trac_H1_Block set
|
|
client_id='||p_client_id||',
|
|
function_id='||p_function_id||',
|
|
file_syspk='||p_file_syspk||',
|
|
file_format='''||p_file_format||''',
|
|
sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
|
|
insert into mmt_staging2.FTDRY_SUM_Implement_Block
|
|
(
|
|
Make_of_Implement,
|
|
Implement_Type,
|
|
Implement_Size,
|
|
Hitch_Category,
|
|
Implement_Weight,
|
|
Soil_Type,
|
|
Moisture_Content ,
|
|
Bulk_Density_g_cc ,
|
|
Soil_Cone_index,
|
|
Field_Condition ,
|
|
Season
|
|
)
|
|
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12
|
|
from mmt_staging2.stg_process_table_ftdry_sum
|
|
where rank_tag='FTDRY_SUM_Implement' and rank not in(1,3);
|
|
|
|
/*delete from mmt_staging2.FTDRY_SUM_Implement_Block where dummy_f is null */
|
|
execute 'update mmt_staging2.FTDRY_SUM_Implement_Block set
|
|
client_id='||p_client_id||',
|
|
function_id='||p_function_id||',
|
|
file_syspk='||p_file_syspk||',
|
|
file_format='''||p_file_format||''',
|
|
sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
insert into mmt_staging2.FTDRY_SUM_Test_Condition_1_Block
|
|
(
|
|
dummy_f,
|
|
Test_Condition,
|
|
Test_Date,
|
|
Tractor_Model,
|
|
Engine_RPM_set,
|
|
PTO_RPM_set,
|
|
Gear_Used,
|
|
Nominal_Speed_KMPH,
|
|
Engine_RPM_Drop_on_straight,
|
|
Engine_RPM_Drop_on_turn,
|
|
Depth_of_cut_cm,
|
|
No_load_speed_kmph,
|
|
On_load_speed_kmph,
|
|
wheel_slippage_,
|
|
Fuel_consumption_lit_hr,
|
|
Area_covered_acr_hr,
|
|
Fuel_consumption_lit_Acr,
|
|
M_M_Performance_in_compared_to_respective_competitor_tractors,
|
|
Fuel_consumption_lit_hr_2,
|
|
Area_covered_acr_hr_2,
|
|
Fuel_consumption_lit_Acr_2,
|
|
Trail_Observations,
|
|
Engine_Smoke_on_Load,
|
|
Engine_acceleration_smoke,
|
|
Draft_Response,
|
|
Tractor_Steer_ability,
|
|
Tractor_braking_performance,
|
|
Front_Visibility,
|
|
Implement_Accessibility,
|
|
Front_Wheel_dragging_at_turning,
|
|
Front_end_lifting_during_operation,
|
|
RPM_Recovery_Time,
|
|
Engine_Vibration,
|
|
Engine_Sound,
|
|
Implement_Lifting_Lowering_response,
|
|
Pulverization_Quality,
|
|
Pulverization_Index
|
|
)
|
|
SELECT *
|
|
FROM crosstab(
|
|
'SELECT unnest(''{column3,column4,column5,column6,column7,column8,column9,column10,column11,column12}''::text[]) AS col
|
|
, row_number() OVER ()
|
|
, unnest(ARRAY[column3::text,
|
|
column4::text,column5::text,column6::text,column7::text,column8::text,
|
|
column9::text,column10::text,column11::text,column12::text]) AS val
|
|
FROM mmt_staging2.stg_process_table_ftdry_sum where rank_tag=''FTDRY_SUM_Test_Condition_1''
|
|
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,a_20 text
|
|
,a_21 text,a_22 text,a_23 text,a_24 text,a_25 text,a_26 text,a_27 text,a_28 text,a_29 text,a_30 text,
|
|
a_31 text,a_32 text,a_33 text,a_34 text,a_35 text,a_36 text);
|
|
|
|
delete from mmt_staging2.FTDRY_SUM_Test_Condition_1_Block where dummy_f is null ;
|
|
execute 'update mmt_staging2.FTDRY_SUM_Test_Condition_1_Block set
|
|
client_id='||p_client_id||',
|
|
function_id='||p_function_id||',
|
|
file_syspk='||p_file_syspk||',
|
|
file_format='''||p_file_format||''',
|
|
sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
insert into mmt_staging2.FTDRY_SUM_Test_Condition_2_Block
|
|
(
|
|
dummy_f,
|
|
Test_Condition,
|
|
Test_Date,
|
|
Tractor_Model,
|
|
Engine_RPM_set,
|
|
PTO_RPM_set,
|
|
Gear_Used,
|
|
Nominal_Speed_KMPH,
|
|
Engine_RPM_Drop_on_straight,
|
|
Engine_RPM_Drop_on_turn,
|
|
Depth_of_cut_cm,
|
|
No_load_speed_kmph,
|
|
On_load_speed_kmph,
|
|
wheel_slippage_,
|
|
Fuel_consumption_lit_hr,
|
|
Area_covered_acr_hr,
|
|
Fuel_consumption_lit_Acr,
|
|
M_M_Performance_in_compared_to_respective_competitor_tractors,
|
|
Fuel_consumption_lit_hr_2,
|
|
Area_covered_acr_hr_2,
|
|
Fuel_consumption_lit_Acr_2,
|
|
Trail_Observations,
|
|
Engine_Smoke_on_Load,
|
|
Engine_acceleration_smoke,
|
|
Draft_Response,
|
|
Tractor_Steer_ability,
|
|
Tractor_braking_performance,
|
|
Front_Visibility,
|
|
Implement_Accessibility,
|
|
Front_Wheel_dragging_at_turning,
|
|
Front_end_lifting_during_operation,
|
|
RPM_Recovery_Time,
|
|
Engine_Vibration,
|
|
Engine_Sound,
|
|
Implement_Lifting_Lowering_response,
|
|
Pulverization_Quality,
|
|
Pulverization_Index
|
|
)
|
|
SELECT *
|
|
FROM crosstab(
|
|
'SELECT unnest(''{column3,column4,column5,column6,column7,column8,column9,column10,column11,column12}''::text[]) AS col
|
|
, row_number() OVER ()
|
|
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text,column7::text,column8::text,column9::text,column10::text,column11::text,column12::text]) AS val
|
|
FROM mmt_staging2.stg_process_table_ftdry_sum where rank_tag=''FTDRY_SUM_Test_Condition_2''
|
|
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,a_20 text,a_21 text,
|
|
a_22 text,a_23 text,a_24 text,a_25 text,a_26 text,a_27 text,a_28 text,a_29 text,a_30 text,a_31 text,
|
|
a_32 text,a_33 text,a_34 text,a_35 text,a_36 text);
|
|
|
|
delete from mmt_staging2.FTDRY_SUM_Test_Condition_2_Block where dummy_f is null ;
|
|
execute 'update mmt_staging2.FTDRY_SUM_Test_Condition_2_Block set
|
|
client_id='||p_client_id||',
|
|
function_id='||p_function_id||',
|
|
file_syspk='||p_file_syspk||',
|
|
file_format='''||p_file_format||''',
|
|
sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
insert into mmt_staging2.FTDRY_SUM_Comments_By_Block (dummy_f) values ('dummy');
|
|
|
|
execute 'update mmt_staging2.FTDRY_SUM_Comments_By_Block set Test_Engineer_Comments_1=
|
|
(select column3 from mmt_staging2.stg_process_table_ftdry_sum a
|
|
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
and a.rank_tag=''FTDRY_SUM_Engineer_Comments_1''
|
|
and a.rank=1 ) where dummy_f=''dummy''';
|
|
|
|
execute 'update mmt_staging2.FTDRY_SUM_Comments_By_Block set test_engineer_comments_2=
|
|
(select column3 from mmt_staging2.stg_process_table_ftdry_sum a
|
|
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
and a.rank_tag=''FTDRY_SUM_Engineer_Comments_2''
|
|
and a.rank=1 ) where dummy_f=''dummy''';
|
|
|
|
execute 'update mmt_staging2.FTDRY_SUM_Comments_By_Block set test_manager_comments_1=
|
|
(select column3 from mmt_staging2.stg_process_table_ftdry_sum a
|
|
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
and a.rank_tag=''FTDRY_SUM_Manager_Comments_1''
|
|
and a.rank=1 ) where dummy_f=''dummy''';
|
|
|
|
execute 'update mmt_staging2.FTDRY_SUM_Comments_By_Block set test_manager_comments_2=
|
|
(select column3 from mmt_staging2.stg_process_table_ftdry_sum a
|
|
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
|
|
and a.rank_tag=''FTDRY_SUM_Manager_Comments_2''
|
|
and a.rank=1 ) where dummy_f=''dummy''';
|
|
|
|
|
|
delete from mmt_staging2.FTDRY_SUM_Comments_By_Block where dummy_f is null ;
|
|
execute 'update mmt_staging2.FTDRY_SUM_Comments_By_Block set
|
|
client_id='||p_client_id||',
|
|
function_id='||p_function_id||',
|
|
file_syspk='||p_file_syspk||',
|
|
file_format='''||p_file_format||''',
|
|
sheet_mnemonic='''||p_sheet_mnemonic||'''';
|
|
|
|
end
|
|
$$ LANGUAGE plpgsql;
|
|
|
|
select mmt_staging2.fn_FTDRY_SUM_Block (20,1,'FTDRY','FTDRY_SUM',179);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|