private void CreateLayoutItems(LayoutControl layout)
        {
            layout.BeginUpdate();
            try
            {
                layout.Clear();
                IList <DocumentItemBase> documentItems = GetSortedDocumentItems();
                if (documentItems.Count != 0)
                {
                    int itemsPerRow           = DefaultItemsPerRow;
                    ItemsPerRowAttribute attr = MemberInfo.FindAttribute <ItemsPerRowAttribute>();
                    if (attr != null)
                    {
                        itemsPerRow = attr.Value;
                    }



                    for (int rowNumber = 0; rowNumber < Math.Ceiling((decimal)documentItems.Count / (decimal)itemsPerRow); rowNumber++)
                    {
                        LayoutControlGroup row = layout.AddGroup();
                        row.Name = GetId("Row", rowNumber);
                        row.DefaultLayoutType   = DevExpress.XtraLayout.Utils.LayoutType.Horizontal;
                        row.GroupBordersVisible = false;

                        for (int cellNumber = 0; cellNumber < itemsPerRow; cellNumber++)
                        {
                            if (rowNumber * itemsPerRow + cellNumber < documentItems.Count)
                            {
                                DocumentItemBase  item = documentItems[rowNumber * itemsPerRow + cellNumber];
                                LayoutControlItem cell = new LayoutControlItem(layout, CreateDocumentItemEditor(item));
                                cell.Name = GetId("Cell", item);
                                cell.Text = item.Caption;
                                if (application.Model.Options.LayoutManagerOptions.EnableCaptionColon)
                                {
                                    cell.Text += ":";
                                }
                                row.Add(cell);
                            }
                            else
                            {
                                row.Add(new EmptySpaceItem());
                            }
                        }
                    }
                }
            }
            finally
            {
                layout.EndUpdate();
                layout.BestFit();
            }
        }
Ejemplo n.º 2
0
        private void AddLayoutControl()
        {
            int x = 100, y = 80;

            if (fieldCount < 6)
            {
                x = 200;
                y = 160;
            }
            this.Width  = fieldCount * 50 + x;
            this.Height = fieldCount * 40 + y;

            LayoutControl lcMain;
            GridControl   gcTmp = null;

            lcMain = _frmDesigner.GenLayout2(ref gcTmp, true);
            lcMain.Root.DefaultLayoutType = DevExpress.XtraLayout.Utils.LayoutType.Vertical;

            LayoutControlItem lci3 = new LayoutControlItem();

            lci3.TextVisible = false;
            lcMain.AddItem(lci3);

            LayoutControlItem lci1;

            lci1             = new LayoutControlItem();
            lci1.Control     = simpleButtonAccept;
            lci1.TextVisible = false;

            LayoutControlItem lci2;

            lci2             = new LayoutControlItem();
            lci2.Control     = simpleButtonCancel;
            lci2.TextVisible = false;


            LayoutControlGroup lcg3 = lcMain.Root.AddGroup();

            lcg3.TextVisible         = false;
            lcg3.GroupBordersVisible = false;
            lcg3.DefaultLayoutType   = DevExpress.XtraLayout.Utils.LayoutType.Horizontal;
            lcg3.Add(lci1); lcg3.Add(lci2);

            lcg3.Size = new Size(0, 20);
            lci1.Size = new Size((lcg3.Size.Width / 2), 0);
            //if (fieldCount > 6)
            //    lcMain = _frmDesigner.GenLayout2(ref gcTmp, false);
            //else
            //    lcMain = _frmDesigner.GenLayout1(ref gcTmp, false);
            this.Controls.Add(lcMain);
        }
Ejemplo n.º 3
0
        public void PutDashboardInLayoutGroup(LayoutControlGroup editor)
        {
            var os      = ObjectSpace as XPObjectSpace;
            var session = os?.Session;

            var template = session.Query <DoSoDashboard>().FirstOrDefault(x => x.Name.ToLower() == "default");

            if (template == null)
            {
                return;
            }
            var dashboard = template.CreateDashBoard();

            var parameters = dashboard.Parameters.Where(x => x.Name.ToLower() == "currentobject");

            editor.Items.Clear();
            viewver = new DashboardViewer {
                Dock = DockStyle.Fill
            };


            //var dss = new List<DataSource>();
            ////dss.AddRange(dashboard.DataSources);
            //dashboard.DataSources.Clear();

            editor.Add(new LayoutControlItem()
            {
                Control = viewver, TextVisible = false
            });

            viewver.Dashboard = dashboard;

            //Task.Run(() => AddDataSource2Dashboard(dss, viewver));
        }
Ejemplo n.º 4
0
        public void CreateLayoutEditor(DynamicObjectHelper dynamicObject)
        {
            if (dynamicObject.classDesc == null)
            {
                return;
            }

            this.dynamicObject       = dynamicObject;
            bindingSource.DataSource = dynamicObject.objclass;

            int group_idx = 1;

            while (true)
            {
                List <TableColumnDesc> list = dynamicObject.ColumnList.FindAll(obj => obj.Group_idx == group_idx);

                if (list.Count > 0)
                {
                    string group_text = String.Empty;

                    TableColumnDisplay display = dynamicObject.ColumnLanguageDisplayList.Find(obj => obj.Id == list[0].Id);
                    if (display != null)
                    {
                        group_text = display.Column_display_name;
                    }
                    LayoutControlGroup grp = this.CreateLayoutGroup(group_text);

                    #region 子Group
                    (int min, int max)tuple = (list.Min(obj => obj.Sub_group_idx), list.Min(obj => obj.Sub_group_idx));

                    if (tuple.min > 0)
                    {
                        for (int k = tuple.min; k <= tuple.max; k++)
                        {
                            List <TableColumnDesc> sub_list = list.FindAll(obj => obj.Sub_group_idx == k);

                            grp.Add(this.CreateLayoutGroup(sub_list, dynamicObject.ColumnLanguageDisplayList, dynamicObject.ColumnReferenceList, dynamicObject.ColumnRegularList));
                        }
                    }
                    #endregion

                    #region 单个Group
                    else
                    {
                        grp = this.CreateLayoutGroup(list, dynamicObject.ColumnLanguageDisplayList, dynamicObject.ColumnReferenceList, dynamicObject.ColumnRegularList);
                    }
                    #endregion

                    this.layoutEdit.AddGroup(grp);
                }
                else
                {
                    break;
                }

                group_idx++;
            }

            List <ClassRelated> sub_class = GlobeData.classRelatedList.FindAll(obj => obj.Main_class_id == dynamicObject.classDesc.Id);
            foreach (ClassRelated sub in sub_class)
            {
                ClassDesc subclass = GlobeData.classDescList.Find(obj => obj.Id == sub.Sub_class_id);

                LayoutControlGroup grp1 = this.CreateLayoutGroup(subclass.Class_name);
                LayoutControlItem  item = this.CreateGridListViewItem(subclass);
                grp1.AddItem(item);
                layoutEdit.AddGroup(grp1);
            }
        }
 private static void addEmptyPlaceHolder(LayoutControlGroup dummyGroup)
 {
     dummyGroup.Add(new EmptySpaceItem());
     dummyGroup.TextVisible         = false;
     dummyGroup.GroupBordersVisible = false;
 }
Ejemplo n.º 6
0
        public void Load_QC(string sDate)
        {
            sSelectedDate  = sDate;
            iSamplePercent = ((frmMain)ParantForm).txtQCSamplePecent.Value;
            if (GV.sAccessTo == "TR")
            {
                sDateColumn = "TR_DATECALLED";
            }
            else
            {
                sDateColumn = "WR_DATE_OF_PROCESS";
            }



            if (((frmMain)ParantForm).switchQCProcessTable.Value)
            {
                sProcessTable = "Company";
            }
            else
            {
                sProcessTable = "Contact";
            }



            if (((frmMain)ParantForm).switchQCProcessType.Value)
            {
                sProcessType = "Reprocessed";
            }
            else
            {
                sProcessType = "Fresh";
            }

            lblProcessDate.Text   = "       Process Date :" + sDate;
            lblProcessTable.Text  = "       Process Table :" + sProcessTable;
            lblSamplePercent.Text = "       Sample Percent :" + iSamplePercent;
            lblProcessType.Text   = "       Process Type :" + sProcessType;


            splitQC.Panel2Collapsed = true;
            if (GV.sUserType == "QC" || GV.sUserType == "Admin")
            {
                gControl.DataSource = null;
                string sQuery = string.Empty;
                string sValidContactStatus = string.Empty;

                if (GV.sAccessTo == "TR")
                {
                    sValidContactStatus = GV.sTRContactstatusTobeValidated;
                }
                else
                {
                    sValidContactStatus = GV.sWRContactstatusTobeValidated;
                }

                string sProcessed = string.Empty;
                if (sProcessType == "Reprocessed")
                {
                    sProcessed = " WHERE (SendBack > 0 OR Reprocessed >0) ";
                }

                if (sProcessTable == "Contact")
                {
                    //sQuery = "SELECT T.AgentName,Processed, ROUND(((Pass + Fail)/Processed)*100,2,1) Sampled,ROUND((Pass/Processed)*100,2,1) Pass,ROUND((Fail/Processed)*100,2,1) Fail, SendBack,Reprocessed FROM (";
                    //sQuery += " SELECT " + GV.sAccessTo + "_AGENT_NAME AgentName,COUNT(*) Processed,";
                    //sQuery += " COUNT((SELECT 1 FROM " + GV.sQCTable + " QC WHERE QC.RecordID=CM.CONTACT_ID_P AND TABLENAME='Contact' AND QC.ResearchType='" + GV.sAccessTo + "' AND QC.QC_Sample_Status = 1)) Pass,";
                    //sQuery += " COUNT((SELECT 1 FROM " + GV.sQCTable + " QC WHERE QC.RecordID=CM.CONTACT_ID_P AND TABLENAME='Contact' AND QC.ResearchType='" + GV.sAccessTo + "'  AND QC.QC_Sample_Status = 0)) Fail,";
                    //sQuery += " COUNT((SELECT 1 FROM " + GV.sQCTable + " QC WHERE QC.RecordID=CM.CONTACT_ID_P AND TABLENAME='Contact' AND QC.ResearchType='" + GV.sAccessTo + "' AND QC.QC_STATUS='SendBack')) SendBack,";
                    //sQuery += " COUNT((SELECT 1 FROM " + GV.sQCTable + " QC WHERE QC.RecordID=CM.CONTACT_ID_P AND TABLENAME='Contact' AND QC.ResearchType='" + GV.sAccessTo + "'  AND QC.QC_STATUS='Reprocessed')) Reprocessed";
                    //sQuery += " FROM " + GV.sContactTable + "  CM WHERE cm." + GV.sAccessTo + "_CONTACT_STATUS IN (" + sValidContactStatus + ")";
                    //sQuery += " AND CAST(CM." + GV.sAccessTo + "_UPDATED_DATE AS DATE) = '" + sDate + "' GROUP BY " + GV.sAccessTo + "_AGENT_NAME)T " + sProcessed + " Order by T.Processed Desc;";

                    sQuery  = "select T.AgentName,Processed, ROUND(((Pass + Fail) / Processed) * 100, 2, 1) Sampled,ROUND((Pass / Processed) * 100, 2, 1) Pass,ROUND((Fail / Processed) * 100, 2, 1) Fail, SendBack, Reprocessed from (";
                    sQuery += " select cm." + GV.sAccessTo + "_AGENT_NAME agentname, COUNT(*) Processed,";
                    sQuery += " count(case when  QC.QC_Sample_Status = 1 then cm.CONTACT_ID_P end) Pass,";
                    sQuery += " count(case when  QC.QC_Sample_Status = 0 then cm.CONTACT_ID_P end) Fail,";
                    sQuery += " count(case when  QC.QC_STATUS = 'SENDBACK' then cm.CONTACT_ID_P end) SendBack,";
                    sQuery += " count(case when  QC.QC_STATUS = 'Reprocessed' then cm.CONTACT_ID_P end) Reprocessed";
                    sQuery += " from " + GV.sContactTable + " CM left join (select * from " + GV.sQCTable + " where TableName = 'Contact'  AND ResearchType = '" + GV.sAccessTo + "') QC";
                    sQuery += " on QC.RecordID = CM.CONTACT_ID_P WHERE cm." + GV.sAccessTo + "_CONTACT_STATUS IN (" + sValidContactStatus + ")";
                    sQuery += " AND CAST(CM." + GV.sAccessTo + "_UPDATED_DATE AS DATE) = '" + sDate + "' GROUP BY cm." + GV.sAccessTo + "_AGENT_NAME )t Order by T.Processed Desc;";
                }
                else
                {
                    //sQuery = "SELECT T.AgentName,Processed, ROUND(((Pass + Fail)/Processed)*100,2,1) Sampled,ROUND((Pass/Processed)*100,2,1) Pass,ROUND((Fail/Processed)*100,2,1) Fail, SendBack,Reprocessed FROM (";
                    //sQuery += " SELECT " + GV.sAccessTo + "_AGENTNAME AgentName,COUNT(*) Processed,";
                    //sQuery += " COUNT((SELECT 1 FROM " + GV.sQCTable + " QC WHERE QC.RecordID=CM.MASTER_ID AND TABLENAME='Company' AND QC.ResearchType='" + GV.sAccessTo + "' AND QC.QC_Sample_Status = 1)) Pass,";
                    //sQuery += " COUNT((SELECT 1 FROM " + GV.sQCTable + " QC WHERE QC.RecordID=CM.MASTER_ID AND TABLENAME='Company' AND QC.ResearchType='" + GV.sAccessTo + "'  AND QC.QC_Sample_Status = 0)) Fail,";
                    //sQuery += " COUNT((SELECT 1 FROM " + GV.sQCTable + " QC WHERE QC.RecordID=CM.MASTER_ID AND TABLENAME='Company' AND QC.ResearchType='" + GV.sAccessTo + "' AND QC.QC_STATUS='SendBack')) SendBack,";
                    //sQuery += " COUNT((SELECT 1 FROM " + GV.sQCTable + " QC WHERE QC.RecordID=CM.MASTER_ID AND TABLENAME='Company' AND QC.ResearchType='" + GV.sAccessTo + "'  AND QC.QC_STATUS='Reprocessed')) Reprocessed";
                    //sQuery += " FROM " + GV.sCompanyTable + "  CM WHERE ";
                    //sQuery += " CAST(CM." + sDateColumn + " AS DATE) = '" + sDate + "' GROUP BY " + GV.sAccessTo + "_AGENTNAME)T " + sProcessed + " Order by T.Processed Desc;";



                    sQuery  = "select T.AgentName,Processed, ROUND(((Pass + Fail) / Processed) * 100, 2, 1) Sampled,ROUND((Pass / Processed) * 100, 2, 1) Pass,ROUND((Fail / Processed) * 100, 2, 1) Fail, SendBack, Reprocessed from (";
                    sQuery += " select cm." + GV.sAccessTo + "_AGENT_NAME agentname, COUNT(*) Processed,";
                    sQuery += " count(case when  QC.QC_Sample_Status = 1 then cm.CONTACT_ID_P end) Pass,";
                    sQuery += " count(case when  QC.QC_Sample_Status = 0 then cm.CONTACT_ID_P end) Fail,";
                    sQuery += " count(case when  QC.QC_STATUS = 'SENDBACK' then cm.CONTACT_ID_P end) SendBack,";
                    sQuery += " count(case when  QC.QC_STATUS = 'Reprocessed' then cm.CONTACT_ID_P end) Reprocessed";
                    sQuery += " from " + GV.sContactTable + " CM left join (select * from " + GV.sQCTable + " where TableName = 'Contact'  AND ResearchType = '" + GV.sAccessTo + "') QC";
                    sQuery += " on QC.RecordID = CM.CONTACT_ID_P WHERE ";
                    sQuery += " CAST(CM." + sDateColumn + " AS DATE) = '" + sDate + "' GROUP BY cm." + GV.sAccessTo + "_AGENT_NAME )t Order by T.Processed Desc;";
                }



                dtQCTable = GV.MSSQL1.BAL_ExecuteQuery(sQuery);
                if (dtQCTable.Rows.Count > 0)
                {
                    DataColumn dcEmpImage = new DataColumn("EmpImage", typeof(System.Byte[]));
                    dtQCTable.Columns.Add("Random");
                    dtQCTable.Columns.Add("GetSample");
                    dtQCTable.Columns.Add("QCProcessed");
                    dtQCTable.Columns.Add(dcEmpImage);

                    sQuery = "SELECT UserName , EmployeeImage FROM RM..EmployeeImage A INNER JOIN CH1020BD02.Timesheet.dbo.Users B ON A.EmployeeID = B.EmployeeNo WHERE B.Active = 'Y' AND B.UserName IN (" + GM.ColumnToQString("AgentName", dtQCTable, "String") + ");";
                    DataTable dtEmpImage = GV.MSSQL1.BAL_ExecuteQuery(sQuery);

                    Byte[] bDummyImg = GM.imgToByte(Properties.Resources.Misc_User_icon__1_);

                    foreach (DataRow drImage in dtEmpImage.Rows)
                    {
                        string sEmpName = drImage["UserName"].ToString().ToUpper();
                        foreach (DataRow drQCTable in dtQCTable.Rows)
                        {
                            if (drQCTable["AgentName"].ToString().ToUpper() == sEmpName)
                            {
                                drQCTable["EmpImage"] = drImage["EmployeeImage"];
                                break;
                            }
                            if (drQCTable["EmpImage"] == DBNull.Value)
                            {
                                drQCTable["EmpImage"] = bDummyImg;
                            }
                        }
                    }

                    //System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmQC));
                    lView = new LayoutView(gControl);


                    gControl.LookAndFeel.SkinName = "Office 2010 Blue";
                    gControl.LookAndFeel.UseDefaultLookAndFeel = false;


                    lView.OptionsSelection.MultiSelect = false;

                    gControl.MainView = lView;

                    DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit btnItemRandom = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit();
                    btnItemRandom.Name = "btnRandom";
                    btnItemRandom.Buttons[0].Caption = "Random";
                    btnItemRandom.Buttons[0].IsLeft  = false;
                    btnItemRandom.Buttons[0].Width   = 30;
                    btnItemRandom.Buttons[0].Kind    = ButtonPredefines.Glyph;
                    btnItemRandom.Buttons[0].Image   = Properties.Resources.new_icon;
                    btnItemRandom.TextEditStyle      = TextEditStyles.HideTextEditor;
                    // btnItemRandom.AutoHeight = true;
                    btnItemRandom.BorderStyle  = DevExpress.XtraEditors.Controls.BorderStyles.Default;
                    btnItemRandom.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.btnRandom_ButtonClick);

                    DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit btnItemGetSample = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit();
                    btnItemGetSample.Name = "btnGetSample";
                    btnItemGetSample.Buttons[0].Caption = "Sampled";
                    btnItemGetSample.Buttons[0].IsLeft  = false;
                    btnItemGetSample.Buttons[0].Width   = 30;
                    btnItemGetSample.Buttons[0].Kind    = ButtonPredefines.Glyph;
                    btnItemGetSample.Buttons[0].Image   = Properties.Resources.contacts_3_icon;
                    btnItemGetSample.TextEditStyle      = TextEditStyles.HideTextEditor;
                    //btnItemGetSample.AutoHeight = true;
                    btnItemGetSample.BorderStyle  = DevExpress.XtraEditors.Controls.BorderStyles.Default;
                    btnItemGetSample.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.btnGetSample_ButtonClick);

                    DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit btnItemQCProcessed = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit();
                    btnItemQCProcessed.Name = "btnQCProcessed";
                    btnItemQCProcessed.Buttons[0].Caption = "QC Processed";
                    btnItemQCProcessed.Buttons[0].IsLeft  = false;
                    btnItemQCProcessed.Buttons[0].Width   = 30;
                    btnItemQCProcessed.Buttons[0].Kind    = ButtonPredefines.Glyph;
                    btnItemQCProcessed.Buttons[0].Image   = Properties.Resources.folder_icon__1_;
                    btnItemQCProcessed.TextEditStyle      = TextEditStyles.HideTextEditor;
                    //btnItemQCProcessed.AutoHeight = true;
                    btnItemQCProcessed.BorderStyle  = DevExpress.XtraEditors.Controls.BorderStyles.Default;
                    btnItemQCProcessed.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.btnShowProcessed_ButtonClick);


                    lView.OptionsBehavior.AutoPopulateColumns = false;
                    splitQC.Panel1.Controls.Add(gControl);
                    splitQC.Panel1.Controls.Add(panelQCInfo);
                    gControl.Dock    = DockStyle.Fill;
                    panelQCInfo.Dock = DockStyle.Top;



                    LayoutViewColumn colAgentName    = lView.Columns.AddField("AgentName");
                    LayoutViewColumn colProcessCount = lView.Columns.AddField("Processed");
                    LayoutViewColumn colSampled      = lView.Columns.AddField("Sampled");
                    LayoutViewColumn colPass;
                    LayoutViewColumn colFail;

                    if (sProcessType == "Fresh")
                    {
                        colPass = lView.Columns.AddField("Pass");
                        colFail = lView.Columns.AddField("Fail");
                    }
                    else
                    {
                        colPass = lView.Columns.AddField("SendBack");
                        colFail = lView.Columns.AddField("Reprocessed");
                    }

                    LayoutViewColumn colbtnRandom      = lView.Columns.AddField("Random");
                    LayoutViewColumn colbtnGetSample   = lView.Columns.AddField("GetSample");
                    LayoutViewColumn colbtnQCProcessed = lView.Columns.AddField("QCProcessed");
                    LayoutViewColumn colPhoto          = lView.Columns.AddField("EmpImage");


                    //colbtnRandom.ShowButtonMode = DevExpress.XtraGrid.Views.Base.ShowButtonModeEnum.ShowAlways;

                    LayoutViewField fieldAgentName      = colAgentName.LayoutViewField;
                    LayoutViewField fieldProcessCount   = colProcessCount.LayoutViewField;
                    LayoutViewField fieldSampled        = colSampled.LayoutViewField;
                    LayoutViewField fieldPass           = colPass.LayoutViewField;
                    LayoutViewField fieldFail           = colFail.LayoutViewField;
                    LayoutViewField fieldbtnRandom      = colbtnRandom.LayoutViewField;
                    LayoutViewField fieldbtnGetSample   = colbtnGetSample.LayoutViewField;
                    LayoutViewField fieldbtnQCProcessed = colbtnQCProcessed.LayoutViewField;
                    LayoutViewField fieldEmpPhoto       = colPhoto.LayoutViewField;
                    fieldEmpPhoto.SizeConstraintsType = SizeConstraintsType.Custom;
                    //fieldEmpPhoto.MaxSize = new System.Drawing.Size(20, 20);
                    fieldEmpPhoto.MinSize  = new System.Drawing.Size(100, 100);
                    fieldEmpPhoto.TextSize = new System.Drawing.Size(0, 0);
                    fieldEmpPhoto.TextToControlDistance = 0;
                    fieldEmpPhoto.TextVisible           = false;

                    fieldAgentName.MinSize  = new System.Drawing.Size(100, 100);
                    fieldAgentName.TextSize = new System.Drawing.Size(0, 0);
                    fieldAgentName.TextToControlDistance = 0;
                    fieldAgentName.TextVisible           = false;

                    colAgentName.AppearanceCell.Font = new System.Drawing.Font(colAgentName.AppearanceCell.Font.FontFamily, 12, FontStyle.Bold);

                    colPhoto.Visible = true;

                    //RepositoryItemPictureEdit riPictureEdit = grid.RepositoryItems.Add("PictureEdit") as RepositoryItemPictureEdit;

                    RepositoryItemPictureEdit riPictureEdit = new RepositoryItemPictureEdit();
                    riPictureEdit.SizeMode = PictureSizeMode.Zoom;

                    colPhoto.ColumnEdit = riPictureEdit;

                    lView.OptionsView.ShowHeaderPanel = false;
                    lView.OptionsView.ViewMode        = LayoutViewMode.MultiColumn;

                    colAgentName.OptionsColumn.AllowFocus    = false;
                    colProcessCount.OptionsColumn.AllowFocus = false;
                    colSampled.OptionsColumn.AllowFocus      = false;
                    colPass.OptionsColumn.AllowFocus         = false;
                    colFail.OptionsColumn.AllowFocus         = false;
                    colPhoto.OptionsColumn.AllowFocus        = false;

                    colAgentName.OptionsColumn.AllowEdit    = false;
                    colProcessCount.OptionsColumn.AllowEdit = false;
                    colSampled.OptionsColumn.AllowEdit      = false;
                    colPass.OptionsColumn.AllowEdit         = false;
                    colFail.OptionsColumn.AllowEdit         = false;
                    colPhoto.OptionsColumn.AllowEdit        = false;

                    colAgentName.OptionsFilter.AllowFilter      = false;
                    colProcessCount.OptionsFilter.AllowFilter   = false;
                    colSampled.OptionsFilter.AllowFilter        = false;
                    colPass.OptionsFilter.AllowFilter           = false;
                    colFail.OptionsFilter.AllowFilter           = false;
                    colbtnRandom.OptionsFilter.AllowFilter      = false;
                    colbtnGetSample.OptionsFilter.AllowFilter   = false;
                    colbtnQCProcessed.OptionsFilter.AllowFilter = false;
                    colPhoto.OptionsFilter.AllowFilter          = false;

                    colAgentName.OptionsColumn.AllowSort      = DevExpress.Utils.DefaultBoolean.False;
                    colProcessCount.OptionsColumn.AllowSort   = DevExpress.Utils.DefaultBoolean.False;
                    colSampled.OptionsColumn.AllowSort        = DevExpress.Utils.DefaultBoolean.False;
                    colPass.OptionsColumn.AllowSort           = DevExpress.Utils.DefaultBoolean.False;
                    colFail.OptionsColumn.AllowSort           = DevExpress.Utils.DefaultBoolean.False;
                    colbtnRandom.OptionsColumn.AllowSort      = DevExpress.Utils.DefaultBoolean.False;
                    colbtnGetSample.OptionsColumn.AllowSort   = DevExpress.Utils.DefaultBoolean.False;
                    colbtnQCProcessed.OptionsColumn.AllowSort = DevExpress.Utils.DefaultBoolean.False;
                    colPhoto.OptionsColumn.AllowSort          = DevExpress.Utils.DefaultBoolean.False;

                    colAgentName.OptionsColumn.ReadOnly      = true;
                    colProcessCount.OptionsColumn.ReadOnly   = true;
                    colSampled.OptionsColumn.ReadOnly        = true;
                    colPass.OptionsColumn.ReadOnly           = true;
                    colFail.OptionsColumn.ReadOnly           = true;
                    colbtnRandom.OptionsColumn.ReadOnly      = true;
                    colbtnGetSample.OptionsColumn.ReadOnly   = true;
                    colbtnQCProcessed.OptionsColumn.ReadOnly = true;
                    colPhoto.OptionsColumn.ReadOnly          = true;

                    colbtnRandom.ColumnEdit      = btnItemRandom;
                    colbtnGetSample.ColumnEdit   = btnItemGetSample;
                    colbtnQCProcessed.ColumnEdit = btnItemQCProcessed;

                    DevExpress.XtraGrid.StyleFormatCondition styleFormatCondition1 = new DevExpress.XtraGrid.StyleFormatCondition();

                    styleFormatCondition1.Appearance.BackColor            = Color.RosyBrown;
                    styleFormatCondition1.Appearance.Options.UseBackColor = true;
                    styleFormatCondition1.ApplyToRow = false;
                    styleFormatCondition1.Column     = colProcessCount;
                    styleFormatCondition1.Condition  = DevExpress.XtraGrid.FormatConditionEnum.Expression;
                    styleFormatCondition1.Expression = "[Processed] > 20";
                    lView.FormatConditions.AddRange(new DevExpress.XtraGrid.StyleFormatCondition[] { styleFormatCondition1 });


                    fieldAgentName.Move(new LayoutItemDragController(fieldAgentName, fieldEmpPhoto, InsertLocation.After, LayoutType.Horizontal));

                    LayoutControlGroup groupAgentInfo = lView.TemplateCard.AddGroup("Agent Info", fieldAgentName, InsertType.Bottom);
                    //groupAddress.Add(colPhoto.LayoutViewField);
                    //groupAddress.Add(colAgentName.LayoutViewField);
                    groupAgentInfo.Add(colProcessCount.LayoutViewField);
                    groupAgentInfo.Add(colSampled.LayoutViewField);
                    groupAgentInfo.Add(colPass.LayoutViewField);
                    groupAgentInfo.Add(colFail.LayoutViewField);
                    groupAgentInfo.Add(colbtnRandom.LayoutViewField);
                    groupAgentInfo.Add(colbtnGetSample.LayoutViewField);
                    groupAgentInfo.Add(colbtnQCProcessed.LayoutViewField);


                    //LayoutControlGroup groupRecords = lView.TemplateCard.AddGroup("Record", groupAgentInfo, InsertType.Bottom);
                    //groupRecords.Add(colbtnRandom.LayoutViewField);
                    //groupRecords.Add(colbtnGetSample.LayoutViewField);
                    //groupRecords.Add(colbtnQCProcessed.LayoutViewField);

                    colAgentName.Caption    = "Agent Name";
                    colProcessCount.Caption = "Total Processed";
                    colSampled.Caption      = "Sampled %";
                    if (sProcessType == "Fresh")
                    {
                        colPass.Caption = "Pass %";
                        colFail.Caption = "Fail %";
                    }
                    else
                    {
                        colPass.Caption = "Send Back";
                        colFail.Caption = "Reprocessed";
                    }
                    colbtnRandom.Caption      = "Get a Random Record";
                    colbtnGetSample.Caption   = "Get " + iSamplePercent + "% sample";
                    colbtnQCProcessed.Caption = "Show Sampled Records";


                    //lView.Items[9].TextVisible = false;
                    lView.CardMinSize = new Size(60, 250);

                    gControl.DataSource = dtQCTable;
                }
                else
                {
                    gControl.DataSource = null;
                }

                dgvQCList.BackgroundColor = GV.pnlGlobalColor.Style.BackColor2.Color;
            }
        }
Ejemplo n.º 7
0
        public UISearchGroup(ucModule parentModule, LayoutControlGroup parentLayoutGroup)
        {
            ParentModule      = parentModule;
            ModuleInfo        = parentModule.ModuleInfo;
            ParentLayoutGroup = parentLayoutGroup;
            SearchLayout      = (LayoutControl)parentLayoutGroup.Owner;

            Groups     = new List <UISearchGroup>();
            Conditions = new List <UISearchCondition>();

            LayoutGroup = new LayoutControlGroup();

            SearchLayout.BeginUpdate();
            parentLayoutGroup.BeginUpdate();

            m_EditUse = new CheckEdit();
            // GetFields: ModID = ModuleTypeID, Group = SQL_EXPRESSION
            var fieldSqlLogic =
                FieldUtils.GetModuleFields(
                    ModuleInfo.ModuleType,
                    CODES.DEFMODFLD.FLDGROUP.SQL_EXPRESSION
                    )[0];

            //
            m_SQLLogic = (ImageComboBoxEdit)parentModule.CreateControl(fieldSqlLogic);
            parentModule.SetControlListSource(m_SQLLogic);
            parentModule.SetControlDefaultValue(m_SQLLogic);

            m_AddGroup     = new SimpleButton();
            m_AddCondition = new SimpleButton();
            m_DeleteGroup  = new SimpleButton();

            SearchLayout.Controls.AddRange(new Control[] { m_EditUse, m_SQLLogic, m_AddGroup, m_AddCondition, m_DeleteGroup });

            (m_EditUseLayoutItem = LayoutGroup.AddItem("Use Condition", m_EditUse)).BeginInit();
            (m_MainSeparator = (SimpleSeparator)LayoutGroup.AddItem(new SimpleSeparator(), m_EditUseLayoutItem, InsertType.Bottom)).BeginInit();
            (m_SQLLogicLayoutItem = LayoutGroup.AddItem("Group Type", m_SQLLogic, m_EditUseLayoutItem, InsertType.Right)).BeginInit();
            (m_SQLLogicEmptySpace = (EmptySpaceItem)LayoutGroup.AddItem(new EmptySpaceItem(LayoutGroup), m_SQLLogicLayoutItem, InsertType.Right)).BeginInit();
            (m_DeleteGroupLayoutItem = LayoutGroup.AddItem("Delete Group", m_DeleteGroup, m_SQLLogicEmptySpace, InsertType.Right)).BeginInit();
            (m_AddGroupLayoutItem = LayoutGroup.AddItem("Add Group", m_AddGroup, m_DeleteGroupLayoutItem, InsertType.Right)).BeginInit();
            (m_AddConditionLayoutItem = LayoutGroup.AddItem("Add Condition", m_AddCondition, m_AddGroupLayoutItem, InsertType.Right)).BeginInit();

            // m_chkEditUse
            m_EditUse.Text              = "";
            m_EditUse.Checked           = true;
            m_EditUse.EditValueChanged += CheckEditUse_CheckedChanged;

            // m_btnDeleteGroup
            parentModule.Language.FormatButton(m_DeleteGroup, "btnDeleteGroupCondition");
            m_DeleteGroup.Click += DeleteGroupCondition_Click;

            // m_btnAddGroup
            parentModule.Language.FormatButton(m_AddGroup, "btnAddGroupCondition");
            m_AddGroup.Click += AddGroupCondition_Click;

            // m_btnAddCondition
            parentModule.Language.FormatButton(m_AddCondition, "btnAddCondition");
            m_AddCondition.Click += AddConditionButton_Click;

            // LayoutGroup
            LayoutGroup.Padding      = new DevExpress.XtraLayout.Utils.Padding(9, 2, 2, 2);
            LayoutGroup.TextLocation = DevExpress.Utils.Locations.Left;
            LayoutGroup.Text         = " ";

            // m_layout_chkEditUse
            m_EditUseLayoutItem.TextVisible             = false;
            m_EditUseLayoutItem.SizeConstraintsType     = SizeConstraintsType.Custom;
            m_EditUseLayoutItem.ControlAlignment        = ContentAlignment.MiddleCenter;
            m_EditUseLayoutItem.FillControlToClientArea = false;
            m_EditUseLayoutItem.MinSize     =
                m_EditUseLayoutItem.MaxSize = new Size(20, 24);

            // m_layout_cboSQLLogic
            m_SQLLogicLayoutItem.TextVisible            = false;
            m_SQLLogicLayoutItem.SizeConstraintsType    = SizeConstraintsType.Custom;
            m_SQLLogicLayoutItem.ControlAlignment       = ContentAlignment.MiddleCenter;
            m_EditUseLayoutItem.FillControlToClientArea = false;
            m_SQLLogicLayoutItem.MinSize     =
                m_SQLLogicLayoutItem.MaxSize = new Size(240, 24);

            // m_layout_btnDeleteGroup
            m_DeleteGroupLayoutItem.TextVisible         = false;
            m_DeleteGroupLayoutItem.SizeConstraintsType = SizeConstraintsType.Custom;
            m_DeleteGroupLayoutItem.ControlAlignment    = ContentAlignment.MiddleCenter;
            m_EditUseLayoutItem.FillControlToClientArea = false;
            m_DeleteGroupLayoutItem.MinSize             =
                m_DeleteGroupLayoutItem.MaxSize         = new Size(140, 24);

            // m_layout_cboSQLLogic
            m_AddGroupLayoutItem.TextVisible            = false;
            m_AddGroupLayoutItem.SizeConstraintsType    = SizeConstraintsType.Custom;
            m_AddGroupLayoutItem.ControlAlignment       = ContentAlignment.MiddleCenter;
            m_EditUseLayoutItem.FillControlToClientArea = false;
            m_AddGroupLayoutItem.MinSize     =
                m_AddGroupLayoutItem.MaxSize = new Size(140, 24);

            // m_layout_cboSQLLogic
            m_AddConditionLayoutItem.TextVisible         = false;
            m_AddConditionLayoutItem.SizeConstraintsType = SizeConstraintsType.Custom;
            m_AddConditionLayoutItem.ControlAlignment    = ContentAlignment.MiddleCenter;
            m_EditUseLayoutItem.FillControlToClientArea  = false;
            m_AddConditionLayoutItem.MinSize             =
                m_AddConditionLayoutItem.MaxSize         = new Size(110, 24);

            m_MainSeparator.FillControlToClientArea = false;
            m_MainSeparator.SizeConstraintsType     = SizeConstraintsType.Default;

            m_EditUseLayoutItem.EndInit();
            m_SQLLogicLayoutItem.EndInit();
            m_SQLLogicEmptySpace.EndInit();
            m_DeleteGroupLayoutItem.EndInit();
            m_AddGroupLayoutItem.EndInit();
            m_AddConditionLayoutItem.EndInit();
            m_MainSeparator.EndInit();

            parentLayoutGroup.Add(LayoutGroup);

            if (ConditionModule.ConditionLayoutGroup == parentLayoutGroup)
            {
                parentLayoutGroup.AddItem(new EmptySpaceItem(), LayoutGroup, InsertType.Bottom);
                m_DeleteGroupLayoutItem.Visibility = LayoutVisibility.Never;
            }

            parentLayoutGroup.EndUpdate();
            SearchLayout.EndUpdate();
        }