Esempio n. 1
0
        /// <summary>
        /// Заполнить таблицу КП
        /// </summary>
        private void FillKPGrid()
        {
            try
            {
                DataTable tblObj = Tables.GetObjTable();
                tblObj.Rows.Add(DBNull.Value, AppPhrases.UndefinedItem);
                DataGridViewComboBoxColumn colObjNum = (DataGridViewComboBoxColumn)gvKPSel.Columns["colObjNum"];
                colObjNum.DataSource = tblObj;
                colObjNum.DisplayMember = "Name";
                colObjNum.ValueMember = "ObjNum";

                DataTable tblKP = Tables.GetKPTable();
                DataTable tblKPType = Tables.GetKPTypeTable();
                foreach (DataRow rowKP in tblKP.Rows)
                {
                    KPParams kpParams = new KPParams();
                    kpParams.KPNum = (int)rowKP["KPNum"];
                    kpParams.KPName = (string)rowKP["Name"];
                    kpParams.ObjNum = DBNull.Value;

                    tblKPType.DefaultView.RowFilter = "KPTypeID = " + rowKP["KPTypeID"];
                    object dllFileName = tblKPType.DefaultView[0]["DllFileName"];
                    kpParams.DllFileName = dllFileName == null || dllFileName == DBNull.Value ? "" : (string)dllFileName;

                    if (kpParams.DllFileName == "")
                    {
                        kpParams.Enabled = false;
                        kpParams.Color = Color.Gray;
                        kpParams.KPView = null;
                        kpParams.Selected = false;
                        kpParams.DllState = "";
                    }
                    else
                    {
                        if (kpViewList.ContainsKey(kpParams.DllFileName))
                        {
                            kpParams.KPView = kpViewList[kpParams.DllFileName];
                            if (kpParams.KPView == null)
                            {
                                kpParams.Enabled = false;
                                kpParams.Color = Color.Red;
                                kpParams.Selected = false;
                                kpParams.DllState = AppPhrases.DllError;
                            }
                            else
                            {
                                kpParams.Enabled = true;
                                kpParams.Color = Color.Black;
                                kpParams.Selected = true;
                                kpParams.DllState = AppPhrases.DllLoaded;
                            }
                        }
                        else
                        {
                            kpParams.Enabled = false;
                            kpParams.Color = Color.Gray;
                            kpParams.KPView = null;
                            kpParams.Selected = false;
                            kpParams.DllState = AppPhrases.DllNotFound;
                        }
                    }

                    kpParams.InCnlsError = false;
                    kpParams.InCnls = "";
                    kpParams.CtrlCnlsError = false;
                    kpParams.CtrlCnls = "";
                    kpParamsList.Add(kpParams);
                }
                gvKPSel.DataSource = kpParamsList;
            }
            catch (Exception ex)
            {
                AppUtils.ProcError(AppPhrases.FillKPGridError + ":\r\n" + ex.Message);
            }
        }
Esempio n. 2
0
        /// <summary>
        /// Заполнить таблицу КП
        /// </summary>
        private void FillKPGrid()
        {
            try
            {
                DataTable tblObj = Tables.GetObjTable();
                tblObj.Rows.Add(DBNull.Value, AppPhrases.UndefinedItem);
                DataGridViewComboBoxColumn colObjNum = (DataGridViewComboBoxColumn)gvKPSel.Columns["colObjNum"];
                colObjNum.DataSource    = tblObj;
                colObjNum.DisplayMember = "Name";
                colObjNum.ValueMember   = "ObjNum";

                DataTable tblKP     = Tables.GetKPTable();
                DataTable tblKPType = Tables.GetKPTypeTable();
                foreach (DataRow rowKP in tblKP.Rows)
                {
                    KPParams kpParams = new KPParams();
                    kpParams.KPNum  = (int)rowKP["KPNum"];
                    kpParams.KPName = (string)rowKP["Name"];
                    kpParams.ObjNum = DBNull.Value;

                    tblKPType.DefaultView.RowFilter = "KPTypeID = " + rowKP["KPTypeID"];
                    object dllFileName = tblKPType.DefaultView[0]["DllFileName"];
                    kpParams.DllFileName = dllFileName == null || dllFileName == DBNull.Value ? "" : (string)dllFileName;

                    if (kpParams.DllFileName == "")
                    {
                        kpParams.Enabled  = false;
                        kpParams.Color    = Color.Gray;
                        kpParams.KPView   = null;
                        kpParams.Selected = false;
                        kpParams.DllState = "";
                    }
                    else
                    {
                        if (kpViewList.ContainsKey(kpParams.DllFileName))
                        {
                            kpParams.KPView = kpViewList[kpParams.DllFileName];
                            if (kpParams.KPView == null)
                            {
                                kpParams.Enabled  = false;
                                kpParams.Color    = Color.Red;
                                kpParams.Selected = false;
                                kpParams.DllState = AppPhrases.DllError;
                            }
                            else
                            {
                                kpParams.Enabled  = true;
                                kpParams.Color    = Color.Black;
                                kpParams.Selected = true;
                                kpParams.DllState = AppPhrases.DllLoaded;
                            }
                        }
                        else
                        {
                            kpParams.Enabled  = false;
                            kpParams.Color    = Color.Gray;
                            kpParams.KPView   = null;
                            kpParams.Selected = false;
                            kpParams.DllState = AppPhrases.DllNotFound;
                        }
                    }

                    kpParams.InCnlsError   = false;
                    kpParams.InCnls        = "";
                    kpParams.CtrlCnlsError = false;
                    kpParams.CtrlCnls      = "";
                    kpParamsList.Add(kpParams);
                }
                gvKPSel.DataSource = kpParamsList;
            }
            catch (Exception ex)
            {
                AppUtils.ProcError(AppPhrases.FillKPGridError + ":\r\n" + ex.Message);
            }
        }