private bool GenerateMPFData(int PaySlipID, ArrayList mpfRecords)
        {
            bool hasMPF = false;

            DataSet.Payroll_PaySlip.PaySlip_MPFRow mpfRow = null;
            foreach (EMPFRecord mpfRecord in mpfRecords)
            {
                hasMPF = true;

                if (mpfRow == null)
                {
                    mpfRow = CreatePaySlipMPFRow(PaySlipID, mpfRecord.MPFRecPeriodFr, mpfRecord.MPFRecPeriodTo);
                }
                if (!(mpfRecord.MPFRecPeriodFr.Equals(mpfRow.PeriodFr) && mpfRecord.MPFRecPeriodTo.Equals(mpfRow.PeriodTo)))
                {
                    dataSet.PaySlip_MPF.Rows.Add(mpfRow);
                    mpfRow = CreatePaySlipMPFRow(PaySlipID, mpfRecord.MPFRecPeriodFr, mpfRecord.MPFRecPeriodTo);
                }
                mpfRow.RelevantIncome += mpfRecord.MPFRecActMCRI;
                mpfRow.MPFEE          += mpfRecord.MPFRecActMCEE;
                mpfRow.MPFER          += mpfRecord.MPFRecActMCER;
                mpfRow.VCEE           += mpfRecord.MPFRecActVCEE;
                mpfRow.VCER           += mpfRecord.MPFRecActVCER;
            }
            if (mpfRow != null)
            {
                dataSet.PaySlip_MPF.Rows.Add(mpfRow);
            }
            return(hasMPF);
        }
 private DataSet.Payroll_PaySlip.PaySlip_MPFRow CreatePaySlipMPFRow(int PaySlipID, DateTime PeriodFr, DateTime PeriodTo)
 {
     DataSet.Payroll_PaySlip.PaySlip_MPFRow mpfRow = dataSet.PaySlip_MPF.NewPaySlip_MPFRow();
     mpfRow.EmpID          = PaySlipID;
     mpfRow.PeriodFr       = PeriodFr;
     mpfRow.PeriodTo       = PeriodTo;
     mpfRow.RelevantIncome = 0;
     mpfRow.MPFEE          = 0;
     mpfRow.MPFER          = 0;
     mpfRow.VCEE           = 0;
     mpfRow.VCER           = 0;
     return(mpfRow);
 }