Ejemplo n.º 1
0
    private bool SaveEstJobColumnMap(bool isBlank)
    {
        Biz_JobColumnMaps jobColumnMap = new Biz_JobColumnMaps();
        DataTable         dataTable    = jobColumnMap.GetDataTableSchema();

        if (!isBlank)
        {
            dataTable = UltraGridUtility.GetDataTableByCheckValue(UltraWebGrid2
                                                                  , "cBox"
                                                                  , "selchk"
                                                                  , new string[] { "EST_JOB_ID" }
                                                                  , dataTable);

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

        return(jobColumnMap.SaveJobColumnMap(dataTable, COMP_ID, EST_ID, txtColKey.Text));
    }
Ejemplo n.º 2
0
    private void BindEstJob(int comp_id, string est_id, string col_key)
    {
        if (!est_id.Equals(""))
        {
            Biz_JobColumnMaps jobColumnMap = new Biz_JobColumnMaps();
            _dtEstColumnMap = jobColumnMap.GetJobColumnMap(comp_id, est_id, "", col_key).Tables[0];
        }

        Biz_JobInfos jobInfo = new Biz_JobInfos();

        UltraWebGrid2.DataSource = jobInfo.GetJobInfoInEstJobMaps(comp_id, est_id, "N");
        UltraWebGrid2.DataBind();
    }
Ejemplo n.º 3
0
    /// <summary>
    /// 평가 페이지에서 EST_ID에 따라서 컬럼을 동적으로 생성한다.
    /// </summary>
    /// <param name="ultraWebGrid"></param>
    /// <param name="est_id"></param>
    /// <param name="default_index_count"></param>
    /// <param name="dataTable"></param>
    public static void CreateColumns(UltraWebGrid ultraWebGrid
                                     , int comp_id
                                     , string est_id
                                     , int default_index_count
                                     , out DataTable dataTable
                                     , string owner_type
                                     , string[] est_job_ids
                                     , string dept_column_no_use_yn)
    {
        Biz_ColumnInfos columnInfo = new Biz_ColumnInfos();
        Biz_EstInfos    estInfo    = new Biz_EstInfos(comp_id, est_id);

        dataTable = columnInfo.GetColumnInfo(comp_id, est_id).Tables[0];
        DataRow         dataRow      = null;
        UltraGridColumn ultraGridCol = null;
        int             i            = 0;

        owner_type = estInfo.Owner_Type;

        Biz_JobColumnMaps jobColumnMap = new Biz_JobColumnMaps();
        DataTable         dtColumnMap  = null;

        Biz_PositionInfos positionInfo = new Biz_PositionInfos();
        DataTable         dtPosNotUse  = positionInfo.GetPositionInfoByUseYN("N").Tables[0];

        foreach (string est_job_id in est_job_ids)
        {
            if (dtColumnMap == null)
            {
                dtColumnMap = jobColumnMap.GetJobColumnMap(comp_id
                                                           , est_id
                                                           , est_job_id).Tables[0];
            }
            else
            {
                dtColumnMap.Merge(dtColumnMap);
            }
        }

        for (int j = ultraWebGrid.Bands[0].Columns.Count; j > default_index_count; j--)
        {
            ultraWebGrid.Bands[0].Columns.RemoveAt(j - 1);
            ultraWebGrid.DisplayLayout.Bands[0].HeaderLayout.RemoveAt(j - 1);
        }

        for (; i < dataTable.Rows.Count; i++)
        {
            dataRow = dataTable.Rows[i];

            //--------------------- 일반 컬럼일 경우
            if (dataRow["COL_STYLE_ID"].ToString().Equals("NML"))
            {
                ultraGridCol = new UltraGridColumn();
                ultraWebGrid.Bands[0].Columns.Add(ultraGridCol);

                ultraGridCol.Header.Caption      = dataRow["CAPTION"].ToString();
                ultraGridCol.Header.Column.Width = (dataRow["WIDTH"] == DBNull.Value) ? 100 : DataTypeUtility.GetToInt32(dataRow["WIDTH"]);
                ultraGridCol.Header.Column.Key   = dataRow["COL_KEY"].ToString();

                if (DataTypeUtility.GetYNToBoolean(dataRow["DEFAULT_VALUE_YN"].ToString()) == false)
                {
                    ultraGridCol.Header.Column.BaseColumnName = dataRow["COL_KEY"].ToString();
                }

                ultraGridCol.Header.RowLayoutColumnInfo.OriginX = i + default_index_count + -1;
                ultraGridCol.CellStyle.HorizontalAlign          = UltraGridUtility.GetHorizontalAlign(dataRow["HALIGN"]);
                ultraGridCol.DataType = dataRow["DATA_TYPE"].ToString();
                ultraGridCol.Hidden   = !DataTypeUtility.GetYNToBoolean(dataRow["VISIBLE_YN"].ToString());

                if (DataTypeUtility.GetYNToBoolean(dataRow["BACK_COLOR_YN"].ToString()))
                {
                    if (dataRow["BACK_COLOR"] != DBNull.Value ||
                        dataRow["BACK_COLOR"].ToString().Trim().Equals(""))
                    {
                        ultraGridCol.CellStyle.BackColor = Color.FromName(dataRow["BACK_COLOR"].ToString());
                    }
                }

                if (DataTypeUtility.GetYNToBoolean(dataRow["FORMAT_YN"].ToString()))
                {
                    if (dataRow["FORMAT"] != DBNull.Value ||
                        dataRow["FORMAT"].ToString().Trim().Equals(""))
                    {
                        ultraGridCol.Format = dataRow["FORMAT"].ToString();
                    }
                }

                if (DataTypeUtility.GetYNToBoolean(dataRow["FORMULA_YN"].ToString()))
                {
                    if (dataRow["FORMULA_YN"] != DBNull.Value ||
                        dataRow["FORMULA_YN"].ToString().Trim().Equals(""))
                    {
                        ultraGridCol.Format = dataRow["FORMULA"].ToString();
                    }
                }

                if (DataTypeUtility.GetYNToBoolean(dataRow["DEFAULT_VALUE_YN"].ToString()))
                {
                    if (dataRow["DEFAULT_VALUE_YN"] != DBNull.Value ||
                        dataRow["DEFAULT_VALUE_YN"].ToString().Trim().Equals(""))
                    {
                        ultraGridCol.NullText = WebUtility.GetHtmlEncodeChar(dataRow["DEFAULT_VALUE"].ToString());
                    }
                }

                // 평가 주체가 부서인경우 (사원컬럼이면 보이기를 숨김으로 한다)
                if (owner_type.Equals("D") && dept_column_no_use_yn.Equals("N"))
                {
                    if (dataRow["COL_EMP_VISIBLE_YN"].ToString().Equals("Y"))
                    {
                        ultraGridCol.Hidden = true;
                    }
                }
                else if (owner_type.Equals("P") && dept_column_no_use_yn.Equals("Y"))
                {
                    if (dataRow["COL_EMP_VISIBLE_YN"].ToString().Equals("Y"))
                    {
                        ultraGridCol.Hidden = true;
                    }
                }

                VisiblePosColumn(dtPosNotUse, ultraGridCol, dataRow["COL_KEY"].ToString());
            }
            //--------------------- 존재하는 컬럼일 경우
            else if (dataRow["COL_STYLE_ID"].ToString().Equals("BLK"))
            {
                try
                {
                    ultraWebGrid.Bands[0].Columns.FromKey(dataRow["COL_KEY"].ToString()).Hidden = !DataTypeUtility.GetYNToBoolean(dataRow["VISIBLE_YN"].ToString());
                }
                catch
                {
                }
            }
            //--------------------- 업무관련 컬럼
            else if (dataRow["COL_STYLE_ID"].ToString().Equals("BIZ"))
            {
                ultraGridCol = new UltraGridColumn();
                ultraWebGrid.Bands[0].Columns.Add(ultraGridCol);

                ultraGridCol.Header.Caption      = dataRow["CAPTION"].ToString();
                ultraGridCol.Header.Column.Width = (dataRow["WIDTH"] == DBNull.Value) ? 100 : DataTypeUtility.GetToInt32(dataRow["WIDTH"]);
                ultraGridCol.Header.Column.Key   = dataRow["COL_KEY"].ToString();

                if (DataTypeUtility.GetYNToBoolean(dataRow["DEFAULT_VALUE_YN"].ToString()) == false)
                {
                    ultraGridCol.Header.Column.BaseColumnName = dataRow["COL_KEY"].ToString();
                }

                ultraGridCol.Header.RowLayoutColumnInfo.OriginX = i + default_index_count + -1;
                ultraGridCol.CellStyle.HorizontalAlign          = UltraGridUtility.GetHorizontalAlign(dataRow["HALIGN"]);
                ultraGridCol.DataType = dataRow["DATA_TYPE"].ToString();
                // 미리 숨김을 함
                ultraGridCol.Hidden = true;

                if (DataTypeUtility.GetYNToBoolean(dataRow["BACK_COLOR_YN"].ToString()))
                {
                    if (dataRow["BACK_COLOR"] != DBNull.Value ||
                        dataRow["BACK_COLOR"].ToString().Trim().Equals(""))
                    {
                        ultraGridCol.CellStyle.BackColor = Color.FromName(dataRow["BACK_COLOR"].ToString());
                    }
                }

                if (DataTypeUtility.GetYNToBoolean(dataRow["FORMAT_YN"].ToString()))
                {
                    if (dataRow["FORMAT"] != DBNull.Value ||
                        dataRow["FORMAT"].ToString().Trim().Equals(""))
                    {
                        ultraGridCol.Format = dataRow["FORMAT"].ToString();
                    }
                }

                if (DataTypeUtility.GetYNToBoolean(dataRow["FORMULA_YN"].ToString()))
                {
                    if (dataRow["FORMULA_YN"] != DBNull.Value ||
                        dataRow["FORMULA_YN"].ToString().Trim().Equals(""))
                    {
                        ultraGridCol.Format = dataRow["FORMULA_YN"].ToString();
                    }
                }

                if (DataTypeUtility.GetYNToBoolean(dataRow["DEFAULT_VALUE_YN"].ToString()))
                {
                    if (dataRow["DEFAULT_VALUE_YN"] != DBNull.Value ||
                        dataRow["DEFAULT_VALUE_YN"].ToString().Trim().Equals(""))
                    {
                        ultraGridCol.NullText = WebUtility.GetHtmlEncodeChar(dataRow["DEFAULT_VALUE"].ToString());
                    }
                }

                // COL_KEY 와 EST_JOB_ID 간에 매핑에 따라 보여주기 여부 처리
                foreach (DataRow drColMap in dtColumnMap.Rows)
                {
                    if (ultraGridCol.Hidden == true)
                    {
                        if (drColMap["COL_KEY"].ToString() == dataRow["COL_KEY"].ToString())
                        {
                            ultraGridCol.Hidden = false;
                            break;
                        }
                    }
                }

                if (ultraGridCol.Hidden == false)
                {
                    ultraGridCol.Hidden = !DataTypeUtility.GetYNToBoolean(dataRow["VISIBLE_YN"].ToString());
                }

                // 평가 주체가 부서인경우 (사원컬럼이면 보이기를 숨김으로 한다)
                if (owner_type.Equals("D") && dept_column_no_use_yn.Equals("N"))
                {
                    if (dataRow["COL_EMP_VISIBLE_YN"].ToString().Equals("Y"))
                    {
                        ultraGridCol.Hidden = true;
                    }
                }
                else if (owner_type.Equals("P") && dept_column_no_use_yn.Equals("Y"))
                {
                    if (dataRow["COL_EMP_VISIBLE_YN"].ToString().Equals("Y"))
                    {
                        ultraGridCol.Hidden = true;
                    }
                }

                VisiblePosColumn(dtPosNotUse, ultraGridCol, dataRow["COL_KEY"].ToString());
            }
        }
    }