Beispiel #1
0
    protected void lbnSavePOS_Click(object sender, EventArgs e)
    {
        Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();
        Biz_DeptInfos     deptInfo     = new Biz_DeptInfos();
        DataTable         dataTable    = deptPosScale.GetDataTableSchema();
        DataTable         dtDept       = deptInfo.GetDataTableSchema();
        DataRow           drRow        = null;

        string[] dept_values = hdfDeptID.Value.Split(',');

        dataTable = UltraGridUtility.GetDataTableByAllValue(UltraWebGrid3
                                                            , new string[] { "SEQ", "POS_ID", "POS_VALUE", "SCALE_ID" }
                                                            , dataTable);

        foreach (string dept_value in dept_values)
        {
            drRow = dtDept.NewRow();
            drRow["DEPT_REF_ID"] = DataTypeUtility.GetToInt32(dept_value);
            dtDept.Rows.Add(drRow);
        }

        if (dataTable.Rows.Count == 0)
        {
            ltrScript.Text = JSHelper.GetAlertScript("적용하려는 부서별 평가방법이 없습니다.");
            return;
        }

        foreach (DataRow dataRow in dataTable.Rows)
        {
            dataRow["COMP_ID"]        = COMP_ID;
            dataRow["EST_ID"]         = EST_ID;
            dataRow["ESTTERM_REF_ID"] = ESTTERM_REF_ID;
            dataRow["DATE"]           = DateTime.Now;
            dataRow["USER"]           = EMP_REF_ID;
        }

        bool isOK = deptPosScale.SaveDeptPosScaleAll(dtDept, dataTable);

        if (isOK)
        {
            ltrScript.Text = JSHelper.GetAlertScript("선택부서의 평가방법을 일괄 적용하였습니다.");

            GridBinding2(COMP_ID, ESTTERM_REF_ID, EST_ID);
            UltraWebGrid3.Clear();
            hdfDeptID.Value = "";
        }
        else
        {
            ltrScript.Text = JSHelper.GetAlertScript("정상적으로 처리 않았습니다.");
        }
    }
Beispiel #2
0
    private void GridBinding2(int comp_id, int estterm_ref_id, string est_id)
    {
        Biz_DeptEstDetails deptEstDetail = new Biz_DeptEstDetails();

        _dtEstScale = deptEstDetail.GetDeptEstDetail(comp_id, estterm_ref_id, 0, est_id).Tables[0];

        Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();

        _dtPosScale = deptPosScale.GetDeptPosScale(comp_id, estterm_ref_id, 0, est_id).Tables[0];

        UltraWebGrid2.Clear();
        UltraWebGrid2.DataSource = BizUtility.GetDeptTree("     ");
        UltraWebGrid2.DataBind();
    }
Beispiel #3
0
    private void GridBinding3(int comp_id, int estterm_ref_id, int dept_ref_id, string est_id)
    {
        if (dept_ref_id == 0)
        {
            return;
        }

        Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();

        _dtPosScale = deptPosScale.GetDeptPosScale(comp_id
                                                   , estterm_ref_id
                                                   , dept_ref_id
                                                   , est_id).Tables[0];

        UltraWebGrid3.Clear();
        UltraWebGrid3.DataSource = _dtPosScale;
        UltraWebGrid3.DataBind();
    }
Beispiel #4
0
    protected void ibnInit2_Click(object sender, ImageClickEventArgs e)
    {
        Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();
        Biz_DeptInfos     deptInfo     = new Biz_DeptInfos();
        DataTable         dataTable    = deptPosScale.GetDataTableSchema();
        DataTable         dtDept       = deptInfo.GetDataTableSchema();

        dtDept.Columns.Add("COMP_ID", typeof(int));
        dtDept.Columns.Add("EST_ID", typeof(string));
        dtDept.Columns.Add("ESTTERM_REF_ID", typeof(int));

        dtDept = UltraGridUtility.GetDataTableByCheckValue(UltraWebGrid2
                                                           , "cBox"
                                                           , "selchk"
                                                           , new string[] { "DEPT_REF_ID" }
                                                           , dtDept);

        if (dtDept.Rows.Count == 0)
        {
            ltrScript.Text = JSHelper.GetAlertScript("초기화하려는 부서를 선택하세요.");
            return;
        }

        foreach (DataRow dataRow in dtDept.Rows)
        {
            dataRow["COMP_ID"]        = COMP_ID;
            dataRow["EST_ID"]         = EST_ID;
            dataRow["ESTTERM_REF_ID"] = ESTTERM_REF_ID;
        }

        bool isOK = deptPosScale.InitDept(dtDept);

        if (isOK)
        {
            ltrScript.Text = JSHelper.GetAlertScript("정상적으로 선택부서를 초기화 하였습니다.");

            GridBinding2(COMP_ID, ESTTERM_REF_ID, EST_ID);
            UltraWebGrid3.Clear();
        }
        else
        {
            ltrScript.Text = JSHelper.GetAlertScript("정상적으로 처리되지 않았습니다.");
        }
    }
Beispiel #5
0
    protected void ibnSavePosAll_Click(object sender, ImageClickEventArgs e)
    {
        Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();
        Biz_DeptInfos     deptInfo     = new Biz_DeptInfos();
        DataTable         dataTable    = deptPosScale.GetDataTableSchema();
        DataTable         dtDept       = deptInfo.GetDataTableSchema();

        dataTable = UltraGridUtility.GetDataTableByAllValue(UltraWebGrid3
                                                            , new string[] { "SEQ", "POS_ID", "POS_VALUE", "SCALE_ID" }
                                                            , dataTable);

        dtDept = UltraGridUtility.GetDataTableByAllValue(UltraWebGrid2
                                                         , new string[] { "DEPT_REF_ID" }
                                                         , dtDept);

        if (dataTable.Rows.Count == 0)
        {
            ltrScript.Text = JSHelper.GetAlertScript("적용하려는 부서별 평가방법이 없습니다.");
            return;
        }

        foreach (DataRow dataRow in dataTable.Rows)
        {
            dataRow["COMP_ID"]        = COMP_ID;
            dataRow["EST_ID"]         = EST_ID;
            dataRow["ESTTERM_REF_ID"] = ESTTERM_REF_ID;
            dataRow["DATE"]           = DateTime.Now;
            dataRow["USER"]           = EMP_REF_ID;
        }

        bool isOK = deptPosScale.SaveDeptPosScaleAll(dtDept, dataTable);

        if (isOK)
        {
            ltrScript.Text = JSHelper.GetAlertScript("모든 부서의 평가방법을 일괄 적용하였습니다.");

            GridBinding2(COMP_ID, ESTTERM_REF_ID, EST_ID);
            UltraWebGrid3.Clear();
        }
        else
        {
            ltrScript.Text = JSHelper.GetAlertScript("정상적으로 처리 않았습니다.");
        }
    }
Beispiel #6
0
    protected void ibnRemove_Click(object sender, ImageClickEventArgs e)
    {
        Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();
        DataTable         dataTable    = deptPosScale.GetDataTableSchema();

        dataTable = UltraGridUtility.GetDataTableByCheckValue(UltraWebGrid3
                                                              , "cBox"
                                                              , "selchk"
                                                              , new string[] { "DEPT_REF_ID", "SEQ" }
                                                              , dataTable);

        if (dataTable.Rows.Count == 0)
        {
            ltrScript.Text = JSHelper.GetAlertScript("삭제하려는 항목을 선택하세요.");
            return;
        }

        foreach (DataRow dataRow in dataTable.Rows)
        {
            dataRow["COMP_ID"]        = COMP_ID;
            dataRow["EST_ID"]         = EST_ID;
            dataRow["ESTTERM_REF_ID"] = ESTTERM_REF_ID;
        }

        bool isOK = deptPosScale.RemoveDeptPosScale(dataTable);

        if (isOK)
        {
            GridBinding3(COMP_ID, ESTTERM_REF_ID, DataTypeUtility.GetToInt32(hdfDeptRefID.Value), EST_ID);
            hdfEstPosSeq.Value = "";
            ltrScript.Text     = JSHelper.GetAlertScript("정상적으로 처리되었습니다.");
        }
        else
        {
            ltrScript.Text = JSHelper.GetAlertScript("정상적으로 처리되지 않았습니다.");
        }
    }
Beispiel #7
0
    protected void ibnSave3_Click(object sender, ImageClickEventArgs e)
    {
        if (CheckInsertPosScale())
        {
            Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();

            int    dept_ref_id = DataTypeUtility.GetToInt32(hdfDeptRefID.Value);
            string pos_id      = WebUtility.GetByValueDropDownList(ddlPositionType);
            string pos_value   = WebUtility.GetByValueDropDownList(ddlPositionValue);
            string scale_id    = WebUtility.GetByValueDropDownList(ddlScaleID);
            bool   isOK        = false;

            try
            {
                bool isDuplicate = deptPosScale.IsExist(COMP_ID
                                                        , ESTTERM_REF_ID
                                                        , dept_ref_id
                                                        , EST_ID
                                                        , 0
                                                        , pos_id
                                                        , pos_value);

                if (isDuplicate)
                {
                    if (hdfEstPosSeq.Value.Equals(""))
                    {
                        ltrScript.Text = JSHelper.GetAlertScript("변경하실 직급 구분을 선택하세요.");
                        return;
                    }

                    isOK = deptPosScale.ModifyDeptPosScale(COMP_ID
                                                           , ESTTERM_REF_ID
                                                           , dept_ref_id
                                                           , EST_ID
                                                           , DataTypeUtility.GetToInt32(hdfEstPosSeq.Value)
                                                           , pos_id
                                                           , pos_value
                                                           , scale_id
                                                           , DateTime.Now
                                                           , EMP_REF_ID);
                }
                else
                {
                    isOK = deptPosScale.AddDeptPosScale(COMP_ID
                                                        , ESTTERM_REF_ID
                                                        , dept_ref_id
                                                        , EST_ID
                                                        , deptPosScale.NewIdx(COMP_ID, ESTTERM_REF_ID, dept_ref_id, EST_ID)
                                                        , pos_id
                                                        , pos_value
                                                        , scale_id
                                                        , DateTime.Now
                                                        , EMP_REF_ID);
                }

                if (isOK)
                {
                    GridBinding3(COMP_ID, ESTTERM_REF_ID, dept_ref_id, EST_ID);
                    hdfEstPosSeq.Value = "";
                }
                else
                {
                    ltrScript.Text = JSHelper.GetAlertScript("저장 중 오류가 발생하였습니다.");
                }
            }
            catch (Exception ex)
            {
                ltrScript.Text = JSHelper.GetAlertScript("저장 중 오류가 발생하였습니다.");
            }
        }
    }
Beispiel #8
0
    private string GetScaleName(string est_id)
    {
        //if(est_id.Equals("3B"))
        //    System.Diagnostics.Debugger.Break();

        Biz_EstInfos estInfo = new Biz_EstInfos(COMP_ID, est_id);

        string scale_id   = string.Empty;
        string scale_name = "";

        if (estInfo.Scale_Type.Equals("DPT"))
        {
            DataRow[] rows = DS_DETAIL.Tables[0].Select(string.Format(" EST_ID = '{0}' ", est_id));

            if (rows.Length > 0)
            {
                scale_id = rows[0]["SCALE_ID"].ToString();

                if (scale_id.Equals("ABS"))
                {
                    scale_name = "<b>절대평가</b>";
                }
                else if (scale_id.Equals("REL"))
                {
                    string            temp = string.Empty;
                    Biz_RelGroupInfos biz  = new Biz_RelGroupInfos();
                    DataSet           ds   = biz.GetRelGroupInfo(COMP_ID, "", est_id, ESTTERM_REF_ID);

                    StringBuilder sbTemp = new StringBuilder();
                    int           cnt    = 0;

                    foreach (DataRow row in ds.Tables[0].Rows)
                    {
                        cnt++;
                        temp = string.Format("<a href='#' onclick=ViewEmpList('{0}','{1}','{2}','{3}')>{4}</a>"
                                             , COMP_ID
                                             , est_id
                                             , ESTTERM_REF_ID
                                             , row["REL_GRP_ID"].ToString()
                                             , row["REL_GRP_NAME"].ToString());

                        sbTemp.Append("<br>&nbsp;" + cnt.ToString() + ". " + temp);
                    }

                    temp = (temp.Length > 0) ? temp.Remove(temp.Length - 1, 1) : string.Empty;

                    scale_name = "<b>상대평가</b>" + sbTemp.ToString();
                }
            }
        }
        else if (estInfo.Scale_Type.Equals("POS"))
        {
            Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();
            DataSet           ds           = deptPosScale.GetDeptPosScale(COMP_ID
                                                                          , ESTTERM_REF_ID
                                                                          , DataTypeUtility.GetToInt32(TreeView1.SelectedNode.Value)
                                                                          , est_id);

            if (ds.Tables[0].Rows.Count > 0)
            {
                scale_name = "";
                bool isFirst = true;

                foreach (DataRow row in ds.Tables[0].Rows)
                {
                    string no = "&nbsp;" + row["SEQ"].ToString() + ".";

                    string pos_id = GetPosName(row["POS_ID"].ToString(), row["POS_VALUE"].ToString());
                    string temp   = "<b>" + row["SCALE_NAME"].ToString().Replace("평가", "") + "</b>";

                    if (isFirst)
                    {
                        scale_name += no + pos_id + temp;
                        isFirst     = false;
                    }
                    else
                    {
                        scale_name += "<br>" + no + pos_id + temp;
                    }
                }
            }
            else
            {
                scale_name = "&nbsp;-";
            }
        }

        return(scale_name);
    }
Beispiel #9
0
    /// <summary>
    /// 그리드 바인딩 메소드
    /// </summary>
    /// <param name="comp_id"></param>
    /// <param name="est_id"></param>
    /// <param name="estterm_ref_id"></param>
    /// <param name="estterm_sub_id"></param>
    /// <param name="estterm_step_id"></param>
    private void GridBidingData(int comp_id
                                , string est_id
                                , int estterm_ref_id
                                , int estterm_sub_id
                                , int estterm_step_id)
    {
        Biz_EstInfos estInfo = new Biz_EstInfos(comp_id, est_id);

        if (!estInfo.IsExists(comp_id, est_id))
        {
            return;
        }

        // 만약 주기가 년간일 경우
        if (YEAR_YN.Equals("Y"))
        {
            ESTTERM_SUB_ID = BizUtility.GetEstTermSubIDByYearYN(COMP_ID);
        }

        // 만약 차수가 합산일 경우
        if (MERGE_YN.Equals("Y"))
        {
            ESTTERM_STEP_ID = BizUtility.GetEstTermStepIDByMergeYN(COMP_ID);
        }

        if (estInfo.Owner_Type != null && estInfo.Owner_Type.Equals("D"))
        {
            OwnerTypeMode = OwnerType.Dept;
        }
        else
        {
            OwnerTypeMode = OwnerType.Emp_User;
        }
        //if (estInfo.Owner_Type.Equals("D"))
        //    OwnerTypeMode = OwnerType.Dept;
        //else
        //    OwnerTypeMode = OwnerType.Emp_User;

        ScaleTypeMode  = estInfo.Scale_Type;
        WeightTypeMode = estInfo.Weight_Type;

        if (estInfo.Bias_YN.Equals("Y"))
        {
            BiasYN = YesNo.Yes;
        }
        else
        {
            BiasYN = YesNo.No;
        }

        if (estInfo.Grade_Confirm_YN.Equals("Y"))
        {
            GradeConfirmYN = YesNo.Yes;
        }
        else
        {
            GradeConfirmYN = YesNo.No;
        }

        Biz_Datas est_data = new Biz_Datas();

        int est_emp_id  = 0;;
        int tgt_dept_id = 0;
        int tgt_emp_id  = 0;

        if (OwnerTypeMode == OwnerType.Dept && DEPT_COLUMN_NO_USE_YN.Equals("Y"))
        {
            OwnerTypeMode = OwnerType.Emp_User;
        }
        else if (OwnerTypeMode == OwnerType.Emp_User && DEPT_COLUMN_NO_USE_YN.Equals("Y"))
        {
            OwnerTypeMode = OwnerType.Dept;
        }

        if (OwnerTypeMode == OwnerType.Dept)
        {
            if (EST_TGT_TYPE.Equals("EST"))
            {
                est_emp_id  = 0;
                tgt_dept_id = TGT_DEPT_ID;
                tgt_emp_id  = -1;
            }
            else if (EST_TGT_TYPE.Equals("TGT"))
            {
                est_emp_id  = 0;
                tgt_dept_id = TGT_DEPT_ID;
                tgt_emp_id  = -1;
            }
        }
        else if (OwnerTypeMode == OwnerType.Emp_User)
        {
            if (EST_TGT_TYPE.Equals("EST"))
            {
                est_emp_id  = 0;
                tgt_dept_id = 0;
                tgt_emp_id  = TGT_EMP_ID;
            }
            else if (EST_TGT_TYPE.Equals("TGT"))
            {
                est_emp_id  = 0;
                tgt_dept_id = 0;
                tgt_emp_id  = TGT_EMP_ID;
            }
        }

        DT_EST_DATA = est_data.GetEstData(comp_id
                                          , est_id
                                          , ESTTERM_REF_ID
                                          , ESTTERM_SUB_ID
                                          , ESTTERM_STEP_ID
                                          , 0
                                          , est_emp_id
                                          , tgt_dept_id
                                          , tgt_emp_id
                                          , YEAR_YN
                                          , MERGE_YN
                                          , OwnerTypeMode).Tables[0];

        // 조회된 데이터가 존재할 경우
        if (DT_EST_DATA != null)
        {
            // 만약 가중치 보이기 Y 일때
            if (COL_WEIGHT_VISIBLE_YN.Equals("Y"))
            {
                //2012.01.16 박효동 : 하위평가를 가져오니 문제가 있어서 수정
                // - MBO의 하위평가를 가져오도록 평가컬럼설정이 되있는데 현재는 현재평가의 하위차수를 가져오니 안나오더라
                // - 해서 평가컬럼설정에 등록되어있는 POINT_평가아이디에 해당하는 평가아이디를 가져오도록 수정 휴~~
                // 하위평가 정보를 가지고 온다.
                //DataTable _dtEstID  = estInfo.GetEstInfoByUpEstID(comp_id, est_id).Tables[0];

                DataTable _dtEstID = estInfo.GetEstInfoByUpEstID(comp_id, est_id).Tables[0];
                _dtEstID.Rows.Clear();
                Biz_ColumnInfos colInfo = new Biz_ColumnInfos();
                DataTable       dtEstID = colInfo.GetColumnInfo(COMP_ID, EST_ID).Tables[0];
                foreach (DataRow dr in dtEstID.Rows)
                {
                    string colnames = dr[6].ToString();
                    if (colnames.Length > 5)
                    {
                        if (colnames.Substring(0, 6) == "POINT_" && colnames.Length == 8)
                        {
                            DataRow insertDR = _dtEstID.NewRow();
                            insertDR["EST_ID"] = colnames.Remove(0, 6);
                            _dtEstID.Rows.Add(insertDR);
                            insertDR = null;
                        }
                    }
                }

                foreach (DataRow dataRow in _dtEstID.Rows)
                {
                    DT_EST_DATA.Columns.Add(string.Format("WEIGHT_{0}", dataRow["EST_ID"]), typeof(double));

                    // 평가별 점수 보이기 여부에 따라
                    if (COL_POINT_VISIBLE_YN.Equals("Y"))
                    {
                        DT_EST_DATA.Columns.Add(string.Format("POINT_{0}", dataRow["EST_ID"]), typeof(double));

                        DataTable dtEstData = est_data.GetData(comp_id
                                                               , dataRow["EST_ID"].ToString()
                                                               , ESTTERM_REF_ID
                                                               , ESTTERM_SUB_ID
                                                               , ESTTERM_STEP_ID
                                                               , 0
                                                               , est_emp_id
                                                               , tgt_dept_id
                                                               , tgt_emp_id
                                                               , YEAR_YN
                                                               , MERGE_YN
                                                               , OwnerTypeMode).Tables[0];

                        foreach (DataRow drEstData in dtEstData.Rows)
                        {
                            DataRow[] drArrEstData = DT_EST_DATA.Select(string.Format(@"ESTTERM_REF_ID  = {0}
                                                                                    AND ESTTERM_SUB_ID  = {1}
                                                                                    AND ESTTERM_STEP_ID = {2}
                                                                                    AND TGT_DEPT_ID     = {3}
                                                                                    AND TGT_EMP_ID      = {4}"
                                                                                      , drEstData["ESTTERM_REF_ID"]
                                                                                      , drEstData["ESTTERM_SUB_ID"]
                                                                                      , drEstData["ESTTERM_STEP_ID"]
                                                                                      , drEstData["TGT_DEPT_ID"]
                                                                                      , drEstData["TGT_EMP_ID"]));

                            if (drArrEstData.Length > 0)
                            {
                                drArrEstData[0][string.Format("POINT_{0}", dataRow["EST_ID"])] = drEstData["POINT"];
                            }
                        }
                    }
                }
            }

            // 등급 컬럼 보이기가 Y 일경우 (이건 DT_EST_DATA 과 관계 없음)
            if (COL_GRADE_VISIBLE_YN.Equals("Y") ||
                COL_GRADE_TO_POINT_VISIBLE_YN.Equals("Y"))
            {
                Biz_DeptEstDetails deptEstDetail = new Biz_DeptEstDetails();
                DT_DEPT_SCALE = deptEstDetail.GetDeptEstDetail(comp_id, estterm_ref_id, 0, est_id).Tables[0];

                Biz_DeptPosScales deptPosScale = new Biz_DeptPosScales();
                DT_POS_SCALE = deptPosScale.GetDeptPosScale(comp_id, estterm_ref_id, 0, est_id).Tables[0];

                Biz_Scopes scope = new Biz_Scopes();
                DT_SCOPE = scope.GetScope(comp_id, est_id).Tables[0];

                DT_EST_DATA.Columns.Add("RANK", typeof(double));
                DT_EST_DATA.Columns.Add("SCALE_ID", typeof(string));
                DT_EST_DATA.Columns.Add("SCALE_NAME", typeof(string));
                DT_EST_DATA.Columns.Add("GRADE_CALC_ID", typeof(string));
            }

            if (COL_ESTTERM_SUB_AGG_VISIBLE_YN.Equals("Y"))
            {
            }

            if (COL_ESTTERM_STEP_AGG_VISIBLE_YN.Equals("Y"))
            {
            }

            if (COL_CTRL_POINT_VISIBLE_YN.Equals("Y") ||
                COL_CTRL_GRADE_VISIBLE_YN.Equals("Y"))
            {
                Biz_CtrlEstMaps ctrlEstDeptMap = new Biz_CtrlEstMaps();
                DT_CTRL_INFO         = ctrlEstDeptMap.GetCtrlInfoByEstID(COMP_ID, EST_ID).Tables[0];
                DT_CTRL_EST_DEPT_MAP = ctrlEstDeptMap.GetCtrlEstDeptByEstID(COMP_ID, EST_ID).Tables[0];

                if (COL_CTRL_POINT_VISIBLE_YN.Equals("Y"))
                {
                    Biz_CtrlPointDatas ctrlPointData = new Biz_CtrlPointDatas();
                    DT_CTRL_POINT_DATA = ctrlPointData.GetCtrlPointData(comp_id
                                                                        , est_id
                                                                        , estterm_ref_id
                                                                        , estterm_sub_id
                                                                        , estterm_step_id
                                                                        , 0
                                                                        , 0
                                                                        , 0
                                                                        , 0).Tables[0];
                }

                if (COL_CTRL_GRADE_VISIBLE_YN.Equals("Y"))
                {
                    Biz_CtrlGradeDatas ctrlGradeData = new Biz_CtrlGradeDatas();
                    DT_CTRL_GRADE_DATA = ctrlGradeData.GetCtrlGradeData(comp_id
                                                                        , est_id
                                                                        , estterm_ref_id
                                                                        , estterm_sub_id
                                                                        , estterm_step_id
                                                                        , 0
                                                                        , 0
                                                                        , 0
                                                                        , 0).Tables[0];
                }
            }

            UltraWebGrid1.Clear();
            UltraWebGrid1.DataSource = DT_EST_DATA;
            UltraWebGrid1.DataBind();
        }
    }
Beispiel #10
0
    protected void ibnSave_Click(object sender, ImageClickEventArgs e)
    {
        if (ESTTERM_REF_ID_FROM == ESTTERM_REF_ID_TO &&
            ESTTERM_SUB_ID_FROM == ESTTERM_SUB_ID_TO)
        {
            ltrScript.Text = JSHelper.GetAlertScript("기준대상과 피참조대상의 기간이 같습니다. 다시 설정하세요.");
            return;
        }

        bool isOK = false;

        if (TYPE.Equals("1"))
        {
            if (ESTTERM_REF_ID_FROM == ESTTERM_REF_ID_TO)
            {
                ltrScript.Text = JSHelper.GetAlertScript("기준대상과 피참조대상의 기간이 같습니다. 다시 설정하세요.");
                return;
            }

            Biz_DeptEstDetails deptEstDetail = new Biz_DeptEstDetails();
            Biz_DeptPosScales  deptPosScale  = new Biz_DeptPosScales();

            isOK = deptEstDetail.CopyDataFromTo(COMP_ID
                                                , ESTTERM_REF_ID_FROM
                                                , ESTTERM_REF_ID_TO
                                                , DateTime.Now
                                                , EMP_REF_ID);

            if (isOK)
            {
                deptPosScale.CopyDataFromTo(COMP_ID
                                            , ESTTERM_REF_ID_FROM
                                            , ESTTERM_REF_ID_TO
                                            , DateTime.Now
                                            , EMP_REF_ID);
            }
        }
        else if (TYPE.Equals("2"))
        {
            if (ESTTERM_REF_ID_FROM == ESTTERM_REF_ID_TO)
            {
                ltrScript.Text = JSHelper.GetAlertScript("기준대상과 피참조대상의 기간이 같습니다. 다시 설정하세요.");
                return;
            }

            Biz_DeptPosDetails deptPosScale = new Biz_DeptPosDetails();
            isOK = deptPosScale.CopyDataFromTo(COMP_ID
                                               , ESTTERM_REF_ID_FROM
                                               , ESTTERM_REF_ID_TO
                                               , DateTime.Now
                                               , EMP_REF_ID);
        }
        else if (TYPE.Equals("3"))
        {
            if (ESTTERM_REF_ID_FROM == ESTTERM_REF_ID_TO)
            {
                ltrScript.Text = JSHelper.GetAlertScript("기준대상과 피참조대상의 기간이 같습니다. 다시 설정하세요.");
                return;
            }

            Biz_RelGroupInfos relGroupInfo = new Biz_RelGroupInfos();
            isOK = relGroupInfo.CopyDataFromTo(COMP_ID
                                               , ESTTERM_REF_ID_FROM
                                               , ESTTERM_REF_ID_TO
                                               , DateTime.Now
                                               , EMP_REF_ID);
        }
        else if (TYPE.Equals("4"))
        {
            Biz_EmpEstTargetMaps empEstTgtMap = new Biz_EmpEstTargetMaps();
            isOK = empEstTgtMap.CopyDataFromTo(COMP_ID
                                               , ""
                                               , ESTTERM_REF_ID_FROM
                                               , ESTTERM_SUB_ID_FROM
                                               , ESTTERM_STEP_ID_FROM
                                               , ESTTERM_REF_ID_TO
                                               , ESTTERM_SUB_ID_TO
                                               , ESTTERM_STEP_ID_TO
                                               , DateTime.Now
                                               , EMP_REF_ID);
        }
        else if (TYPE.Equals("5"))
        {
            if (ESTTERM_REF_ID_FROM == ESTTERM_REF_ID_TO &&
                ESTTERM_SUB_ID_FROM == ESTTERM_SUB_ID_TO)
            {
                ltrScript.Text = JSHelper.GetAlertScript("기준대상과 피참조대상의 기간이 같습니다. 다시 설정하세요.");
                return;
            }

            Biz_QuestionDeptEmpMaps questionDeptEmp = new Biz_QuestionDeptEmpMaps();
            isOK = questionDeptEmp.CopyEstDataFromTo(COMP_ID
                                                     , ESTTERM_REF_ID_FROM
                                                     , ESTTERM_SUB_ID_FROM
                                                     , ESTTERM_REF_ID_TO
                                                     , ESTTERM_SUB_ID_TO
                                                     , DateTime.Now
                                                     , EMP_REF_ID);
        }

        if (isOK)
        {
            ltrScript.Text = JSHelper.GetAlertScript("정상적으로 데이터가 참조되었습니다.");
        }
        else
        {
            ltrScript.Text = JSHelper.GetAlertScript("참조 중 오류가 발생하였습니다.");
        }
    }