public override void ImportToDatabase() { DataTable dataTable = GetImportDataFromTempDatabase(null); if (dataTable.Rows.Count > 0) { ECommissionAchievementImportBatch batchDetail = new ECommissionAchievementImportBatch(); batchDetail.CAImportBatchDateTime = AppUtils.ServerDateTime(); //batchDetail.CAImportBatchOriginalFilename = OriginalBatchFilename; batchDetail.CAImportBatchRemark = Remark; batchDetail.CAImportBatchUploadedBy = m_UserID; ECommissionAchievementImportBatch.db.insert(dbConn, batchDetail); foreach (DataRow row in dataTable.Rows) { EUploadCommissionAchievement obj = new EUploadCommissionAchievement(); EUploadCommissionAchievement.db.toObject(row, obj); ECommissionAchievement CA = new ECommissionAchievement(); CA.CAPercent = obj.CAPercent; CA.CAEffDate = obj.CAEffDate; CA.EmpID = obj.EmpID; CA.CAImportBatchID = batchDetail.CAImportBatchID; ECommissionAchievement.db.insert(dbConn, CA); EUploadCommissionAchievement.db.delete(dbConn, obj); } } }
protected bool loadObject() { ECommissionAchievementImportBatch obj = new ECommissionAchievementImportBatch(); bool isNew = WebFormWorkers.loadKeys(ECommissionAchievementImportBatch.db, obj, DecryptedRequest); if (!ECommissionAchievementImportBatch.db.select(dbConn, obj)) { return(false); } Hashtable values = new Hashtable(); ECommissionAchievementImportBatch.db.populate(obj, values); binding.toControl(values); return(true); }
protected DataSet GenerateCND(int ProcessID, int PaymentCodeID, DateTime PaymentDate) { EPaymentCode m_paymentCode = EPaymentCode.GetObject(dbConn, PaymentCodeID); ECommissionAchievementImportBatch m_process = ECommissionAchievementImportBatch.GetObject(dbConn, ProcessID); DataSet dataSet = new DataSet();//export.GetDataSet(); DataTable dataTable = new DataTable("ClaimsAndDeduction$"); dataSet.Tables.Add(dataTable); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_EMP_NO, typeof(string)); dataTable.Columns.Add("English Name", typeof(string)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_EFFECTIVE_DATE, typeof(DateTime)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_PAYMENT_CODE, typeof(string)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_PAYMENT_METHOD, typeof(string)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_BANK_ACCOUNT_NO, typeof(string)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_AMOUNT, typeof(double)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_NUM_OF_DAY_ADJUST, typeof(double)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_REST_PAYMENT, typeof(string)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_REMARK, typeof(string)); dataTable.Columns.Add(HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_COST_CENTER, typeof(string)); DBFilter m_detailFilter = new DBFilter(); m_detailFilter.add(new Match("CAImportBatchID", ProcessID)); m_detailFilter.add("EmpID", true); foreach (ECommissionAchievement m_detail in ECommissionAchievement.db.select(dbConn, m_detailFilter)) { DBFilter m_rpFilter = new DBFilter(); OR m_orDate = new OR(); m_orDate.add(new NullTerm("EmpRPEffTo")); m_orDate.add(new Match("EmpRPEffTo", ">=", m_detail.CAEffDate)); m_rpFilter.add(m_orDate); m_rpFilter.add(new Match("EmpRPEffFr", "<=", m_detail.CAEffDate)); m_rpFilter.add(new Match("EmpID", m_detail.EmpID)); //m_rpFilter.add(new NullTerm("NOT EmpRPBasicSalary")); m_rpFilter.add(new Match("EmpRPBasicSalary", ">", 0)); m_rpFilter.add(new Match("EmpRPFPS", "<", 100)); m_rpFilter.add(new Match("EmpRPFPS", ">", 0)); foreach (EEmpRecurringPayment m_empRP in EEmpRecurringPayment.db.select(dbConn, m_rpFilter)) { double m_amount = m_empRP.EmpRPBasicSalary * m_detail.CAPercent / 100 - m_empRP.EmpRPAmount; string m_remarks; if (m_amount > 0 && Math.Abs(m_amount) >= 0.01) { m_remarks = String.Format("({0}*{1}%) - {2}", m_empRP.EmpRPBasicSalary.ToString("#,##0.00"), m_detail.CAPercent.ToString("#,##0.00"), m_empRP.EmpRPAmount.ToString("#,##0.00")); EEmpPersonalInfo m_empInfo = new EEmpPersonalInfo(); m_empInfo.EmpID = m_empRP.EmpID; EEmpPersonalInfo.db.select(dbConn, m_empInfo); DataRow m_row = dataTable.NewRow(); m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_EMP_NO] = m_empInfo.EmpNo; m_row["English Name"] = m_empInfo.EmpEngFullName; m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_EFFECTIVE_DATE] = PaymentDate; m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_PAYMENT_CODE] = m_paymentCode.PaymentCode; switch (m_empRP.EmpRPMethod) { case "A": m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_PAYMENT_METHOD] = "Autopay"; break; case "Q": m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_PAYMENT_METHOD] = "Cheque"; break; case "C": m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_PAYMENT_METHOD] = "Cash"; break; default: m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_PAYMENT_METHOD] = "Other"; break; } m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_AMOUNT] = Math.Round(m_amount, 2); m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_NUM_OF_DAY_ADJUST] = 0; //DateTime.DaysInMonth(m_process.AsAtDate); m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_REST_PAYMENT] = "No"; m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_REMARK] = m_remarks; EEmpBankAccount m_bank = new EEmpBankAccount(); m_bank.EmpBankAccountID = m_empRP.EmpAccID; if (EEmpBankAccount.db.select(dbConn, m_bank)) { m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_BANK_ACCOUNT_NO] = m_bank.EmpAccountNo; } ECostCenter m_costCenter = new ECostCenter(); m_costCenter.CostCenterID = m_empRP.CostCenterID; if (ECostCenter.db.select(dbConn, m_costCenter)) { m_row[HROne.Import.ImportClaimsAndDeductionsProcess.FIELD_COST_CENTER] = m_costCenter.CostCenterCode; } dataTable.Rows.Add(m_row); } } } return(dataSet); }