Exemplo n.º 1
0
    protected void Delete_Click(object sender, EventArgs e)
    {
        ArrayList list = new ArrayList();

        foreach (RepeaterItem i in Repeater.Items)
        {
            CheckBox cb = (CheckBox)i.FindControl("ItemSelect");
            if (cb.Checked)
            {
                EEmpCostCenter o = new EEmpCostCenter();
                WebFormUtils.GetKeys(sdb, o, cb);
                list.Add(o);
            }
        }
        if (list.Count > 0)
        {
            WebUtils.StartFunction(Session, FUNCTION_CODE, CurID);
            foreach (EEmpCostCenter o in list)
            {
                if (sdb.select(dbConn, o))
                {
                    sdb.delete(dbConn, o);
                    DBFilter costCenterDetailFilter = new DBFilter();
                    costCenterDetailFilter.add(new Match("EmpCostCenterID", o.EmpCostCenterID));
                    ArrayList empCostCenterDetailList = EEmpCostCenterDetail.db.select(dbConn, costCenterDetailFilter);
                    foreach (EEmpCostCenterDetail empCostCenterDetail in empCostCenterDetailList)
                    {
                        EEmpCostCenterDetail.db.delete(dbConn, empCostCenterDetail);
                    }
                }
            }
            WebUtils.EndFunction(dbConn);
        }
        loadData(info, sdb, Repeater);
    }
Exemplo n.º 2
0
    protected bool loadObject()
    {
        obj = new EEmpCostCenter();
        bool isNew = WebFormWorkers.loadKeys(db, obj, DecryptedRequest);

        DBFilter filter = new DBFilter();

        filter.add(new Match("EmpID", CurEmpID));
        filter.add(WebUtils.AddRankFilter(Session, "EmpID", true));
        if (EEmpPersonalInfo.db.count(dbConn, filter) == 0)
        {
            if (CurEmpID <= 0)
            {
                return(false);
            }
            else
            {
                HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "~/AccessDeny.aspx");
            }
        }

        if (!db.select(dbConn, obj))
        {
            if (CurID <= 0)
            {
                return(false);
            }
            else
            {
                HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "~/AccessDeny.aspx");
            }
        }

        if (obj.EmpID != CurEmpID)
        {
            if (CurID <= 0)
            {
                return(false);
            }
            else
            {
                HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "~/AccessDeny.aspx");
            }
        }

        Hashtable values = new Hashtable();

        db.populate(obj, values);
        binding.toControl(values);


        return(true);
    }
Exemplo n.º 3
0
    protected void Delete_Click(object sender, EventArgs e)
    {
        EEmpCostCenter c = new EEmpCostCenter();

        c.EmpCostCenterID = CurID;
        if (EEmpCostCenter.db.select(dbConn, c))
        {
            WebUtils.StartFunction(Session, FUNCTION_CODE, c.EmpID);
            db.delete(dbConn, c);
            DBFilter costCenterDetailFilter = new DBFilter();
            costCenterDetailFilter.add(new Match("EmpCostCenterID", c.EmpCostCenterID));
            ArrayList empCostCenterDetailList = EEmpCostCenterDetail.db.select(dbConn, costCenterDetailFilter);
            foreach (EEmpCostCenterDetail empCostCenterDetail in empCostCenterDetailList)
            {
                EEmpCostCenterDetail.db.delete(dbConn, empCostCenterDetail);
            }
            WebUtils.EndFunction(dbConn);
        }
        HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "EmpTab_CostCenter_View.aspx?EmpID=" + EmpID.Value);
    }
Exemplo n.º 4
0
        public void ImportToDatabase(int UploadEmpID)
        {
            DBFilter sessionFilter = new DBFilter();

            sessionFilter.add(new Match("SessionID", m_SessionID));
            if (UploadEmpID > 0)
            {
                sessionFilter.add(new Match("UploadEmpID", UploadEmpID));
            }
            ArrayList uploadEmpCostCenterList = tempDB.select(dbConn, sessionFilter);

            foreach (EUploadEmpCostCenter obj in uploadEmpCostCenterList)
            {
                EEmpCostCenter empCostCenter = new EEmpCostCenter();

                if (obj.ImportActionStatus != ImportDBObject.ImportActionEnum.INSERT)
                {
                    empCostCenter.EmpCostCenterID = obj.EmpCostCenterID;
                    uploadDB.select(dbConn, empCostCenter);
                }

                obj.ExportToObject(empCostCenter);

                if (obj.ImportActionStatus == ImportDBObject.ImportActionEnum.INSERT)
                {
                    empCostCenter.EmpID = ParseTemp.GetEmpIDFromUploadEmpID(dbConn, obj.UploadEmpID);
                    EEmpCostCenter lastObj = (EEmpCostCenter)AppUtils.GetLastObj(dbConn, EEmpCostCenter.db, "EmpCostCenterEffFr", empCostCenter.EmpID, new Match("EmpCostCenterEffFr", "<", empCostCenter.EmpCostCenterEffFr));
                    if (lastObj != null)
                    {
                        if (lastObj.EmpCostCenterEffTo.Ticks == 0)
                        {
                            lastObj.EmpCostCenterEffTo = empCostCenter.EmpCostCenterEffFr.AddDays(-1);
                            uploadDB.update(dbConn, lastObj);
                        }
                    }
                    uploadDB.insert(dbConn, empCostCenter);

                    DBFilter uploadEmpCostCenterFilter = new DBFilter();
                    uploadEmpCostCenterFilter.add(new Match("UploadEmpCostCenterID", obj.UploadEmpCostCenterID));
                    ArrayList uploadEmpCostCenterDetailList = EUploadEmpCostCenterDetail.db.select(dbConn, uploadEmpCostCenterFilter);
                    foreach (EUploadEmpCostCenterDetail uploadEmpCostCenterDetail in uploadEmpCostCenterDetailList)
                    {
                        uploadEmpCostCenterDetail.EmpCostCenterID = empCostCenter.EmpCostCenterID;
                        EEmpCostCenterDetail empCostCenterDetail = new EEmpCostCenterDetail();
                        ImportDBObject.CopyObjectProperties(uploadEmpCostCenterDetail, empCostCenterDetail);
                        uploadDetailDB.insert(dbConn, empCostCenterDetail);
                        EUploadEmpCostCenterDetail.db.delete(dbConn, uploadEmpCostCenterDetail);
                    }
                }
                else if (obj.ImportActionStatus == ImportDBObject.ImportActionEnum.UPDATE)
                {
                    uploadDB.update(dbConn, empCostCenter);

                    DBFilter empCostCenterDetailFilter = new DBFilter();
                    empCostCenterDetailFilter.add(new Match("EmpCostCenterID", empCostCenter.EmpCostCenterID));
                    uploadDetailDB.delete(dbConn, empCostCenterDetailFilter);

                    DBFilter uploadEmpCostCenterDetailFilter = new DBFilter();
                    uploadEmpCostCenterDetailFilter.add(new Match("UploadEmpCostCenterID", obj.UploadEmpCostCenterID));
                    ArrayList uploadEmpCostCenterDetailList = EUploadEmpCostCenterDetail.db.select(dbConn, uploadEmpCostCenterDetailFilter);
                    foreach (EUploadEmpCostCenterDetail uploadEmpCostCenterDetail in uploadEmpCostCenterDetailList)
                    {
                        EEmpCostCenterDetail empCostCenterDetail = new EEmpCostCenterDetail();
                        ImportDBObject.CopyObjectProperties(uploadEmpCostCenterDetail, empCostCenterDetail);
                        uploadDetailDB.insert(dbConn, empCostCenterDetail);
                        EUploadEmpCostCenterDetail.db.delete(dbConn, uploadEmpCostCenterDetail);
                    }
                }
                tempDB.delete(dbConn, obj);
            }
        }
Exemplo n.º 5
0
        public DataTable UploadToTempDatabase(DataTable rawDataTable, int UserID, bool CreateCodeIfNotExists)
        {
            if (rawDataTable == null)
            {
                return(GetImportDataFromTempDatabase(null));
            }

            int rowCount = 1;

            foreach (DataRow row in rawDataTable.Rows)
            {
                rowCount++;

                EUploadEmpCostCenter uploadEmpCostCenter           = new EUploadEmpCostCenter();
                ArrayList            uploadEmpCostCenterDetailList = new ArrayList();
                ArrayList            lastEmpCostCenterDetailList   = null;

                string EmpNo = row[FIELD_EMP_NO].ToString().Trim();
                uploadEmpCostCenter.EmpID = Parse.GetEmpID(dbConn, EmpNo, UserID);
                if (uploadEmpCostCenter.EmpID < 0)
                {
                    errors.addError(ImportErrorMessage.ERROR_ACCESS_DENIED_EMP_NO, new string[] { EmpNo, rowCount.ToString() });
                }
                try
                {
                    uploadEmpCostCenter.EmpCostCenterEffFr = Parse.toDateTimeObject(row[FIELD_FROM]);
                }
                catch
                {
                    errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_FROM + "=" + row[FIELD_FROM].ToString(), EmpNo, rowCount.ToString() });
                }
                try
                {
                    uploadEmpCostCenter.EmpCostCenterEffTo = Parse.toDateTimeObject(row[FIELD_TO]);
                }
                catch
                {
                    errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_TO + "=" + row[FIELD_TO].ToString(), EmpNo, rowCount.ToString() });
                }
                int iFieldCount = 1;

                double totalPercentage = 0;
                while (row.Table.Columns.Contains(FIELD_COST_CENTER + iFieldCount) && row.Table.Columns.Contains(FIELD_PERCENTAGE + iFieldCount))
                {
                    if (!row.IsNull(FIELD_COST_CENTER + iFieldCount) && !row.IsNull(FIELD_PERCENTAGE + iFieldCount))
                    {
                        if (!string.IsNullOrEmpty(row[FIELD_COST_CENTER + iFieldCount].ToString().Trim()) && !string.IsNullOrEmpty(row[FIELD_PERCENTAGE + iFieldCount].ToString().Trim()))
                        {
                            EUploadEmpCostCenterDetail uploadEmpCostCenterDetail = new EUploadEmpCostCenterDetail();
                            uploadEmpCostCenterDetail.CostCenterID = Parse.GetCostCenterID(dbConn, row[FIELD_COST_CENTER + iFieldCount].ToString(), CreateCodeIfNotExists, UserID);
                            try
                            {
                                uploadEmpCostCenterDetail.EmpCostCenterPercentage = double.Parse(row[FIELD_PERCENTAGE + iFieldCount].ToString().Trim());
                                if (uploadEmpCostCenterDetail.CostCenterID > 0)
                                {
                                    totalPercentage += uploadEmpCostCenterDetail.EmpCostCenterPercentage;
                                    uploadEmpCostCenterDetailList.Add(uploadEmpCostCenterDetail);
                                }
                                else
                                {
                                    errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_COST_CENTER + iFieldCount + "=" + row[FIELD_COST_CENTER + iFieldCount].ToString(), EmpNo, rowCount.ToString() });
                                }
                            }
                            catch
                            {
                                errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_PERCENTAGE + iFieldCount + "=" + row[FIELD_PERCENTAGE + iFieldCount].ToString(), EmpNo, rowCount.ToString() });
                            }
                        }
                    }
                    iFieldCount++;
                }

                if (Math.Abs(Math.Round(totalPercentage, 2) - 100) >= 0.01)
                {
                    errors.addError(ImportErrorMessage.ERROR_TOTAL_PERCENTAGE_NOT_100, new string[] { rowCount.ToString() });
                }

                uploadEmpCostCenter.SessionID       = m_SessionID;
                uploadEmpCostCenter.TransactionDate = UploadDateTime;


                if (uploadEmpCostCenter.EmpID != 0 && errors.List.Count <= 0)
                {
                    if (rawDataTable.Columns.Contains(FIELD_SYNC_ID))
                    {
                        if (!row.IsNull(FIELD_SYNC_ID))
                        {
                            string strSynID = row[FIELD_SYNC_ID].ToString();
                            uploadEmpCostCenter.SynID = strSynID;
                            if (!string.IsNullOrEmpty(strSynID))
                            {
                                DBFilter synIDFilter = new DBFilter();
                                synIDFilter.add(new Match("SynID", strSynID));
                                ArrayList objSameSynIDList = EEmpCostCenter.db.select(dbConn, synIDFilter);
                                if (objSameSynIDList.Count > 0)
                                {
                                    uploadEmpCostCenter.EmpCostCenterID = ((EEmpCostCenter)objSameSynIDList[0]).EmpCostCenterID;
                                }
                            }

                            if (uploadEmpCostCenter.EmpCostCenterID != 0)
                            {
                                DBFilter empCostCenterSetailFilter = new DBFilter();
                                empCostCenterSetailFilter.add(new Match("EmpCostCenterID", uploadEmpCostCenter.EmpCostCenterID));
                                lastEmpCostCenterDetailList = EEmpCostCenterDetail.db.select(dbConn, empCostCenterSetailFilter);



                                bool IsSameDetail = true;
                                if (
                                    lastEmpCostCenterDetailList.Count == uploadEmpCostCenterDetailList.Count &&
                                    uploadEmpCostCenter.EmpCostCenterEffFr == uploadEmpCostCenter.EmpCostCenterEffFr &&
                                    uploadEmpCostCenter.EmpCostCenterEffTo == uploadEmpCostCenter.EmpCostCenterEffTo
                                    )
                                {
                                    foreach (EEmpCostCenterDetail empCostCenterDetail in lastEmpCostCenterDetailList)
                                    {
                                        foreach (EUploadEmpCostCenterDetail uploadEmpCostCenterDetail in uploadEmpCostCenterDetailList)
                                        {
                                            if (uploadEmpCostCenterDetail.CostCenterID == empCostCenterDetail.CostCenterID)
                                            {
                                                if (uploadEmpCostCenterDetail.EmpCostCenterPercentage - empCostCenterDetail.EmpCostCenterPercentage >= 0.01)
                                                {
                                                    uploadEmpCostCenterDetail.EmpCostCenterDetailID = empCostCenterDetail.EmpCostCenterDetailID;
                                                    IsSameDetail = false;
                                                }
                                                else
                                                {
                                                    uploadEmpCostCenterDetail.EmpCostCenterID       = empCostCenterDetail.EmpCostCenterID;
                                                    uploadEmpCostCenterDetail.EmpCostCenterDetailID = empCostCenterDetail.EmpCostCenterDetailID;
                                                }
                                                break;
                                            }
                                            if (uploadEmpCostCenterDetailList[uploadEmpCostCenterDetailList.Count - 1] == uploadEmpCostCenterDetail)
                                            {
                                                IsSameDetail = false;
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    IsSameDetail = false;
                                }

                                if (IsSameDetail)
                                {
                                    continue;
                                }
                                else
                                {
                                    foreach (EUploadEmpCostCenterDetail uploadEmpCostCenterDetail in uploadEmpCostCenterDetailList)
                                    {
                                        uploadEmpCostCenterDetail.EmpCostCenterID = uploadEmpCostCenter.EmpCostCenterID;
                                        //uploadEmpHierarchy.EmpHierarchyID = empHierarchy.EmpHierarchyID;
                                    }
                                }
                            }
                        }
                    }
                    if (uploadEmpCostCenter.EmpCostCenterID == 0)
                    {
                        AND andTerms = new AND();
                        andTerms.add(new Match("EmpCostCenterEffFr", "<=", uploadEmpCostCenter.EmpCostCenterEffFr));

                        EEmpCostCenter lastEmpCostCenter = (EEmpCostCenter)AppUtils.GetLastObj(dbConn, uploadDB, "EmpCostCenterEffFr", uploadEmpCostCenter.EmpID, andTerms);
                        if (lastEmpCostCenter != null)
                        {
                            DBFilter empCostCenterSetailFilter = new DBFilter();
                            empCostCenterSetailFilter.add(new Match("EmpCostCenterID", lastEmpCostCenter.EmpCostCenterID));
                            lastEmpCostCenterDetailList = EEmpCostCenterDetail.db.select(dbConn, empCostCenterSetailFilter);



                            bool IsSameDetail = true;
                            if (
                                lastEmpCostCenterDetailList.Count == uploadEmpCostCenterDetailList.Count &&
                                uploadEmpCostCenter.EmpCostCenterEffFr == lastEmpCostCenter.EmpCostCenterEffFr &&
                                uploadEmpCostCenter.EmpCostCenterEffTo == lastEmpCostCenter.EmpCostCenterEffTo
                                )
                            {
                                foreach (EEmpCostCenterDetail empCostCenterDetail in lastEmpCostCenterDetailList)
                                {
                                    foreach (EUploadEmpCostCenterDetail uploadEmpCostCenterDetail in uploadEmpCostCenterDetailList)
                                    {
                                        if (uploadEmpCostCenterDetail.CostCenterID == empCostCenterDetail.CostCenterID)
                                        {
                                            if (uploadEmpCostCenterDetail.EmpCostCenterPercentage - empCostCenterDetail.EmpCostCenterPercentage >= 0.01)
                                            {
                                                uploadEmpCostCenterDetail.EmpCostCenterDetailID = empCostCenterDetail.EmpCostCenterDetailID;
                                                IsSameDetail = false;
                                            }
                                            else
                                            {
                                                uploadEmpCostCenterDetail.EmpCostCenterID       = empCostCenterDetail.EmpCostCenterID;
                                                uploadEmpCostCenterDetail.EmpCostCenterDetailID = empCostCenterDetail.EmpCostCenterDetailID;
                                            }
                                            break;
                                        }
                                        if (uploadEmpCostCenterDetailList[uploadEmpCostCenterDetailList.Count - 1] == uploadEmpCostCenterDetail)
                                        {
                                            IsSameDetail = false;
                                        }
                                    }
                                }
                            }
                            else
                            {
                                IsSameDetail = false;
                            }

                            if (IsSameDetail)
                            {
                                continue;
                            }
                            else
                            {
                                // add postion terms with new ID
                                if (lastEmpCostCenter.EmpCostCenterEffFr.Equals(uploadEmpCostCenter.EmpCostCenterEffFr))
                                {
                                    uploadEmpCostCenter.EmpCostCenterID = lastEmpCostCenter.EmpCostCenterID;
                                    if (uploadEmpCostCenter.EmpCostCenterEffTo.Ticks == 0 && lastEmpCostCenter.EmpCostCenterEffTo.Ticks != 0)
                                    {
                                        EEmpCostCenter afterEmpCostCenter = (EEmpCostCenter)AppUtils.GetLastObj(dbConn, uploadDB, "EmpCostCenterEffFr", uploadEmpCostCenter.EmpID, new Match("EmpCostCenterEffFr", ">", lastEmpCostCenter.EmpCostCenterEffTo));
                                        if (afterEmpCostCenter != null)
                                        {
                                            uploadEmpCostCenter.EmpCostCenterEffTo = afterEmpCostCenter.EmpCostCenterEffFr.AddDays(-1);
                                        }
                                    }
                                    foreach (EUploadEmpCostCenterDetail uploadEmpCostCenterDetail in uploadEmpCostCenterDetailList)
                                    {
                                        uploadEmpCostCenterDetail.EmpCostCenterID = uploadEmpCostCenter.EmpCostCenterID;
                                        //uploadEmpHierarchy.EmpHierarchyID = empHierarchy.EmpHierarchyID;
                                    }
                                }
                                else
                                {
                                    AND lastObjAndTerms = new AND();
                                    lastObjAndTerms.add(new Match("EmpCostCenterEffFr", ">", uploadEmpCostCenter.EmpCostCenterEffFr));
                                    if (!uploadEmpCostCenter.EmpCostCenterEffTo.Ticks.Equals(0))
                                    {
                                        lastObjAndTerms.add(new Match("EmpCostCenterEffFr", "<=", uploadEmpCostCenter.EmpCostCenterEffTo));
                                    }

                                    EEmpCostCenter lastObj = (EEmpCostCenter)AppUtils.GetLastObj(dbConn, uploadDB, "EmpCostCenterEffFr", uploadEmpCostCenter.EmpID, lastObjAndTerms);
                                    if (lastObj != null)
                                    {
                                        if (!lastObj.EmpCostCenterEffTo.Ticks.Equals(0))
                                        {
                                            errors.addError(ImportErrorMessage.ERROR_DATE_FROM_OVERLAP, new string[] { uploadEmpCostCenter.EmpCostCenterEffFr.ToString("yyyy-MM-dd"), rowCount.ToString() });
                                            continue;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

                if (uploadEmpCostCenter.EmpCostCenterID <= 0)
                {
                    uploadEmpCostCenter.ImportActionStatus = ImportDBObject.ImportActionEnum.INSERT;
                }
                else
                {
                    uploadEmpCostCenter.ImportActionStatus = ImportDBObject.ImportActionEnum.UPDATE;
                }

                uploadEmpCostCenter.UploadEmpID = ParseTemp.GetUploadEmpID(dbConn, EmpNo, m_SessionID);
                if (uploadEmpCostCenter.UploadEmpID == 0)
                {
                    if (uploadEmpCostCenter.EmpID == 0)
                    {
                        errors.addError(ImportErrorMessage.ERROR_INVALID_EMP_NO, new string[] { EmpNo, rowCount.ToString() });
                    }
                    else
                    {
                        uploadEmpCostCenter.UploadEmpID = ImportEmpPersonalInfoProcess.CreateDummyUploadEmployeeInfo(dbConn, uploadEmpCostCenter.EmpID, m_SessionID, UploadDateTime);
                    }
                }

                Hashtable values = new Hashtable();
                tempDB.populate(uploadEmpCostCenter, values);
                PageErrors pageErrors = new PageErrors(EUploadEmpPersonalInfo.db);
                tempDB.validate(pageErrors, values);
                if (pageErrors.errors.Count == 0)
                {
                    tempDB.insert(dbConn, uploadEmpCostCenter);
                    foreach (EUploadEmpCostCenterDetail uploadCostCenterDetail in uploadEmpCostCenterDetailList)
                    {
                        uploadCostCenterDetail.UploadEmpCostCenterID = uploadEmpCostCenter.UploadEmpCostCenterID;
                        tempDetailDB.insert(dbConn, uploadCostCenterDetail);
                    }
                }
                else
                {
                    pageErrors.addError(rawDataTable.TableName);
                    throw new HRImportException(pageErrors.getPrompt() + "(line " + rowCount.ToString() + ")");

                    //if (EmpID == 0)
                    //    errors.addError(ImportErrorMessage.ERROR_INVALID_EMP_NO, new string[] { EmpNo, rowCount.ToString() });
                    //else if (PayCodeID == 0)
                    //    errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_PAYMENT_CODE + "=" + PaymentCode, EmpNo, rowCount.ToString() });
                    //else if (PayCodeID == 0)
                    //    errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_PAYMENT_CODE + "=" + PaymentCode, EmpNo, rowCount.ToString() });
                    //else if (EffDate.Ticks == 0)
                    //    errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_EFFECTIVE_DATE + "=" + EffDateString, EmpNo, rowCount.ToString() });
                    //else if (double.TryParse(amountString, out amount))
                    //    errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_AMOUNT + "=" + amountString, EmpNo, rowCount.ToString() });
                }
            }
            if (errors.List.Count > 0)
            {
                ClearTempTable();
                throw (new HRImportException(rawDataTable.TableName + "\r\n" + errors.Message()));
            }
            return(GetImportDataFromTempDatabase(null));
        }
Exemplo n.º 6
0
        public static string GetValueFromID(DatabaseConnection dbConn, string fieldName, string fieldValue)
        {
            try
            {
                string tmpfieldName = fieldName;
                if (tmpfieldName.Equals("PreviousEmpID", StringComparison.CurrentCultureIgnoreCase) || tmpfieldName.Equals("NewEmpID", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "EmpID";
                }
                if (tmpfieldName.EndsWith("PaymentCodeID", StringComparison.CurrentCultureIgnoreCase) || tmpfieldName.EndsWith("PayCodeID", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "PaymentCodeID";
                }
                if (tmpfieldName.Equals("DefaultMPFPlanID", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "MPFPlanID";
                }
                if (tmpfieldName.Equals("AttendanceFormulaPayFormID", StringComparison.CurrentCultureIgnoreCase) || tmpfieldName.Equals("ReferencePayFormID", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "PayFormID";
                }
                if (tmpfieldName.StartsWith("LeaveCode", StringComparison.CurrentCultureIgnoreCase) && tmpfieldName.EndsWith("Formula", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "PayFormID";
                }
                if (tmpfieldName.StartsWith("PayGroup", StringComparison.CurrentCultureIgnoreCase) && tmpfieldName.EndsWith("Formula", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "PayFormID";
                }
                if (tmpfieldName.Equals("CurrentPayPeriodID", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "PayPeriodID";
                }
                if (tmpfieldName.Equals("EmpPosDefaultRosterCodeID", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "RosterCodeID";
                }
                if (tmpfieldName.Equals("RosterClientMappingSiteCodeToHLevelID", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "HLevelID";
                }
                if (tmpfieldName.Equals("EmpFirstAuthorizationGp", StringComparison.CurrentCultureIgnoreCase) || tmpfieldName.Equals("EmpSecondAuthorizationGp", StringComparison.CurrentCultureIgnoreCase))
                {
                    tmpfieldName = "AuthorizationGroupID";
                }



                if (tmpfieldName.StartsWith("A", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("ALProrataRoundingRuleID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EALProrataRoundingRule obj = new EALProrataRoundingRule();
                        obj.ALProrataRoundingRuleID = int.Parse(fieldValue);
                        if (EALProrataRoundingRule.db.select(dbConn, obj))
                        {
                            return(obj.ALProrataRoundingRuleCode + " - " + obj.ALProrataRoundingRuleDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("AttendancePlanID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EAttendancePlan obj = new EAttendancePlan();
                        obj.AttendancePlanID = int.Parse(fieldValue);
                        if (EAttendancePlan.db.select(dbConn, obj))
                        {
                            return(obj.AttendancePlanCode + " - " + obj.AttendancePlanDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("AuthorizationGroupID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EAuthorizationGroup obj = new EAuthorizationGroup();
                        obj.AuthorizationGroupID = int.Parse(fieldValue);
                        if (EAuthorizationGroup.db.select(dbConn, obj))
                        {
                            return(obj.AuthorizationCode + " - " + obj.AuthorizationDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("AVCPlanID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EAVCPlan obj = new EAVCPlan();
                        obj.AVCPlanID = int.Parse(fieldValue);
                        if (EAVCPlan.db.select(dbConn, obj))
                        {
                            return(obj.AVCPlanCode + " - " + obj.AVCPlanDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("C", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("CessationReasonID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ECessationReason obj = new ECessationReason();
                        obj.CessationReasonID = int.Parse(fieldValue);
                        if (ECessationReason.db.select(dbConn, obj))
                        {
                            return(obj.CessationReasonCode + " - " + obj.CessationReasonDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("CompanyID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ECompany obj = new ECompany();
                        obj.CompanyID = int.Parse(fieldValue);
                        if (ECompany.db.select(dbConn, obj))
                        {
                            return(obj.CompanyCode + " - " + obj.CompanyName);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }


                    if (tmpfieldName.Equals("CostAllocationDetailID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ECostAllocationDetail obj = new ECostAllocationDetail();
                        obj.CostAllocationDetailID = int.Parse(fieldValue);
                        if (ECostAllocationDetail.db.select(dbConn, obj))
                        {
                            return(GetValueFromID(dbConn, "PayCodeID", obj.PaymentCodeID.ToString()) + ", " + GetValueFromID(dbConn, "CostCenterID", obj.CostCenterID.ToString()));
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("CostAllocationID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ECostAllocation obj = new ECostAllocation();
                        obj.CostAllocationID = int.Parse(fieldValue);
                        if (ECostAllocation.db.select(dbConn, obj))
                        {
                            return(GetValueFromID(dbConn, "EmpPayrollID", obj.EmpPayrollID.ToString()));
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("CostCenterID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ECostCenter obj = new ECostCenter();
                        obj.CostCenterID = int.Parse(fieldValue);
                        if (ECostCenter.db.select(dbConn, obj))
                        {
                            return(obj.CostCenterCode + " - " + obj.CostCenterDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("D", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("DocumentTypeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EDocumentType obj = new EDocumentType();
                        obj.DocumentTypeID = int.Parse(fieldValue);
                        if (EDocumentType.db.select(dbConn, obj))
                        {
                            return(obj.DocumentTypeCode + " - " + obj.DocumentTypeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("E", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("EmpAccID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EEmpBankAccount obj = new EEmpBankAccount();
                        obj.EmpBankAccountID = int.Parse(fieldValue);
                        if (EEmpBankAccount.db.select(dbConn, obj))
                        {
                            return(obj.EmpBankCode + "-" + obj.EmpBranchCode + "-" + obj.EmpAccountNo);
                        }
                        //return obj.EmpBankCode + "-" + obj.EmpBranchCode + "-" + string.Empty.PadRight(obj.EmpAccountNo.Length, 'X');
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("EmpCostCenterID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EEmpCostCenter obj = new EEmpCostCenter();
                        obj.EmpCostCenterID = int.Parse(fieldValue);
                        if (EEmpCostCenter.db.select(dbConn, obj))
                        {
                            return(GetValueFromID(dbConn, "EmpID", obj.EmpID.ToString()));
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("EmpExtraFieldID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EEmpExtraField obj = new EEmpExtraField();
                        obj.EmpExtraFieldID = int.Parse(fieldValue);
                        if (EEmpExtraField.db.select(dbConn, obj))
                        {
                            return(obj.EmpExtraFieldName);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("EmpID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EEmpPersonalInfo obj = new EEmpPersonalInfo();
                        obj.EmpID = int.Parse(fieldValue);
                        if (EEmpPersonalInfo.db.select(dbConn, obj))
                        {
                            return(obj.EmpNo + " - " + obj.EmpEngFullName);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("EmpPayrollID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EEmpPayroll obj = new EEmpPayroll();
                        obj.EmpPayrollID = int.Parse(fieldValue);
                        if (EEmpPayroll.db.select(dbConn, obj))
                        {
                            return(GetValueFromID(dbConn, "EmpID", obj.EmpID.ToString()) + " : " + GetValueFromID(dbConn, "PayPeriodID", obj.PayPeriodID.ToString()));
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("EmpPosID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EEmpPositionInfo obj = new EEmpPositionInfo();
                        obj.EmpPosID = int.Parse(fieldValue);
                        if (EEmpPositionInfo.db.select(dbConn, obj))
                        {
                            return(obj.EmpPosEffFr.ToString("yyyy-MM-dd") + " - " + (obj.EmpPosEffTo.Ticks.Equals(0) ? "Present" : obj.EmpPosEffTo.ToString("yyyy-MM-dd")));
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("EmploymentTypeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EEmploymentType obj = new EEmploymentType();
                        obj.EmploymentTypeID = int.Parse(fieldValue);
                        if (EEmploymentType.db.select(dbConn, obj))
                        {
                            return(obj.EmploymentTypeCode + " - " + obj.EmploymentTypeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("F", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("FunctionID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ESystemFunction obj = new ESystemFunction();
                        obj.FunctionID = int.Parse(fieldValue);
                        if (ESystemFunction.db.select(dbConn, obj))
                        {
                            return(obj.FunctionCode + " - " + obj.Description);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("H", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("HElementID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EHierarchyElement obj = new EHierarchyElement();
                        obj.HElementID = int.Parse(fieldValue);
                        if (EHierarchyElement.db.select(dbConn, obj))
                        {
                            return(obj.HElementCode + " - " + obj.HElementDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("HLevelID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EHierarchyLevel obj = new EHierarchyLevel();
                        obj.HLevelID = int.Parse(fieldValue);
                        if (EHierarchyLevel.db.select(dbConn, obj))
                        {
                            return(obj.HLevelCode + " - " + obj.HLevelDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("L", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("LeaveTypeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ELeaveType obj = new ELeaveType();
                        obj.LeaveTypeID = int.Parse(fieldValue);
                        if (ELeaveType.db.select(dbConn, obj))
                        {
                            return(obj.LeaveType + " - " + obj.LeaveTypeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("LeaveCodeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ELeaveCode obj = new ELeaveCode();
                        obj.LeaveCodeID = int.Parse(fieldValue);
                        if (ELeaveCode.db.select(dbConn, obj))
                        {
                            return(obj.LeaveCode + " - " + obj.LeaveCodeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("LeavePlanID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ELeavePlan obj = new ELeavePlan();
                        obj.LeavePlanID = int.Parse(fieldValue);
                        if (ELeavePlan.db.select(dbConn, obj))
                        {
                            return(obj.LeavePlanCode + " - " + obj.LeavePlanDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("M", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("MPFPlanID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EMPFPlan obj = new EMPFPlan();
                        obj.MPFPlanID = int.Parse(fieldValue);
                        if (EMPFPlan.db.select(dbConn, obj))
                        {
                            return(obj.MPFPlanCode + " - " + obj.MPFPlanDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }

                    if (tmpfieldName.Equals("MPFSchemeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EMPFScheme obj = new EMPFScheme();
                        obj.MPFSchemeID = int.Parse(fieldValue);
                        if (EMPFScheme.db.select(dbConn, obj))
                        {
                            return(obj.MPFSchemeCode + " - " + obj.MPFSchemeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("MPFSchemeCessationReasonID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EMPFSchemeCessationReason obj = new EMPFSchemeCessationReason();
                        obj.MPFSchemeCessationReasonID = int.Parse(fieldValue);
                        if (EMPFSchemeCessationReason.db.select(dbConn, obj))
                        {
                            return(obj.MPFSchemeCessationReasonCode + " - " + obj.MPFSchemeCessationReasonDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("O", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("ORSOPlanID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EORSOPlan obj = new EORSOPlan();
                        obj.ORSOPlanID = int.Parse(fieldValue);
                        if (EORSOPlan.db.select(dbConn, obj))
                        {
                            return(obj.ORSOPlanCode + " - " + obj.ORSOPlanDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("P", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("PayGroupID", StringComparison.CurrentCultureIgnoreCase) || tmpfieldName.Equals("PayrollGroupID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EPayrollGroup obj = new EPayrollGroup();
                        obj.PayGroupID = int.Parse(fieldValue);
                        if (EPayrollGroup.db.select(dbConn, obj))
                        {
                            return(obj.PayGroupCode + " - " + obj.PayGroupDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("PayFormID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EPayrollProrataFormula obj = new EPayrollProrataFormula();
                        obj.PayFormID = int.Parse(fieldValue);
                        if (EPayrollProrataFormula.db.select(dbConn, obj))
                        {
                            return(obj.PayFormCode + " - " + obj.PayFormDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("PaymentCodeID", StringComparison.CurrentCultureIgnoreCase) || tmpfieldName.Equals("PayCodeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EPaymentCode obj = new EPaymentCode();
                        obj.PaymentCodeID = int.Parse(fieldValue);
                        if (EPaymentCode.db.select(dbConn, obj))
                        {
                            return(obj.PaymentCode + " - " + obj.PaymentCodeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("PaymentTypeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EPaymentType obj = new EPaymentType();
                        obj.PaymentTypeID = int.Parse(fieldValue);
                        if (EPaymentType.db.select(dbConn, obj))
                        {
                            return(obj.PaymentTypeCode + " - " + obj.PaymentTypeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("PayPeriodID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EPayrollPeriod obj = new EPayrollPeriod();
                        obj.PayPeriodID = int.Parse(fieldValue);
                        if (EPayrollPeriod.db.select(dbConn, obj))
                        {
                            return(GetValueFromID(dbConn, "PayrollGroupID", obj.PayGroupID.ToString()) + ": " + obj.PayPeriodFr.ToString("yyyy-MM-dd") + " to " + obj.PayPeriodTo.ToString("yyyy-MM-dd"));
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("PermitTypeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EPermitType obj = new EPermitType();
                        obj.PermitTypeID = int.Parse(fieldValue);
                        if (EPermitType.db.select(dbConn, obj))
                        {
                            return(obj.PermitTypeCode + " - " + obj.PermitTypeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("PositionID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EPosition obj = new EPosition();
                        obj.PositionID = int.Parse(fieldValue);
                        if (EPosition.db.select(dbConn, obj))
                        {
                            return(obj.PositionCode + " - " + obj.PositionDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("Q", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("QualificationID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EQualification obj = new EQualification();
                        obj.QualificationID = int.Parse(fieldValue);
                        if (EQualification.db.select(dbConn, obj))
                        {
                            return(obj.QualificationCode + " - " + obj.QualificationDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("R", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("RankID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ERank obj = new ERank();
                        obj.RankID = int.Parse(fieldValue);
                        if (ERank.db.select(dbConn, obj))
                        {
                            return(obj.RankCode + " - " + obj.RankDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("ReminderTypeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EReminderType obj = new EReminderType();
                        obj.ReminderTypeID = int.Parse(fieldValue);
                        if (EReminderType.db.select(dbConn, obj))
                        {
                            return(obj.ReminderTypeCode + " - " + obj.ReminderTypeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("RosterClientID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ERosterClient obj = new ERosterClient();
                        obj.RosterClientID = int.Parse(fieldValue);
                        if (ERosterClient.db.select(dbConn, obj))
                        {
                            return(obj.RosterClientCode + " - " + obj.RosterClientName);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("RosterClientSiteID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ERosterClientSite obj = new ERosterClientSite();
                        obj.RosterClientSiteID = int.Parse(fieldValue);
                        if (ERosterClientSite.db.select(dbConn, obj))
                        {
                            return(obj.RosterClientSiteCode);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("RosterCodeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ERosterCode obj = new ERosterCode();
                        obj.RosterCodeID = int.Parse(fieldValue);
                        if (ERosterCode.db.select(dbConn, obj))
                        {
                            return(obj.RosterCode + " - " + obj.RosterCodeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("S", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("SkillID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ESkill obj = new ESkill();
                        obj.SkillID = int.Parse(fieldValue);
                        if (ESkill.db.select(dbConn, obj))
                        {
                            return(obj.SkillCode + " - " + obj.SkillDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("SkillLevelID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ESkillLevel obj = new ESkillLevel();
                        obj.SkillLevelID = int.Parse(fieldValue);
                        if (ESkillLevel.db.select(dbConn, obj))
                        {
                            return(obj.SkillLevelCode + " - " + obj.SkillLevelDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("StaffTypeID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EStaffType obj = new EStaffType();
                        obj.StaffTypeID = int.Parse(fieldValue);
                        if (EStaffType.db.select(dbConn, obj))
                        {
                            return(obj.StaffTypeCode + " - " + obj.StaffTypeDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("T", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("TaxCompID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ETaxCompany obj = new ETaxCompany();
                        obj.TaxCompID = int.Parse(fieldValue);
                        if (ETaxCompany.db.select(dbConn, obj))
                        {
                            return(obj.TaxCompEmployerName);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("TaxEmpID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ETaxEmp obj = new ETaxEmp();
                        obj.TaxEmpID = int.Parse(fieldValue);
                        if (ETaxEmp.db.select(dbConn, obj))
                        {
                            return(obj.TaxEmpSurname + ", " + obj.TaxEmpOtherName + ", " + GetValueFromID(dbConn, "TaxFormID", obj.TaxFormID.ToString()));
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("TaxFormID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ETaxForm obj = new ETaxForm();
                        obj.TaxFormID = int.Parse(fieldValue);
                        if (ETaxForm.db.select(dbConn, obj))
                        {
                            return("Tax Year :" + obj.TaxFormYear + ", Form: IR56" + obj.TaxFormType);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("TaxPayID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ETaxPayment obj = new ETaxPayment();
                        obj.TaxPayID = int.Parse(fieldValue);
                        if (ETaxPayment.db.select(dbConn, obj))
                        {
                            return(obj.TaxPayCode + " - " + obj.TaxPayDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("TrainingCourseID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ETrainingCourse obj = new ETrainingCourse();
                        obj.TrainingCourseID = int.Parse(fieldValue);
                        if (ETrainingCourse.db.select(dbConn, obj))
                        {
                            return(obj.TrainingCourseCode + " - " + obj.TrainingCourseName);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("TrainingSeminarID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        ETrainingSeminar obj = new ETrainingSeminar();
                        obj.TrainingSeminarID = int.Parse(fieldValue);
                        if (ETrainingSeminar.db.select(dbConn, obj))
                        {
                            return(GetValueFromID(dbConn, "TrainingCourseID", obj.TrainingCourseID.ToString()) + ": " + obj.TrainingSeminarDateFrom.ToString("yyyy-MM-dd") + " to " + obj.TrainingSeminarDateTo.ToString("yyyy-MM-dd"));
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("U", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("UserID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EUser obj = new EUser();
                        obj.UserID = int.Parse(fieldValue);
                        if (EUser.db.select(dbConn, obj))
                        {
                            return(obj.LoginID + " - " + obj.UserName);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                    if (tmpfieldName.Equals("UserGroupID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EUserGroup obj = new EUserGroup();
                        obj.UserGroupID = int.Parse(fieldValue);
                        if (EUserGroup.db.select(dbConn, obj))
                        {
                            return(obj.UserGroupName + " - " + obj.UserGroupDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }
                else if (tmpfieldName.StartsWith("Y", StringComparison.CurrentCultureIgnoreCase))
                {
                    if (tmpfieldName.Equals("YebPlanID", StringComparison.CurrentCultureIgnoreCase))
                    {
                        EYEBPlan obj = new EYEBPlan();
                        obj.YEBPlanID = int.Parse(fieldValue);
                        if (EYEBPlan.db.select(dbConn, obj))
                        {
                            return(obj.YEBPlanCode + " - " + obj.YEBPlanDesc);
                        }
                        else
                        {
                            return(string.Empty);
                        }
                    }
                }

                if (tmpfieldName.EndsWith("ID") && !tmpfieldName.EndsWith("HKID") && !tmpfieldName.EndsWith("LoginID") && !tmpfieldName.EndsWith("CurrencyID") && !tmpfieldName.EndsWith("LeaveAppID") && !tmpfieldName.EndsWith("EmpPaymentID") && !tmpfieldName.EndsWith("PayBatchID") && !tmpfieldName.EndsWith("PayRecID") && !tmpfieldName.EndsWith("RosterTableID") && !tmpfieldName.EndsWith("SynID") && !tmpfieldName.EndsWith("CNDImportBatchID"))
                {
                    if (ESystemParameter.getParameter(dbConn, "DebugMode").Equals("Y"))
                    {
                        throw new Exception("ID field not define:" + fieldName);
                    }
                }
                return(string.Empty);
            }
            catch (Exception ex)
            {
                if (ESystemParameter.getParameter(dbConn, "DebugMode").Equals("Y"))
                {
                    throw ex;
                }
                else
                {
                    return(string.Empty);
                }
            }
        }
Exemplo n.º 7
0
    protected void Save_Click(object sender, EventArgs e)
    {
        EEmpCostCenter c = new EEmpCostCenter();

        Hashtable values = new Hashtable();

        binding.toValues(values);

        PageErrors errors = PageErrors.getErrors(db, Page.Master);

        errors.clear();


        db.validate(errors, values);

        if (!errors.isEmpty())
        {
            return;
        }


        db.parse(values, c);

        if (c.EmpCostCenterEffTo.Ticks > 0 && c.EmpCostCenterEffTo < c.EmpCostCenterEffFr)
        {
            errors.addError("EmpCostCenterEffTo", HROne.Translation.PageErrorMessage.ERROR_DATE_TO_TOO_EARLY);
            return;
        }

        AND andTerms = new AND();

        andTerms.add(new Match("EmpCostCenterID", "<>", c.EmpCostCenterID));
        andTerms.add(new Match("EmpCostCenterEffFr", "<=", c.EmpCostCenterEffFr));
        EEmpCostCenter lastObj = (EEmpCostCenter)AppUtils.GetLastObj(dbConn, db, "EmpCostCenterEffFr", c.EmpID, andTerms);

        if (lastObj != null && (c.EmpCostCenterEffFr <= lastObj.EmpCostCenterEffTo || c.EmpCostCenterEffFr == lastObj.EmpCostCenterEffFr))
        {
            errors.addError("EmpCostCenterEffFr", HROne.Translation.PageErrorMessage.ERROR_DATE_FROM_OVERLAP);
            return;
        }

        DBFilter filter = new DBFilter();

        filter.add(new Match("EmpID", c.EmpID));
        filter.add(new Match("EmpCostCenterID", "<>", c.EmpCostCenterID));
        OR  or = new OR();
        AND and;

        and = new AND();
        and.add(new Match("EmpCostCenterEffFr", "<=", c.EmpCostCenterEffFr));
        and.add(new Match("EmpCostCenterEffTo", ">=", c.EmpCostCenterEffFr));
        or.add(and);
        // do not allow early terms without "TO" date
        if (c.EmpCostCenterEffTo.Ticks.Equals(0))
        {
            or.add(new Match("EmpCostCenterEffFr", ">", c.EmpCostCenterEffFr));
        }
        if (c.EmpCostCenterEffTo > DateTime.MinValue)
        {
            and = new AND();
            and.add(new Match("EmpCostCenterEffFr", "<=", c.EmpCostCenterEffTo));
            and.add(new Match("EmpCostCenterEffTo", ">=", c.EmpCostCenterEffTo));
            or.add(and);

            and = new AND();
            and.add(new Match("EmpCostCenterEffFr", ">=", c.EmpCostCenterEffFr));
            and.add(new Match("EmpCostCenterEffFr", "<=", c.EmpCostCenterEffTo));
            or.add(and);
        }
        filter.add(or);
        if (db.count(dbConn, filter) > 0)
        {
            errors.addError(HROne.Translation.PageErrorMessage.ERROR_TERMS_OVERLAP);
        }

        if (!errors.isEmpty())
        {
            return;
        }

        double    totalPercentage = 0;
        ArrayList selectedList    = new ArrayList();
        ArrayList unselectedList  = new ArrayList();

        foreach (RepeaterItem i in Repeater.Items)
        {
            CheckBox    cb      = (CheckBox)i.FindControl("ItemSelect");
            TextBox     textBox = (TextBox)i.FindControl("EmpCostCenterPercentage");
            ECostCenter o       = new ECostCenter();
            WebFormUtils.GetKeys(ECostCenter.db, o, cb);
            if (ECostCenter.db.select(dbConn, o))
            {
                double percentage = 0;
                if (!string.IsNullOrEmpty(textBox.Text.Trim()))
                {
                    if (double.TryParse(textBox.Text, out percentage))
                    {
                        EEmpCostCenterDetail empCostCenterDetail = new EEmpCostCenterDetail();
                        empCostCenterDetail.CostCenterID            = o.CostCenterID;
                        empCostCenterDetail.EmpCostCenterPercentage = percentage;
                        selectedList.Add(empCostCenterDetail);
                        totalPercentage += percentage;
                    }
                    else
                    {
                        errors.addError(string.Format(HROne.Translation.PageErrorMessage.ERROR_COSTCENTER_PERECNTAGE_NOT_NUMERIC, new string[] { o.CostCenterCode }));
                    }
                }
                else
                {
                    unselectedList.Add(o);
                }
            }
        }

        if (Math.Abs(Math.Round(totalPercentage, 2) - 100) >= 0.01)
        {
            errors.addError(HROne.Translation.PageErrorMessage.ERROR_TOTAL_PERCENTAGE_NOT_100);
        }

        if (!errors.isEmpty())
        {
            return;
        }

        WebUtils.StartFunction(Session, FUNCTION_CODE, c.EmpID);
        if (CurID < 0)
        {
//            Utils.MarkCreate(Session, c);

            db.insert(dbConn, c);
            CurID = c.EmpCostCenterID;
//            url = Utils.BuildURL(-1, CurID);
        }
        else
        {
//            Utils.Mark(Session, c);
            db.update(dbConn, c);
        }

        foreach (EEmpCostCenterDetail o in selectedList)
        {
            DBFilter costCenterDetailFilter = new DBFilter();
            costCenterDetailFilter.add(new Match("EmpCostCenterID", c.EmpCostCenterID));
            costCenterDetailFilter.add(new Match("CostCenterID", o.CostCenterID));
            ArrayList empCostCenterDetailList = EEmpCostCenterDetail.db.select(dbConn, costCenterDetailFilter);
            if (empCostCenterDetailList.Count == 0)
            {
                o.EmpCostCenterID = c.EmpCostCenterID;
                EEmpCostCenterDetail.db.insert(dbConn, o);
            }
            else
            {
                int count = 0;
                foreach (EEmpCostCenterDetail empCostCenterDetail in empCostCenterDetailList)
                {
                    if (count == 0)
                    {
                        empCostCenterDetail.EmpCostCenterPercentage = o.EmpCostCenterPercentage;
                        EEmpCostCenterDetail.db.update(dbConn, empCostCenterDetail);
                    }
                    else
                    {
                        EEmpCostCenterDetail.db.delete(dbConn, empCostCenterDetail);
                    }
                    count++;
                }
            }
        }

        foreach (ECostCenter o in unselectedList)
        {
            DBFilter costCenterDetailFilter = new DBFilter();
            costCenterDetailFilter.add(new Match("EmpCostCenterID", c.EmpCostCenterID));
            costCenterDetailFilter.add(new Match("CostCenterID", o.CostCenterID));
            ArrayList costCenterDetailList = EEmpCostCenterDetail.db.select(dbConn, costCenterDetailFilter);
            if (costCenterDetailList.Count != 0)
            {
                foreach (EEmpCostCenterDetail empCostCenterDetail in costCenterDetailList)
                {
                    EEmpCostCenterDetail.db.delete(dbConn, empCostCenterDetail);
                }
            }
        }


        if (lastObj != null)
        {
            if (lastObj.EmpCostCenterEffTo < lastObj.EmpCostCenterEffFr)
            {
                lastObj.EmpCostCenterEffTo = c.EmpCostCenterEffFr.AddDays(-1);
                db.update(dbConn, lastObj);
            }
        }
        WebUtils.EndFunction(dbConn);

        HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "Emp_CostCenter_View.aspx?EmpCostCenterID=" + CurID + "&EmpID=" + c.EmpID);
    }