diff --git a/KettleJobs/Stage1/products/savingproducts.ktr b/KettleJobs/Stage1/products/savingproducts.ktr index 4ef6909..0a08d7e 100644 --- a/KettleJobs/Stage1/products/savingproducts.ktr +++ b/KettleJobs/Stage1/products/savingproducts.ktr @@ -6,7 +6,7 @@ Normal - / + / @@ -16,7 +16,7 @@ -ID_BATCHYID_BATCHCHANNEL_IDYCHANNEL_IDTRANSNAMEYTRANSNAMESTATUSYSTATUSLINES_READYLINES_READLINES_WRITTENYLINES_WRITTENLINES_UPDATEDYLINES_UPDATEDLINES_INPUTYLINES_INPUTLINES_OUTPUTYLINES_OUTPUTLINES_REJECTEDYLINES_REJECTEDERRORSYERRORSSTARTDATEYSTARTDATEENDDATEYENDDATELOGDATEYLOGDATEDEPDATEYDEPDATEREPLAYDATEYREPLAYDATELOG_FIELDYLOG_FIELD +ID_BATCHYID_BATCHCHANNEL_IDYCHANNEL_IDTRANSNAMEYTRANSNAMESTATUSYSTATUSLINES_READYLINES_READLINES_WRITTENYLINES_WRITTENLINES_UPDATEDYLINES_UPDATEDLINES_INPUTYLINES_INPUTLINES_OUTPUTYLINES_OUTPUTLINES_REJECTEDYLINES_REJECTEDERRORSYERRORSSTARTDATEYSTARTDATEENDDATEYENDDATELOGDATEYLOGDATEDEPDATEYDEPDATEREPLAYDATEYREPLAYDATELOG_FIELDYLOG_FIELDEXECUTING_SERVERNEXECUTING_SERVEREXECUTING_USERNEXECUTING_USERCLIENTNCLIENT @@ -33,6 +33,11 @@
ID_BATCHYID_BATCHCHANNEL_IDYCHANNEL_IDLOG_DATEYLOG_DATETRANSNAMEYTRANSNAMESTEPNAMEYSTEPNAMESTEP_COPYYSTEP_COPYLINES_READYLINES_READLINES_WRITTENYLINES_WRITTENLINES_UPDATEDYLINES_UPDATEDLINES_INPUTYLINES_INPUTLINES_OUTPUTYLINES_OUTPUTLINES_REJECTEDYLINES_REJECTEDERRORSYERRORSLOG_FIELDNLOG_FIELD + + +
+ +ID_BATCHYID_BATCHCHANNEL_IDYCHANNEL_IDLOG_DATEYLOG_DATEMETRICS_DATEYMETRICS_DATEMETRICS_CODEYMETRICS_CODEMETRICS_DESCRIPTIONYMETRICS_DESCRIPTIONMETRICS_SUBJECTYMETRICS_SUBJECTMETRICS_TYPEYMETRICS_TYPEMETRICS_VALUEYMETRICS_VALUE @@ -61,9 +66,9 @@ - - 2014/03/23 13:36:41.567 + 2014/03/23 13:36:41.567 - - 2014/03/23 13:36:41.567 + 2014/03/23 13:36:41.567 @@ -92,7 +97,7 @@ DestinationDB localhost MYSQL - JNDI + , DestinationDB 3306 @@ -117,7 +122,7 @@ SourceDB localhost MYSQL - JNDI + , SourceDB 3306 @@ -139,50 +144,22 @@ - Input Saving Productsinterest calculation type mappingY interest calculation type mappingOutput Savings ProductY + Input Saving Productsinterest calculation type mappingY + interest calculation type mappingOutput Savings ProductY + Input Saving Products TableInput Y + 1 none SourceDB - SELECT -po.PRD_OFFERING_ID As id -, po.PRD_OFFERING_NAME As name -, po.PRD_OFFERING_SHORT_NAME As short_name -, IFNULL( IF(po.DESCRIPTION = '' ,po.PRD_OFFERING_NAME , po.DESCRIPTION ) , po.PRD_OFFERING_NAME ) As description -, 'INR' As currency_code -, 2 As currency_digits -, 0 As currency_multiplesof -, so.interest_rate As nominal_annual_interest_rate -, CASE - WHEN ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) = 1 THEN 1 -- Daily - WHEN ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) > 1 THEN 4 -- Monthly - ELSE 1 -- Defualted to Monthly - END AS interest_compounding_period_enum -- recur after and RECURRENCE_ID [ 1 Week(s) 2 / Month(s) 3 / Day(s) ] -, CASE - WHEN 31 >= (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) AND (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) > 27 THEN 4 -- Monthly - WHEN 100 >= (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) AND (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) > 80 THEN 5 -- Quarterly - WHEN 370 >= (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) AND (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) > 350 THEN 7 -- Annually - ELSE 7 -- Defualt to yearly - END AS interest_posting_period_enum -- -- recur after and RECURRENCE_ID [ 1 Week(s) 2 / Month(s) 3 / Day(s) ] -, so.interest_calculation_type_id AS interest_calculation_type_enum -- 1 = Daily balance 2 = Daily average balance -, 360 AS interest_calculation_days_in_year__type_enum -, so.recommended_amount AS min_required_opening_balance -, ${ACCT_TYPE} AS accounting_type -FROM prd_offering po -INNER JOIN savings_offering so ON so.PRD_OFFERING_ID = po.PRD_OFFERING_ID -INNER JOIN prd_offering_meeting pom_ip ON pom_ip.prd_offering_id = po.PRD_OFFERING_ID AND pom_ip.prd_offering_meeting_type_id = 3 -- Savings Frequency of Interest Posting to Accounts -INNER JOIN meeting mt_ip ON mt_ip.meeting_id = pom_ip.prd_meeting_id AND mt_ip.meeting_type_id = 3 -- Savings Frequency of Interest Posting to Accounts -INNER JOIN recurrence_detail rd_ip ON rd_ip.meeting_id = mt_ip.meeting_id -INNER JOIN prd_offering_meeting pom_ic ON pom_ic.prd_offering_id = po.PRD_OFFERING_ID AND pom_ic.prd_offering_meeting_type_id = 2 -- Savings Time Period for Interest Calculation -INNER JOIN meeting mt_ic ON mt_ic.meeting_id = pom_ic.prd_meeting_id AND mt_ic.meeting_type_id = 2 -- Savings Time Period for Interest Calculation -INNER JOIN recurrence_detail rd_ic ON rd_ic.meeting_id = mt_ic.meeting_id + SELECT po.PRD_OFFERING_ID As id , po.PRD_OFFERING_NAME As name , po.PRD_OFFERING_SHORT_NAME As short_name , IFNULL( IF(po.DESCRIPTION = '' ,po.PRD_OFFERING_NAME , po.DESCRIPTION ) , po.PRD_OFFERING_NAME ) As description , 'INR' As currency_code , 2 As currency_digits , 0 As currency_multiplesof , so.interest_rate As nominal_annual_interest_rate , CASE WHEN ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) = 1 THEN 1 -- Daily WHEN ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) > 27 AND ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) < 31 THEN 4 -- Monthly WHEN ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) > 80 AND ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) < 100 THEN 5 -- Quaterly WHEN ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) > 170 AND ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) < 190 THEN 6 -- Bi-annualy WHEN ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) > 350 AND ( rd_ip.recur_after * IF( rd_ip.RECURRENCE_ID = 1 , 7 , IF( rd_ip.RECURRENCE_ID = 2 , 30 , 1))) < 370 THEN 7 -- Annualy ELSE 1 -- Defualted to Monthly END AS interest_compounding_period_enum -- recur after and RECURRENCE_ID [ 1 Week(s) 2 / Month(s) 3 / Day(s) ] , CASE WHEN 31 >= (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) AND (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) > 27 THEN 4 -- Monthly WHEN 100 >= (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) AND (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) > 80 THEN 5 -- Quarterly WHEN 190 >= (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) AND (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) > 170 THEN 5 -- Bi-Annually WHEN 370 >= (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) AND (rd_ic.recur_after * IF( rd_ic.RECURRENCE_ID = 1 , 7 , IF( rd_ic.RECURRENCE_ID = 2 , 30 , 1))) > 350 THEN 7 -- Annually ELSE 7 -- Defualt to yearly END AS interest_posting_period_enum -- -- recur after and RECURRENCE_ID [ 1 Week(s) 2 / Month(s) 3 / Day(s) ] , so.interest_calculation_type_id AS interest_calculation_type_enum -- 1 = Daily balance 2 = Daily average balance , 360 AS interest_calculation_days_in_year__type_enum , so.recommended_amount AS min_required_opening_balance , ${ACCT_TYPE} AS accounting_type FROM prd_offering po INNER JOIN savings_offering so ON so.PRD_OFFERING_ID = po.PRD_OFFERING_ID INNER JOIN prd_offering_meeting pom_ip ON pom_ip.prd_offering_id = po.PRD_OFFERING_ID AND pom_ip.prd_offering_meeting_type_id = 3 -- Savings Frequency of Interest Posting to Accounts INNER JOIN meeting mt_ip ON mt_ip.meeting_id = pom_ip.prd_meeting_id AND mt_ip.meeting_type_id = 3 -- Savings Frequency of Interest Posting to Accounts INNER JOIN recurrence_detail rd_ip ON rd_ip.meeting_id = mt_ip.meeting_id INNER JOIN prd_offering_meeting pom_ic ON pom_ic.prd_offering_id = po.PRD_OFFERING_ID AND pom_ic.prd_offering_meeting_type_id = 2 -- Savings Time Period for Interest Calculation INNER JOIN meeting mt_ic ON mt_ic.meeting_id = pom_ic.prd_meeting_id AND mt_ic.meeting_type_id = 2 -- Savings Time Period for Interest Calculation INNER JOIN recurrence_detail rd_ic ON rd_ic.meeting_id = mt_ic.meeting_id 0 N @@ -190,8 +167,8 @@ INNER JOIN recurrence_detail rd_ic ON rd_ic.meeting_id = mt_ic.meeting_id N - 351 - 210 + 220 + 239 Y @@ -201,6 +178,7 @@ INNER JOIN recurrence_detail rd_ic ON rd_ic.meeting_id = mt_ic.meeting_id TableOutput Y + 1 none @@ -283,8 +261,8 @@ INNER JOIN recurrence_detail rd_ic ON rd_ic.meeting_id = mt_ic.meeting_id - 504 - 342 + 681 + 240 Y @@ -294,6 +272,7 @@ INNER JOIN recurrence_detail rd_ic ON rd_ic.meeting_id = mt_ic.meeting_id ValueMapper Y + 1 none @@ -314,8 +293,8 @@ INNER JOIN recurrence_detail rd_ic ON rd_ic.meeting_id = mt_ic.meeting_id - 504 - 86 + 457 + 240 Y @@ -325,4 +304,5 @@ INNER JOIN recurrence_detail rd_ic ON rd_ic.meeting_id = mt_ic.meeting_id N + diff --git a/MappingDocs/acc_product_mapping.xls b/MappingDocs/acc_product_mapping.xls index 643a833..8ea9448 100644 Binary files a/MappingDocs/acc_product_mapping.xls and b/MappingDocs/acc_product_mapping.xls differ diff --git a/MappingDocs/ref_MIfos_Mifos_X_mapping.xls b/MappingDocs/ref_MIfos_Mifos_X_mapping.xls new file mode 100644 index 0000000..d2c668d Binary files /dev/null and b/MappingDocs/ref_MIfos_Mifos_X_mapping.xls differ diff --git a/MappingDocs/sample_docs/CoA.xls b/MappingDocs/sample_docs/CoA.xls new file mode 100644 index 0000000..7aed3d1 Binary files /dev/null and b/MappingDocs/sample_docs/CoA.xls differ diff --git a/MappingDocs/sample_docs/acc_product_mapping.xls b/MappingDocs/sample_docs/acc_product_mapping.xls new file mode 100644 index 0000000..aebfaeb Binary files /dev/null and b/MappingDocs/sample_docs/acc_product_mapping.xls differ