changed scripts in budni and soon

This commit is contained in:
Deepthi
2021-03-30 17:35:08 +05:30
parent 61520e5dfc
commit 1c1e8da68e
39 changed files with 10516 additions and 822 deletions

View File

@@ -0,0 +1,208 @@
drop function if exists mmt_staging2.fn_BUDNI_ARC_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_ARC_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_ARC_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_ARC
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_ARC_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=273;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=273;
delete from mmt_ods.budni_air_cleaner_perf_results where test_file_ref_no=273;
delete from mmt_ods.budni_test_observations where test_file_ref_no=273;
SET search_path TO mmt_staging2;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
ballast_condition
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
tractor_HP::int tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
FIP_type,
steering_type,
Ballast_Condition
from mmt_staging2.BUDNI_ARC_Spec_H1_block;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
type_of_road
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
type_of_track
from
mmt_staging2.BUDNI_ARC_Spec_H1_block;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
rated_rpm,
engine_to_pto_ratio_540_pto
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
rated_rpm::int,
engine_to_pto_ratio engine_to_pto_ratio_540_pto
from mmt_staging2.BUDNI_ARC_Spec_H1_block;
/*block */
insert into mmt_ods.budni_air_cleaner_perf_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
atm_condtion_temperature_c,
atm_condition_pressure_kpa,
atm_condition_relative_humidity_pct,
atm_condtion_mass_of_oil_before_test,
position_of_tractor,
loss_of_oil_g,
oil_pull_over_pct,
engine_oil_pressure
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
Temperature_C,
Pressure_kPa,
Relative_humidity::numeric,
Mass_of_oil_before_test::numeric,
Position_of_tractor,
Loss_of_oil::numeric,
Oil_pull_Over::numeric,
Engine_oil_pressure
from mmt_staging2.budni_arc_perf_atmos_meas_test_block where ods_record=1
order by rank;
insert into mmt_ods.budni_test_observations
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
srl_no,
characteristic,
category_evaluative_or_non_evaluative,
requirements_as_per_is_12207_2008,
values_declared_by_the_applicant_d_rqmt,
as_observed,
whether_meets_the_requirements_yn
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column3,
column4,
column5,
column6,
column7,
column8,
column9
from mmt_staging2.BUDNI_ARC_test_obs_summary_block where ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_ARC_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_air_cleaner_perf_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_test_observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,162 @@
drop function if exists mmt_staging2.fn_BUDNI_DBP_ODS ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_DBP_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_DBP_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_DBP
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_DBP_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=261;
delete from mmt_ods.budni_drawbar_perf_results where test_file_ref_no=261;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
configuration,
Transmission_type,
Wheel_Drive_Type,
Steering_type,
hitch_height_mm,
Ballast_condition
)
select
client_id,
function_id,
file_syspk ,
file_format,
sheet_mnemonic,
column3,
column4,
column7,
column8,
column9,
column11,
column13::int,
column14
from mmt_staging2.BUDNI_DBP_Spec_H1_Block where ods_record =1 ;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
type_of_road
)
select
client_id,
function_id,
file_syspk ,
file_format,
sheet_mnemonic,
column3,
column4,
column15
from mmt_staging2.BUDNI_DBP_Spec_H1_Block where ods_record =1 ;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
Rated_RPM,
engine_to_pto_ratio_540_pto
)
select
client_id,
function_id,
file_syspk ,
file_format,
sheet_mnemonic,
column3,
column4,
column6::int,
column12
from mmt_staging2.BUDNI_DBP_Spec_H1_Block where ods_record =1 ;
insert into mmt_ods.budni_drawbar_perf_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
test_condtion,
gear_used,
travel_speed_km_per_hr,
drawbar_power_kw,
drawbar_pull_kn,
engine_speed_rpm,
wheel_slippage_pct ,
fuel_consumption_kg_per_kwh,
fuel_consumption_ltr_per_hr ,
specific_energy_kwh_per_ltr,
atmosp_conditions_pressure_kpa,
atmosp_conditions_rh_pct,
atmosp_conditions_temp_c,
temp_trans_oil_c,
temp_coolant_c,
temp_fuel_c,
temp_engine_oil_c
)
select
client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,
column2,column3,column4::float,column5::float,column6::float,column7::float,
column8::float,column9::float,column10::float,column11::float,column12,column13,
column14,column15,column16,column17,column18
from mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block where ods_record = 1;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_DBP_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_drawbar_perf_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,315 @@
drop function if exists mmt_staging2.fn_budni_fld_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_budni_fld_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_FLD_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_FLD
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_FLD_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_implement_info where test_file_ref_no=261;
delete from mmt_ods.budni_field_perf_results where test_file_ref_no=261;
delete from mmt_ods.budni_test_observations where test_file_ref_no=261;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
ballast_condition
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
tractor_HP::int tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
FIP_type,
steering_type,
Ballast_Condition
from mmt_staging2.budni_fld_Spec_H1_block;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model
from
mmt_staging2.budni_fld_Spec_H1_block;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
rated_rpm,
engine_to_pto_ratio_540_pto
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
rated_rpm::int,
engine_to_pto_ratio engine_to_pto_ratio_540_pto
from mmt_staging2.budni_fld_Spec_H1_block;
insert into mmt_ods.test_instance_implement_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
name_of_implement,
make_of_implement,
type_of_implement,
no_of_disc_blades_bottoms,
type_of_disc_blades_bottoms,
size_of_bottoms_blades_mm,
size_of_bottoms_blades2_mm,
size_of_bottoms_blades3_mm,
spacing_of_bottoms_flanges_mm,
span_for_mounted_implement_mm,
mast_height_for_mounted_implement_mm,
length_mm,
width_mm,
height_mm,
gross_mass_kg
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
items,
Make,
type,
No_of_Disc_blades,
Type_of_Disc_blades,
Size_of_bottoms_blades_1_mm::numeric,
Size_of_bottoms_blades_2_mm::numeric,
Size_of_bottoms_blades_3_mm::numeric,
Spacing_of_bottoms_flanges_mm::numeric,
Lower_hitch_point_span_mm::numeric,
Mast_height_mm,
Overall_dimensions_mm_length::numeric,
Overall_dimensions_mm_Width::numeric,
Overall_dimensions_mm_Height::numeric,
Gross_mass_kg::numeric
from mmt_staging2.BUDNI_FLD_Impl_Test_Block
order by rank;
insert into mmt_ods.test_instance_implement_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
name_of_implement,
type_of_implement,
cage_wheel_dia_mm,
cage_wheel_width_mm,
no_and_types_of_lugs,
size_of_angle_section_mm,
size_of_angle_section2_mm,
size_of_angle_section3_mm,
length_of_lugs_mm,
spacing_of_lugs_mm,
cage_wheel_weight_kg
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
Items,
type,
Dia_mm::numeric,
Width_mm::numeric,
No_and_types_of_lugs,
Size_of_angle_section_1_mm::numeric,
Size_of_angle_section_2_mm::numeric,
Size_of_angle_section_3_mm::numeric,
Length_of_lugs_mm::numeric,
Spacing_of_lugs_mm::numeric,
Weight_of_each_cage_wheels_kg::numeric
from mmt_staging2.BUDNI_FLD_Cage_Wheel_Block
order by rank;
insert into mmt_ods.budni_field_perf_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
operation_type,
type_of_soil,
avg_soil_moisture_pct_,
bulk_density_of_soil_g_per_cc,
cone_index_kgf_per_sq_cm,
gear_used,
avg_speed_of_operation_kmph,
avg_travel_reduction_pct,
avg_depth_of_puddle_cm,
avg_working_width_cm,
area_covered_ha_per_hr,
fuel_consumption_ltr_per_hr,
fuel_consumption_ltr_per_ha,
avg_draft_of_implement_kn
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
Parameter_operation,
Type_of_soil,
Av_soil_moisture_Av_depth_of_standing_water_cm,
Bulk_density_of_soil_g_cc,
Cone_index_kgf_sq_cm_Puddling_index,
Gear_used,
Av_speed_of_operation_kmph,
Av_wheel_slip_Av_Travel_reduction,
Av_depth_of_cut_cm_Av_Depth_of_puddle_cm,
Av_working_width_cm,
Area_covered_ha_h,
Fuel_consumption_l_h,
Fuel_consumption_l_ha,
Av_draft_of_implement_kN
from mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Block;
insert into mmt_ods.budni_test_observations
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
srl_no,
characteristic,
category_evaluative_or_non_evaluative,
requirements_as_per_is_12207_2008,
values_declared_by_the_applicant_d_rqmt,
as_observed,
whether_meets_the_requirements_yn
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column3,
column4,
column5,
column6,
column7,
column8,
column9
from mmt_staging2.budni_fld_test_obs_summary_block where ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_FLD_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_implement_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_field_perf_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_test_observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,320 @@
drop function if exists mmt_staging2.fn_BUDNI_HDL_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_HDL_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_HDL_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_HDL
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_HDL_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info_misc where test_file_ref_no=261;
delete from mmt_ods.budni_hydraulic_maint_of_lift_load_results where test_file_ref_no=261;
delete from mmt_ods.budni_hydraulic_power_test_results where test_file_ref_no=261;
delete from mmt_ods.budni_hydraulic_lifting_capacity_test_results where test_file_ref_no=261;
delete from mmt_ods.budni_test_observations where test_file_ref_no=261;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
tractor_engine_hp,
steering_type
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
tractor_make,
tractor_model,
tractor_HP::int,
steering_type
from mmt_staging2.BUDNI_HDL_Spec_H1_block;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
tractor_make,
tractor_model
from
mmt_staging2.BUDNI_HDL_Spec_H1_block;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
rated_rpm
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
tractor_make,
tractor_model,
rated_rpm::int
from mmt_staging2.BUDNI_HDL_Spec_H1_block;
insert into mmt_ods.test_instance_tractor_info_misc
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
hydraulic_type,
pump_speed_at_rated_engine_speed_rpm,
oil,
lift_rod_type_lh,
lift_rod_type_rh,
lift_rod_length_lh,
lift_rod_length_rh,
lower_link_length_lh,
lower_link_length_rh,
pump_hp
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
tractor_make,
tractor_model,
hydraulic_type,
Pump_speed_at_rated_engine_speed_rpm::numeric,
Oil,
Lift_Rod_type_LH,
Lift_Rod_type_RH,
Lift_Rod_Length_LH::numeric,
Lift_Rod_Length_RH::numeric,
Lower_link_Length_LH::numeric,
Lower_link_Length_RH::numeric,
Pump_HP::numeric
from mmt_staging2.BUDNI_HDL_Spec_H1_block;
/*block */
insert into mmt_ods.budni_hydraulic_power_test_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
pump_dlvry_rate_at_min_pressure_engine_speed_l_per_min,
max_hydraulic_power_kw,
pump_dlvry_rate_at_max_hydraulic_power_lmin,
sustained_pressure_of_the_open_relief_valve_mpa,
pressure_at_max_hydraulic_power_mpa,
tapping_point_relief_valve_test,
tapping_point_pump_perf_test,
tapping_point_temperature_of_hydraulic_fluid_c
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
Pump_delivery_rate_at_minimum_pressure_and_rated_engine_speed_l_min::numeric,
Maximum_hydraulic_power_kW::numeric,
Pump_delivery_rate_at_maximum_hydraulic_power_l_min::numeric,
Pressure_at_maximum_hydraulic_power_MPa::numeric,
Sustained_pressure_of_the_open_relief_valve_MPa::numeric,
tapping_point_relief_valve_test,
tapping_point_Pump_performance_test,
tapping_point_Temperature_of_hydraulic_fluid_C
from mmt_staging2.budni_hdl_power_test_block where ods_record=1
order by rank;
insert into mmt_ods.budni_hydraulic_maint_of_lift_load_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
force_applied_at_the_frame_kn,
temp_of_hydraulic_fluid_at_the_start_of_test_c,
elapsed_time_min,
cumulative_drop_in_height_of_lift_mm
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
Force_applied_at_the_frame_kN::numeric,
Temperature_of_hydraulic_fluid_at_the_start_of_test_C::numeric,
Elapsed_time_minute::numeric,
Cumulative_drop_in_height_of_lift_mm::numeric
from mmt_staging2.budni_hdl_maintenance_of_lift_load_block;
/*block */
insert into mmt_ods.budni_hydraulic_lifting_capacity_test_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
test_condition,
height_of_lower_hitch_pt_above_ground_in_down_position_mm,
vertical_move_ment_with_lifting_forces_mm,
max_force_exerted_through_full_range_kn,
corresponding_pressure_mpa,
moment_about_rear_axle_kn_m,
max_tilt_angle_of_mast_from_vertical_degrees
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
column5,
column6::numeric,
column7::numeric,
column8::numeric,
column9::numeric,
column10::numeric,
column11::numeric
from mmt_staging2.budni_hdl_Lifting_Capacity_Test_Block
where ods_record=1;
/* block */
insert into mmt_ods.budni_test_observations
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
srl_no,
characteristic,
category_evaluative_or_non_evaluative,
requirements_as_per_is_12207_2008,
values_declared_by_the_applicant_d_rqmt,
as_observed,
whether_meets_the_requirements_yn
)
select client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column3,column4,column7,column8,column10,column11,column12
from mmt_staging2.budni_hdl_test_obs_summary_block
where ods_record=1
;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_FLD_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info_misc
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_hydraulic_maint_of_lift_load_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_hydraulic_power_test_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_hydraulic_lifting_capacity_test_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_test_observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,217 @@
drop function if exists mmt_staging2.fn_budni_hlg_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_budni_hlg_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_HLG_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_HLG
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_HLG_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=261;
delete from mmt_ods.budni_haulage_perf_results where test_file_ref_no=261;
delete from mmt_ods.budni_test_observations where test_file_ref_no=261;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
ballast_condition
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
tractor_HP::int tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
FIP_type,
steering_type,
Ballast_Condition
from mmt_staging2.budni_hlg_Spec_H1_block;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
type_of_road
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
type_of_track
from
mmt_staging2.budni_hlg_Spec_H1_block;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
rated_rpm,
engine_to_pto_ratio_540_pto
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
rated_rpm::int,
engine_to_pto_ratio engine_to_pto_ratio_540_pto
from mmt_staging2.budni_hlg_Spec_H1_block;
/*block */
insert into mmt_ods.budni_haulage_perf_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
trailer_type,
gross_mass_of_trailer_tonne,
height_of_trailer_hitch_above_ground_level_mm,
gear_used_negotiating_slopes_up_to_8pct,
avg_travel_speed_kmph,
avg_fuel_consumption_ltr_per_hr,
avg_fuel_consumption_ml_per_km_per_tonne,
avg_dist_traveled_per_litre_of_fuel_consumption_km,
effectiveness_of_brakes,
maneuverability_of_tractor_trailer_combination
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
type_of_trailer,
Gross_mass_of_trailer_tonne::numeric,
Height_of_trailer_hitch_above_ground_level_mm::numeric,
Gear_used_during_the_test_for_negotiating_slopes_up_to_8,
Average_travel_speed_kmph,
l_h,
ml_km_tonne,
Average_distance_traveled_per_litre_of_fuel_consumption_km,
Effectiveness_of_brakes,
Maneuverability_of_tractor_trailer_combination
from mmt_staging2.BUDNI_HLG_Perf_Test_block where ods_record=1
order by rank;
insert into mmt_ods.budni_test_observations
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
srl_no,
characteristic,
category_evaluative_or_non_evaluative,
requirements_as_per_is_12207_2008,
values_declared_by_the_applicant_d_rqmt,
as_observed,
whether_meets_the_requirements_yn
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column3,
column4,
column5,
column6,
column7,
column8,
column9
from mmt_staging2.budni_hlg_test_obs_summary_block where ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_FLD_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_haulage_perf_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_test_observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,161 @@
drop function if exists mmt_staging2.fn_BUDNI_LCG_ODS ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_LCG_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_LCG_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_LCG
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_LCG_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=261;
delete from mmt_ods.budni_centre_of_gravity_location where test_file_ref_no=261;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
wheel_base_mm,
wheel_track_mm,
overall_height_mm,
ballast_condition,
weight_reactions_front_kg,
weight_reactions_rear_kg
)
select
client_id,
function_id,
file_syspk ,
file_format,
sheet_mnemonic,
make,
model,
Tractor_HP::int tractor_engine_hp,
configuration,
Transmission_type,
Wheel_Drive_type,
Wheel_Base::int wheel_base_mm,
wheel_track::int wheel_track_mm,
overall_height::int,
Ballast_Condition,
Tractor_Weight_reactions_Front::int weight_reactions_front_kg ,
Tractor_Weight_reactions_Rear::int weight_reactions_rear_kg
from mmt_staging2.BUDNI_LCG_Spec_H1_Block where ods_record =1 ;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model
)
select
client_id,
function_id,
file_syspk ,
file_format,
sheet_mnemonic,
make,
model
from mmt_staging2.BUDNI_LCG_Spec_H1_Block where ods_record =1 ;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
Rated_RPM
)
select
client_id,
function_id,
file_syspk ,
file_format,
sheet_mnemonic,
make,
model,
rated_rpm::int
from mmt_staging2.BUDNI_LCG_Spec_H1_Block where ods_record =1 ;
insert into mmt_ods.budni_centre_of_gravity_location
(
client_id,
function_id,
test_file_ref_no,
tractor_make,
tractor_model,
condition,
particulars,
coordinates
)
select
client_id,
function_id,
file_syspk ,
make,
model,
column3,
column6,
column8
from mmt_staging2.budni_lcg_gravity_test_block where ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_LCG_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_centre_of_gravity_location
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,311 @@
drop function if exists mmt_staging2.fn_BUDNI_NMT_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_NMT_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_NMT_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_NMT
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_NMT_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=261;
delete from mmt_ods.budni_noise_atmospheric_conditions where test_file_ref_no=261;
delete from mmt_ods.budni_noise_measurement_results where test_file_ref_no=261;
delete from mmt_ods.budni_test_observations where test_file_ref_no=261;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
ballast_condition
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
tractor_HP::int tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
FIP_type,
steering_type,
Ballast_Condition
from mmt_staging2.BUDNI_NMT_Spec_H1_block;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
type_of_road
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
type_of_track
from
mmt_staging2.BUDNI_NMT_Spec_H1_block;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
rated_rpm,
engine_to_pto_ratio_540_pto
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
rated_rpm::int,
engine_to_pto_ratio engine_to_pto_ratio_540_pto
from mmt_staging2.BUDNI_NMT_Spec_H1_block;
/*block */
insert into mmt_ods.budni_noise_atmospheric_conditions
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
noise_position,
background_noise_level_dba,
temperature_c,
pressure_kpa,
relative_humidity_pct,
wind_velocity_ms
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column2,
column3::numeric,
column4::numeric,
column5::numeric,
column6::numeric,
column7::numeric
from mmt_staging2.BUDNI_NMT_Atmos_Cond_1_Block where ods_record=1
order by rank;
/*block */
insert into mmt_ods.budni_noise_measurement_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
noise_position,
gear,
travel_speed_km_per_hr,
noise_level_db_a
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column2,
column3,
column6,
column8::numeric
from mmt_staging2.BUDNI_NMT_Meas_Results_1_Block
where ods_record=1;
insert into mmt_ods.budni_noise_atmospheric_conditions
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
noise_position,
background_noise_level_dba,
temperature_c,
pressure_kpa,
relative_humidity_pct,
wind_velocity_ms
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column2,
column3::numeric,
column4::numeric,
column5::numeric ,
column6::numeric,
column7::numeric
from mmt_staging2.BUDNI_NMT_Atmos_Cond_2_Block where ods_record=1
order by rank;
/*block */
insert into mmt_ods.budni_noise_measurement_results
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
noise_position,
gear,
drawbar_pull_max_noise_kn,
travel_speed_km_per_hr,
noise_level_db_a
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column2,
column3,
column4,
column6,
column8::int
from mmt_staging2.BUDNI_NMT_Meas_Results_2_Block
where ods_record=1;
insert into mmt_ods.budni_test_observations
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
srl_no,
characteristic,
category_evaluative_or_non_evaluative,
requirements_as_per_is_12207_2008,
values_declared_by_the_applicant_d_rqmt,
as_observed,
whether_meets_the_requirements_yn
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column3,
column4,
column5,
column6,
column7,
column8,
column9
from mmt_staging2.budni_nmt_test_obs_summary_block where ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_NMT_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_noise_atmospheric_conditions
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_noise_measurement_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_test_observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,269 @@
drop function if exists mmt_staging2.fn_BUDNI_PTO_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_PTO_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_PTO_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_PTO
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_PTO_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=261;
delete from mmt_ods.budni_pto_perf_results_summary where test_file_ref_no=261;
delete from mmt_ods.budni_test_observations where test_file_ref_no=261;
delete from mmt_ods.budni_pto_perf_results_details where test_file_ref_no=261;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
tractor_engine_hp,
configuration,
fip_type,
steering_type,
transmission_type,
wheel_drive_type
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
tractor_HP::int,
configuration,FIP_type,steering_type,transmission_type,wheel_drive_type
from mmt_staging2.BUDNI_PTO_Spec_H1_block;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model
from
mmt_staging2.BUDNI_PTO_Spec_H1_block;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
rated_rpm,
engine_to_pto_ratio_540_pto
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
rated_rpm::int,
engine_to_pto_ratio
from mmt_staging2.BUDNI_PTO_Spec_H1_block;
/*block */
insert into mmt_ods.budni_pto_perf_results_summary
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
pto_category,
pto_sub_category ,
power_kw,
speed_rpm_pto ,
speed_rpm_engine ,
fuel_consumption_ltr_per_hr,
fuel_consumption_kg_per_hr,
specific_kg_per_kwh,
specifc_energy_kwhl
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column2,
column3,
column4::numeric,column5::numeric,column6::numeric,column7::numeric,column8::numeric,
column9::numeric,column10::numeric
from mmt_staging2.BUDNI_PTO_Perf_Report_block where ods_record=1
order by rank;
/*block */
insert into mmt_ods.budni_pto_perf_results_details
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
ambient_type,
no_load_max_engine_speed_rpm,
equi_crankshaft_torque_at_max_power_nm,
max_equi_crankshaft_torque_nm,
engine_speed_at_max_equi_crankshaft_torque_rpm,
backup_torque,
pct_smoke_level_max_light_absorption_coef_per_mtr,
range_of_atm_conditions_temp_c,
range_of_atm_conditions_pressure_kpa,
range_of_atm_conditions_rel_humidity_pct
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column3,
column4::int,
column5::numeric,
column6::numeric,column7::int,column8::numeric,
column9::numeric,column10,column11,column12
from mmt_staging2.BUDNI_PTO_MMTKeyword1_block
where ods_record=1;
/* block */
insert into mmt_ods.budni_pto_perf_results_details
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
ambient_type,
max_temp_engine_oil_c,
max_temp_coolant_water_c,
max_temp_fuel_c,
max_temp_air_intake_c,
max_temp_exhaust_gas_c,
pressure_at_max_power_intake_air_kpa,
pressure_at_max_power_exhst_gas_bfr_turbo_charger_kpa,
consumptions_lub_oil_gkwh,
consumptions_coolant_water_pct_of_total_coolant_capacity
)
select client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column3,
column4::numeric,column5::numeric,column6::numeric,column7::numeric,column8::numeric,column9::numeric,
column10,column11::numeric,column12::numeric
from mmt_staging2.BUDNI_PTO_MMTKeyword2_block
where ods_record=1 and column3='Natural Ambient';
insert into mmt_ods.budni_test_observations
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
srl_no,
characteristic,
category_evaluative_or_non_evaluative,
requirements_as_per_is_12207_2008,
values_declared_by_the_applicant_d_rqmt,
as_observed,
whether_meets_the_requirements_yn
)
select client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,column3,column4,column7,column8,column10,column11,column12
from mmt_staging2.BUDNI_PTO_Summary_block
where rank in (3,4) and ods_record=1
;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_PTO_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_pto_perf_results_summary
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_pto_perf_results_details
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_test_observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,200 @@
drop function if exists mmt_staging2.fn_BUDNI_VMT_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_VMT_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_BUDNI_VMT_ODS
Function Desc: This function populates data into ODS
File Format: BUDNI
Sheet Format: BUDNI_VMT
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_VMT_ODS()
***************************************************************/
delete from mmt_ods.test_instance_engine_info where test_file_ref_no=261;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no=261;
delete from mmt_ods.budni_vibration_measurements where test_file_ref_no=261;
delete from mmt_ods.budni_test_observations where test_file_ref_no=261;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
ballast_condition
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,
model,
tractor_HP::int tractor_engine_hp,
configuration,
transmission_type,
wheel_drive_type,
FIP_type,
steering_type,
Ballast_Condition
from mmt_staging2.BUDNI_VMT_Spec_H1_block;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model
from
mmt_staging2.BUDNI_VMT_Spec_H1_block;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
rated_rpm,
engine_to_pto_ratio_540_pto
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
rated_rpm::int,
engine_to_pto_ratio engine_to_pto_ratio_540_pto
from mmt_staging2.BUDNI_VMT_Spec_H1_block;
insert into mmt_ods.budni_vibration_measurement
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
srl_no,
measuring_points,
vibration_at_no_load_vd_microns,
vibration_at_no_load_hd_microns,
vibration_at_load_85_pct_of_max_pto_power_vd_microns,
vibration_at_load_85_pct_of_max_pto_power_hd_microns
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
column3::numeric,
column4,
column6::numeric ,
column7::numeric ,
column8::numeric ,
column9::numeric
from mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block
where ods_record =1
order by rank;
insert into mmt_ods.budni_test_observations
(
client_id,
function_id,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tractor_make,
tractor_model,
sequence_number,
characteristic,
category_evaluative_or_non_evaluative,
requirements_as_per_is_12207_2008,
values_declared_by_the_applicant_d_rqmt,
as_observed,
whether_meets_the_requirements_yn
)
select
client_id,
function_id,
file_syspk,
file_format,
sheet_mnemonic,
make,model,
column3,
column4,
column5,
column6,
column7,
column8,
column9
from mmt_staging2.BUDNI_VMT_test_obs_summary_block where ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.BUDNI_VMT_Spec_H1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_vibration_measurement
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.budni_test_observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -1,6 +1,9 @@
drop function if exists mmt_ods.fn_dbstd_test_ods; drop function if exists mmt_ods.fn_dbstd_test_ods;
CREATE OR REPLACE FUNCTION mmt_ods.fn_dbstd_test_ods() CREATE OR REPLACE FUNCTION mmt_ods.fn_dbstd_test_ods()
RETURNS void AS $$ RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin begin
/************************************************************ /************************************************************
@@ -11,7 +14,7 @@ Sheet Format: DBSTD_TEST
Creation Date: March 25 2021 Creation Date: March 25 2021
Updation Date: Updation Date:
Author: compegence team Author: compegence team
Function Call: select mmt_staging2.fn_dbstd_test_ods() Function Call: select mmt_ods.fn_dbstd_test_ods()
***************************************************************/ ***************************************************************/
@@ -81,15 +84,15 @@ from mmt_staging2.dbstd_test_test_condition_block b
where a.test_file_ref_no=b.file_syspk; where a.test_file_ref_no=b.file_syspk;
/* ODS */ /* ODS */
insert into mmt_ods.test_instance_engine_info insert into mmt_ods.test_instance_engine_info
(client_id,function_id,test_file_ref_no,tractor_model,tractor_make,low_idle_declared,low_idle_observed,high_idle_declared,high_idle_observed,test_file_format, (client_id,function_id,test_file_ref_no,tractor_model,tractor_make,low_idle_declared,low_idle_observed,high_idle_declared,high_idle_observed,test_file_format,
test_file_sheet_format) test_file_sheet_format)
select client_id,function_id,file_syspk,make,model,low_idle_declared,low_idle_observed::int,high_idle_declared,high_idle_observed::int,file_format,sheet_mnemonic select client_id,function_id,file_syspk,make,model,low_idle_declared,low_idle_observed::int,high_idle_declared,high_idle_observed::int,file_format,sheet_mnemonic
from mmt_staging2.DBSTD_test_engine_RPM_RPM_block; from mmt_staging2.DBSTD_test_engine_RPM_RPM_block;
update mmt_ods.test_instance_engine_info a update mmt_ods.test_instance_engine_info a
set engine_to_pto_ratio_540_pto=b.engine_to_pto_ratio::numeric::int,engine_power_hp = b.engine_power_hp::int, set engine_to_pto_ratio_540_pto=b.engine_to_pto_ratio::numeric,engine_power_hp = b.engine_power_hp::int,
pto_power_hp = b.pto_power_hp::numeric pto_power_hp = b.pto_power_hp::numeric
from from
mmt_staging2.dbstd_test_engine_rpm_engine_to_pto_block b mmt_staging2.dbstd_test_engine_rpm_engine_to_pto_block b
@@ -610,6 +613,11 @@ inflation_pressure_kg_cm2::numeric,
sheet_mnemonic sheet_mnemonic
from mmt_staging2.dbstd_test_transmission_wheels_block; from mmt_staging2.dbstd_test_transmission_wheels_block;
update mmt_staging2.dbstd_test_transmission_wheels_block a
set location_of_driving_wheel=(select location_of_driving_wheel from
mmt_staging2.dbstd_test_transmission_wheels_block b where location_of_driving_wheel is not null)
where location_of_driving_wheel is null;
/* ODS */ /* ODS */
insert into mmt_ods.Test_instance_fuel_lubricant_info insert into mmt_ods.Test_instance_fuel_lubricant_info
( (
@@ -684,5 +692,63 @@ report_title=b.comments
from mmt_staging2.dbstd_test_remarks_footer_block b from mmt_staging2.dbstd_test_remarks_footer_block b
where a.test_file_ref_no=b.file_syspk; where a.test_file_ref_no=b.file_syspk;
select file_syspk into __file_syspk from mmt_staging2.dbstd_test_h1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_drawbar_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tyre_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.drawbar_perf_results_summary
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.drawbar_perf_results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_equipment_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_measurement_uncertainty
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info_misc
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_gear_speed_chart
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.Test_instance_wheels_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.Test_instance_fuel_lubricant_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.drawbar_perf_observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end end
$$ LANGUAGE plpgsql; $$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,302 @@
drop function if exists mmt_staging2.fn_FTDRY_SUM_ODS ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTDRY_SUM_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_FTDRY_SUM_ODS
Function Desc: This function populates data into ODS
File Format: FTDRY
Sheet Format: FTDRY_SUM
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTDRY_SUM_ODS()
***************************************************************/
delete from mmt_ods.field_perf_summary where test_file_ref_no =258;
delete from mmt_ods.field_perf_summary_implement_info where test_file_ref_no =258;
delete from mmt_ods.field_perf_summary_tractor_info where test_file_ref_no =258;
insert into mmt_ods.field_perf_summary_tractor_info
(
client_id,
function_id,
tractor_model,
tractor_make,
tractor_engine_hp,
rated_rpm,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
tractor_weight_front_kg,
tractor_weight_rear_kg,
tractor_weight_total_kg,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
tractor_model,
tractor_make,
tractor_engine_hp::numeric,
rated_rpm::numeric,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
tractor_weight_kg_front::numeric,
tractor_weight_kg_rear::numeric,
tractor_weight_kg_total::numeric,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftdry_sum_trac_h1_block where tractor_model<> '0' and ods_record=1;
insert into mmt_ods.field_perf_summary_implement_info
(
client_id,
function_id,
name_of_implement,
implement_type,
implement_size,
hitch_category,
implement_weight,
soil_type,
soil_moisture_content_pct,
soil_bulk_density_g_per_cc,
soil_cone_index,
field_condition,
season,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
make_of_implement,
implement_type,
implement_size,
hitch_category,
implement_weight::numeric,
soil_type,
moisture_content::numeric soil_moisture_content_pct,
bulk_density_g_cc::numeric soil_bulk_density_g_per_cc,
soil_cone_index::numeric soil_cone_index,
field_condition,
season,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftdry_sum_implement_block where ods_record=1;
insert into mmt_ods.field_perf_summary
(
client_id,
function_id,
test_condition,
test_date,
tractor_model,
engine_rpm_set,
pto_rpm_set,
gear_used,
nominal_speed_kmph,
engine_rpm_drop_on_straight_1st_pass,
engine_rpm_drop_on_turn_1st_pass,
depth_of_cut_cm,
no_load_speed_kmph,
on_load_speed_kmph,
wheel_slippage_pct,
fuel_consumption_lit_per_hr,
area_covered_acr_per_hr,
fuel_consumption_lit_per_acr,
fuel_consumption_var_lit_per_hr,
area_covered_var_acr_per_hr,
fuel_consumption_var_lit_per_acr,
engine_smoke_on_load,
engine_acceleration_smoke,
draft_response,
tractor_steer_ability,
tractor_braking_perf,
front_visibility,
implement_accessibility,
front_wheel_dragging_at_turning,
front_end_lifting_during_operation,
rpm_recovery_time,
engine_vibration,
engine_sound,
implement_lifting_per_lowering_response,
pulverization_index,
pulverization_quality,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
test_condition,
test_date::date,
tractor_model,
engine_rpm_set::numeric,
pto_rpm_set::numeric,
gear_used,
nominal_speed_kmph::numeric,
engine_rpm_drop_on_straight engine_rpm_drop_on_straight_1st_pass ,
engine_rpm_drop_on_turn engine_rpm_drop_on_turn_1st_pass,
depth_of_cut_cm,
no_load_speed_kmph::numeric,
on_load_speed_kmph::numeric,
wheel_slippage_::numeric wheel_slippage_pct,
fuel_consumption_lit_hr::numeric fuel_consumption_lit_per_hr,
area_covered_acr_hr::numeric area_covered_acr_per_hr,
fuel_consumption_lit_acr::numeric fuel_consumption_lit_per_acr ,
case when fuel_consumption_lit_hr_2 ~ E'^\\d+$' then fuel_consumption_lit_hr_2::numeric else null end as fuel_consumption_var_lit_per_hr ,
case when area_covered_acr_hr_2 ~ E'^\\d+$' then area_covered_acr_hr_2::numeric else null end as area_covered_var_acr_per_hr ,
case when fuel_consumption_lit_acr_2 ~ E'^\\d+$' then fuel_consumption_lit_acr_2::numeric else null end as fuel_consumption_var_lit_per_acr,
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 implement_lifting_per_lowering_response,
pulverization_index,
pulverization_quality,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftdry_sum_test_condition_1_block where engine_rpm_set <> '0' and ods_record=1;
insert into mmt_ods.field_perf_summary
(
client_id,
function_id,
test_condition,
test_date,
tractor_model,
engine_rpm_set,
pto_rpm_set,
gear_used,
nominal_speed_kmph,
engine_rpm_drop_on_straight_1st_pass,
engine_rpm_drop_on_turn_1st_pass,
depth_of_cut_cm,
no_load_speed_kmph,
on_load_speed_kmph,
wheel_slippage_pct,
fuel_consumption_lit_per_hr,
area_covered_acr_per_hr,
fuel_consumption_lit_per_acr,
fuel_consumption_var_lit_per_hr,
area_covered_var_acr_per_hr,
fuel_consumption_var_lit_per_acr,
engine_smoke_on_load,
engine_acceleration_smoke,
draft_response,
tractor_steer_ability,
tractor_braking_perf,
front_visibility,
implement_accessibility,
front_wheel_dragging_at_turning,
front_end_lifting_during_operation,
rpm_recovery_time,
engine_vibration,
engine_sound,
implement_lifting_per_lowering_response,
pulverization_index,
pulverization_quality,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
test_condition,
test_date::date,
tractor_model,
engine_rpm_set::numeric,
pto_rpm_set::numeric,
gear_used,
nominal_speed_kmph::numeric,
engine_rpm_drop_on_straight engine_rpm_drop_on_straight_1st_pass ,
engine_rpm_drop_on_turn engine_rpm_drop_on_turn_1st_pass,
depth_of_cut_cm,
no_load_speed_kmph::numeric,
on_load_speed_kmph::numeric,
wheel_slippage_::numeric wheel_slippage_pct,
fuel_consumption_lit_hr::numeric fuel_consumption_lit_per_hr,
area_covered_acr_hr::numeric area_covered_acr_per_hr,
fuel_consumption_lit_acr::numeric fuel_consumption_lit_per_acr ,
case when fuel_consumption_lit_hr_2 ~ E'^\\d+$' then fuel_consumption_lit_hr_2::numeric else null end as fuel_consumption_var_lit_per_hr ,
case when area_covered_acr_hr_2 ~ E'^\\d+$' then area_covered_acr_hr_2::numeric else null end as area_covered_var_acr_per_hr ,
case when fuel_consumption_lit_acr_2 ~ E'^\\d+$' then fuel_consumption_lit_acr_2::numeric else null end as fuel_consumption_var_lit_per_acr,
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 implement_lifting_per_lowering_response,
pulverization_index,
pulverization_quality,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftdry_sum_test_condition_2_block where engine_rpm_set <> '0' and ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.ftdry_sum_trac_h1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.field_perf_summary
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_implement_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,299 @@
drop function if exists mmt_staging2.fn_FTDRY_TRS_ODS ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTDRY_TRS_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_FTDRY_TRS_ODS
Function Desc: This function populates data into ODS
File Format: FTDRY
Sheet Format: FTDRY_TRS
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTDRY_TRS_ODS()
***************************************************************/
delete from mmt_ods.test_instance where test_file_ref_no =258;
delete from mmt_ods.test_instance_engine_info where test_file_ref_no =258;
delete from mmt_ods.test_instance_implement_info where test_file_ref_no =258;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no =258;
delete from mmt_ods.test_instance_trailer_info where test_file_ref_no =258;
delete from mmt_ods.test_instance_tyre_info where test_file_ref_no =258;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_report_no,
objective_of_test,
background_of_test,
job_order_no,
test_location_name,
soil_moisture_content_pct,
soil_bulk_density_g_per_cc,
test_engineer,
test_operator,
date_of_test,
test_report_date,
season,
type_of_soil,
soil_cone_index,
field_condition,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
report_reference_no test_report_no,
objective_of_test,
background_of_test,
job_order_no,
test_location test_location_name,
soil_moisture_content_::int soil_moisture_content_pct ,
soil_bulk_density_g_cc::int soil_bulk_density_g_per_cc,
test_engineer,
test_operator,
date_of_test::date,
report_date::date test_report_date,
season,
type_of_soil,
soil_cone_index_kpa::int soil_cone_index,
field_condition,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftdry_trs_h1_block where ods_record=1;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
tractor_model,
tractor_make,
tractor_sr_no,
tractor_engine_hp,
fip_type,
hour_Meter_Reading,
Steering_Type,
Transmission_Type,
wheel_drive_type,
egr_yn,
Brake_Type,
PTO_Type,
Standard_PTO_Speed_RPM,
EPTO_Speed_RPM,
tractor_weight_front_kg,
tractor_weight_rear_kg,
tractor_weight_total_kg,
Ballasted_Tractor_Accessories,
Mechanical_Ballast_Rear,
mechanical_ballast_rear_in_kg,
water_ballast_rear_75_pct ,
Mechanical_Ballast_Front,
mechanical_ballast_front_kg ,
Total_Ballast_Weight,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Tractor_Model,
Tractor_Make,
Tractor_Sr_No,
Tractor_Engine_HP::float,
FIP_Type,
hour_Meter_Reading::int,
Steering_Type,
Transmission_Type,
Wheel_Drive_Type_WD wheel_drive_type ,
EGR_Yes_No egr_yn,
Brake_Type ,
PTO_Type ,
Standard_PTO_Speed_RPM::int,
EPTO_Speed_RPM::int,
Tractor_Weight_kg_Front::int tractor_weight_front_kg ,
Tractor_Weight_kg_Rear::int tractor_weight_rear_kg ,
Tractor_Weight_kg_Total::int tractor_weight_total_kg ,
Ballasted_Tractor_Accessories,
Mechanical_Ballast_Rear,
Mechanical_Ballast_Rear_in_KG::int mechanical_ballast_rear_in_kg ,
Water_Ballast_Rear water_ballast_rear_75_pct ,
Mechanical_Ballast_Front,
Mechanical_Ballast_Front_in_Kg::int mechanical_ballast_front_kg ,
Total_Ballast_Weight::int,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftdry_trs_spec_block where tractor_model is not null and ods_record=1;
insert into mmt_ods.test_instance_tyre_info
(
client_id,
function_id,
tractor_make,
tractor_model,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tyre_type,
tyre_make,
tyre_size,
tyre_pressure_psi
)
select
client_id,
function_id,
tractor_make,
tractor_model,
file_syspk,
file_format,
sheet_mnemonic,
'front',
front_tyre_make tyre_make,
front_tyre_size tyre_size,
front_tyre_pressure_psi::int tyre_pressure_psi
from mmt_staging2.ftdry_trs_spec_block where front_tyre_make is not null and ods_record=1;
insert into mmt_ods.test_instance_tyre_info
(
client_id,
function_id,
tractor_make,
tractor_model,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tyre_type,
tyre_make,
tyre_size,
tyre_pressure_psi
)
select
client_id,
function_id,
tractor_make,
tractor_model,
file_syspk,
file_format,
sheet_mnemonic,
'rear',
front_tyre_make tyre_make,
front_tyre_size tyre_size,
front_tyre_pressure_psi::int tyre_pressure_psi
from mmt_staging2.ftdry_trs_spec_block where rear_tyre_make is not null and ods_record=1;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
low_idle_observed ,
high_idle_observed ,
rated_rpm ,
engine_to_pto_ratio_540_pto,
engine_to_pto_ratio_540e_pto,
tractor_model,
tractor_make,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
low_idle::int low_idle_observed ,
high_idle::int high_idle_observed ,
rated_rpm::int,
engine_to_pto_ratio_540_pto,
engine_to_pto_ratio_540e_pto,
tractor_model,
tractor_make,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftdry_trs_engine_rpm_block
where tractor_model is not null and ods_record=1;
insert into mmt_ods.test_instance_implement_info
(
client_id,
function_id,
name_of_implement,
type_of_implement,
make_of_implement,
no_of_disc_blades_bottoms,
cutting_width_m,
implement_weight_kg,
hitch_category,
span_for_mounted_implement_mm ,
mast_height_for_mounted_implement_mm,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
name_of_implement,
type_of_implement,
make_of_implement,
no_of_bottoms_tyne_disc_blade::int no_of_disc_blades_bottoms,
cutting_width_m,
implement_weight_kg::int,
hitch_category,
span_cm_for_mounted_implement::int span_for_mounted_implement_cm ,
mast_height_cm_for_mounted_implement::int mast_height_for_mounted_implement_cm,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftdry_trs_implement_block where name_of_implement is not null and ods_record=1;
update mmt_ods.test_instance a
set report_template_no=b.report_template_no,
report_template_rev_no=b.report_template_rev_no,
report_template_rev_date =b.report_template_rev_date
from mmt_staging2.ftdry_trs_implement_block b where name_of_implement is not null and ods_record=1
and a.test_file_ref_no=b.file_syspk;
select file_syspk into __file_syspk from mmt_staging2.FTDRY_TRS_H1_Block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tyre_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_implement_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,295 @@
drop function if exists mmt_staging2.fn_FTHLG_SUM_ODS ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTHLG_SUM_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_FTHLG_SUM_ODS
Function Desc: This function populates data into ODS
File Format: FTHLG
Sheet Format: FTHLG_SUM
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTHLG_SUM_ODS();
***************************************************************/
delete from mmt_ods.field_perf_summary where test_file_ref_no =259;
delete from mmt_ods.field_perf_summary_implement_info where test_file_ref_no =259;
delete from mmt_ods.field_perf_summary_tractor_info where test_file_ref_no =259;
delete from mmt_ods.field_perf_summary_trailer_info where test_file_ref_no =259;
insert into mmt_ods.field_perf_summary_tractor_info
(
client_id,
function_id,
tractor_model,
tractor_make,
tractor_engine_hp,
rated_rpm,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
tractor_weight_front_kg,
tractor_weight_rear_kg,
tractor_weight_total_kg,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
tractor_model,
tractor_make ,
tractor_engine_hp::numeric,
rated_rpm::numeric,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
tractor_weight_kg_front::numeric tractor_weight_front_kg,
tractor_weight_kg_rear::numeric tractor_weight_rear_kg,
tractor_weight_kg_total::numeric tractor_weight_total_kg,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.fthlg_sum_trac_h1_block where tractor_model<> '0' and ods_record=1;
insert into mmt_ods.field_perf_summary_trailer_info
(
client_id,
function_id,
trailer_type,
tire_size_and_inflation_pressure_psi,
no_of_axle,
no_of_wheels,
trailer_gross_weight_kg,
tractor_rwc_to_hitch_point_center_dist_mm,
tractor_hitch_ht_mm,
trailer_hitch_height_above_ground_level_mm,
gradient_slope_1_degree,
gradient_slope_2_degree,
tractor_hitch_type,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Trailer_Type,
Tire_size_and_inflation_pressure_psi,
No_Of_Axle::numeric ,
No_Of_Wheels::numeric,
Trailer_Gross_Weight_Kg::numeric,
Tractor_Rear_Wheel_Center_to_Hitch_Point_Center_Distance_mm::numeric,
Tractor_Hitch_Height_from_Ground_mm::numeric,
Trailer_hitch_Height_above_ground_level_mm::numeric,
Gradient_Slope_1_Degree::numeric,
Gradient_Slope_2_degree::numeric,
Tractor_Hitch_Type,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.FTHLG_SUM_Trail_Type_Block where ods_record=1;
insert into mmt_ods.field_perf_summary
(
client_id,
function_id,
test_condition,
test_date,
tractor_model,
fuel_consumption_lit_per_hr,
mileage_km_per_ltr,
avg_speed_of_travel_kmph,
total_dist_travelled_km,
gear_used_on_straight_road,
straight_road_rpm_drop,
gear_used_on_up_slope_1,
up_slope_rpm_drop_1,
gear_used_on_up_slope_2,
up_slope_rpm_drop_2,
gear_used_on_down_slope,
down_slope_rpm_shoot_up,
fuel_consumption_var_lit_per_hr,
mileage_var_km_per_ltr,
fuel_consumption_var_pct_lit_per_hr,
mileage_var_pct_km_per_ltr,
engine_smoke_on_load,
engine_acceleration_smoke,
range_gear_shifting,
speed_gear_shifting,
tractor_steer_ability,
tractor_braking_perf,
front_visibility,
implement_accessibility,
front_end_lifting_during_operation,
rpm_recovery_time,
engine_vibration,
engine_sound,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Test_Condition,
Test_Date::date,
Tractor_Model,
Fuel_consumption_Ltr_hr::numeric fuel_consumption_lit_per_hr ,
Mileage_Km_Ltr ::numeric mileage_km_per_ltr ,
Average_speed_of_travel_kmph::numeric avg_speed_of_travel_kmph ,
Total_distance_travelled_km::numeric total_dist_travelled_km ,
Gear_used_on_Straight_Road,
Straight_road_RPM_Drop,
Gear_used_on_Up_Slope_1,
Up_Slope_RPM_Drop_1 ,
Gear_used_on_Up_Slope_2,
Up_Slope_RPM_Drop_2,
Gear_used_on_Down_Slope,
Down_Slope_RPM_Shoot_up,
case when fuel_consumption_lit_hr_2 ~ E'^\\d+$' then fuel_consumption_lit_hr_2::numeric else null end as fuel_consumption_var_lit_per_hr ,
case when Mileage_Km_Ltr_2 ~ E'^\\d+$' then Mileage_Km_Ltr_2::numeric else null end as mileage_var_km_per_ltr,
case when fuel_consumption_lit_hr_3 ~ E'^\\d+$' then fuel_consumption_lit_hr_3::numeric else null end as fuel_consumption_var_pct_lit_per_hr ,
case when Mileage_Km_Ltr_3 ~ E'^\\d+$' then Mileage_Km_Ltr_3::numeric else null end as mileage_var_pct_km_per_ltr,
engine_smoke_on_load,
Engine_acceleration_smoke,
Range_Gear_Shifting,
Speed_Gear_Shifting,
Tractor_Steer_ability,
Tractor_braking_performance tractor_braking_perf ,
Front_Visibility,
Implement_Accessibility,
Front_end_lifting_during_operation,
RPM_Recovery_Time,
Engine_Vibration,
Engine_Sound,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.fthlg_sum_test_condition_1_block
where test_date::date =date '30-Nov-2020' and test_date <> '0' and Gear_used_on_Straight_Road not in ('0','0.000') and ods_record=1;
insert into mmt_ods.field_perf_summary
(
client_id,
function_id,
test_condition,
test_date,
tractor_model,
fuel_consumption_lit_per_hr,
mileage_km_per_ltr,
avg_speed_of_travel_kmph,
total_dist_travelled_km,
gear_used_on_straight_road,
straight_road_rpm_drop,
gear_used_on_up_slope_1,
up_slope_rpm_drop_1,
gear_used_on_up_slope_2,
up_slope_rpm_drop_2,
gear_used_on_down_slope,
down_slope_rpm_shoot_up,
fuel_consumption_var_lit_per_hr,
mileage_var_km_per_ltr,
fuel_consumption_var_pct_lit_per_hr,
mileage_var_pct_km_per_ltr,
engine_smoke_on_load,
engine_acceleration_smoke,
range_gear_shifting,
speed_gear_shifting,
tractor_steer_ability,
tractor_braking_perf,
front_visibility,
implement_accessibility,
front_end_lifting_during_operation,
rpm_recovery_time,
engine_vibration,
engine_sound,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Test_Condition,
Test_Date::date,
Tractor_Model,
Fuel_consumption_Ltr_hr::numeric fuel_consumption_lit_per_hr ,
Mileage_Km_Ltr ::numeric mileage_km_per_ltr ,
Average_speed_of_travel_kmph::numeric avg_speed_of_travel_kmph ,
Total_distance_travelled_km::numeric total_dist_travelled_km ,
Gear_used_on_Straight_Road,
Straight_road_RPM_Drop,
Gear_used_on_Up_Slope_1,
Up_Slope_RPM_Drop_1 ,
Gear_used_on_Up_Slope_2,
Up_Slope_RPM_Drop_2,
Gear_used_on_Down_Slope,
Down_Slope_RPM_Shoot_up,
case when fuel_consumption_lit_hr_2 ~ E'^\\d+$' then fuel_consumption_lit_hr_2::numeric else null end as fuel_consumption_var_lit_per_hr ,
case when Mileage_Km_Ltr_2 ~ E'^\\d+$' then Mileage_Km_Ltr_2::numeric else null end as mileage_var_km_per_ltr,
case when fuel_consumption_lit_hr_3 ~ E'^\\d+$' then fuel_consumption_lit_hr_3::numeric else null end as fuel_consumption_var_pct_lit_per_hr ,
case when Mileage_Km_Ltr_3 ~ E'^\\d+$' then Mileage_Km_Ltr_3::numeric else null end as mileage_var_pct_km_per_ltr,
engine_smoke_on_load,
Engine_acceleration_smoke,
Range_Gear_Shifting,
Speed_Gear_Shifting,
Tractor_Steer_ability,
Tractor_braking_performance tractor_braking_perf ,
Front_Visibility,
Implement_Accessibility,
Front_end_lifting_during_operation,
RPM_Recovery_Time,
Engine_Vibration,
Engine_Sound,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.fthlg_sum_test_condition_2_block
where test_date::date =date '30-Nov-2020' and test_date <> '0' and Gear_used_on_Straight_Road not in ('0','0.000') and ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.fthlg_sum_trac_h1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.field_perf_summary
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_implement_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_trailer_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,324 @@
drop function if exists mmt_staging2.fn_FTHLG_TRS_ODS ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTHLG_TRS_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_FTHLG_TRS_ODS
Function Desc: This function populates data into ODS
File Format: FTHLG
Sheet Format: FTHLG_TRS
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTHLG_TRS_ODS()
***************************************************************/
delete from mmt_ods.test_instance where test_file_ref_no =259;
delete from mmt_ods.test_instance_engine_info where test_file_ref_no =259;
delete from mmt_ods.test_instance_implement_info where test_file_ref_no =259;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no =259;
delete from mmt_ods.test_instance_trailer_info where test_file_ref_no =259;
delete from mmt_ods.test_instance_tyre_info where test_file_ref_no =259;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_report_no,
objective_of_test,
background_of_test,
job_order_no,
test_location_name,
gradient_slope_1_degree,
gradient_slope_2_degree,
tractor_hitch_type,
test_engineer,
test_operator,
date_of_test,
test_report_date,
type_of_road,
tractor_hitch_ht_mm,
tractor_rwheel_c2h_dist_mm,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Report_Reference_No test_report_no ,
Objective_Of_Test,
Background_of_Test,
Job_Order_No,
Test_Location test_location_name,
Gradient_Slope_1_Degree::int,
Gradient_Slope_2_Degree::int,
Tractor_Hitch_Type,
Test_Engineer,
Test_Operator,
Date_of_Test::date,
Report_Date::date test_report_date,
Type_of_Road,
Tractor_Hitch_Height_from_Ground_mm::int tractor_hitch_ht_mm ,
Tractor_Rear_Wheel_Center_to_Hitch_Point_Center_Distance_mm::int tractor_rwheel_c2h_dist_mm,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.FTHLG_TRS_H1_Block where ods_record=1;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
tractor_model,
tractor_make,
tractor_sr_no,
tractor_engine_hp,
fip_type,
hour_meter_reading,
steering_type,
transmission_type,
wheel_drive_type,
egr_yn,
brake_type,
pto_type,
standard_pto_speed_rpm,
epto_speed_rpm,
tractor_weight_front_kg,
tractor_weight_rear_kg,
tractor_weight_total_kg,
ballasted_tractor_accessories,
mechanical_ballast_rear,
water_ballast_rear_75_pct,
mechanical_ballast_front_kg,
mechanical_ballast_front,
total_ballast_weight,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Tractor_Model,
Tractor_Make,
Tractor_Sr_No,
Tractor_Engine_HP::int,
FIP_Type,
Hour_Meter_Reading::float,
Steering_Type,
Transmission_Type,
Wheel_Drive_Type_WD,
EGR_Yes_No egr_yn,
Brake_Type,
PTO_Type,
Standard_PTO_Speed_RPM::int,
EPTO_Speed_RPM::int,
Tractor_Weight_kg_Front::int tractor_weight_front_kg,
Tractor_Weight_kg_Rear::int tractor_weight_rear_kg,
Tractor_Weight_kg_Total::int tractor_weight_total_kg,
Ballasted_Tractor_Accessories,
Mechanical_Ballast_Rear,
Water_Ballast_Rear_75 water_ballast_rear_75_pct,
Mechanical_Ballast_Front_in_kg::int mechanical_ballast_front_kg,
Mechanical_Ballast_Front,
Total_Ballast_Weight::int,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.fthlg_trs_spec_block where tractor_model is not null and ods_record=1;
insert into mmt_ods.test_instance_tyre_info
(
client_id,
function_id,
tractor_make,
tractor_model,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tyre_type,
tyre_make,
tyre_size,
tyre_pressure_psi
)
select
client_id,
function_id,
tractor_make,
tractor_model,
file_syspk,
file_format,
sheet_mnemonic,
'front',
front_tyre_make tyre_make,
front_tyre_size tyre_size,
front_tyre_pressure_psi::int tyre_pressure_psi
from mmt_staging2.fthlg_trs_spec_block where front_tyre_make is not null and ods_record=1;
insert into mmt_ods.test_instance_tyre_info
(
client_id,
function_id,
tractor_make,
tractor_model,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tyre_type,
tyre_make,
tyre_size,
tyre_pressure_psi
)
select
client_id,
function_id,
tractor_make,
tractor_model,
file_syspk,
file_format,
sheet_mnemonic,
'rear',
front_tyre_make tyre_make,
front_tyre_size tyre_size,
front_tyre_pressure_psi::int tyre_pressure_psi
from mmt_staging2.fthlg_trs_spec_block where rear_tyre_make is not null and ods_record=1;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
low_idle_declared,
high_idle_declared,
rated_rpm,
engine_to_pto_ratio_540_pto,
engine_to_pto_ratio_540e_pto,
tractor_model,
tractor_make,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
low_idle low_idle_declared,
high_idle high_idle_declared,
rated_rpm::int,
engine_to_pto_ratio_540_pto,
engine_to_pto_ratio_540e_pto,
tractor_model,
tractor_make,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.fthlg_trs_engine_rpm_block where tractor_model is not null and ods_record=1;
insert into mmt_ods.test_instance_trailer_info
(
client_id,
function_id,
type_of_trailer,
no_of_axle,
no_of_wheels,
trailer_hitch_ht_above_ground_lvl_mm,
make_model_of_trailer,
trailer_platform_length_mm,
trailer_platform_width_mm,
trailer_platform_height_mm,
tire_size,
inflation_pressure_psi,
track_width_of_trailer_mm,
hzntl_dist_of_hitch_pt_from_trailer_face_mm,
tractor_rwc_to_hitch_pt_center_dist_mm,
dist_from_tractor_rwc_to_trailer_rwc_mm,
dist_from_trailer_front_axle_dist_from_hitch_pt_mm,
trailer_empty_weight_kg,
trailer_gross_weight_kg,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Type_Of_Trailer,
No_Of_Axle::int,
No_Of_Wheels::int,
Trailer_hitch_Height_above_ground_level_mm::int trailer_hitch_ht_above_ground_lvl_mm,
Make_model_of_trailer,
Trailer_platform_length_mm::int,
Trailer_platform_Width_mm::int,
Trailer_platform_Height_mm::int,
Tire_size,
Inflation_pressure_psi::int,
Track_width_of_trailer_mm::int,
Horizontal_distance_of_hitch_point_from_trailer_front_face_mm::int hzntl_dist_of_hitch_pt_from_trailer_face_mm,
Tractor_Rear_Wheel_Center_to_Hitch_Point_Center_Distance_mm::int tractor_rwc_to_hitch_pt_center_dist_mm,
Distance_from_Trailerfront_axle_distance_from_hitch_point_mm::int dist_from_tractor_rwc_to_trailer_rwc_mm,
Distance_from_tractor_rear_wheel_center_to_tractor_rear_wheel_center_mm::int dist_from_trailer_front_axle_dist_from_hitch_pt_mm,
Trailer_empty_weight_Kg::int,
Trailer_Gross_Weight_Kg::int,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.fthlg_trs_trailer_block where type_of_trailer is not null and ods_record=1;
update mmt_ods.test_instance a
set report_template_no=b.report_template_no,
report_template_rev_no=b.report_template_rev_no,
report_template_rev_date =b.report_template_rev_date
from mmt_staging2.fthlg_trs_trailer_block b where type_of_trailer is not null and ods_record=1
and a.test_file_ref_no=b.file_syspk;
select file_syspk into __file_syspk from mmt_staging2.FTHLG_TRS_H1_Block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tyre_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_implement_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_trailer_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,251 @@
drop function if exists mmt_staging2.fn_FTWET_SUM_ODS ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTWET_SUM_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_FTWET_SUM_ODS
Function Desc: This function populates data into ODS
File Format: FTWET
Sheet Format: FTWET_SUM
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTWET_SUM_ODS()
***************************************************************/
delete from field_perf_summary where test_file_ref_no =260;
delete from mmt_ods.field_perf_summary_implement_info where test_file_ref_no =260;
delete from mmt_ods.field_perf_summary_tractor_info where test_file_ref_no =260;
insert into mmt_ods.field_perf_summary_tractor_info
(
client_id,
function_id,
tractor_model,
tractor_make,
tractor_engine_hp,
rated_rpm,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
tractor_weight_front_kg,
tractor_weight_rear_kg,
tractor_weight_total_kg,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
tractor_model,
tractor_make,
tractor_engine_hp::numeric,
rated_rpm::numeric,
transmission_type,
wheel_drive_type,
fip_type,
steering_type,
tractor_weight_kg_front::numeric,
tractor_weight_kg_rear::numeric,
tractor_weight_kg_total::numeric,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftwet_sum_trac_h1_block where tractor_model<> '0' and ods_record=1;
insert into mmt_ods.field_perf_summary_implement_info
(
client_id,
function_id,
name_of_implement,
implement_type,
implement_size,
hitch_category,
implement_weight,
soil_type,
soil_moisture_content_pct,
soil_bulk_density_g_per_cc,
soil_cone_index,
field_condition,
season,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
make_of_implement,
implement_type,
implement_size,
hitch_category,
implement_weight::numeric,
soil_type,
moisture_content::numeric soil_moisture_content_pct,
bulk_density_g_cc::numeric soil_bulk_density_g_per_cc,
soil_cone_index::numeric soil_cone_index,
field_condition,
season,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftwet_sum_implement_block where ods_record=1;
insert into mmt_ods.field_perf_summary_implement_info
(
client_id,
function_id,
type_of_cage_wheel,
cage_wheel_width_mm,
cage_wheel_weight,
cage_wheel_inner_and_outer_ring_dia_mm,
cage_wheel_center_ring_dia_mm,
no_of_angles_on_cage_wheel,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Type_of_Cage_Wheel,
Cage_Wheel_Width_mm::numeric,
Cage_wheel_Weight::numeric,
Cage_Wheel_inner_Outer_Ring_Dia_mm::numeric cage_wheel_inner_and_outer_ring_dia_mm,
Cage_Wheel_Center_Ring_Dia_mm::numeric,
No_of_angles_on_cage_wheel::numeric,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.FTWET_SUM_Cage_Wheel_Block where ods_record=1;
insert into mmt_ods.field_perf_summary
(
client_id,
function_id,
Test_Condition,
Test_Date,
Tractor_Model,
Engine_RPM_set,
PTO_RPM_set,
Gear_Used,
Nominal_Speed_KMPH,
Engine_RPM_Drop_on_straight_1st_Pass,
Engine_RPM_Drop_on_straight_2nd_Pass,
Engine_RPM_Drop_on_straight_3rd_Pass,
Engine_RPM_Drop_on_turn_1st_Pass,
Engine_RPM_Drop_on_turn_2nd_Pass,
Engine_RPM_Drop_on_turn_3rd_Pass,
No_of_passes,
depth_of_cut_cm,
fuel_consumption_lit_per_hr,
area_covered_acr_per_hr,
fuel_consumption_lit_per_acr,
fuel_consumption_var_lit_per_hr,
area_covered_var_acr_per_hr,
fuel_consumption_var_lit_per_acr,
Engine_Smoke_on_Load,
Engine_acceleration_smoke,
Draft_Response,
Tractor_Steer_ability,
Tractor_braking_perf,
Front_Visibility,
Implement_Accessibility,
Front_Wheel_dragging_at_turning,
Front_end_lifting_during_operation,
RPM_Recovery_Time,
Engine_Vibration,
Engine_Sound,
implement_lifting_per_lowering_response,
Pulverization_Quality,
Pulverization_Index,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
Test_Condition,
Test_Date::date,
Tractor_Model,
Engine_RPM_set::numeric,
PTO_RPM_set::numeric,
Gear_Used,
Nominal_Speed_KMPH::numeric,
Engine_RPM_Drop_on_straight_1st_Pass,
Engine_RPM_Drop_on_straight_2nd_Pass,
Engine_RPM_Drop_on_straight_3rd_Pass,
Engine_RPM_Drop_on_turn_1st_Pass,
Engine_RPM_Drop_on_turn_2nd_Pass,
Engine_RPM_Drop_on_turn_3rd_Pass,
No_of_passes::numeric,
Avg_Depth_of_cut_cm depth_of_cut_cm ,
Fuel_consumption_lit_hr::numeric fuel_consumption_lit_per_hr,
Area_covered_acr_hr::numeric area_covered_acr_per_hr,
Fuel_consumption_lit_Acr::numeric fuel_consumption_lit_per_acr,
case when fuel_consumption_lit_hr_2 ~ E'^\\d+$' then fuel_consumption_lit_hr_2::numeric else null end as fuel_consumption_var_lit_per_hr ,
case when area_covered_acr_hr_2 ~ E'^\\d+$' then area_covered_acr_hr_2::numeric else null end as area_covered_var_acr_per_hr ,
case when fuel_consumption_lit_acr_2 ~ E'^\\d+$' then fuel_consumption_lit_acr_2::numeric else null end as fuel_consumption_var_lit_per_acr,
Engine_Smoke_on_Load,
Engine_acceleration_smoke,
Draft_Response,
Tractor_Steer_ability,
Tractor_braking_performance tractor_braking_perf,
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 implement_lifting_per_lowering_response,
Pulverization_Quality,
Pulverization_Index,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.FTWET_SUM_Test_Condition_Block where test_date <> 'DD/MM/YY' and engine_rpm_set <> '0' and ods_record=1;
select file_syspk into __file_syspk from mmt_staging2.ftwet_sum_trac_h1_block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.field_perf_summary
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_implement_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_trailer_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.field_perf_summary_implement_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,321 @@
drop function if exists mmt_staging2.fn_FTWET_TRS_ODS ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTWET_TRS_ODS()
RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin
/************************************************************
Function Name:fn_FTWET_TRS_ODS
Function Desc: This function populates data into ODS
File Format: FTWET
Sheet Format: FTWET_TRS
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTWET_TRS_ODS()
***************************************************************/
delete from mmt_ods.test_instance where test_file_ref_no =260;
delete from mmt_ods.test_instance_engine_info where test_file_ref_no =260;
delete from mmt_ods.test_instance_implement_info where test_file_ref_no =260;
delete from mmt_ods.test_instance_tractor_info where test_file_ref_no =260;
delete from mmt_ods.test_instance_trailer_info where test_file_ref_no =260;
delete from mmt_ods.test_instance_tyre_info where test_file_ref_no =260;
insert into mmt_ods.test_instance
(
client_id,
function_id,
test_report_no,
objective_of_test,
background_of_test,
job_order_no,
test_location_name,
soil_moisture_content_pct,
soil_bulk_density_g_per_cc,
test_engineer,
test_operator,
date_of_test,
test_report_date,
season,
type_of_soil,
soil_cone_index,
field_condition,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select client_id,
function_id,
report_reference_no test_report_no,
objective_of_test,
background_of_test,
job_order_no,
test_location test_location_name,
soil_moisture_content_::int soil_moisture_content_pct ,
soil_bulk_density_g_cc::int soil_bulk_density_g_per_cc,
test_engineer,
test_operator,
date_of_test::date,
report_date::date test_report_date,
season,
type_of_soil,
soil_cone_index_kpa::int soil_cone_index,
field_condition,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftwet_trs_h1_block where ods_record=1;
insert into mmt_ods.test_instance_tractor_info
(
client_id,
function_id,
tractor_model,
tractor_make,
tractor_sr_no,
tractor_engine_hp,
fip_type,
hour_Meter_Reading,
Steering_Type,
Transmission_Type,
wheel_drive_type,
egr_yn,
Brake_Type,
PTO_Type,
Standard_PTO_Speed_RPM,
EPTO_Speed_RPM,
tractor_weight_front_kg,
tractor_weight_rear_kg,
tractor_weight_total_kg,
Ballasted_Tractor_Accessories,
mechanical_ballast_rear_in_kg,
water_ballast_rear_75_pct ,
Mechanical_Ballast_Front,
mechanical_ballast_front_kg ,
Total_Ballast_Weight,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select client_id,
function_id,
Tractor_Model,
Tractor_Make,
Tractor_Sr_No,
Tractor_Engine_HP::float,
FIP_Type,
hour_Meter_Reading::float,
Steering_Type,
Transmission_Type,
Wheel_Drive_Type_WD wheel_drive_type ,
EGR_Yes_No egr_yn,
Brake_Type ,
PTO_Type ,
Standard_PTO_Speed_RPM::int,
EPTO_Speed_RPM::int,
Tractor_Weight_kg_Front::int tractor_weight_front_kg ,
Tractor_Weight_kg_Rear::int tractor_weight_rear_kg ,
Tractor_Weight_kg_Total::int tractor_weight_total_kg ,
Ballasted_Tractor_Accessories,
Mechanical_Ballast_Rear_in_KG::int mechanical_ballast_rear_in_kg ,
Water_Ballast_Rear water_ballast_rear_75_pct ,
Mechanical_Ballast_Front,
Mechanical_Ballast_Front_in_Kg::int mechanical_ballast_front_kg ,
Total_Ballast_Weight::int,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftwet_trs_spec_block where tractor_model is not null and ods_record=1;
insert into mmt_ods.test_instance_tyre_info
(
client_id,
function_id,
tractor_make,
tractor_model,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tyre_type,
tyre_make,
tyre_size,
tyre_pressure_psi
)
select
client_id,
function_id,
tractor_make,
tractor_model,
file_syspk,
file_format,
sheet_mnemonic,
'front',
front_tyre_make tyre_make,
front_tyre_size tyre_size,
front_tyre_pressure_psi::int tyre_pressure_psi
from mmt_staging2.ftwet_trs_spec_block where front_tyre_make is not null and ods_record=1;
insert into mmt_ods.test_instance_tyre_info
(
client_id,
function_id,
tractor_make,
tractor_model,
test_file_ref_no,
test_file_format,
test_file_sheet_format,
tyre_type,
tyre_make,
tyre_size,
tyre_pressure_psi
)
select
client_id,
function_id,
tractor_make,
tractor_model,
file_syspk,
file_format,
sheet_mnemonic,
'rear',
front_tyre_make tyre_make,
front_tyre_size tyre_size,
front_tyre_pressure_psi::int tyre_pressure_psi
from mmt_staging2.ftwet_trs_spec_block where rear_tyre_make is not null and ods_record=1;
insert into mmt_ods.test_instance_engine_info
(
client_id,
function_id,
low_idle_declared,
high_idle_declared,
rated_rpm,
engine_to_pto_ratio_540_pto,
engine_to_pto_ratio_540e_pto,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,
function_id,
low_idle low_idle_declared,
high_idle high_idle_declared,
rated_rpm::int,
engine_to_pto_ratio_540_pto,
engine_to_pto_ratio_540e_pto,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftwet_trs_engine_rpm_block where tractor_model is not null and ods_record=1;
insert into mmt_ods.test_instance_implement_info
(
client_id,
function_id,
name_of_implement,
type_of_implement,
make_of_implement,
no_of_disc_blades_bottoms,
cutting_width_m,
implement_weight_kg,
hitch_category,
span_for_mounted_implement_mm,
mast_height_for_mounted_implement_mm,
type_of_cage_wheel_hcw_fcw,
Cage_Wheel_Width_mm,
cage_wheel_weight_kg,
cage_wheel_inner_ring_dia_mm,
cage_wheel_outer_ring_dia_mm,
cage_wheel_center_ring_dia_mm,
dist_btwn_lhs_fcw_to_rhs_fcw_mm,
No_of_angles_on_cage_wheel,
No_of_days_of_water_logging,
Depth_of_water_mm,
test_file_ref_no,
test_file_format,
test_file_sheet_format
)
select
client_id,function_id,
name_of_implement,
type_of_implement,
make_of_implement,
no_of_bottoms_tyne_disc_blade::int no_of_disc_blades_bottoms,
cutting_width_m,
implement_weight_kg::int,
hitch_category,
span_cm_for_mounted_implement::int span_for_mounted_implement_cm ,
mast_height_cm_for_mounted_implement::int mast_height_for_mounted_implement_cm,
Type_of_Cage_Wheel_Half_Cage_wheel_Full_Cage_Wheel type_of_cage_wheel_hcw_fcw ,
Cage_Wheel_Width_mm::int,
Cage_wheel_Weight::int cage_wheel_weight_kg,
Cage_Wheel_inner_Outer_Ring_Dia_mm::int cage_wheel_inner_ring_dia_mm ,
Cage_Wheel_inner_Outer_Ring_Dia_mm::int cage_wheel_outer_ring_dia_mm,
Cage_Wheel_Center_Ring_Dia_mm::int cage_wheel_center_ring_dia_mm ,
Distance_between_RHS_LHS_cage_wheel_Inner_Ring_mm_For_Full_Cage_wheel::int dist_btwn_lhs_fcw_to_rhs_fcw_mm,
No_of_angles_on_cage_wheel::int,
No_of_days_of_water_logging::int,
Depth_of_water_mm::int,
file_syspk,
file_format,
sheet_mnemonic
from mmt_staging2.ftwet_trs_implement_block where name_of_implement is not null and ods_record=1;
update mmt_ods.test_instance a
set report_template_no=b.report_template_no,
report_template_rev_no=b.report_template_rev_no,
report_template_rev_date =b.report_template_rev_date
from mmt_staging2.ftwet_trs_implement_block b where name_of_implement is not null
and a.test_file_ref_no=b.file_syspk;
select file_syspk into __file_syspk from mmt_staging2.FTWET_TRS_H1_Block;
select syspk into __test_instance_id from mmt_ods.test_instance where test_file_ref_no =__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_tyre_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_implement_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_trailer_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql;

View File

@@ -1,6 +1,8 @@
drop function if exists mmt_staging2.fn_PTO_GVG_ODS; drop function if exists mmt_staging2.fn_PTO_GVG_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_GVG_ODS() CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_GVG_ODS()
RETURNS void AS $$ RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin begin
SET search_path TO mmt_staging2; SET search_path TO mmt_staging2;
@@ -156,5 +158,14 @@ from mmt_staging2.PTOBST_GVG_performance_governing_trails_block
where ods_record=1 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); 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
where test_file_ref_no=__file_syspk;
end end
$$ LANGUAGE plpgsql; $$ LANGUAGE plpgsql;

View File

@@ -1,6 +1,8 @@
drop function if exists mmt_staging2.fn_PTO_MPM_ODS; drop function if exists mmt_staging2.fn_PTO_MPM_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_MPM_ODS() CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_MPM_ODS()
RETURNS void AS $$ RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin begin
@@ -30,5 +32,14 @@ select client_id,function_id,file_syspk,file_format,sheet_mnemonic,make,model,te
c2::numeric,c3::numeric,c4::numeric,c5::numeric c2::numeric,c3::numeric,c4::numeric,c5::numeric
from mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block from mmt_staging2.PTOBST_MPM_performance_boost_natuaral_block
where ods_record=1 ; 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
where test_file_ref_no=__file_syspk;
end end
$$ LANGUAGE plpgsql; $$ LANGUAGE plpgsql;

View File

@@ -1,6 +1,8 @@
drop function if exists mmt_staging2.fn_PTO_PHA_ODS; drop function if exists mmt_staging2.fn_PTO_PHA_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_PHA_ODS() CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_PHA_ODS()
RETURNS void AS $$ RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin begin
/************************************************************* /*************************************************************
@@ -100,5 +102,24 @@ c2::int,c3::numeric,c5::numeric
from mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block from mmt_staging2.PTOBST_PHA_Engine_oil_consumption_block
where ods_record=1; 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
where test_file_ref_no=__file_syspk;
update mmt_ods.PTO_Perf_Results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.pto_engine_oil_consumption
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end end
$$ LANGUAGE plpgsql; $$ LANGUAGE plpgsql;

View File

@@ -1,6 +1,8 @@
drop function if exists mmt_staging2.fn_PTO_PNA_ODS; drop function if exists mmt_staging2.fn_PTO_PNA_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_PNA_ODS() CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_PNA_ODS()
RETURNS void AS $$ RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin begin
/************************************************************* /*************************************************************
@@ -171,6 +173,24 @@ 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 c2::numeric,c3::numeric,c4::numeric,c5::numeric,c6::numeric,c7::numeric
from mmt_staging2.PTOBST_PNA_smoke_test_block from mmt_staging2.PTOBST_PNA_smoke_test_block
where ods_record=1 ; where ods_record=1 ;
end
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
where test_file_ref_no=__file_syspk;
update mmt_ods.PTO_Perf_Results
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.pto_smoke_test
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end
$$ LANGUAGE plpgsql; $$ LANGUAGE plpgsql;

View File

@@ -1,9 +1,21 @@
drop function if exists mmt_staging2.fn_PTO_report_ODS; drop function if exists mmt_staging2.fn_PTO_report_ODS;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_report_ODS() CREATE OR REPLACE FUNCTION mmt_staging2.fn_PTO_report_ODS()
RETURNS void AS $$ RETURNS void AS $$
declare __test_instance_id int;
declare __file_syspk int;
begin begin
SET search_path TO mmt_staging2; SET search_path TO mmt_staging2;
/*************************************************************
Function Name:fn_PTO_REPORT_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_report_ODS()
***************************************************************/
insert into mmt_ods.test_instance_tractor_info insert into mmt_ods.test_instance_tractor_info
( (
@@ -29,7 +41,7 @@ file_format,
sheet_mnemonic, sheet_mnemonic,
make,model,tractor_HP::int,configuration,FIP_type,steering_type,transmission_type,wheel_drive_type make,model,tractor_HP::int,configuration,FIP_type,steering_type,transmission_type,wheel_drive_type
from from
mmt_staging2.PTO_report_tractor_specs_block; mmt_staging2.PTOBST_RPT_tractor_specs_block;
insert into mmt_ods.test_instance insert into mmt_ods.test_instance
( (
@@ -49,7 +61,7 @@ file_format,
sheet_mnemonic, sheet_mnemonic,
make,model make,model
from from
mmt_staging2.PTO_report_tractor_specs_block; mmt_staging2.PTOBST_RPT_tractor_specs_block;
insert into mmt_ods.test_instance_engine_info insert into mmt_ods.test_instance_engine_info
( (
@@ -70,7 +82,7 @@ file_syspk,
file_format, file_format,
sheet_mnemonic, sheet_mnemonic,
make,model,rated_rpm::int,engine_to_pto_ratio make,model,rated_rpm::int,engine_to_pto_ratio
from mmt_staging2.PTO_report_tractor_specs_block; from mmt_staging2.PTOBST_RPT_tractor_specs_block;
/*block */ /*block */
@@ -213,15 +225,44 @@ as_observed,
whether_meets_the_requirements_yn whether_meets_the_requirements_yn
) )
select client_id, select
client_id,
function_id, function_id,
file_syspk, file_syspk,
file_format, file_format,
sheet_mnemonic, sheet_mnemonic,
make,model,c3,c4,c7,c8,c10::numeric,c11::numeric,c12 make,
model,
c3::text,
c4,c7,c8,c10::numeric,c11::numeric,c12
from mmt_staging2.PTOBST_RPT_PTO_Performance_Test_Observations_Summary_block from mmt_staging2.PTOBST_RPT_PTO_Performance_Test_Observations_Summary_block
where rank in (3,4) and ods_record=1 where rank in (3,4) and 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.test_instance_tractor_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.test_instance_engine_info
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.PTO_Perf_Report_Summary
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.PTO_Perf_Test_Observations
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
update mmt_ods.PTO_Perf_Report_Details
set test_instance_id=__test_instance_id
where test_file_ref_no=__file_syspk;
end end
$$ LANGUAGE plpgsql; $$ LANGUAGE plpgsql;

View File

@@ -1,810 +0,0 @@
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 void 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;
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',255)
***************************************************************************************/
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);
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);
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);
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);
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);
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);
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);
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');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,290 @@
drop function if exists mmt_staging2.fn_BUDNI_ARC_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_ARC_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void 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;
begin
/***********************************************************************************
Function Name:fn_BUDNI_ARC_Block
Function Desc: This function populates data into staging2 blocks
File Format:BUDNI
Sheet Format: BUDNI_ARC
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTDRY_SUM_Block (20,1,'BUDNI','BUDNI_ARC',273);
************************************************************************************/
SET search_path TO mmt_staging2;
truncate mmt_staging2.BUDNI_ARC_Spec_H1_Block;
truncate mmt_staging2.BUDNI_ARC_Perf_Atmos_Meas_Test_Block;
truncate mmt_staging2.BUDNI_ARC_Test_Obs_Summary_Block;
truncate mmt_staging2.stg_specific_table_BUDNI_ARC;
truncate mmt_staging2.stg_process_table_BUDNI_ARC;
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 ftdry*/
execute 'insert into mmt_staging2.stg_specific_table_BUDNI_ARC
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_BUDNI_ARC set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_BUDNI_ARC 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 f1_source = replace(f1_source,''_1'','''')
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* update config files for row numbers start, end */
execute 'update mmt_ods.mmt_config a
set row_number_start=(select min(b.row_number)
from mmt_staging2.stg_specific_table_BUDNI_ARC b
where trim(upper(F1_source))= trim(upper(column3))
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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_BUDNI_ARC a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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 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_BUDNI_ARC b
where trim(upper(F1_source))= trim(upper(column3))
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_BUDNI_ARC a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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
where f1_modified =''AIR CLEANER OIL PULL OVER TEST Observations Summary''
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/*inserting run_time in config*/
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_BUDNI_ARC
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_ARC 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 Tractor Specifiactions''
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_BUDNI_ARC
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_ARC 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=''Atmospheric conditions:''
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_BUDNI_ARC
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_ARC 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=''AIR CLEANER OIL PULL OVER TEST Observations Summary''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_BUDNI_ARC a
where rank_tag='BUDNI_ARC_Spec_H1' and rank=3;
select column4 into __model from mmt_staging2.stg_process_table_BUDNI_ARC a
where rank_tag='BUDNI_ARC_Spec_H1' and rank=3;
/* blocks data loading start - BUDNI_ARC_Spec_H1_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_ARC_Spec_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.BUDNI_ARC_Spec_H1_block
(
make,model,tractor_HP,rated_rpm,configuration,transmission_type,wheel_drive_type,rank)
select column3,column4,column5,column6,column7,column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_ARC where rank_tag='BUDNI_ARC_Spec_H1'
and rank=3;
execute 'update mmt_staging2.BUDNI_ARC_Spec_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||'''';
update mmt_staging2.BUDNI_ARC_Spec_H1_block a
set FIP_type=column3,steering_type=column4,Engine_to_PTO_ratio= column5,Ballast_Condition=column6,
Test_Engine_Set_RPM=column7,Type_of_track=column8
from mmt_staging2.stg_process_table_BUDNI_ARC b
where b.rank_tag='BUDNI_ARC_Spec_H1'
and b.rank=5
and a.file_syspk=b.file_syspk;
update mmt_staging2.BUDNI_ARC_Spec_H1_Block
set ods_record=0 where rank in(1,2);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_ARC_Spec_H1_block');
/* blocks data loading start - BUDNI_ARC_Perf_Atmos_Meas_Test_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_ARC_Perf_Atmos_Meas_Test_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.BUDNI_ARC_Perf_Atmos_Meas_Test_Block
(
Position_of_tractor,
Loss_of_oil,
Oil_pull_Over,
Engine_oil_pressure,
rank
)
select
column3,column6,column7,column8,rank
from mmt_staging2.stg_process_table_BUDNI_ARC a
where rank_tag ='BUDNI_ARC_Perf_Atmos_Meas_Test' and rank in (5,6,7,8,9)
order by rank;
update mmt_staging2.BUDNI_ARC_Perf_Atmos_Meas_Test_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_ARC_Perf_Atmos_Meas_Test_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||'''';
update mmt_staging2.BUDNI_ARC_Perf_Atmos_Meas_Test_Block a
set
Temperature_C=column3,
Pressure_kPa=column4 ,
Relative_humidity=column5,
Mass_of_oil_before_test=column6
from mmt_staging2.stg_process_table_BUDNI_ARC b
where b.rank_tag ='BUDNI_ARC_Perf_Atmos_Meas_Test'
and b.rank =3
and a.file_syspk=b.file_syspk;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_ARC_Perf_Atmos_Meas_Test_Block');
/* blocks data loading start - BUDNI_ARC_Test_Obs_Summary_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_ARC_Test_Obs_Summary_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.BUDNI_ARC_Test_Obs_Summary_Block
(
column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_ARC a
where rank_tag='BUDNI_ARC_Test_Obs_Summary' and rank in (1,2,3)
order by rank;
update mmt_staging2.BUDNI_ARC_Test_Obs_Summary_Block
set ods_record=0 where
rank in(1,2);
update mmt_staging2.BUDNI_ARC_Test_Obs_Summary_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_ARC_Test_Obs_Summary_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_ARC_Test_Obs_Summary_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,358 @@
drop function if exists mmt_staging2.fn_BUDNI_BRK_Block;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_BRK_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void 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;
begin
/***********************************************************************************
Function Name:fn_BUDNI_BRK_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format: BUDNI_BRK
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_BRK_Block(20,1,'BUDNI','BUDNI_BRK',273);
************************************************************************************/
SET search_path TO mmt_staging2;
delete from mmt_staging2.BUDNI_BRK_Spec_H1_Block;
delete from mmt_staging2.BUDNI_BRK_Service_Barke_Test_Int;
delete from mmt_staging2.BUDNI_BRK_Service_Barke_Test_Block;
delete from mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block;
delete from mmt_staging2.stg_specific_table_BUDNI_BRK;
delete from mmt_staging2.stg_process_table_BUDNI_BRK;
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_BUDNI_BRK
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||'';
execute 'update mmt_staging2.stg_specific_table_BUDNI_BRK set column2 = TRIM (TRAILING FROM column2 )';
execute 'update mmt_staging2.stg_specific_table_BUDNI_BRK set column2 = TRIM (LEADING FROM column2 )';
execute 'update mmt_ods.mmt_config set F1_modified = TRIM (TRAILING FROM F1_modified)';
execute 'update mmt_ods.mmt_config set F1_modified = TRIM (LEADING FROM F1_modified)' ;
execute 'update mmt_ods.mmt_config set F1_source=F1_modified' ;
execute 'update mmt_ods.mmt_config set F1_source = TRIM (TRAILING FROM F1_source)';
execute '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_BUDNI_BRK b
where trim(upper(F1_source))= trim(upper(column3))
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_BUDNI_BRK a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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 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_BUDNI_BRK b
where trim(upper(F1_source))= trim(upper(column3))
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_BUDNI_BRK a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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 )
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 =''Brake Performance Test Observations Summary''
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_BUDNI_BRK
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_BRK 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 Tractor Specifiactions''
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_BUDNI_BRK
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_BRK 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=''1) Service Barke Testing''
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_BUDNI_BRK
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_BRK 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=''2) Parking Brake Test''
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_BUDNI_BRK
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_BRK 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=''Brake Performance Test Observations Summary''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
select column3 into __make from mmt_staging2.stg_process_table_BUDNI_BRK a
where rank_tag='BUDNI_BRK_Spec_H1' and rank=3;
select column4 into __model from mmt_staging2.stg_process_table_BUDNI_BRK a
where rank_tag='BUDNI_BRK_Spec_H1' and rank=3;
insert into mmt_staging2.BUDNI_BRK_Spec_H1_block
(
make,model,tractor_HP,rated_rpm,Type_of_brake ,
Type_of_track,rank)
select column3,column4,column5,column6,column7,column8,rank
from mmt_staging2.stg_process_table_BUDNI_BRK where rank_tag='BUDNI_BRK_Spec_H1'
and rank=3;
execute 'update mmt_staging2.BUDNI_BRK_Spec_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||'''';
update mmt_staging2.BUDNI_BRK_Spec_H1_block a
set brake_free_play_lh=column3,brake_free_play_rh=column4,
maximum_attainable_speed_kmph_unballasted=column5,
maximum_attainable_speed_kmph_ballasted=column6
from mmt_staging2.stg_process_table_BUDNI_BRK b
where b.rank_tag='BUDNI_BRK_Spec_H1'
and b.rank=6
and a.file_syspk=b.file_syspk;
insert into mmt_staging2.BUDNI_BRK_Service_Barke_Test_Int
(
column3,
column4,
column5,
column6,
column7,
column8,
column9,
rank
)
select
column3,column4,column5,column6,column7,column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_BRK a
where rank_tag ='BUDNI_BRK_Service_Barke_Test'
order by rank;
update mmt_staging2.BUDNI_BRK_Service_Barke_Test_Int a
set column4= b.first_value from (SELECT
rank, column4, value_partition, first_value(column4) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column4,
sum(case when column4 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_BRK_Service_Barke_Test_Int
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_BRK_Service_Barke_Test_Int a
set ods_record =0 where rank in (1,2);
insert into mmt_staging2.BUDNI_BRK_Service_Barke_Test_Block
(
dummy_f,
brake_test_type,
brake_test_name,
speed_condition,
Braking_device_control_force_N,
Mean_deceleration_m_sec2,
Stopping_distance_m,
Max_deviation_of_tractor_from_its_original_course_m,
Abnormal_vibration,
The_brakes_were_heated_by
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column5,column6,column7,column8,column9}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column5::text,column6::text,column7::text
,column8::text,column9::text]) AS val
FROM mmt_staging2.BUDNI_BRK_Service_Barke_Test_Int where rank <=6
ORDER BY generate_series(1,15),rank,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);
update mmt_staging2.BUDNI_BRK_Service_Barke_Test_Block a
set brake_test_type= b.first_value from (SELECT
rank, brake_test_type, value_partition, first_value(brake_test_type) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
brake_test_type,
sum(case when brake_test_type is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_BRK_Service_Barke_Test_Block
ORDER BY rank ASC
) as q) b;
update mmt_staging2.BUDNI_BRK_Service_Barke_Test_Block a
set brake_test_name= b.first_value from (SELECT
rank, brake_test_name, value_partition, first_value(brake_test_name) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
brake_test_name ,
sum(case when brake_test_name is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_BRK_Service_Barke_Test_Block
ORDER BY rank ASC
) as q) b;
update mmt_staging2.BUDNI_BRK_Service_Barke_Test_Block set
ballast_condition ='Standard ballasted tractor';
update mmt_staging2.BUDNI_BRK_Service_Barke_Test_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_BRK_Service_Barke_Test_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.BUDNI_BRK_Test_Obs_Summary_Block
(
column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_BRK a
where rank_tag='BUDNI_BRK_Test_Obs_Summary' and rank <=6
order by rank;
update mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block a
set column5= b.first_value from (SELECT
rank, column5, value_partition, first_value(column5) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column5,
sum(case when column5 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block a
set column6= b.first_value from (SELECT
rank, column6, value_partition, first_value(column6) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column6,
sum(case when column6 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block a
set column7= b.first_value from (SELECT
rank, column7, value_partition, first_value(column7) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column7,
sum(case when column7 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block
set ods_record=0 where
rank in(1,2);
update mmt_staging2.BUDNI_BRK_Test_Obs_Summary_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_BRK_Test_Obs_Summary_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;

View File

@@ -0,0 +1,237 @@
drop function if exists mmt_staging2.fn_BUDNI_DBP_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_DBP_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void 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;
begin
/***********************************************************************************
Function Name:fn_BUDNI_DBP_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format: BUDNI_DBP
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_DBP_Block(20,1,'BUDNI','BUDNI_DBP',261);
************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.BUDNI_DBP_Spec_H1_Block;
truncate table mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block;
truncate table mmt_staging2.stg_specific_table_budni_dbp;
truncate table mmt_staging2.stg_process_table_budni_dbp;
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_budni_dbp
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_budni_dbp set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_budni_dbp 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_budni_dbp b
where trim(upper(F1_source))= trim(upper(column3))
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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_budni_dbp a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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
where f1_modified =''Tractor Drawbar Performance Report''
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_budni_dbp
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_dbp 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 Tractor Specifiactions''
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_budni_dbp
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_dbp 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 Drawbar Performance Report.''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_budni_dbp a
where rank_tag='BUDNI_DBP_Spec_H1' and rank=2;
select column4 into __model from mmt_staging2.stg_process_table_budni_dbp a
where rank_tag='BUDNI_DBP_Spec_H1' and rank=2;
/* blocks data loading start - BUDNI_DBP_Spec_H1_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_DBP_Spec_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.BUDNI_DBP_Spec_H1_Block
(
column2,column3,column4,column5,column6,column7,
column8,column9,column10,column11,column12,column13,
column14,column15,rank
)
select
column2,column3,column4,column5,column6,column7,column8,column9,column10,
column11,column12,column13,column14,column15,rank
from mmt_staging2.stg_process_table_budni_dbp
where rank_tag='BUDNI_DBP_Spec_H1';
update mmt_staging2.BUDNI_DBP_Spec_H1_Block
set ods_record=0 where rank in
(select distinct first_value(b.rank)
over (partition by b.column2 order by b.syspk) from mmt_staging2.BUDNI_DBP_Spec_H1_Block b);
execute 'update mmt_staging2.BUDNI_DBP_Spec_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_DBP_Spec_H1_Block');
/* blocks data loading start - BUDNI_DBP_Spec_H1_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_DBP_Drawbar_Perf_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block
(
column2,column3,column4,column5,column6,column7,
column8,column9,column10,column11,column12,column13,
column14,column15,column16,column17,column18,column19,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,column9,column10,column11,column12,column13,column14,
column15,column16,column17,column18,column19,rank
from mmt_staging2.stg_process_table_budni_dbp a
where rank_tag='BUDNI_DBP_Drawbar_Perf';
update mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_DBP_Drawbar_Perf_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||'''';
update mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block
set column2= column3 where column3 like 'i%';
update mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block
set column3=null
where column3 like 'i%';
update mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block a
set column2= b.first_value from (SELECT
rank, column2, value_partition, first_value(column2) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column2,
sum(case when column2 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block
set ods_record=0 where column4 is null or
rank in
(select distinct first_value(b.rank)
over (partition by b.column2 order by b.syspk) from mmt_staging2.BUDNI_DBP_Drawbar_Perf_Block b);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_DBP_Drawbar_Perf_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,569 @@
drop function if exists mmt_staging2.fn_BUDNI_FLD_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_FLD_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void 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;
begin
/***********************************************************************************
Function Name:fn_BUDNI_FLD_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format: BUDNI_FLD
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_FLD_Block(20,1,'BUDNI','BUDNI_FLD',261)
************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.BUDNI_FLD_Spec_H1_Block;
truncate table mmt_staging2.BUDNI_FLD_Impl_Test_Int;
truncate table mmt_staging2.BUDNI_FLD_Impl_Test_Block;
truncate table mmt_staging2.BUDNI_FLD_Cage_Wheel_Block;
truncate table mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Int;
truncate table mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Block;
truncate table mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block;
truncate table mmt_staging2.stg_specific_table_BUDNI_FLD;
truncate table mmt_staging2.stg_process_table_BUDNI_FLD;
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_BUDNI_FLD
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_BUDNI_FLD set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_BUDNI_FLD 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_BUDNI_FLD b
where trim(upper(F1_source))= trim(upper(column3))
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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_BUDNI_FLD a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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
where f1_modified =''Field Performance Test Observations Summary''
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_BUDNI_FLD
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_FLD 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 Tractor Specifiactions''
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_BUDNI_FLD
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_FLD 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=''BRIEF SPECIFICATION OF IMPLEMENTS USED DURING FIELD TEST''
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_BUDNI_FLD
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_FLD 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=''SUMMARY OF FIELD PERFORMANCE TEST''
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_BUDNI_FLD
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_FLD 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=''Field Performance Test Observations Summary''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_BUDNI_FLD a
where rank_tag='BUDNI_FLD_Spec_H1' and rank=3;
select column4 into __model from mmt_staging2.stg_process_table_BUDNI_FLD a
where rank_tag='BUDNI_FLD_Spec_H1' and rank=3;
/* blocks data loading start - BUDNI_FLD_Spec_H1_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_FLD_Spec_H1_block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.BUDNI_FLD_Spec_H1_block
(
make,model,tractor_HP,rated_rpm,configuration,transmission_type,wheel_drive_type,rank)
select column3,column4,column5,column6,column7,column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_FLD where rank_tag='BUDNI_FLD_Spec_H1'
and rank=3;
execute 'update mmt_staging2.BUDNI_FLD_Spec_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||'''';
update mmt_staging2.BUDNI_FLD_Spec_H1_block a
set FIP_type=column3,steering_type=column4,Engine_to_PTO_ratio= column5,Ballast_Condition=column6,
Test_Engine_Set_RPM=column7
from mmt_staging2.stg_process_table_BUDNI_FLD b
where b.rank_tag='BUDNI_FLD_Spec_H1'
and b.rank=5
and a.file_syspk=b.file_syspk;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_FLD_Spec_H1_block');
insert into mmt_staging2.BUDNI_FLD_Impl_Test_Int
(
column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_FLD a
where rank_tag ='BUDNI_FLD_Impl_Test' and rank <> 1
order by rank;
update mmt_staging2.BUDNI_FLD_Impl_Test_Int a
set column3= b.first_value from (SELECT
rank, column3, value_partition, first_value(column3) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column3,
sum(case when column3 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Impl_Test_Int
ORDER BY rank ASC
) as q) b where a.rank = b.rank and a.rank <> 13 ;
update mmt_staging2.BUDNI_FLD_Impl_Test_Int a
set column4= b.first_value from (SELECT
rank, column4, value_partition, first_value(column4) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column4,
sum(case when column4 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Impl_Test_Int
ORDER BY rank ASC
) as q) b where a.rank = b.rank and a.rank <> 13 ;
update mmt_staging2.BUDNI_FLD_Impl_Test_Int a
set column5= b.first_value from (SELECT
rank, column5, value_partition, first_value(column5) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column5,
sum(case when column5 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Impl_Test_Int
ORDER BY rank ASC
) as q) b where a.rank = b.rank and a.rank <> 13 ;
update mmt_staging2.BUDNI_FLD_Impl_Test_Int a
set column6= b.first_value from (SELECT
rank, column6, value_partition, first_value(column6) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column6,
sum(case when column6 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Impl_Test_Int
ORDER BY rank ASC
) as q) b where a.rank = b.rank and a.rank <> 13;
update mmt_staging2.BUDNI_FLD_Impl_Test_Int a
set column7= b.first_value from (SELECT
rank, column7, value_partition, first_value(column7) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column7,
sum(case when column7 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Impl_Test_Int
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_FLD_Impl_Test_Int a
set column8= b.first_value from (SELECT
rank, column8, value_partition, first_value(column8) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column8,
sum(case when column8 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Impl_Test_Int
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
execute 'update mmt_staging2.BUDNI_FLD_Impl_Test_Int 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||'''';
/* blocks data loading - BUDNI_FLD_Impl_Test_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_FLD_Impl_Test_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.BUDNI_FLD_Impl_Test_Block
(
dummy_f,
items,
Make,
type,
No_of_Disc_blades,
Type_of_Disc_blades,
Size_of_bottoms_blades_1_mm,
Size_of_bottoms_blades_2_mm,
Size_of_bottoms_blades_3_mm,
Spacing_of_bottoms_flanges_mm,
Lower_hitch_point_span_mm,
Mast_height_mm,
Overall_dimensions_mm,
Overall_dimensions_mm_length,
Overall_dimensions_mm_Width,
Overall_dimensions_mm_Height,
Gross_mass_kg
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column5,column6}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column5::text,column6::text]) AS val
FROM mmt_staging2.BUDNI_FLD_Impl_Test_Int where ods_record=1
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.BUDNI_FLD_Impl_Test_Block where dummy_f is null;
execute 'update mmt_staging2.BUDNI_FLD_Impl_Test_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_FLD_Impl_Test_Block');
/* blocks data loading - BUDNI_FLD_Cage_Wheel_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_FLD_Cage_Wheel_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.BUDNI_FLD_Cage_Wheel_Block
(
dummy_f,
Items,
type,
Dia_mm,
Width_mm,
No_and_types_of_lugs,
Size_of_angle_section_1_mm,
Size_of_angle_section_2_mm,
Size_of_angle_section_3_mm,
Length_of_lugs_mm,
Spacing_of_lugs_mm,
Weight_of_each_cage_wheels_kg
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column9}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column9::text]) AS val
FROM mmt_staging2.BUDNI_FLD_Impl_Test_Int where ods_record=1
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.BUDNI_FLD_Cage_Wheel_Block where dummy_f is null;
execute 'update mmt_staging2.BUDNI_FLD_Cage_Wheel_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_FLD_Cage_Wheel_Block');
insert into mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Int
(
column3,column4,column5,column6,column7,rank
)
select
column3,column4,column5,column6,column7,rank
from mmt_staging2.stg_process_table_BUDNI_FLD a
where rank_tag ='BUDNI_FLD_Sum_Perf_Test' and rank <> 1
order by rank,column3 ;
update mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Int set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Int 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||'''';
/* blocks data loading - BUDNI_FLD_Sum_Perf_Test_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_FLD_Sum_Perf_Test_Block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Block
(
dummy_f,
Parameter_operation,
Type_of_soil,
Av_soil_moisture_Av_depth_of_standing_water_cm,
Bulk_density_of_soil_g_cc,
Cone_index_kgf_sq_cm_Puddling_index,
Gear_used,
Av_speed_of_operation_kmph,
Av_wheel_slip_Av_Travel_reduction,
Av_depth_of_cut_cm_Av_Depth_of_puddle_cm,
Av_working_width_cm,
Area_covered_ha_h,
Fuel_consumption,
Fuel_consumption_l_h,
Fuel_consumption_l_ha,
Av_draft_of_implement_kN
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column5,column6,column7}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column5::text,column6::text,column7::text]) AS val
FROM mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Int where ods_record=1
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Block where dummy_f is null;
update mmt_staging2.BUDNI_FLD_Sum_Perf_Test_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_FLD_Sum_Perf_Test_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_FLD_Sum_Perf_Test_Block');
/* blocks data loading - BUDNI_FLD_Test_Obs_Summary_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_FLD_Test_Obs_Summary_Block',__file_format,__sheet_mnemonic,5);
insert into mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block
(
column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_FLD a
where rank_tag='BUDNI_FLD_Test_Obs_Summary' and rank <=6;
update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block
set ods_record=0
where rank in (1,2);
update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block a
set column4= b.first_value from (SELECT
rank, column4, value_partition, first_value(column4) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column4,
sum(case when column4 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block a
set column5= b.first_value from (SELECT
rank, column5, value_partition, first_value(column5) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column5,
sum(case when column5 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block a
set column6= b.first_value from (SELECT
rank, column6, value_partition, first_value(column6) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column6,
sum(case when column6 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block a
set column7= b.first_value from (SELECT
rank, column7, value_partition, first_value(column7) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column7,
sum(case when column7 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block a
set column8= b.first_value from (SELECT
rank, column8, value_partition, first_value(column8) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column8,
sum(case when column8 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block a
set column9= b.first_value from (SELECT
rank, column9, value_partition, first_value(column9) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column9,
sum(case when column9 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_FLD_Test_Obs_Summary_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_FLD_Test_Obs_Summary_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,533 @@
drop function if exists mmt_staging2.fn_budni_hdl_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_budni_hdl_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void AS $$
declare __make text;
declare __model text;
declare __characteristic_A 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;
begin
/***********************************************************************************
Function Name:fn_budni_hdl_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format: BUDNI_HDL
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_FLD_Block(20,1,'BUDNI','BUDNI_FLD',261);
************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.stg_specific_table_budni_hdl;
truncate table mmt_staging2.stg_process_table_budni_hdl;
truncate table mmt_staging2.budni_hdl_Spec_H1_Block;
truncate table mmt_staging2.budni_hdl_power_test_Block;
truncate table mmt_staging2.budni_hdl_Lifting_Capacity_Test_Block;
truncate table mmt_staging2.budni_hdl_Maintenance_of_lift_load_int;
truncate table mmt_staging2.budni_hdl_Maintenance_of_lift_load_Block;
truncate table mmt_staging2.budni_hdl_Test_Obs_Summary_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 BUDNI */
execute 'insert into mmt_staging2.stg_specific_table_budni_hdl
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_budni_hdl set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_budni_hdl 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_budni_hdl b
where trim(upper(F1_source))= trim(upper(column3))
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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_budni_hdl a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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
where f1_modified =''Power Lift and Hydraulic Pump Performance Test Observations Summary''
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* tagging ranks for each block in process table*/
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_budni_hdl
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_hdl 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 Tractor Specifiactions''
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_budni_hdl
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_hdl 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=''A) Hydraulic power test:''
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_budni_hdl
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_hdl 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=''Tapping Point''
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_budni_hdl
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_hdl 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=''C) Maintenance of lift load:''
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_budni_hdl
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_hdl 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=''Power Lift and Hydraulic Pump Performance Test Observations Summary''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_budni_hdl a
where rank_tag='BUDNI_HDL_Spec_H1' and rank=3;
select column4 into __model from mmt_staging2.stg_process_table_budni_hdl a
where rank_tag='BUDNI_HDL_Spec_H1' and rank=3;
/* blocks data loading start - budni_hdl_Spec_H1_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_HDL_Spec_H1_block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.budni_hdl_Spec_H1_Block
(
tractor_model,
tractor_make,
tractor_HP,
rated_rpm,
hydraulic_type,
Pump_speed_at_rated_engine_speed_rpm,
Steering_Type,
Oil,rank
)
select
column3,column4,column5,column6,column7,column8,column9,column10,rank
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag='BUDNI_HDL_Spec_H1' and rank=3;
execute 'update mmt_staging2.budni_hdl_Spec_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||'''';
update mmt_staging2.BUDNI_HDL_Spec_H1_block a
set Lift_Rod_type_LH =column3,
Lift_Rod_type_RH= column4,
Lift_Rod_Length_LH=column5,
Lift_Rod_Length_RH=column6,
Lower_link_Length_LH=column7,
Lower_link_Length_RH=column8,
Pump_HP=column9
from mmt_staging2.stg_process_table_budni_hdl b
where b.rank_tag='BUDNI_HDL_Spec_H1'
and b.rank=6
and a.file_syspk=b.file_syspk;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_HDL_Spec_H1_block');
/* blocks data loading - budni_hdl_power_test_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'budni_hdl_power_test_block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.budni_hdl_power_test_block (dummy_f) values('dummy');
update mmt_staging2.budni_hdl_power_test_block
set Pump_delivery_rate_at_minimum_pressure_and_rated_engine_speed_l_min= (select column3
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag ='BUDNI_HDL_Power_Test' and rank=3)
where dummy_f='dummy';
update mmt_staging2.budni_hdl_power_test_block
set Maximum_hydraulic_power_kW= (select column5
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag ='BUDNI_HDL_Power_Test' and rank=3)
where dummy_f='dummy';
update mmt_staging2.budni_hdl_power_test_block
set Pump_delivery_rate_at_maximum_hydraulic_power_l_min= (select column7
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag ='BUDNI_HDL_Power_Test' and rank=3)
where dummy_f='dummy';
update mmt_staging2.budni_hdl_power_test_block
set Pressure_at_maximum_hydraulic_power_MPa= (select column9
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag ='BUDNI_HDL_Power_Test' and rank=3)
where dummy_f='dummy';
update mmt_staging2.budni_hdl_power_test_block
set Sustained_pressure_of_the_open_relief_valve_MPa= (select column11
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag ='BUDNI_HDL_Power_Test' and rank=3)
where dummy_f='dummy';
update mmt_staging2.budni_hdl_power_test_block
set tapping_point_relief_valve_test = (select column4
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag ='BUDNI_HDL_Lifting_Capacity_Test' and rank=2)
where dummy_f='dummy';
update mmt_staging2.budni_hdl_power_test_block
set tapping_point_Pump_performance_test= (select column4
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag ='BUDNI_HDL_Lifting_Capacity_Test' and rank=3)
where dummy_f='dummy';
update mmt_staging2.budni_hdl_power_test_block
set tapping_point_Temperature_of_hydraulic_fluid_C= (select column4
from mmt_staging2.stg_process_table_budni_hdl
where rank_tag ='BUDNI_HDL_Lifting_Capacity_Test' and rank=4)
where dummy_f='dummy';
update mmt_staging2.BUDNI_HDL_Power_Test_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_HDL_Power_Test_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||'''';
update mmt_staging2.BUDNI_HDL_Power_Test_Block
set ods_record=0 where
rank in (1,2);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_HDL_Power_Test_Block');
/* blocks data loading - budni_hdl_Lifting_Capacity_Test_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'budni_hdl_Lifting_Capacity_Test_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.budni_hdl_Lifting_Capacity_Test_Block
(
column5,column6,column7,
column8,column9,column10,column11,rank
)
select
column5,column6,column7,
column8,column9,column10,column11,rank
from mmt_staging2.stg_process_table_budni_hdl a
where rank_tag='BUDNI_HDL_Lifting_Capacity_Test';
update mmt_staging2.budni_hdl_Lifting_Capacity_Test_Block set make=__make,model=__model;
execute 'update mmt_staging2.budni_hdl_Lifting_Capacity_Test_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||'''';
update mmt_staging2.budni_hdl_Lifting_Capacity_Test_Block
set ods_record=0 where
rank in (1,2);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'budni_hdl_Lifting_Capacity_Test_Block');
insert into mmt_staging2.budni_hdl_Maintenance_of_lift_load_int
(
column3,column4,column5,column6,column7,
column8,column9,column10,column11,column12,rank
)
select
column3,column4,column5,column6,column7,
column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_budni_hdl a
where rank_tag='BUDNI_HDL_Maintenance_Of_Lift_Load';
update mmt_staging2.budni_hdl_Maintenance_of_lift_load_int
set ods_record=0 where
rank=1;
/* blocks data loading - PTOBST_RPT_PTO_performance_report_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'budni_hdl_Maintenance_of_lift_load_Block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.budni_hdl_Maintenance_of_lift_load_Block
(
dummy_f,
Elapsed_time_minute,
Cumulative_drop_in_height_of_lift_mm
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column7,column8,column9,column10,column11,column12}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column7::text,column8::text,column9::text,
column10::text,column11::text,column12::text]) AS val
FROM mmt_staging2.budni_hdl_Maintenance_of_lift_load_int
ORDER BY generate_series(1,15),rank,2'
) t (col text,a_1 text,a_2 text);
update mmt_staging2.budni_hdl_Maintenance_of_lift_load_block
set Force_applied_at_the_frame_kN =(select column5
from mmt_staging2.budni_hdl_Maintenance_of_lift_load_int
where column3 ='Force applied at the frame, (kN)')
where Force_applied_at_the_frame_kN is null;
update mmt_staging2.budni_hdl_Maintenance_of_lift_load_block
set Temperature_of_hydraulic_fluid_at_the_start_of_test_C =(select column5
from mmt_staging2.budni_hdl_Maintenance_of_lift_load_int
where column3 ='Temperature of hydraulic fluid at the start of test, (⁰C)')
where Temperature_of_hydraulic_fluid_at_the_start_of_test_C is null;
delete from mmt_staging2.budni_hdl_Maintenance_of_lift_load_block where dummy_f is null;
update mmt_staging2.budni_hdl_Maintenance_of_lift_load_block set make=__make,model=__model;
execute 'update mmt_staging2.budni_hdl_Maintenance_of_lift_load_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'budni_hdl_Maintenance_of_lift_load_block');
/* blocks data loading - budni_hdl_Test_Obs_Summary_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'budni_hdl_Test_Obs_Summary_Block',__file_format,__sheet_mnemonic,5);
insert into mmt_staging2.budni_hdl_Test_Obs_Summary_Block
(
column3,column4,column5,column6,column7,
column8,column9,column10,column11,column12,rank
)
select
column3,column4,column5,column6,column7,
column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_budni_hdl a
where rank_tag='BUDNI_HDL_Test_Obs_Summary' and rank not in (8,9);
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block a
set column3= b.first_value from (SELECT
rank, column3, value_partition, first_value(column3) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column3,
sum(case when column3 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.budni_hdl_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block a
set column4= b.first_value from (SELECT
rank, column4, value_partition, first_value(column4) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column4,
sum(case when column4 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.budni_hdl_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block a
set column5= b.first_value from (SELECT
rank, column5, value_partition, first_value(column5) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column5,
sum(case when column5 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.budni_hdl_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block a
set column7= b.first_value from (SELECT
rank, column7, value_partition, first_value(column7) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column7,
sum(case when column7 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.budni_hdl_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block a
set column8= b.first_value from (SELECT
rank, column8, value_partition, first_value(column8) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column8,
sum(case when column8 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.budni_hdl_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block a
set column11= b.first_value from (SELECT
rank, column11, value_partition, first_value(column11) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column11,
sum(case when column11 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.budni_hdl_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block a
set column12= b.first_value from (SELECT
rank, column12, value_partition, first_value(column12) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column12,
sum(case when column12 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.budni_hdl_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
select column4 into __characteristic_A
from mmt_staging2.budni_hdl_Test_Obs_Summary_Block where rank=3;
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block
set column4=concat(column4,'. ',__characteristic_A,' -',column5) where ods_record =1;
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block set make=__make,model=__model;
execute 'update mmt_staging2.budni_hdl_Test_Obs_Summary_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||'''';
update mmt_staging2.budni_hdl_Test_Obs_Summary_Block
set ods_record=0 where
rank in (1,2,3);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'budni_hdl_Test_Obs_Summary_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,418 @@
drop function if exists mmt_staging2.fn_BUDNI_HLG_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_HLG_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void AS $$
declare __make text;
declare __model text;
declare __characteristic_1 text;
declare __characteristic_2 text;
declare __characteristic_3 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;
begin
/***********************************************************************************
Function Name:fn_BUDNI_HLG_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format: BUDNI_HLG
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_HLG_Block(20,1,'BUDNI','BUDNI_HLG',261);
************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.BUDNI_HLG_Spec_H1_Block;
truncate table mmt_staging2.BUDNI_HLG_Perf_Test_int;
truncate table mmt_staging2.BUDNI_HLG_Perf_Test_block;
truncate table mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block;
truncate table mmt_staging2.stg_specific_table_BUDNI_HLG;
truncate table mmt_staging2.stg_process_table_BUDNI_HLG;
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 BUDNI */
execute 'insert into mmt_staging2.stg_specific_table_BUDNI_HLG
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_BUDNI_HLG set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_BUDNI_HLG 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 f1_source = replace(f1_source,''_1'','''')
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* reverese update in process table for match*/
execute 'update mmt_ods.mmt_config a
set row_number_start=(select min(b.row_number)
from mmt_staging2.stg_specific_table_BUDNI_HLG b
where trim(upper(F1_source))= trim(upper(column3))
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_BUDNI_HLG a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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 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_BUDNI_HLG b
where trim(upper(F1_source))= trim(upper(column3))
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_BUDNI_HLG a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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 )
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
where f1_modified =''Haulage Performance Test Observations Summary''
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_BUDNI_HLG
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_HLG 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 Tractor Specifiactions''
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_BUDNI_HLG
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_HLG 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=''Haulage performance Test''
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_BUDNI_HLG
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_HLG 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=''Haulage Performance Test Observations Summary''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_BUDNI_HLG a
where rank_tag='BUDNI_HLG_Spec_H1' and rank=3;
select column4 into __model from mmt_staging2.stg_process_table_BUDNI_HLG a
where rank_tag='BUDNI_HLG_Spec_H1' and rank=3;
/* blocks data loading start - BUDNI_HLG_Spec_H1_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_HLG_Spec_H1_block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.BUDNI_HLG_Spec_H1_block
(
make,model,tractor_HP,rated_rpm,configuration,transmission_type,wheel_drive_type,rank)
select column3,column4,column5,column6,column7,column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_HLG where rank_tag='BUDNI_HLG_Spec_H1'
and rank=3;
execute 'update mmt_staging2.BUDNI_HLG_Spec_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||'''';
update mmt_staging2.BUDNI_HLG_Spec_H1_block a
set FIP_type=column3,steering_type=column4,Engine_to_PTO_ratio= column5,Ballast_Condition=column6,
Test_Engine_Set_RPM=column7,Type_of_track=column8
from mmt_staging2.stg_process_table_BUDNI_HLG b
where b.rank_tag='BUDNI_HLG_Spec_H1'
and b.rank=5
and a.file_syspk=b.file_syspk;
update mmt_staging2.BUDNI_HLG_Spec_H1_Block
set ods_record=0 where rank in(1,2);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_HLG_Spec_H1_Block');
insert into mmt_staging2.BUDNI_HLG_Perf_Test_int
(
column3,column6,column8,rank
)
select
column3,column6,column8,rank
from mmt_staging2.stg_process_table_BUDNI_HLG a
where rank_tag ='BUDNI_HLG_Perf_Test'
order by rank,column3;
update mmt_staging2.BUDNI_HLG_Perf_Test_int set ods_record=0 where rank =1;
update mmt_staging2.BUDNI_HLG_Perf_Test_int set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_HLG_Perf_Test_int 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||'''';
/* blocks data loading - budni_hlg_perf_test_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'budni_hlg_perf_test_block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.budni_hlg_perf_test_block
(
dummy_f,
type_of_trailer,
Gross_mass_of_trailer_tonne,
Height_of_trailer_hitch_above_ground_level_mm,
Gear_used_during_the_test_for_negotiating_slopes_up_to_8,
Average_travel_speed_kmph,
Average_fuel_consumption,
l_h,
ml_km_tonne,
Average_distance_traveled_per_litre_of_fuel_consumption_km,
General_observations,
Effectiveness_of_brakes,
Maneuverability_of_tractor_trailer_combination
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column6,column8}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column6::text,column8::text]) AS val
FROM mmt_staging2.BUDNI_HLG_Perf_Test_int where ods_record=1
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.BUDNI_HLG_Perf_Test_block where dummy_f is null;
update mmt_staging2.BUDNI_HLG_Perf_Test_block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_HLG_Perf_Test_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_HLG_Perf_Test_block');
/* blocks data loading - BUDNI_HLG_Perf_Test_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_HLG_Perf_Test_block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
(
column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_HLG a
where rank_tag='BUDNI_HLG_Test_Obs_Summary' and rank <=11
order by rank;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
set ods_record=0 where
rank in
(select distinct first_value(b.rank)
over (partition by b.column3 order by b.syspk) from mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block b);
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block a
set column3= b.first_value from (SELECT
rank, column3, value_partition, first_value(column3) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column3,
sum(case when column3 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block a
set column5= b.first_value from (SELECT
rank, column5, value_partition, first_value(column5) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column5,
sum(case when column5 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block a
set column7= b.first_value from (SELECT
rank, column7, value_partition, first_value(column7) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column7,
sum(case when column7 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block a
set column8= b.first_value from (SELECT
rank, column8, value_partition, first_value(column8) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column8,
sum(case when column8 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block a
set column9= b.first_value from (SELECT
rank, column9, value_partition, first_value(column9) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column9,
sum(case when column9 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
select column4 into __characteristic_1 from mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
where rank=3;
select column4 into __characteristic_2 from mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
where rank=6;
select column4 into __characteristic_3 from mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
where rank=9;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
set column4=concat(__characteristic_1,'-',column4) where rank=4;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
set column4=concat(__characteristic_1,'-',column4) where rank=5;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
set column4=concat(__characteristic_2,'-',column4) where rank=7;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
set column4=concat(__characteristic_2,'-',column4) where rank=8;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
set column4=concat(__characteristic_3,'-',column4) where rank=10;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block
set column4=concat(__characteristic_3,'-',column4) where rank=11;
update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_HLG_Test_Obs_Summary_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_HLG_Test_Obs_Summary_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,226 @@
drop function if exists mmt_staging2.fn_BUDNI_LCG_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_LCG_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void 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;
begin
/***********************************************************************************
Function Name:fn_BUDNI_LCG_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format:BUDNI_LCG
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_LCG_Block(20,1,'BUDNI','BUDNI_LCG',261);
************************************************************************************/
SET search_path TO mmt_staging2;
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.BUDNI_LCG_Spec_H1_Block;
truncate table mmt_staging2.BUDNI_LCG_Gravity_Test_Block;
truncate table mmt_staging2.stg_specific_table_BUDNI_LCG;
truncate table mmt_staging2.stg_process_table_BUDNI_LCG;
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 BUDNI */
execute 'insert into mmt_staging2.stg_specific_table_BUDNI_LCG
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_BUDNI_LCG set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_BUDNI_LCG 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_BUDNI_LCG b
where trim(upper(F1_source))= trim(upper(column3))
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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_BUDNI_LCG a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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
where f1_modified =''Location of centre of Gravity Test''
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_BUDNI_LCG
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_LCG 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 Tractor Specifiactions''
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_BUDNI_LCG
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_LCG 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=''Location of centre of Gravity Test''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_BUDNI_LCG a
where rank_tag='BUDNI_LCG_Spec_H1' and rank=3;
select column4 into __model from mmt_staging2.stg_process_table_BUDNI_LCG a
where rank_tag='BUDNI_LCG_Spec_H1' and rank=3;
/* blocks data loading start - BUDNI_LCG_Spec_H1_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_LCG_Spec_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.BUDNI_LCG_Spec_H1_Block
(
make,model,Tractor_HP, Rated_RPM,configuration,Transmission_type,
Wheel_Drive_type,rank
)
select
column3,column4,column5,column6,column7,column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_LCG
where rank_tag='BUDNI_LCG_Spec_H1' and rank=3;
execute 'update mmt_staging2.BUDNI_LCG_Spec_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||'''';
update mmt_staging2.BUDNI_LCG_Spec_H1_block a
set Wheel_Base=column3,
Wheel_track =column4,
Overall_height =column5,
Ballast_Condition =column6,
Tractor_Weight_reactions_Front =column7,
Tractor_Weight_reactions_Rear =column8
from mmt_staging2.stg_process_table_budni_lcg b
where b.rank_tag='BUDNI_LCG_Spec_H1'
and b.rank=6
and a.file_syspk=b.file_syspk;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_LCG_Spec_H1_block');
/* blocks data loading -BUDNI_LCG_Gravity_Test_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_LCG_Gravity_Test_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.BUDNI_LCG_Gravity_Test_Block
(
column2,column3,column4,column5,column6,column7,
column8,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,rank
from mmt_staging2.stg_process_table_BUDNI_LCG a
where rank_tag='BUDNI_LCG_Gravity_Test';
update mmt_staging2.BUDNI_LCG_Gravity_Test_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_LCG_Gravity_Test_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||'''';
update mmt_staging2.BUDNI_LCG_Gravity_Test_Block a
set column3= b.first_value from (SELECT
rank, column3, value_partition, first_value(column3) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column3,
sum(case when column3 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_LCG_Gravity_Test_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.BUDNI_LCG_Gravity_Test_Block
set ods_record=0 where
rank in (1,2);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_LCG_Gravity_Test_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,483 @@
drop function if exists mmt_staging2.fn_BUDNI_NMT_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_NMT_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void 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;
begin
SET search_path TO mmt_staging2;
/***********************************************************************************
Function Name:fn_BUDNI_NMT_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format:BUDNI_NMT
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_NMT_Block(20,1,'BUDNI','BUDNI_NMT',261);
************************************************************************************/
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.BUDNI_NMT_Spec_H1_Block;
truncate table mmt_staging2.budni_nmt_noise_at_bystander_position_block;
truncate table mmt_staging2.BUDNI_NMT_Atmos_Cond_1_Block;
truncate table mmt_staging2.BUDNI_NMT_Meas_Results_1_Block;
truncate table mmt_staging2.budni_nmt_noise_at_operator_ear_level_block;
truncate table mmt_staging2.BUDNI_NMT_Atmos_Cond_2_Block;
truncate table mmt_staging2.BUDNI_NMT_Meas_Results_2_Block;
truncate table mmt_staging2.BUDNI_NMT_Test_Obs_Summary_Block;
truncate table mmt_staging2.stg_specific_table_BUDNI_NMT;
truncate table mmt_staging2.stg_process_table_BUDNI_NMT;
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 BUDNI */
execute 'insert into mmt_staging2.stg_specific_table_BUDNI_NMT
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_BUDNI_LCG set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_BUDNI_LCG 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 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_BUDNI_NMT b
where trim(upper(F1_source))= trim(upper(column3))
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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_BUDNI_NMT a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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 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_BUDNI_NMT b
where trim(upper(F1_source))= trim(upper(column3))
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_BUDNI_NMT a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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 )
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
where f1_modified =''Noise Measurement Test Observations Summary''
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_BUDNI_NMT
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_NMT 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 Tractor Specifiactions''
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_BUDNI_NMT
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_NMT 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=''Noise at bystanders position: Noise Measurement Test''
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_BUDNI_NMT
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_NMT 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=''Noise at operators ear level: Noise Measurement Test''
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_BUDNI_NMT
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_NMT 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=''Noise Measurement Test Observations Summary''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_BUDNI_NMT a
where rank_tag='BUDNI_NMT_Spec_H1' and rank=3;
select column4 into __model from mmt_staging2.stg_process_table_BUDNI_NMT a
where rank_tag='BUDNI_NMT_Spec_H1' and rank=3;
/* blocks data loading start - budni_nmt_Spec_H1_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'budni_nmt_Spec_H1_block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.budni_nmt_Spec_H1_block
(
make,model,tractor_HP,rated_rpm,configuration,transmission_type,wheel_drive_type,rank)
select column3,column4,column5,column6,column7,column8,column9,rank
from mmt_staging2.stg_process_table_budni_nmt where rank_tag='BUDNI_NMT_Spec_H1'
and rank=3;
execute 'update mmt_staging2.BUDNI_NMT_Spec_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||'''';
update mmt_staging2.BUDNI_NMT_Spec_H1_block a
set FIP_type=column3,steering_type=column4,Engine_to_PTO_ratio= column5,Ballast_Condition=column6,
Test_Engine_Set_RPM=column7,Type_of_track=column8
from mmt_staging2.stg_process_table_budni_nmt b
where b.rank_tag='BUDNI_NMT_Spec_H1'
and b.rank=5
and a.file_syspk=b.file_syspk;
update mmt_staging2.BUDNI_NMT_Spec_H1_Block
set ods_record=0 where rank in(1,2);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_NMT_Spec_H1_Block');
/* blocks data loading - budni_nmt_noise_at_bystander_position_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'budni_nmt_noise_at_bystander_position_block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.budni_nmt_noise_at_bystander_position_block
(
column2,column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_NMT a
where rank_tag ='BUDNI_NMT_Noise_at_bystander_position';
update mmt_staging2.budni_nmt_noise_at_bystander_position_block
set column2=column3 where rank=1;
update mmt_staging2.budni_nmt_noise_at_bystander_position_block a
set column2= b.first_value from (SELECT
rank, column2, value_partition, first_value(column2) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column2,
sum(case when column2 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.budni_nmt_noise_at_bystander_position_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.budni_nmt_noise_at_bystander_position_Block
set ods_record=0 where rank in(1,2);
update mmt_staging2.budni_nmt_noise_at_bystander_position_block set make=__make,model=__model;
execute 'update mmt_staging2.budni_nmt_noise_at_bystander_position_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'budni_nmt_noise_at_bystander_position_block');
/* blocks data loading - BUDNI_NMT_Atmos_Cond_1_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_NMT_Atmos_Cond_1_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.BUDNI_NMT_Atmos_Cond_1_Block
(
column2,column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.budni_nmt_noise_at_bystander_position_block a
where rank <=4;
update mmt_staging2.BUDNI_NMT_Atmos_Cond_1_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_NMT_Atmos_Cond_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||'''';
update mmt_staging2.BUDNI_NMT_Atmos_Cond_1_Block
set ods_record=0 where
rank in (1,2,3);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_NMT_Atmos_Cond_1_Block ');
/* blocks data loading - BUDNI_NMT_Meas_Results_1_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_NMT_Meas_Results_1_Block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.BUDNI_NMT_Meas_Results_1_Block
(
column2,column3,column4,column5,column6,column7,
column8,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,rank
from mmt_staging2.budni_nmt_noise_at_bystander_position_block a
where rank>4;
update mmt_staging2.BUDNI_NMT_Meas_Results_1_Block
set ods_record=0 where
rank=5;
update mmt_staging2.BUDNI_NMT_Meas_Results_1_Block
set column3=column4 where column3 is null ;
update mmt_staging2.BUDNI_NMT_Meas_Results_1_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_NMT_Meas_Results_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_NMT_Meas_Results_1_Block ');
/* blocks data loading - BUDNI_NMT_Noise_at_operator_ear_level_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_NMT_Noise_at_operator_ear_level_block',__file_format,__sheet_mnemonic,5);
insert into mmt_staging2.BUDNI_NMT_Noise_at_operator_ear_level_block
(
column2,column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_NMT a
where rank_tag ='BUDNI_NMT_Noise_at_operator_ear_level';
update mmt_staging2.BUDNI_NMT_Noise_at_operator_ear_level_block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_NMT_Noise_at_operator_ear_level_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||'''';
update mmt_staging2.BUDNI_NMT_Noise_at_operator_ear_level_block
set column2=column3 where rank=1;
update mmt_staging2.BUDNI_NMT_Noise_at_operator_ear_level_block a
set column2= b.first_value from (SELECT
rank, column2, value_partition, first_value(column2) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column2,
sum(case when column2 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_NMT_Noise_at_operator_ear_level_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_NMT_Noise_at_operator_ear_level_block');
/* blocks data loading -BUDNI_NMT_Atmos_Cond_2_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_NMT_Atmos_Cond_2_Block',__file_format,__sheet_mnemonic,6);
insert into mmt_staging2.BUDNI_NMT_Atmos_Cond_2_Block
(
column2,column3,column4,column5,column6,column7,
column8,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,rank
from mmt_staging2.BUDNI_NMT_Noise_at_operator_ear_level_block a
where rank<=4;
update mmt_staging2.BUDNI_NMT_Atmos_Cond_2_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_NMT_Atmos_Cond_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||'''';
update mmt_staging2.BUDNI_NMT_Atmos_Cond_2_Block
set ods_record=0 where
rank in (1,2,3);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_NMT_Atmos_Cond_2_Block');
/* blocks data loading -BUDNI_NMT_Meas_Results_2_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_NMT_Meas_Results_2_Block',__file_format,__sheet_mnemonic,7);
insert into mmt_staging2.BUDNI_NMT_Meas_Results_2_Block
(
column2,column3,column4,column5,column6,column7,
column8,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,rank
from mmt_staging2.BUDNI_NMT_Noise_at_operator_ear_level_block a
where rank>4;
update mmt_staging2.BUDNI_NMT_Meas_Results_2_Block
set ods_record=0 where
rank =5;
update BUDNI_NMT_Meas_Results_2_Block set column3=column4 where column3 is null;
update mmt_staging2.BUDNI_NMT_Meas_Results_2_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_NMT_Meas_Results_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_NMT_Meas_Results_2_Block');
/* blocks data loading -BUDNI_NMT_Test_Obs_Summary_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_NMT_Test_Obs_Summary_Block',__file_format,__sheet_mnemonic,8);
insert into mmt_staging2.BUDNI_NMT_Test_Obs_Summary_Block
(
column2,column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column2,column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_NMT a
where rank_tag='BUDNI_NMT_Test_Obs_Summary' and rank in (1,2,3,4);
update mmt_staging2.BUDNI_NMT_Test_Obs_Summary_Block
set ods_record=0 where
rank in (1,2);
update mmt_staging2.BUDNI_NMT_Test_Obs_Summary_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_NMT_Test_Obs_Summary_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_NMT_Test_Obs_Summary_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,338 @@
drop function if exists mmt_staging2.fn_BUDNI_PTO_block;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_PTO_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;
begin
SET search_path TO mmt_staging2;
/***********************************************************************************
Function Name:fn_BUDNI_PTO_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format:BUDNI_PTO
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_PTO_Block(20,1,'BUDNI','BUDNI_PTO',261);
************************************************************************************/
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.stg_specific_table_BUDNI_PTO;
truncate table mmt_staging2.stg_process_table_BUDNI_PTO;
truncate table mmt_staging2.BUDNI_PTO_Spec_H1_Block;
truncate table mmt_staging2.BUDNI_PTO_Perf_Report_block;
truncate table mmt_staging2.BUDNI_PTO_MMTKeyword1_Block;
truncate table mmt_staging2.BUDNI_PTO_MMTKeyword2_Block;
truncate table mmt_staging2.BUDNI_PTO_Summary_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 BUDNI */
execute 'insert into mmt_staging2.stg_specific_table_budni_pto
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_budni_pto set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_budni_pto 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 */
execute 'update mmt_ods.mmt_config a
set row_number_start=(select min(b.row_number)
from mmt_staging2.stg_specific_table_budni_pto b
where trim(upper(F1_modified))=trim(upper(column3))
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_budni_pto 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 =''PTO Performance Test Observations Summary''
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_budni_pto
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_pto 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 Tractor Specifiactions''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_budni_pto
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_pto 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=''PTO Performance Report''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_budni_pto
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag from mmt_staging2.stg_specific_table_budni_pto 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=''MMTKeyword1''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_budni_pto
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag from mmt_staging2.stg_specific_table_budni_pto 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=''MMTKeyword2''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
execute 'insert into mmt_staging2.stg_process_table_budni_pto
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_budni_pto 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=''PTO Performance Test Observations Summary''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_budni_pto a
where rank_tag='BUDNI_PTO_Spec_H1' and rank=3 ;
select column4 into __model from mmt_staging2.stg_process_table_budni_pto a
where rank_tag='BUDNI_PTO_Spec_H1' and rank=3;
/* blocks data loading start - BUDNI_PTO_Spec_H1_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_PTO_Spec_H1_block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.BUDNI_PTO_Spec_H1_block
(make,model,tractor_HP,rated_rpm,configuration,transmission_type,wheel_drive_type,FIP_type,rank)
select column3,column4,column5,column6,column7,column8,column9,column10,rank
from mmt_staging2.stg_process_table_budni_pto where rank_tag='BUDNI_PTO_Spec_H1'
and rank=3;
execute 'update mmt_staging2.BUDNI_PTO_Spec_H1_block set file_syspk='||p_file_syspk||'';
update mmt_staging2.BUDNI_PTO_Spec_H1_block a
set date= date '1899-12-30' + column12::int * interval '1' day
from mmt_staging2.stg_process_table_budni_pto b
where b.rank_tag='BUDNI_PTO_Spec_H1'
and b.rank=1
and a.file_syspk=b.file_syspk ;
update mmt_staging2.BUDNI_PTO_Spec_H1_block a
set steering_type=column3,Engine_to_PTO_ratio= column4
from mmt_staging2.stg_process_table_budni_pto b
where b.rank_tag='BUDNI_PTO_Spec_H1'
and b.rank=5
and a.file_syspk=b.file_syspk;
update mmt_staging2.BUDNI_PTO_Spec_H1_block set make=__make, model=__model;
execute 'update mmt_staging2.BUDNI_PTO_Spec_H1_block set
client_id='||p_client_id||',
function_id='||p_function_id||',
file_format='''||p_file_format||''',
sheet_mnemonic='''||p_sheet_mnemonic||''',
file_syspk='||p_file_syspk||'';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_PTO_Spec_H1_block');
/* blocks data loading -BUDNI_PTO_Perf_Report_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_PTO_Perf_Report_block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.BUDNI_PTO_Perf_Report_block
( column2,column3,column4,column5,column6,column7,column8,column9,column10,rank)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,rank
from mmt_staging2.stg_process_table_budni_pto
where rank_tag='BUDNI_PTO_Perf_Report';
update mmt_staging2.BUDNI_PTO_Perf_Report_block
set column2=column3 where column2 is null;
update mmt_staging2.BUDNI_PTO_Perf_Report_block
set column2=null
where column2 like 'i%';
update mmt_staging2.BUDNI_PTO_Perf_Report_block
set column2=null
where column2 like 'v%';
update mmt_staging2.BUDNI_PTO_Perf_Report_block a
set column2= b.first_value from (SELECT
rank, column2, value_partition, first_value(column2) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column2,
sum(case when column2 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_PTO_Perf_Report_block
ORDER BY rank ASC
) as q) b where a.rank = b.rank ;
update mmt_staging2.BUDNI_PTO_Perf_Report_block
set column3 =null
where column2=column3;
update mmt_staging2.BUDNI_PTO_Perf_Report_block
set ods_record=0 where rank in (1,2,3);
update mmt_staging2.BUDNI_PTO_Perf_Report_block set ods_record=0 where column3 is null
and column2 in(
select column2 from mmt_staging2.BUDNI_PTO_Perf_Report_block group by column2 having count(*)>1
);
update mmt_staging2.BUDNI_PTO_Perf_Report_block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_PTO_Perf_Report_block set
client_id='||p_client_id||',
function_id='||p_function_id||',
file_format='''||p_file_format||''',
sheet_mnemonic='''||p_sheet_mnemonic||''',
file_syspk='||p_file_syspk||'';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_PTO_Perf_Report_block');
/* blocks data loading - BUDNI_PTO_MMTKeyword1_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_PTO_MMTKeyword1_block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.BUDNI_PTO_MMTKeyword1_block
( column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_budni_pto
where rank_tag='BUDNI_PTO_MMTKeyword1';
update mmt_staging2.BUDNI_PTO_MMTKeyword1_block set ods_record=0 where rank in (1,2);
update mmt_staging2.BUDNI_PTO_MMTKeyword1_block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_PTO_MMTKeyword1_block set
client_id='||p_client_id||',
function_id='||p_function_id||',
file_format='''||p_file_format||''',
sheet_mnemonic='''||p_sheet_mnemonic||''',
file_syspk='||p_file_syspk||'';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_PTO_MMTKeyword1_block');
/* blocks data loading - BUDNI_PTO_MMTKeyword2_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_PTO_MMTKeyword2_block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.BUDNI_PTO_MMTKeyword2_block
( column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_budni_pto
where rank_tag='BUDNI_PTO_MMTKeyword2';
update mmt_staging2.BUDNI_PTO_MMTKeyword2_block set ods_record=0 where rank in (1,2);
update mmt_staging2.BUDNI_PTO_MMTKeyword2_block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_PTO_MMTKeyword2_block set
client_id='||p_client_id||',
function_id='||p_function_id||',
file_format='''||p_file_format||''',
sheet_mnemonic='''||p_sheet_mnemonic||''',
file_syspk='||p_file_syspk||'';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_PTO_MMTKeyword2_block');
/* blocks data loading -BUDNI_PTO_Summary_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_PTO_Summary_Block',__file_format,__sheet_mnemonic,5);
insert into mmt_staging2.BUDNI_PTO_Summary_Block
( column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_budni_pto
where rank_tag='BUDNI_PTO_Summary';
update mmt_staging2.BUDNI_PTO_Summary_block
set ods_record=0 where rank in (1,2);
update mmt_staging2.BUDNI_PTO_Summary_block set make=__make, model=__model;
execute 'update mmt_staging2.BUDNI_PTO_Summary_block set
client_id='||p_client_id||',
function_id='||p_function_id||',
file_format='''||p_file_format||''',
sheet_mnemonic='''||p_sheet_mnemonic||''',
file_syspk='||p_file_syspk||'';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'mmt_staging2.BUDNI_PTO_Summary_block');
return __model;
end
$$ LANGUAGE plpgsql;
select mmt_staging2.fn_BUDNI_PTO_block(20,1,'BUDNI','BUDNI_PTO',182);

View File

@@ -0,0 +1,349 @@
drop function if exists mmt_staging2.fn_BUDNI_VMT_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_BUDNI_VMT_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void 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;
begin
SET search_path TO mmt_staging2;
/***********************************************************************************
Function Name:fn_BUDNI_VMT_Block
Function Desc: This function populates data into staging2 blocks
File Format: BUDNI
Sheet Format:BUDNI_VMT
Creation Date: March 21 2021
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_BUDNI_VMT_Block(20,1,'BUDNI','BUDNI_VMT',261);
************************************************************************************/
/* rerunnability - delete block tables and update config tables to null */
truncate table mmt_staging2.BUDNI_VMT_Spec_H1_Block;
truncate table mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block;
truncate table mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block;
truncate table mmt_staging2.stg_specific_table_BUDNI_VMT;
truncate table mmt_staging2.stg_process_table_BUDNI_VMT;
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 BUDNI */
execute 'insert into mmt_staging2.stg_specific_table_BUDNI_VMT
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_BUDNI_LCG set column3 = TRIM (TRAILING FROM column3 );
update mmt_staging2.stg_specific_table_BUDNI_LCG 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 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_BUDNI_VMT b
where trim(upper(F1_source))= trim(upper(column3))
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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_BUDNI_VMT a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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 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_BUDNI_VMT b
where trim(upper(F1_source))= trim(upper(column3))
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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_BUDNI_VMT a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= 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||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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
where f1_modified =''AIR CLEANER OIL PULL OVER TEST Observations Summary''
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_BUDNI_VMT
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_VMT 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 Tractor Specifiactions''
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_BUDNI_VMT
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_VMT 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=''Machanical Vibration Measurement Test''
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_BUDNI_VMT
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_BUDNI_VMT 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=''Noise Measurement Test Observations Summary''
and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/* fetching tractor model and make */
select column3 into __make from mmt_staging2.stg_process_table_BUDNI_VMT a
where rank_tag='BUDNI_VMT_Spec_H1' and rank=3;
select column4 into __model from mmt_staging2.stg_process_table_BUDNI_VMT a
where rank_tag='BUDNI_VMT_Spec_H1' and rank=3;
/* blocks data loading start - BUDNI_VMT_Spec_H1_block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_VMT_Spec_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.BUDNI_VMT_Spec_H1_block
(
make,model,tractor_HP,rated_rpm,configuration,transmission_type,wheel_drive_type,rank)
select column3,column4,column5,column6,column7,column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_VMT where rank_tag='BUDNI_VMT_Spec_H1'
and rank=3;
execute 'update mmt_staging2.BUDNI_VMT_Spec_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||'''';
update mmt_staging2.BUDNI_VMT_Spec_H1_block a
set FIP_type=column3,steering_type=column4,Engine_to_PTO_ratio= column5,Ballast_Condition=column6,
Test_Engine_Set_RPM=column7,Type_of_track=column8
from mmt_staging2.stg_process_table_BUDNI_VMT b
where b.rank_tag='BUDNI_VMT_Spec_H1'
and b.rank=5
and a.file_syspk=b.file_syspk;
update mmt_staging2.BUDNI_VMT_Spec_H1_Block
set ods_record=0 where rank in(1,2);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_VMT_Spec_H1_block');
/* blocks data loading -BUDNI_VMT_Perf_Meas_Test_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_VMT_Perf_Meas_Test_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block
(
column3,
column4,
column5,
column6,
column7,
column8,
column9,
rank
)
select
column3,column4,column5,column6,column7,column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_VMT a
where rank_tag ='BUDNI_VMT_Perf_Meas_Test'
order by rank;
update mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block a
set column3= b.first_value from (SELECT
rank, column3, value_partition, first_value(column3) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column3,
sum(case when column3 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank and a.rank not in(1,2,3,4);
update mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block a
set column4= b.first_value from (SELECT
rank, column4, value_partition, first_value(column4) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column4,
sum(case when column4 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank and a.rank not in(1,2,3,4);
update mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block
set column4=concat(column4,'-',column5) where rank not in(1,2,3,4) and column5 is not null;
update mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block
set ods_record=0 where rank in(1,2,3,4);
update mmt_staging2.BUDNI_VMT_Perf_Meas_Test_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_VMT_Perf_Meas_Test_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_VMT_Perf_Meas_Test_Block');
/* blocks data loading -BUDNI_VMT_Test_Obs_Summary_Block */
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'BUDNI_VMT_Test_Obs_Summary_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block
(
column3,column4,column5,column6,column7,
column8,column9,rank
)
select
column3,column4,column5,column6,column7,
column8,column9,rank
from mmt_staging2.stg_process_table_BUDNI_VMT a
where rank_tag='BUDNI_VMT_Test_Obs_Summary' and rank <=6
order by rank;
update mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block a
set column5= b.first_value from (SELECT
rank, column5, value_partition, first_value(column5) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column5,
sum(case when column5 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block a
set column6= b.first_value from (SELECT
rank, column6, value_partition, first_value(column6) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column6,
sum(case when column6 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block a
set column7= b.first_value from (SELECT
rank, column7, value_partition, first_value(column7) over (partition by value_partition order by rank)
FROM (
SELECT
rank,
column7,
sum(case when column7 is null then 0 else 1 end) over (order by rank) as value_partition
FROM mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block
ORDER BY rank ASC
) as q) b where a.rank = b.rank;
update mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block
set ods_record=0 where
rank in(1,2);
update mmt_staging2.BUDNI_VMT_Test_Obs_Summary_Block set make=__make,model=__model;
execute 'update mmt_staging2.BUDNI_VMT_Test_Obs_Summary_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'BUDNI_VMT_Test_Obs_Summary_Block');
end
$$ LANGUAGE plpgsql;
select mmt_staging2.fn_BUDNI_VMT_Block(20,1,'BUDNI','BUDNI_VMT',261);

View File

@@ -0,0 +1,480 @@
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 $$
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;
begin
/***********************************************************************************
Function Name:fn_FTDRY_SUM_Block
Function Desc: This function populates data into staging2 blocks
File Format: FTDRY
Sheet Format: FTDRY_SUM
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTDRY_SUM_Block (20,1,'FTDRY','FTDRY_SUM',258);
************************************************************************************/
SET search_path TO mmt_staging2;
truncate mmt_staging2.ftdry_sum_trac_h1_block;
truncate mmt_staging2.ftdry_sum_implement_block;
truncate mmt_staging2.ftdry_sum_test_condition_1_block;
truncate mmt_staging2.ftdry_sum_test_condition_2_block;
truncate mmt_staging2.ftdry_sum_comments_by_block;
truncate mmt_staging2.stg_specific_table_ftdry_sum;
truncate mmt_staging2.stg_process_table_ftdry_sum;
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 ftdry*/
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||'';
/* trimming data */
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) ;
/* keyword match in config table*/
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||'''';
/* update config files for row numbers start, end */
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||'''';
/* reverese update in process table for match*/
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||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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 where f1_modified =''Test Manager Comments_2'' and
a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/*inserting run_time in config*/
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||'''';
/* tagging ranks for each block in process table*/
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';
/* blocks data loading start - FTDRY_SUM_Trac_H1_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_SUM_Trac_H1_Block',__file_format,__sheet_mnemonic,1);
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,
rank
)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_ftdry_sum
where rank_tag='FTDRY_SUM_Trac_H1'
order by rank;
update mmt_staging2.FTDRY_SUM_Trac_H1_Block
set ods_record=0 where rank=1;
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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_SUM_Trac_H1_Block');
/* blocks data loading start -FTDRY_SUM_Implement_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_SUM_Implement_Block',__file_format,__sheet_mnemonic,2);
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,
rank
)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_ftdry_sum
where rank_tag='FTDRY_SUM_Implement';
update mmt_staging2.FTDRY_SUM_Implement_Block
set ods_record=0 where rank in(1,3);
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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_SUM_Implement_Block');
/* blocks data loading start -FTDRY_SUM_Test_Condition_1_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_SUM_Test_Condition_1_Block',__file_format,__sheet_mnemonic,3);
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),rank,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);
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_SUM_Test_Condition_1_Block');
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||'''';
/* blocks data loading start -FTDRY_SUM_Test_Condition_2_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_SUM_Test_Condition_2_Block',__file_format,__sheet_mnemonic,4);
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),rank,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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_SUM_Test_Condition_2_Block');
/* blocks data loading start -FTDRY_SUM_Comments_By_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_SUM_Comments_By_Block',__file_format,__sheet_mnemonic,5);
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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_SUM_Comments_By_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,416 @@
/*FTDRY_starts*/
drop function if exists mmt_staging2.fn_FTDRY_TRS_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTDRY_TRS_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void AS $$
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;
begin
/***********************************************************************************
Function Name:fn_FTDRY_TRS_Block
Function Desc: This function populates data into staging2 blocks
File Format: FTDRY
Sheet Format: FTDRY_TRS
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_FTDRY_TRS_Block(20,1,'FTDRY','FTDRY_TRS',257);
************************************************************************************/
SET search_path TO mmt_staging2;
truncate mmt_staging2.FTDRY_TRS_H1_INT;
truncate mmt_staging2.ftdry_trs_h1_block ;
truncate mmt_staging2.ftdry_trs_implement_block ;
truncate mmt_staging2.ftdry_trs_spec_block;
truncate mmt_staging2.ftdry_trs_engine_rpm_block;
truncate mmt_staging2.stg_specific_table_ftdry_trs;
truncate mmt_staging2.stg_process_table_ftdry_trs;
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 ftdry*/
execute 'insert into mmt_staging2.stg_specific_table_ftdry_trs
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_ftdry_trs set column2 = TRIM (TRAILING FROM column2 );
update mmt_staging2.stg_specific_table_ftdry_trs 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);
/* 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_ftdry_trs b
where trim(upper(F1_source))= 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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_ftdry_trs a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where trim(upper(F1_source))= trim(upper(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 row_previous_number=row_number_start-1
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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
where f1_modified =''Implement Details'' and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/*inserting run_time in config*/
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_ftdry_trs
select a.* , RANK () OVER ( ORDER BY row_number) as rank,b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftdry_trs 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 Specifications Sheet''
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_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftdry_trs 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 Specifications'' 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_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftdry_trs 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 RPM Data:'' 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_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftdry_trs a
join mmt_ods.mmt_config b
on a.row_number >row_number_start
and a.column2 <> ''''
and (a.row_number< row_read_end or row_read_end is null)
and f1_modified=''Implement Details'' and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/*insert data into h1_int */
insert into mmt_staging2.FTDRY_TRS_H1_INT(
column2,column3,column4,column5,column6,column7,rank)
select column2,column3,column4,column5,column6,column7,rank
from mmt_staging2.stg_process_table_ftdry_trs a where rank_tag='FTDRY_TRS_H1'
order by rank;
insert into mmt_staging2.FTDRY_TRS_H1_INT(column2) values ('Date of Test');
insert into mmt_staging2.FTDRY_TRS_H1_INT(column2) values ('Report Date');
insert into mmt_staging2.FTDRY_TRS_H1_INT(column2) values ('Season');
insert into mmt_staging2.FTDRY_TRS_H1_INT (column2) values ('Type of Soil');
insert into mmt_staging2.FTDRY_TRS_H1_INT (column2) values ('Soil Cone Index (kPa)');
insert into mmt_staging2.FTDRY_TRS_H1_INT (column2) values ('Field Condition');
update mmt_staging2.FTDRY_TRS_H1_INT a
set column3=(select column5 from mmt_staging2.FTDRY_TRS_H1_INT b
where trim(a.column2)=trim(b.column4)
and b.column4='Date of Test')
where a.column2='Date of Test';
update mmt_staging2.FTDRY_TRS_H1_INT a
set column3=(select column7 from mmt_staging2.FTDRY_TRS_H1_INT b
where trim(a.column2)=trim(b.column6)
and b.column6='Report Date')
where a.column2='Report Date';
update mmt_staging2.FTDRY_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTDRY_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Season')
where a.column2='Season';
update mmt_staging2.FTDRY_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTDRY_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Type of Soil')
where a.column2='Type of Soil';
update mmt_staging2.FTDRY_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTDRY_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Soil Cone Index (kPa)')
where a.column2='Soil Cone Index (kPa)';
update mmt_staging2.FTDRY_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTDRY_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Field Condition')
where a.column2='Field Condition';
/*inserting data into block -FTDRY_TRS_H1_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_TRS_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.FTDRY_TRS_H1_Block
(
dummy_f,
Report_Reference_No,
Objective_Of_Test,
Background_of_Test,
Job_Order_No,
Test_Location,
Soil_Moisture_Content_,
Soil_Bulk_Density_g_cc,
Test_Engineer,
Test_Operator,
Date_of_Test,
Report_Date,
Season,
Type_of_Soil,
Soil_Cone_Index_kPa,
Field_Condition
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text]) AS val
FROM mmt_staging2.FTDRY_TRS_H1_INT
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.FTDRY_TRS_H1_Block where dummy_f is null ;
execute 'update mmt_staging2.FTDRY_TRS_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_TRS_H1_Block');
/*inserting data into block -FTDRY_TRS_SPEC_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_TRS_SPEC_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.FTDRY_TRS_SPEC_Block
(
dummy_f,
Tractor_Model,
Tractor_Make,
Tractor_Sr_No,
Tractor_Engine_HP,
FIP_Type,
hour_Meter_Reading,
Steering_Type,
Transmission_Type,
Wheel_Drive_Type_WD,
EGR_Yes_No,
Brake_Type,
PTO_Type,
Standard_PTO_Speed_RPM,
EPTO_Speed_RPM,
Front_Tyre_Make,
Front_Tyre_Size,
Front_Tyre_Pressure_psi,
Rear_Tyre_Make,
Rear_Tyre_Size,
Rear_Tyre_Pressure_psi ,
Tractor_Weight_kg_Front ,
Tractor_Weight_kg_Rear ,
Tractor_Weight_kg_Total,
Ballasted_Tractor_Accessories,
Mechanical_Ballast_Rear,
Mechanical_Ballast_Rear_in_KG ,
Water_Ballast_Rear,
Mechanical_Ballast_Front,
Mechanical_Ballast_Front_in_Kg,
Total_Ballast_Weight
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6,column7}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text,column7::text]) AS val
FROM mmt_staging2.stg_process_table_ftdry_trs where rank_tag=''FTDRY_TRS_SPEC''
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.FTDRY_TRS_SPEC_Block where dummy_f is null ;
execute 'update mmt_staging2.FTDRY_TRS_SPEC_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_TRS_SPEC_Block');
/*inserting data into block -FTDRY_TRS_Engine_RPM_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_TRS_Engine_RPM_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.FTDRY_TRS_Engine_RPM_Block
(
dummy_f,
tractor_model,
tractor_make,
Low_Idle,
High_Idle,
Rated_RPM,
Engine_to_PTO_Ratio_540_PTO,
Engine_to_PTO_Ratio_540E_PTO
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6,column7}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text,column7::text]) AS val
FROM mmt_staging2.stg_process_table_ftdry_trs where rank_tag=''FTDRY_TRS_Engine_RPM''
or (rank_tag=''FTDRY_TRS_SPEC'' and rank in (1,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);
delete from mmt_staging2.FTDRY_TRS_Engine_RPM_Block where dummy_f is null ;
execute 'update mmt_staging2.FTDRY_TRS_Engine_RPM_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_TRS_Engine_RPM_Block');
/*inserting data into block -FTDRY_TRS_Implement_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTDRY_TRS_Implement_Block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.FTDRY_TRS_Implement_Block
(
dummy_f,
Name_of_Implement,
Type_of_Implement,
Make_of_Implement,
No_of_bottoms_Tyne_Disc_Blade,
Cutting_Width_m,
Implement_Weight_Kg,
Hitch_Category,
Span_cm_For_Mounted_Implement,
Mast_Height_cm_For_Mounted_Implement
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text]) AS val
FROM mmt_staging2.stg_process_table_ftdry_trs where rank_tag=''FTDRY_TRS_Implement''
ORDER BY generate_series(1,15),rank,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);
update mmt_staging2.FTDRY_TRS_Implement_Block set dummy_f='dummy' where dummy_f is null;
update mmt_staging2.FTDRY_TRS_Implement_Block set report_template_no= (select column2 from mmt_staging2.stg_process_table_ftdry_trs where rank=10 and rank_tag='FTDRY_TRS_Implement');
update mmt_staging2.FTDRY_TRS_Implement_Block set report_template_rev_no= (select column4 from mmt_staging2.stg_process_table_ftdry_trs where rank=10 and rank_tag='FTDRY_TRS_Implement');
update mmt_staging2.FTDRY_TRS_Implement_Block set report_template_rev_date= (select column6 from mmt_staging2.stg_process_table_ftdry_trs where rank=10 and rank_tag='FTDRY_TRS_Implement');
execute 'update mmt_staging2.FTDRY_TRS_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTDRY_TRS_Implement_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,485 @@
drop function if exists mmt_staging2.fn_FTHLG_SUM_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTHLG_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 $$
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;
begin
/***********************************************************************************
Function Name:fn_FTHLG_SUM_Block
Function Desc: This function populates data into staging2 blocks
File Format: FTHLG
Sheet Format: FTHLG_SUM
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_fthlg_sum_block(20,1,'FTHLG','FTHLG_SUM',109);
************************************************************************************/
SET search_path TO mmt_staging2;
truncate mmt_staging2.FTHLG_SUM_Trac_H1_Block;
truncate mmt_staging2.FTHLG_SUM_Trail_Type_Block;
truncate mmt_staging2.FTHLG_SUM_Test_Condition_1_Block;
truncate mmt_staging2.FTHLG_SUM_Test_Condition_2_Block;
truncate mmt_staging2.FTHLG_SUM_Comments_By_Block;
truncate mmt_staging2.stg_specific_table_fthlg_sum;
truncate mmt_staging2.stg_process_table_fthlg_sum;
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 fthlg*/
execute 'insert into mmt_staging2.stg_specific_table_fthlg_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||'';
/* trimming data */
update mmt_staging2.stg_specific_table_fthlg_sum set column2 = TRIM (TRAILING FROM column2 );
update mmt_staging2.stg_specific_table_fthlg_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) ;
/* keyword match in config table*/
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_fthlg_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||'''';
/* reverese update in process table for match*/
execute 'update mmt_staging2.stg_specific_table_fthlg_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||'''';
/* keyword match in config table*/
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_fthlg_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||'''';
/* reverese update in process table for match*/
execute 'update mmt_staging2.stg_specific_table_fthlg_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||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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 where f1_modified =''Test Manager Comments_2'' and
a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/*inserting run_time in config*/
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_fthlg_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_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=''Objective Of Test''
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_fthlg_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_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=''Trailer Type''
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_fthlg_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_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_fthlg_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_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_fthlg_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_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_fthlg_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_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_fthlg_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_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_fthlg_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_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';
/*inserting data into block -FTHLG_SUM_Trac_H1_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_SUM_Trac_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.FTHLG_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,
rank
)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_fthlg_sum
where rank_tag='FTHLG_SUM_Trac_H1'
order by rank;
update mmt_staging2.FTHLG_SUM_Trac_H1_Block set ods_record=0 where rank in (1,2);
execute 'update mmt_staging2.FTHLG_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_SUM_Trac_H1_Block');
/*inserting data into block -FTHLG_SUM_Trail_Type_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_SUM_Trail_Type_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.FTHLG_SUM_Trail_Type_Block
(
Trailer_Type,
Tire_size_and_inflation_pressure_psi,
No_Of_Axle,
No_Of_Wheels,
Trailer_Gross_Weight_Kg,
Tractor_Rear_Wheel_Center_to_Hitch_Point_Center_Distance_mm,
Tractor_Hitch_Height_from_Ground_mm,
Trailer_hitch_Height_above_ground_level_mm,
Gradient_Slope_1_Degree,
Gradient_Slope_2_degree,
Tractor_Hitch_Type,
rank
)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_fthlg_sum
where rank_tag='FTHLG_SUM_Trail_Type'
order by rank;
update mmt_staging2.FTHLG_SUM_Trail_Type_Block set ods_record=0 where rank=1;
execute 'update mmt_staging2.FTHLG_SUM_Trail_Type_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_SUM_Trail_Type_Block');
/*inserting data into block -FTHLG_SUM_Test_Condition_1_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_SUM_Test_Condition_1_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.FTHLG_SUM_Test_Condition_1_Block
(
dummy_f,
Test_Condition,
Test_Date,
Tractor_Model,
Fuel_consumption_Ltr_hr,
Mileage_Km_Ltr,
Average_speed_of_travel_kmph,
Total_distance_travelled_km,
Gear_used_on_Straight_Road,
Straight_road_RPM_Drop,
Gear_used_on_Up_Slope_1,
Up_Slope_RPM_Drop_1,
Gear_used_on_Up_Slope_2,
Up_Slope_RPM_Drop_2,
Gear_used_on_Down_Slope,
Down_Slope_RPM_Shoot_up,
M_M_Performance_compared_to_respective_competitor_tractors_is_better_and_is_poor_than_competitor,
Fuel_consumption_lit_hr_2,
Mileage_Km_Ltr_2,
M_M_Performance_in_compared_to_respective_competitor_tractors,
Fuel_consumption_lit_hr_3,
Mileage_Km_Ltr_3,
Engine_Smoke_on_Load,
Engine_acceleration_smoke,
Range_Gear_Shifting,
Speed_Gear_Shifting,
Tractor_Steer_ability,
Tractor_braking_performance,
Front_Visibility,
Implement_Accessibility,
Front_end_lifting_during_operation,
RPM_Recovery_Time,
Engine_Vibration,
Engine_Sound
)
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_fthlg_sum where rank_tag=''FTHLG_SUM_Test_Condition_1''
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.FTHLG_SUM_Test_Condition_1_Block where dummy_f is null ;
execute 'update mmt_staging2.FTHLG_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_SUM_Test_Condition_1_Block');
/*inserting data into block -FTHLG_SUM_Test_Condition_2_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_SUM_Test_Condition_2_Block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.FTHLG_SUM_Test_Condition_2_Block
(
dummy_f,
Test_Condition,
Test_Date,
Tractor_Model,
Fuel_consumption_Ltr_hr,
Mileage_Km_Ltr,
Average_speed_of_travel_kmph,
Total_distance_travelled_km,
Gear_used_on_Straight_Road,
Straight_road_RPM_Drop,
Gear_used_on_Up_Slope_1,
Up_Slope_RPM_Drop_1,
Gear_used_on_Up_Slope_2,
Up_Slope_RPM_Drop_2,
Gear_used_on_Down_Slope,
Down_Slope_RPM_Shoot_up,
M_M_Performance_compared_to_respective_competitor_tractors_is_better_and_is_poor_than_competitor,
Fuel_consumption_lit_hr_2,
Mileage_Km_Ltr_2,
M_M_Performance_in_compared_to_respective_competitor_tractors,
Fuel_consumption_lit_hr_3,
Mileage_Km_Ltr_3,
Engine_Smoke_on_Load,
Engine_acceleration_smoke,
Range_Gear_Shifting,
Speed_Gear_Shifting,
Tractor_Steer_ability,
Tractor_braking_performance,
Front_Visibility,
Implement_Accessibility,
Front_end_lifting_during_operation,
RPM_Recovery_Time,
Engine_Vibration,
Engine_Sound
)
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_fthlg_sum where rank_tag=''FTHLG_SUM_Test_Condition_2''
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.FTHLG_SUM_Test_Condition_2_Block where dummy_f is null ;
execute 'update mmt_staging2.FTHLG_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_SUM_Test_Condition_2_Block');
/*inserting data into block -FTHLG_SUM_Comments_By_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_SUM_Comments_By_Block',__file_format,__sheet_mnemonic,5);
insert into mmt_staging2.FTHLG_SUM_Comments_By_Block (dummy_f) values
('dummy');
execute 'update mmt_staging2.FTHLG_SUM_Comments_By_Block set test_engineer_comments_1=
(select column3 from mmt_staging2.stg_process_table_fthlg_sum a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.rank_tag=''FTHLG_SUM_Engineer_Comments_1''
and rank=1 ) where dummy_f=''dummy''' ;
execute 'update mmt_staging2.FTHLG_SUM_Comments_By_Block set test_engineer_comments_2=
(select column3 from mmt_staging2.stg_process_table_fthlg_sum a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.rank_tag=''FTHLG_SUM_Engineer_Comments_2''
and rank=1 ) where dummy_f=''dummy''';
execute 'update mmt_staging2.FTHLG_SUM_Comments_By_Block set test_manager_comments_1=
(select column3 from mmt_staging2.stg_process_table_fthlg_sum a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.rank_tag=''FTHLG_SUM_Manager_Comments_1''
and rank=1 ) where dummy_f=''dummy''';
execute 'update mmt_staging2.FTHLG_SUM_Comments_By_Block set test_manager_comments_2=
(select column3 from mmt_staging2.stg_process_table_fthlg_sum a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.rank_tag=''FTHLG_SUM_Manager_Comments_2''
and rank=1 ) where dummy_f=''dummy''';
delete from mmt_staging2.FTHLG_SUM_Comments_By_Block where dummy_f is null ;
execute 'update mmt_staging2.FTHLG_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_SUM_Comments_By_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,414 @@
drop function if exists mmt_staging2.fn_fthlg_trs_block;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_fthlg_trs_block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void AS $$
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;
begin
/***********************************************************************************
Function Name:fn_FTHLG_TRS_Block
Function Desc: This function populates data into staging2 blocks
File Format: FTHLG
Sheet Format: FTHLG_TRS
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_fthlg_trs_block(20,1,'FTHLG','FTHLG_TRS',259);
************************************************************************************/
SET search_path TO mmt_staging2;
truncate mmt_staging2.FTHLG_TRS_H1_INT;
truncate mmt_staging2.FTHLG_TRS_H1_Block;
truncate mmt_staging2.FTHLG_TRS_SPEC_Block;
truncate mmt_staging2.FTHLG_TRS_Engine_RPM_Block;
truncate mmt_staging2.FTHLG_TRS_Trailer_Block;
truncate mmt_staging2.stg_specific_table_fthlg_trs;
truncate mmt_staging2.stg_process_table_fthlg_trs;
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 ftdry*/
execute 'insert into mmt_staging2.stg_specific_table_fthlg_trs
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_fthlg_trs set column2 = TRIM (TRAILING FROM column2 );
update mmt_staging2.stg_specific_table_fthlg_trs 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);
/* 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_fthlg_trs 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||'''';
/* reverese update in process table for match*/
execute 'update mmt_staging2.stg_specific_table_fthlg_trs 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 row_previous_number=row_number_start-1
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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 where f1_modified =''Trailer Details'' and
a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/*inserting run_time in config*/
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_fthlg_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_trs 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 specifications sheet'' 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_fthlg_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_trs 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 Specifications'' 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_fthlg_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_trs 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 RPM Data:'' 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_fthlg_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_fthlg_trs 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=''Trailer Details'' and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/*inserting data into FTHLG_TRS_H1_INT*/
insert into mmt_staging2.FTHLG_TRS_H1_INT
(column2,column3,column4,column5,column6,column7,rank)
select column2,column3,column4,column5,column6,column7,rank from mmt_staging2.stg_process_table_fthlg_trs a
where rank_tag='FTHLG_TRS_H1' order by rank;
insert into mmt_staging2.FTHLG_TRS_H1_INT(column2) values ('Date of Test');
insert into mmt_staging2.FTHLG_TRS_H1_INT(column2) values ('Report Date');
insert into mmt_staging2.FTHLG_TRS_H1_INT(column2) values ('Type of Road');
insert into mmt_staging2.FTHLG_TRS_H1_INT (column2) values ('Tractor Hitch Height from Ground, mm');
insert into mmt_staging2.FTHLG_TRS_H1_INT (column2) values ('Tractor Rear Wheel Center to Hitch Point Center Distance, mm');
update mmt_staging2.FTHLG_TRS_H1_INT a
set column3=(select column5 from mmt_staging2.FTHLG_TRS_H1_INT b
where trim(a.column2)=trim(b.column4)
and b.column4='Date of Test')
where a.column2='Date of Test';
update mmt_staging2.FTHLG_TRS_H1_INT a
set column3=(select column7 from mmt_staging2.FTHLG_TRS_H1_INT b
where trim(a.column2)=trim(b.column6)
and b.column6='Report Date')
where a.column2='Report Date';
update mmt_staging2.FTHLG_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTHLG_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Type of Road')
where a.column2='Type of Road';
update mmt_staging2.FTHLG_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTHLG_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Tractor Hitch Height from Ground, mm')
where a.column2='Tractor Hitch Height from Ground, mm';
update mmt_staging2.FTHLG_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTHLG_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Tractor Rear Wheel Center to Hitch Point Center Distance, mm')
where a.column2='Tractor Rear Wheel Center to Hitch Point Center Distance, mm';
/*inserting data into block -.FTHLG_TRS_H1_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_TRS_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.FTHLG_TRS_H1_Block
(
dummy_f,
Report_Reference_No,
Objective_Of_Test,
Background_of_Test,
Job_Order_No,
Test_Location,
Gradient_Slope_1_Degree,
Gradient_Slope_2_Degree,
Tractor_Hitch_Type,
Test_Engineer,
Test_Operator,
Date_of_Test,
Report_Date,
Type_of_Road,
Tractor_Hitch_Height_from_Ground_mm,
Tractor_Rear_Wheel_Center_to_Hitch_Point_Center_Distance_mm
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text]) AS val
FROM mmt_staging2.FTHLG_TRS_H1_INT
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.FTHLG_TRS_H1_Block where dummy_f is null ;
execute 'update mmt_staging2.FTHLG_TRS_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_TRS_H1_Block');
/*inserting data into block -FTHLG_TRS_SPEC_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_TRS_SPEC_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.FTHLG_TRS_SPEC_Block
(
dummy_f,
Tractor_Model,
Tractor_Make,
Tractor_Sr_No,
Tractor_Engine_HP,
FIP_Type,
hour_Meter_Reading,
Steering_Type,
Transmission_Type,
Wheel_Drive_Type_WD,
EGR_Yes_No,
Brake_Type,
PTO_Type,
Standard_PTO_Speed_RPM,
EPTO_Speed_RPM,
Front_Tyre_Make,
Front_Tyre_Size,
Front_Tyre_Pressure_psi,
Rear_Tyre_Make,
Rear_Tyre_Size,
Rear_Tyre_Pressure_psi ,
Tractor_Weight_kg_Front ,
Tractor_Weight_kg_Rear ,
Tractor_Weight_kg_Total,
Ballasted_Tractor_Accessories,
Mechanical_Ballast_Rear,
Mechanical_Ballast_Rear_in_KG ,
Water_Ballast_Rear_75,
Mechanical_Ballast_Front_in_Kg,
Mechanical_Ballast_Front,
Total_Ballast_Weight
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6,column7}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text,column7::text]) AS val
FROM mmt_staging2.stg_process_table_fthlg_trs where rank_tag=''FTHLG_TRS_SPEC''
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.FTHLG_TRS_SPEC_Block where dummy_f is null ;
execute 'update mmt_staging2.FTHLG_TRS_SPEC_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_TRS_SPEC_Block');
/*inserting data into block -FTHLG_TRS_Engine_RPM_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_TRS_Engine_RPM_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.FTHLG_TRS_Engine_RPM_Block
(
dummy_f,
Tractor_model,
Tractor_make,
Low_Idle,
High_Idle,
Rated_RPM,
Engine_to_PTO_Ratio_540_PTO,
Engine_to_PTO_Ratio_540E_PTO
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6,column7}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text,column7::text]) AS val
FROM mmt_staging2.stg_process_table_fthlg_trs where rank_tag=''FTHLG_TRS_Engine_RPM''
or (rank_tag=''FTHLG_TRS_SPEC'' and rank in (1,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);
delete from mmt_staging2.FTHLG_TRS_Engine_RPM_Block where dummy_f is null ;
execute 'update mmt_staging2.FTHLG_TRS_Engine_RPM_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_TRS_Engine_RPM_Block');
/*inserting data into block -FTHLG_TRS_Trailer_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTHLG_TRS_Trailer_Block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.FTHLG_TRS_Trailer_Block
(
dummy_f,
Type_Of_Trailer,
No_Of_Axle,
No_Of_Wheels,
Trailer_hitch_Height_above_ground_level_mm,
Make_model_of_trailer,
Trailer_platform_length_mm,
Trailer_platform_Width_mm,
Trailer_platform_Height_mm,
Tire_size,
Inflation_pressure_psi,
Track_width_of_trailer_mm,
Horizontal_distance_of_hitch_point_from_trailer_front_face_mm,
Tractor_Rear_Wheel_Center_to_Hitch_Point_Center_Distance_mm,
Distance_from_Trailerfront_axle_distance_from_hitch_point_mm,
Distance_from_tractor_rear_wheel_center_to_tractor_rear_wheel_center_mm,
Trailer_empty_weight_Kg,
Trailer_Gross_Weight_Kg
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text]) AS val
FROM mmt_staging2.stg_process_table_fthlg_trs where rank_tag=''FTHLG_TRS_Trailer'' and rank <=17
ORDER BY generate_series(1,15),rank,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);
update mmt_staging2.FTHLG_TRS_Trailer_Block set report_template_no=
(select column2 from mmt_staging2.stg_process_table_fthlg_trs where rank=18
and rank_tag='FTHLG_TRS_Trailer')where make_model_of_trailer is not null;
update mmt_staging2.FTHLG_TRS_Trailer_Block set report_template_rev_no=
(select column4 from mmt_staging2.stg_process_table_fthlg_trs where rank=18
and rank_tag='FTHLG_TRS_Trailer')where make_model_of_trailer is not null;
update mmt_staging2.FTHLG_TRS_Trailer_Block set report_template_rev_date=
(select column6 from mmt_staging2.stg_process_table_fthlg_trs where rank=18 and
rank_tag='FTHLG_TRS_Trailer')where make_model_of_trailer is not null;
execute 'update mmt_staging2.FTHLG_TRS_Trailer_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTHLG_TRS_Trailer_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,368 @@
drop function if exists mmt_staging2.fn_FTWET_SUM_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTWET_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 $$
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;
begin
/***********************************************************************************
Function Name:fn_FTWET_SUM_Block
Function Desc: This function populates data into staging2 blocks
File Format: FTWET
Sheet Format: FTWET_SUM
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_fthlg_sum_block(20,1,'FTWET','FTWET_SUM',119);
************************************************************************************/
SET search_path TO mmt_staging2;
truncate mmt_staging2.FTWET_SUM_Trac_H1_Block;
truncate mmt_staging2.FTWET_SUM_Implement_Block;
truncate mmt_staging2.FTWET_SUM_Cage_Wheel_Block;
truncate mmt_staging2.FTWET_SUM_Test_Condition_Block;
truncate mmt_staging2.FTWET_SUM_Comments_By_Block;
truncate mmt_staging2.stg_specific_table_ftwet_sum;
truncate mmt_staging2.stg_process_table_ftwet_sum;
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 ftwet*/
execute 'insert into mmt_staging2.stg_specific_table_ftwet_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||'';
/* trimming data */
update mmt_staging2.stg_specific_table_ftwet_sum set column2 = TRIM (TRAILING FROM column2 );
update mmt_staging2.stg_specific_table_ftwet_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);
/* 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_ftwet_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||'''';
/* reverese update in process table for match*/
execute 'update mmt_staging2.stg_specific_table_ftwet_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 row_previous_number=row_number_start-1
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* keyword match in config table*/
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||'''';
/* 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 where f1_modified =''Test Manager Comments'' and
a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/*inserting run_time in config*/
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_ftwet_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_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_ftwet_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_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_ftwet_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_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=''Type of Cage Wheel'' 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_ftwet_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_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:'' 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_ftwet_sum
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_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'' and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/*inserting data into block -FTWET_SUM_Trac_H1_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_SUM_Trac_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.FTWET_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,
rank
)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_FTWET_sum
where rank_tag='FTWET_SUM_Trac_H1'
order by rank;
update mmt_staging2.FTWET_SUM_Trac_H1_Block set ods_record=0 where rank=1;
execute 'update mmt_staging2.FTWET_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_SUM_Trac_H1_Block');
/*inserting data into block -FTWET_SUM_Implement_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_SUM_Implement_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.FTWET_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,
rank
)
select column2,column3,column4,column5,column6,column7,column8,column9,column10,column11,column12,rank
from mmt_staging2.stg_process_table_FTWET_sum
where rank_tag='FTWET_SUM_Impement'
order by rank;
execute 'update mmt_staging2.FTWET_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||'''';
update mmt_staging2.FTWET_SUM_Implement_Block set ods_record=0 where rank=1;
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_SUM_Implement_Block');
/*inserting data into block -FTWET_SUM_Cage_Wheel_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_SUM_Cage_Wheel_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.FTWET_SUM_Cage_Wheel_Block
(
Type_of_Cage_Wheel,
Cage_Wheel_Width_mm,
Cage_wheel_Weight,
Cage_Wheel_inner_Outer_Ring_Dia_mm,
Cage_Wheel_Center_Ring_Dia_mm,
Distance_between_RHS_LHS_cage_wheel_Inner_Ring_mm,
No_of_angles_on_cage_wheel,
rank
)
select column2,column3,column4,column5,column6,column7,column8,rank
from mmt_staging2.stg_process_table_FTWET_sum
where rank_tag='FTWET_SUM_Cage_Wheel'
order by rank;
update mmt_staging2.FTWET_SUM_Cage_Wheel_Block
set ods_record=0 where rank in (1,3);
execute 'update mmt_staging2.FTWET_SUM_Cage_Wheel_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_SUM_Cage_Wheel_Block');
/*inserting data into block -FTWET_SUM_Test_Condition_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_SUM_Test_Condition_Block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.FTWET_SUM_Test_Condition_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_1st_Pass,
Engine_RPM_Drop_on_straight_2nd_Pass,
Engine_RPM_Drop_on_straight_3rd_Pass,
Engine_RPM_Drop_on_turn_1st_Pass,
Engine_RPM_Drop_on_turn_2nd_Pass,
Engine_RPM_Drop_on_turn_3rd_Pass,
No_of_passes,
Avg_Depth_of_cut_cm,
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_ftwet_sum where rank_tag=''FTWET_SUM_Test_Condition''
ORDER BY generate_series(1,15),rank,2'
) t (ccol 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,a_37 text,a_38 text);
delete from mmt_staging2.FTWET_SUM_Test_Condition_Block where dummy_f is null ;
execute 'update mmt_staging2.FTWET_SUM_Test_Condition_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_SUM_Test_Condition_Block');
/*inserting data into block -FTWET_SUM_Comments_By_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_SUM_Comments_By_Block',__file_format,__sheet_mnemonic,5);
insert into mmt_staging2.FTWET_SUM_Comments_By_Block (dummy_f) values ('dummy');
execute 'update mmt_staging2.FTWET_SUM_Comments_By_Block set test_manager_comments=
(select column3 from mmt_staging2.stg_process_table_FTWET_sum a
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''
and a.rank_tag=''FTWET_SUM_Manager_Comments''
and a.rank=1 ) where dummy_f=''dummy''';
delete from mmt_staging2.FTWET_SUM_Comments_By_Block where dummy_f is null ;
execute 'update mmt_staging2.FTWET_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_SUM_Comments_By_Block');
end
$$ LANGUAGE plpgsql;

View File

@@ -0,0 +1,415 @@
/*FTWET_TRS starts*/
drop function if exists mmt_staging2.fn_FTWET_TRS_Block ;
CREATE OR REPLACE FUNCTION mmt_staging2.fn_FTWET_TRS_Block(p_client_id int,p_function_id int, p_file_format text,
p_sheet_mnemonic text, p_file_syspk int)
RETURNS void AS $$
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;
begin
/***********************************************************************************
Function Name:fn_FTWET_TRS_Block
Function Desc: This function populates data into staging2 blocks
File Format: FTWET
Sheet Format: FTWET_TRS
Creation Date:
Updation Date:
Author: compegence team
Function Call: select mmt_staging2.fn_fthlg_trs_block(20,1,'FTHLG','FTWET_TRS',260);
************************************************************************************/
SET search_path TO mmt_staging2;
truncate mmt_staging2.FTWET_TRS_H1_INT;
truncate mmt_staging2.FTWET_TRS_H1_Block;
truncate mmt_staging2.FTWET_TRS_Engine_RPM_Block;
truncate mmt_staging2.FTWET_TRS_Implement_Block;
truncate mmt_staging2.stg_specific_table_ftwet_trs;
truncate mmt_staging2.stg_process_table_ftwet_trs;
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 ftdry*/
execute 'insert into mmt_staging2.stg_specific_table_ftwet_trs
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_ftwet_trs set column2 = TRIM (TRAILING FROM column2 );
update mmt_staging2.stg_specific_table_ftwet_trs set column2 = TRIM (LEADING FROM column2 );
/* trimming data */
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_ftwet_trs b
where upper(trim(F1_source))=upper(trim(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 in process table for match*/
execute 'update mmt_staging2.stg_specific_table_ftwet_trs a
set is_rownumber_fetched=1
from mmt_ods.mmt_config b
where upper(trim(F1_source))=upper(trim(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 row_previous_number=row_number_start-1
where a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/* update config files for row numbers start, end */
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||'''';
/* 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 where f1_modified =''Implement Details''
and a.file_format='''||p_file_format||''' and a.sheet_mnemonic='''||p_sheet_mnemonic||'''';
/*inserting run_time in config*/
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||'''';
/* tagging ranks for each block in process table*/
execute 'insert into mmt_staging2.stg_process_table_ftwet_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_trs 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 Specifications Sheet'' 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_ftwet_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_trs 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 Specifications'' 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_ftwet_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_trs 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 RPM Data:'' 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_ftwet_trs
select a.* , RANK () OVER ( ORDER BY row_number),b.rank_tag as rank_tag
from mmt_staging2.stg_specific_table_ftwet_trs a
join mmt_ods.mmt_config b
on a.row_number >row_number_start
and a.column2 <> ''''
and (a.row_number< row_read_end or row_read_end is null)
and f1_modified=''Implement Details'' and b.file_format='''||p_file_format||''' and b.sheet_mnemonic='''||p_sheet_mnemonic||'''
order by a.row_number';
/*inserting data into FTHLG_TRS_H1_INT*/
insert into mmt_staging2.FTWET_TRS_H1_INT(column2,column3,column4,column5,column6,column7,rank)
select column2,column3,column4,column5,column6,column7,rank from mmt_staging2.stg_process_table_ftwet_trs a
where rank_tag='FTWET_TRS_H1';
insert into mmt_staging2.FTWET_TRS_H1_INT(column2) values ('Date of Test');
insert into mmt_staging2.FTWET_TRS_H1_INT(column2) values ('Report Date');
insert into mmt_staging2.FTWET_TRS_H1_INT(column2) values ('Season');
insert into mmt_staging2.FTWET_TRS_H1_INT (column2) values ('Type of Soil');
insert into mmt_staging2.FTWET_TRS_H1_INT (column2) values ('Soil Cone Index (kPa)');
insert into mmt_staging2.FTWET_TRS_H1_INT (column2) values ('Field Condition');
update mmt_staging2.FTWET_TRS_H1_INT a
set column3=(select column5 from mmt_staging2.FTWET_TRS_H1_INT b
where trim(a.column2)=trim(b.column4)
and b.column4='Date of Test')
where a.column2='Date of Test';
update mmt_staging2.FTWET_TRS_H1_INT a
set column3=(select column7 from mmt_staging2.FTWET_TRS_H1_INT b
where trim(a.column2)=trim(b.column6)
and b.column6='Report Date')
where a.column2='Report Date';
update mmt_staging2.FTWET_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTWET_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Season')
where a.column2='Season';
update mmt_staging2.FTWET_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTWET_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Type of Soil')
where a.column2='Type of Soil';
update mmt_staging2.FTWET_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTWET_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Soil Cone Index (kPa)')
where a.column2='Soil Cone Index (kPa)';
update mmt_staging2.FTWET_TRS_H1_INT a
set column3=(select column6 from mmt_staging2.FTWET_TRS_H1_INT b
where trim(a.column2)=trim(b.column5)
and b.column5='Field Condition')
where a.column2='Field Condition';
/*inserting data into block -.FTWET_TRS_H1_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_TRS_H1_Block',__file_format,__sheet_mnemonic,1);
insert into mmt_staging2.FTWET_TRS_H1_Block
(
dummy_f,
Report_Reference_No,
Objective_Of_Test,
Background_of_Test,
Job_Order_No,
Test_Location,
Soil_Moisture_Content_,
Soil_Bulk_Density_g_cc,
Test_Engineer,
Test_Operator,
Date_of_Test,
Report_Date,
Season,
Type_of_Soil,
Soil_Cone_Index_kPa,
Field_Condition
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text]) AS val
FROM mmt_staging2.FTWET_TRS_H1_INT
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.FTWET_TRS_H1_Block where dummy_f is null ;
execute 'update mmt_staging2.FTWET_TRS_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_TRS_H1_Block');
/*inserting data into block -FTWET_TRS_SPEC_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_TRS_SPEC_Block',__file_format,__sheet_mnemonic,2);
insert into mmt_staging2.FTWET_TRS_SPEC_Block
(
dummy_f,
Tractor_Model,
Tractor_Make,
Tractor_Sr_No,
Tractor_Engine_HP,
FIP_Type,
hour_Meter_Reading,
Steering_Type,
Transmission_Type,
Wheel_Drive_Type_WD,
EGR_Yes_No,
Brake_Type,
PTO_Type,
Standard_PTO_Speed_RPM,
EPTO_Speed_RPM,
Front_Tyre_Make,
Front_Tyre_Size,
Front_Tyre_Pressure_psi,
Rear_Tyre_Make,
Rear_Tyre_Size,
Rear_Tyre_Pressure_psi ,
Tractor_Weight_kg_Front ,
Tractor_Weight_kg_Rear ,
Tractor_Weight_kg_Total,
Ballasted_Tractor_Accessories,
Mechanical_Ballast_Rear_in_KG ,
Water_Ballast_Rear,
Mechanical_Ballast_Front,
Mechanical_Ballast_Front_in_Kg,
Total_Ballast_Weight
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6,column7}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text,column7::text]) AS val
FROM mmt_staging2.stg_process_table_ftwet_trs where rank_tag=''FTWET_TRS_SPEC''
ORDER BY generate_series(1,15),rank,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);
delete from mmt_staging2.FTWET_TRS_SPEC_Block where dummy_f is null ;
execute 'update mmt_staging2.FTWET_TRS_SPEC_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_TRS_SPEC_Block');
/*inserting data into block -FTWET_TRS_SPEC_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_TRS_Engine_RPM_Block',__file_format,__sheet_mnemonic,3);
insert into mmt_staging2.FTWET_TRS_Engine_RPM_Block
(
dummy_f,
Tractor_model,
Tractor_make,
Low_Idle,
High_Idle,
Rated_RPM,
Engine_to_PTO_Ratio_540_PTO,
Engine_to_PTO_Ratio_540E_PTO
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6,column7}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text,column7::text]) AS val
FROM mmt_staging2.stg_process_table_ftwet_trs where rank_tag=''FTWET_TRS_Engine_RPM''
or (rank_tag=''FTWET_TRS_SPEC'' and rank in (1,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);
delete from mmt_staging2.FTWET_TRS_Engine_RPM_Block where dummy_f is null ;
execute 'update mmt_staging2.FTWET_TRS_Engine_RPM_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_TRS_Engine_RPM_Block');
/*inserting data into block -FTWET_TRS_Implement_Block*/
perform mmt_staging2.fn_jobctrl_block_begin(__client_id,__function_id,__file_syspk,
'FTWET_TRS_Implement_Block',__file_format,__sheet_mnemonic,4);
insert into mmt_staging2.FTWET_TRS_Implement_Block
(
dummy_f,
Name_of_Implement,
Type_of_Implement,
Make_of_Implement,
No_of_bottoms_Tyne_Disc_Blade,
Cutting_Width_m,
Implement_Weight_Kg,
Hitch_Category,
Span_cm_For_Mounted_Implement,
Mast_Height_cm_For_Mounted_Implement,
Type_of_Cage_Wheel_Half_Cage_wheel_Full_Cage_Wheel,
Cage_Wheel_Width_mm,
Cage_wheel_Weight,
Cage_Wheel_inner_Outer_Ring_Dia_mm,
Cage_Wheel_Center_Ring_Dia_mm,
Distance_between_RHS_LHS_cage_wheel_Inner_Ring_mm_For_Full_Cage_wheel,
No_of_angles_on_cage_wheel,
No_of_days_of_water_logging,
Depth_of_water_mm ,
)
SELECT *
FROM crosstab(
'SELECT unnest(''{column3,column4,column5,column6}''::text[]) AS col
, row_number() OVER ()
, unnest(ARRAY[column3::text,column4::text,column5::text,column6::text]) AS val
FROM mmt_staging2.stg_process_table_ftwet_trs where rank_tag=''FTWET_TRS_Implement''
ORDER BY generate_series(1,15),rank,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);
update mmt_staging2.FTWET_TRS_Implement_Block set report_template_no= (select column2 from mmt_staging2.stg_process_table_ftwet_trs where rank=19 and rank_tag='FTWET_TRS_Implement');
update mmt_staging2.FTWET_TRS_Implement_Block set report_template_rev_no= (select column4 from mmt_staging2.stg_process_table_ftwet_trs where rank=19 and rank_tag='FTWET_TRS_Implement');
update mmt_staging2.FTWET_TRS_Implement_Block set report_template_rev_date= (select column6 from mmt_staging2.stg_process_table_ftwet_trs where rank=19 and rank_tag='FTWET_TRS_Implement');
execute 'update mmt_staging2.FTWET_TRS_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||'''';
perform mmt_staging2.fn_jobctrl_block_end(__file_syspk,'FTWET_TRS_Implement_Block');
end
$$ LANGUAGE plpgsql;