예제 #1
0
        public static Layout Create_NewLayout(this Document doc, string layoutname)
        {
            Layout layout = new Layout();

            using (DocumentLock doclck = doc.LockDocument())
            {
                using (Transaction tr = doc.Database.TransactionManager.StartTransaction())
                {
                    LayoutManager laymgr   = LayoutManager.Current;
                    ObjectId      layoutID = new ObjectId();

                    try
                    {
                        layoutID = laymgr.CreateLayout(layoutname);
                    }

                    catch (global::Autodesk.AutoCAD.Runtime.Exception aex)
                    {
                        if (aex.ErrorStatus == ErrorStatus.DuplicateKey)
                        {
                            layoutID = laymgr.CreateLayout(layoutname + "(1)");
                        }
                    }

                    layout = tr.GetObject(layoutID, OpenMode.ForWrite) as Layout;
                    BlockTableRecord lay_btr = tr.GetObject(layout.BlockTableRecordId, OpenMode.ForWrite) as BlockTableRecord;

                    laymgr.CurrentLayout = layout.LayoutName;

                    ObjectId           layout_btrid = layout.OwnerId;
                    ObjectIdCollection vp_ids       = layout.GetViewports();
                    RXClass            VPClass      = RXObject.GetClass(typeof(Viewport));
                    foreach (ObjectId item in lay_btr)
                    {
                        if (item.ObjectClass == VPClass)
                        {
                            Viewport vp = tr.GetObject(item, OpenMode.ForWrite) as Viewport;
                            if (vp.Number != 1)
                            {
                                vp.Erase();
                            }

                            doc.Editor.Regen();
                        }
                    }

                    tr.Commit();
                }
            }
            return(layout);
        }
예제 #2
0
        protected override void BuildBody(Control container)
        {
            var layoutManager = new LayoutManager("main", mDFInfo, mDFContainer);
            var planNumberBox = layoutManager.Add("PlanNumber_ID", InputCreator.DFChoiceBox(B3ButcheryDataSource.计划号, "PlanNumber_Name"));

            planNumberBox.OnBeforeDrop = "this.argument2=__DFContainer.getControl('Date').value";
            var config = new AutoLayoutConfig();

            config.Add("Date");
            config.Add("AccountingUnit_ID");
            config.Add("Department_ID");
            config.Add("PlanNumber_ID");
            config.Add("Remark");
            layoutManager.Config = config;
            container.Controls.Add(layoutManager.CreateLayout());

            var vPanel = container.EAdd(new VLayoutPanel());

            if (CanSave)
            {
                vPanel.Add(new TSButton("载入明细", delegate
                {
                    LoadDetail();
                }), new VLayoutOption(HorizontalAlign.Left));
            }
            CreateInputDetailPanel(vPanel);
            CreateOutputDetailPanel(vPanel);
        }
예제 #3
0
        private void AddQueryControl(VLayoutPanel vPanel)
        {
            var mDFInfo = DFInfo.Get(typeof(Goods_Accounting_Store));
            var manager = new LayoutManager("", mDFInfo, _mQueryContainer);

            manager.Add("Goods_ID", QueryCreator.DFChoiceBox(mDFInfo.Fields["Goods_ID"], B3UnitedInfosConsts.DataSources.存货全部));

            manager.Add("Store_ID", QueryCreator.DFChoiceBox(mDFInfo.Fields["Store_ID"], B3FrameworksConsts.DataSources.授权仓库));

            manager.Add("AccountingUnit_ID", QueryCreator.DFChoiceBox(mDFInfo.Fields["AccountingUnit_ID"], B3FrameworksConsts.DataSources.授权会计单位));

            manager.Add("GoodsPropertyCatalog_ID", new SimpleLabel("存货属性分类"), _goodsPropertyCatalogBox = QueryCreator.DFChoiceBox(mDFInfo.Fields["AccountingUnit_ID"], B3UnitedInfosConsts.DataSources.存货属性分类));

            manager.Add("GoodsProperty_ID", new SimpleLabel("存货属性"), QueryCreator.DFChoiceBox(mDFInfo.Fields["AccountingUnit_ID"], B3UnitedInfosConsts.DataSources.存货属性全部));

            var config = new AutoLayoutConfig
            {
                Cols = 8,
                DefaultLabelWidth = 4,
            };

            config.Add("Goods_ID");
            config.Add("Store_ID");
            config.Add("AccountingUnit_ID");
            config.Add("GoodsPropertyCatalog_ID");
            config.Add("GoodsProperty_ID");
            manager.Config = config;
            vPanel.Add(manager.CreateLayout());
            var hPanel = vPanel.Add(new HLayoutPanel());

            hPanel.Add(new TSButton("开始查询", delegate { StartQuery(); }));
            hPanel.Add(new RedirectTSButton("清除条件"));
        }
예제 #4
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var customPanel = new LayoutManager("Main", _mainInfo, mQueryContainer);

            customPanel.Add("ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["ID"], mQueryContainer, "ID", B3ButcheryDataSource.生产通知单ID));
            customPanel["ID"].NotAutoAddToContainer = true;
            customPanel.Add("BillState", QueryCreator.一般单据状态(_mainInfo.Fields["BillState"]));
            customPanel.Add("AccountingUnit_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["AccountingUnit_ID"], mQueryContainer, "AccountingUnit_ID", B3FrameworksConsts.DataSources.授权会计单位全部));
            customPanel["AccountingUnit_ID"].NotAutoAddToContainer = true;
            customPanel.Add("Department_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["Department_ID"], mQueryContainer, "Department_ID", B3FrameworksConsts.DataSources.授权部门全部));
            customPanel["Department_ID"].NotAutoAddToContainer = true;

            customPanel.Add("Customer_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["Customer_ID"], mQueryContainer, "Customer_ID", "B3Sale_客户全部"));
            customPanel["Customer_ID"].NotAutoAddToContainer = true;
            customPanel.Add("ProductionUnit_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["ProductionUnit_ID"], mQueryContainer, "ProductionUnit_ID", B3ProduceUnitedInfosDataSources.生产单位全部));
            customPanel["ProductionUnit_ID"].NotAutoAddToContainer = true;

            customPanel.Add("Employee_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["Employee_ID"], mQueryContainer, "Employee_ID", B3FrameworksConsts.DataSources.授权员工全部));
            customPanel["Employee_ID"].NotAutoAddToContainer = true;

            AddQueryControlsByBrandItem_ID(customPanel, _detailInfo);

            customPanel.Add("Goods_ID", new SimpleLabel("存货"), QueryCreator.DFChoiceBoxEnableMultiSelection(_detailInfo.Fields["Goods_ID"], mQueryContainer, "Goods_ID", B3UnitedInfosConsts.DataSources.存货));
            customPanel["Goods_ID"].NotAutoAddToContainer = true;


            摘要 = new DFTextBox(_mainInfo.Fields["Remark"]);
            备注 = new DFTextBox(_detailInfo.Fields["Remark"]);
            customPanel.Add("摘要", new SimpleLabel("摘要"), 摘要);
            customPanel.Add("备注", new SimpleLabel("备注"), 备注);

            customPanel.CreateDefaultConfig(2).Expand = false;
            vPanel.Add(customPanel.CreateLayout());
        }
예제 #5
0
        /// <summary>
        ///     Creates a layout with the specified name and optionally makes it current.
        /// </summary>
        /// <param name="name">The name of the viewport.</param>
        /// <param name="select">Whether to select it.</param>
        /// <returns>The ObjectId of the newly created viewport.</returns>
        public static ObjectId CreateAndMakeLayoutCurrentByAddition(
            this LayoutManager lm, string name, bool select = true)
        {
            // First try to get the layout
            ObjectId id;
            var      count   = 0;
            var      idValid = true;

            while (idValid)
            {
                id = lm.GetLayoutId(name + count);
                if (id.IsValid)
                {
                    count++;
                    continue;
                }

                idValid = false;
                name   += count;
            }

            // If it doesn't exist, we create it
            id = lm.CreateLayout(name);

            // And finally we select it
            if (select)
            {
                lm.CurrentLayout = name;
            }

            return(id);
        }
예제 #6
0
        private void CreateQuery(VLayoutPanel vPanel)
        {
            var layout = new LayoutManager("", mDFInfo, mQueryContainer);
            var config = new AutoLayoutConfig();

            layout.Config = config;
            config.Add("ID");
            config.Add("Name");
            config.Add("AccountingUnit_ID");
            config.Add("Department_ID");
            config.Add("Employee_ID");
            vPanel.Add(layout.CreateLayout());

            HLayoutPanel hPanel = new HLayoutPanel()
            {
                Align = HorizontalAlign.Left
            };
            TSButton qButton = new TSButton("开始查询");

            hPanel.Add(qButton);
            qButton.Click += delegate
            {
                _grid.Query = GetDQueryDom();
                _grid.DataBind();
            };
            dfContainer.AddNonDFControl(qButton, "$btnsearch");
            hPanel.Add(new RedirectTSButton("清除条件"));
            vPanel.Add(hPanel);
            vPanel.Add(new HLayoutPanel());
        }
예제 #7
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var customPanel = new LayoutManager("Main", mainInfo, mQueryContainer);

            //查询条件包括::{日期}、{计划号}、{会计单位}、{部门}、{经办人}、{生产环节}、{存货名称}、{存货编码},


            customPanel.Add("ID", new SimpleLabel("单号"), goodsName = QueryCreator.DFTextBox(mainInfo.Fields["ID"]));

            customPanel.Add("AccountingUnit_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["AccountingUnit_ID"], mQueryContainer, "AccountingUnit_ID", B3FrameworksConsts.DataSources.授权会计单位全部));
            customPanel["AccountingUnit_ID"].NotAutoAddToContainer = true;

            customPanel.Add("Department_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["Department_ID"], mQueryContainer, "Department_ID", B3FrameworksConsts.DataSources.授权部门全部));
            customPanel["Department_ID"].NotAutoAddToContainer = true;

            customPanel.Add("Employee_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["Employee_ID"], mQueryContainer, "Employee_ID", B3FrameworksConsts.DataSources.授权员工全部));
            customPanel["Employee_ID"].NotAutoAddToContainer = true;

            customPanel.Add("PlanNumber", mQueryContainer.Add(QueryCreator.DFTextBox(mainInfo.Fields["PlanNumber"]), "PlanNumber"));
            customPanel["PlanNumber"].NotAutoAddToContainer = true;


            customPanel.Add("Goods_Name", new SimpleLabel("存货名称"), goodsName = QueryCreator.DFTextBox(detailInfo.Fields["Goods_Name"]));
            customPanel.Add("Goods_Code", new SimpleLabel("存货编号"), goodsCode = QueryCreator.DFTextBox(detailInfo.Fields["Goods_Code"]));
            customPanel.CreateDefaultConfig(2).Expand = false;
            vPanel.Add(customPanel.CreateLayout());
        }
예제 #8
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var customPanel = new LayoutManager("Main", _mainInfo, mQueryContainer);

            customPanel.Add("ID", mQueryContainer.Add(new DFTextBox(_mainInfo.Fields["ID"]), "ID"));
            customPanel["ID"].NotAutoAddToContainer = true;
            customPanel.Add("PlanNumber_ID", new SimpleLabel("计划号"), QueryCreator.DFChoiceBoxEnableMultiSelection(_detailInfo.Fields["PlanNumber_ID"], mQueryContainer, "PlanNumber_ID", B3ButcheryDataSource.计划号));
            customPanel["PlanNumber_ID"].NotAutoAddToContainer = true;
            customPanel.Add("AccountingUnit_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["AccountingUnit_ID"], mQueryContainer, "AccountingUnit_ID", B3FrameworksConsts.DataSources.授权会计单位全部));
            customPanel["AccountingUnit_ID"].NotAutoAddToContainer = true;
            customPanel.Add("Department_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["Department_ID"], mQueryContainer, "Department_ID", B3FrameworksConsts.DataSources.授权部门全部));
            customPanel["Department_ID"].NotAutoAddToContainer = true;
            customPanel.Add("Store_ID", new SimpleLabel("仓库"), QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["Store_ID"], mQueryContainer, "Store_ID", B3ButcheryDataSource.速冻库));
            customPanel["Store_ID"].NotAutoAddToContainer = true;

            customPanel.Add("BillState", mQueryContainer.Add(QueryCreator.一般单据状态可多选(_mainInfo.Fields["BillState"]), "BillState"));
            customPanel["BillState"].NotAutoAddToContainer = true;



            customPanel.Add("Goods_ID", new SimpleLabel("存货"), QueryCreator.DFChoiceBoxEnableMultiSelection(_detailInfo.Fields["Goods_ID"], mQueryContainer, "Goods_ID", B3UnitedInfosConsts.DataSources.存货));
            customPanel["Goods_ID"].NotAutoAddToContainer = true;
            customPanel.CreateDefaultConfig(2).Expand     = false;
            vPanel.Add(customPanel.CreateLayout());
        }
예제 #9
0
        /// <summary>
        /// Метод создаёт Layout по заданным параметрам
        /// </summary>
        /// <param name="borders">Границы выделенной области в пространстве модели</param>
        public void CreateLayout(DrawingBorders borders)
        {
            using (Transaction tr = this.wdb.TransactionManager.StartTransaction())
            {
                string layoutName = CheckLayoutName(borders.Name);

                PlotSettings  ps = ImportPlotSettings(borders, tr);
                LayoutManager lm = LayoutManager.Current;
                Layout        layout;
                try
                {
                    layout = (Layout)tr.GetObject(lm.CreateLayout(layoutName), OpenMode.ForWrite);
                }
                catch (System.Exception ex)
                {
                    throw new System.Exception(String.Format("Ошибка создания Layout {0}\n{1}", layoutName, ex.Message));
                }

                layout.CopyFrom(ps);
                lm.CurrentLayout = layout.LayoutName;
                View.Zoom(new Point3d(0, 0, 0), new Point3d(layout.PlotPaperSize.X, layout.PlotPaperSize.Y, 0), new Point3d(), 1);
                CreateViewport(layout, borders, tr);
                tr.Commit();
            }
        }
예제 #10
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var customPanel = new LayoutManager("Main", _mainInfo, mQueryContainer);

            auuInput = customPanel.Add("AccountingUnit_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["AccountingUnit_ID"], mQueryContainer, "AccountingUnit_ID", B3FrameworksConsts.DataSources.授权会计单位全部));
            customPanel["AccountingUnit_ID"].NotAutoAddToContainer = true;
            departInput = customPanel.Add("Department_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(_mainInfo.Fields["Department_ID"], mQueryContainer, "Department_ID", B3FrameworksConsts.DataSources.授权部门全部));
            customPanel["Department_ID"].NotAutoAddToContainer = true;


            customPanel.Add("Goods_ID", new SimpleLabel("产出单存货"), goodInput = QueryCreator.DFChoiceBoxEnableMultiSelection(_detailInfo.Fields["Goods_ID"], mQueryContainer, "Goods_ID", B3UnitedInfosConsts.DataSources.存货));
            customPanel["Goods_ID"].NotAutoAddToContainer = true;

            var config = customPanel.CreateDefaultConfig(2);

            config.Expand = false;
            var section = mPageLayoutManager.AddSection("查询条件", "查询条件");

            section.ApplyLayout(customPanel, config, mPageLayoutManager, _mainInfo);
            section.SetDisplayName("AccountingUnit_ID", "会计单位");
            section.SetDisplayName("Department_ID", "部门");
            section.SetDisplayName("Goods_ID", "产出单存货");


            vPanel.Add(customPanel.CreateLayout(), new VLayoutOption(HorizontalAlign.Left));
            //vPanel.Add(customPanel.CreateLayout());
        }
예제 #11
0
        private void CreateQuery(VLayoutPanel vPanel)
        {
            var layoutManager = new LayoutManager("", mDFInfo, mQueryContainer);

            var config = new AutoLayoutConfig();

            layoutManager.Config = config;

            AddQueryControl(config, layoutManager);
            vPanel.Add(layoutManager.CreateLayout(), new VLayoutOption(HorizontalAlign.Center));
            var hPanel = new HLayoutPanel()
            {
                Align = HorizontalAlign.Center
            };

            var qButton = new TSButton("开始查询");

            hPanel.Add(qButton);
            qButton.Click += delegate
            {
                GetDetail();
                mGrid.DataBind();
            };
            dfContainer.AddNonDFControl(qButton, "$btnsearch");
            hPanel.Add(new RedirectTSButton("清除条件"));
            vPanel.Add(hPanel);
        }
예제 #12
0
        protected override void CreateQuery(VLayoutPanel vPanel)
        {
            var layoutManager = new LayoutManager("", mDFInfo, mQueryContainer);

            layoutManager.Add("存货属性分类", new SimpleLabel("属性分类"), QueryCreator.DFChoiceBox(mDFInfo.Fields["ID"], B3UnitedInfosConsts.DataSources.存货属性分类));
            layoutManager.Add("ProductLine_ID", mQueryContainer.Add(QueryCreator.DFChoiceBox(mDFInfo.Fields["ProductLine_ID"], B3UnitedInfosConsts.DataSources.产品线全部), "ProductLine_ID"));
            layoutManager["ProductLine_ID"].NotAutoAddToContainer = true;
            var config = new AutoLayoutConfig {
                Cols = 8, DefaultLabelWidth = 4
            };

            config.Add("Name");
            config.Add("Spec");
            config.Add("Code");
            config.Add("GoodsProperty_ID");
            config.Add("存货属性分类");
            config.Add("ProductLine_ID");
            layoutManager.Config = config;

            var section = mPageLayoutManager.AddSection(B3FrameworksConsts.PageLayouts.QueryConditions, B3FrameworksConsts.PageLayouts.QueryConditions_DisplayName);

            section.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo as DFInfo);
            vPanel.Add(layoutManager.CreateLayout());
            base.CreateQuery(vPanel);
        }
예제 #13
0
        protected override void BuildBody(Control container)
        {
            var layoutManager = new LayoutManager("main", mDFInfo, mDFContainer);

            layoutManager.Add("Time", new DFDateInput());
            var planNumberBox = InputCreator.DFChoiceBox(B3ButcheryDataSource.计划号, "PlanNumber_Name", true);

            layoutManager.Add("PlanNumber_ID", planNumberBox);
            var config = new AutoLayoutConfig();

            config.Add("Time");
            config.Add("PlanNumber_ID");
            config.Add("AccountingUnit_ID");
            config.Add("Department_ID");
            config.Add("ProductionUnit_ID");

            config.Add("Employee_ID");
            config.Add("ProductLinks_ID");
            config.Add("FrozenStore_ID");
            AddProductLinkTemplate(layoutManager, config);
            layoutManager.Config = config;
            container.Controls.Add(layoutManager.CreateLayout());

            var vPanel = container.EAdd(new VLayoutPanel());

            CreateOutputDetailPanel(vPanel);
        }
예제 #14
0
        protected override void BuildBasePropertiesEditor(TitlePanel titlePanel, PageLayoutSection pageLayoutSection)
        {
            var layoutManager = new LayoutManager("", mDFInfo, mDFContainer);

            layoutManager.Add("PlantCode", InputCreator.DFMemo("厂家标识"));
            layoutManager.Add("CustomTaxRate", new DFValueLabel(mDFInfo.Fields["CustomTaxRate"]));
            var config = new AutoLayoutConfig();

            if (IsNewDialog)
            {
                config.Add("Goods_Name");
            }
            else
            {
                config.Add("Goods_ID");
            }
            config.Add("Goods_Code");
            config.Add("Name");
            config.Add("ProductionDate");
            config.Add("InStoreDate");
            config.Add("InStorePrice");
            config.Add("PlantCode");
            config.Add("Remark");
            config.Add("CustomTaxRate");
            pageLayoutSection.SetRequired("Goods_ID", "Name");
            pageLayoutSection.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo);

            layoutManager.Config = config;
            titlePanel.Controls.Add(layoutManager.CreateLayout());
        }
예제 #15
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var layoutManager = new LayoutManager("", mDFInfo, mQueryContainer);

            var config = new AutoLayoutConfig();

            config.Add("ID");
            config.Add("CreateUser_Name");
            config.Add("CheckUser_Name");
            config.Add("AccountingUnit_ID");
            config.Add("Employee_ID");
            config.Add("Customer_ID");
            config.Add("Date");
            config.Add("BillState");
            config.Add("ProductionUnit_ID");
            config.Add("IsLocked");
            AddTagQueryInput(layoutManager, config);

            var section = mPageLayoutManager.AddSection(B3FrameworksConsts.PageLayouts.QueryConditions, B3FrameworksConsts.PageLayouts.QueryConditions_DisplayName);

            section.SetRequired("BillState");
            section.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo);

            layoutManager.Config = config;

            vPanel.Add(layoutManager.CreateLayout());
        }
예제 #16
0
        protected override void BuildBody(Control container)
        {
            var mainInfo      = container.EAdd(new TitlePanel("基本信息"));
            var layoutManager = new LayoutManager("main", mDFInfo, mDFContainer);

            layoutManager.Add("ProductPlan_ID", InputCreator.DFChoiceBox(B3ButcheryDataSource.计划号, "ProductPlan_Name"));
            var config = new AutoLayoutConfig();

            config.Add("AccountingUnit_ID");
            config.Add("Department_ID");
            config.Add("Employee_ID");
            config.Add("Store_ID");
            config.Add("InStoreType_ID");
            config.Add("InStoreDate");
            config.Add("CheckEmployee_ID");
            config.Add("CheckDate");
            config.Add("ProductPlan_ID");
            layoutManager.Config = config;
            var section = mPageLayoutManager.AddSection("BaseProperties", "基本属性");

            section.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo);
            mainInfo.Controls.Add(layoutManager.CreateLayout());
            mainInfo.SetPageLayoutSetting(mPageLayoutManager, section.Name);
            CreateDetailPanel(container.EAdd(new TitlePanel("明细信息")));
        }
예제 #17
0
 private void SetupLayoutManagers()
 {
     layoutManagers = new Dictionary <String, LayoutManager>();
     for (int i = 0; i < MaximumNumberOfPlayers; i++)
     {
         layoutManagers.Add(LayoutManager.GetManagerKey(i, true), LayoutManager.CreateLayout(i, true, PlayerTileRootGrid));
         layoutManagers.Add(LayoutManager.GetManagerKey(i, false), LayoutManager.CreateLayout(i, false, PlayerTileRootGrid));
     }
 }
예제 #18
0
        protected override void BuildBasePropertiesEditor(TitlePanel titlePanel, PageLayoutSection pageLayoutSection)
        {
            var layoutManager = new LayoutManager("", mDFInfo, mDFContainer);

            if (mMinGoodsProperty != null)
            {
                if (!string.IsNullOrEmpty(mMinGoodsProperty.GoodsCodeRole))
                {
                    layoutManager.Add("Code", new DFValueLabel());
                }

                if (!string.IsNullOrEmpty(mMinGoodsProperty.GoodsNameRole))
                {
                    layoutManager.Add("Name", new DFValueLabel());
                }
            }

            var config = new AutoLayoutConfig();

            layoutManager.Config = config;
            config.Add("GoodsProperty_ID");
            config.Add("GoodsCategory_ID");

            config.Add("Name");
            config.Add("PrintShortName");
            config.Add("Code");
            config.Add("Spec");
            config.Add("Feature");
            config.Add("Origin");
            config.Add("Brand");
            config.Add("ProductLine_ID");
            config.Add("TaxRate");
            config.Add("MainUnit");
            config.Add("SecondUnit");
            config.Add("MainUnitRatio");
            config.Add("SecondUnitRatio");
            config.Add("UnitConvertDirection");
            config.Add("Barcode");
            config.Add("OuterCode");
            config.Add("SecondUnitII");
            config.Add("SecondUnitII_MainUnitRatio");
            config.Add("SecondUnitII_SecondUnitRatio");
            config.Add("StandPlateNumber");
            config.Add("StandardSecondNumber");
            config.Add("IsSemiGoods");
            config.Add("ProductShift_ID");
            config.Add("PackageModel");

            config.Add("Remark");



            pageLayoutSection.SetRequired("GoodsProperty_ID", "Name", "Code");
            pageLayoutSection.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo);

            titlePanel.Controls.Add(layoutManager.CreateLayout());
        }
예제 #19
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var layout = new LayoutManager("Main", mDFInfo, mQueryContainer);

            layout.Add("ID", mQueryContainer.Add(new DFTextBox(mDFInfo.Fields["ID"]), "ID"));
            layout["ID"].NotAutoAddToContainer = true;

            layout.Add("Date", new SimpleLabel("日期"), QueryCreator.DateRange(mDFInfo.Fields["Date"], mQueryContainer, "MinDate", "MaxDate"));
            layout["Date"].NotAutoAddToContainer = true;


            layout.Add("AccountingUnit_ID", new SimpleLabel("会计单位"),
                       QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["AccountingUnit_ID"], mQueryContainer, "AccountingUnit_ID", B3FrameworksConsts.DataSources.授权会计单位全部));
            layout["AccountingUnit_ID"].NotAutoAddToContainer = true;

            layout.Add("Department_ID", new SimpleLabel("部门"),
                       QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["Department_ID"], mQueryContainer, "Department_ID", B3FrameworksConsts.DataSources.部门全部));
            layout["Department_ID"].NotAutoAddToContainer = true;

            layout.Add("Employee_ID", new SimpleLabel("经办人"),
                       QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["Employee_ID"], mQueryContainer, "Employee_ID", B3FrameworksConsts.DataSources.员工全部));
            layout["Employee_ID"].NotAutoAddToContainer = true;

            layout.Add("Store_ID", new SimpleLabel("仓库"),
                       QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["Store_ID"], mQueryContainer, "Store_ID", B3FrameworksConsts.DataSources.可用仓库全部));
            layout["Store_ID"].NotAutoAddToContainer = true;

            layout.Add("Goods_ID", new SimpleLabel("存货"),
                       QueryCreator.DFChoiceBoxEnableMultiSelection(mDFInfo.Fields["ID"], mQueryContainer, "Goods_ID", B3UnitedInfosConsts.DataSources.存货));
            layout["Goods_ID"].NotAutoAddToContainer = true;

            var state = mQueryContainer.Add(B3ButcheryCustomInputCreator.一般单据状态(mDFInfo.Fields["BillState"], true, false, true, true), "BillState");

            ((ChoiceBox)state).Value  = 单据状态.已审核.Value.ToString() + "|";
            state.DisplayValue        = "已审核;";
            state.EnableInputArgument = true;
            layout.Add("BillState", state);
            layout["BillState"].NotAutoAddToContainer = true;


            var config = new AutoLayoutConfig {
                Cols = 2
            };

            config.Add("ID");
            config.Add("AccountingUnit_ID");
            config.Add("Date");
            config.Add("Department_ID");
            config.Add("Employee_ID");
            config.Add("Store_ID");
            config.Add("Goods_ID");
            config.Add("BillState");
            layout.Config = config;

            vPanel.Add(layout.CreateLayout());
        }
예제 #20
0
        protected override void BuildBody(Control parent)
        {
            var layoutManager = new LayoutManager("", mDFInfo, mDFContainer);

            var config = new AutoLayoutConfig();

            config.Add("Name");
            config.Add("Remark");
            layoutManager.Config = config;
            parent.Controls.Add(layoutManager.CreateLayout());
        }
예제 #21
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var customPanel = new LayoutManager("Main", mainInfo, mQueryContainer);

            customPanel.Add("ID", QueryCreator.DFTextBox(mainInfo.Fields["ID"]));
            customPanel.Add("AccountingUnit_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["AccountingUnit_ID"], mQueryContainer, "AccountingUnit_ID", DataKind.授权会计单位全部));
            customPanel["AccountingUnit_ID"].NotAutoAddToContainer = true;
            customPanel.Add("Department_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["Department_ID"], mQueryContainer, "Department_ID", DataKind.授权部门全部));
            customPanel["Department_ID"].NotAutoAddToContainer = true;
            customPanel.Add("Store_ID", _storeInput            = QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["Store_ID"], mQueryContainer, "Store_ID", DataKind.授权仓库全部), false);
            customPanel["Store_ID"].NotAutoAddToContainer      = true;
            customPanel.Add("InStoreType_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["InStoreType_ID"], mQueryContainer, "InStoreType_ID", B3ButcheryDataSource.屠宰分割入库类型全部));
            customPanel["InStoreType_ID"].NotAutoAddToContainer = true;
            customPanel.Add("CheckDate", QueryCreator.DateRange(mainInfo.Fields["CheckDate"], mQueryContainer, "MinCheckDate", "MaxCheckDate"));

            customPanel.Add("InStoreDate", new SimpleLabel("生产日期"), QueryCreator.DateRange(detailInfo.Fields["ProductionDate"], mQueryContainer, "MinProductionDate", "MaxProductionDate"));
            customPanel.Add("ProductPlan_ID", new SimpleLabel("生产计划号"), QueryCreator.DFChoiceBoxEnableMultiSelection(detailInfo.Fields["ProductPlan_ID"], mQueryContainer, "ProductPlan_ID", B3ButcheryDataSource.计划号));
            customPanel["ProductPlan_ID"].NotAutoAddToContainer = true;
            customPanel.Add("Remark", QueryCreator.DFTextBox(mainInfo.Fields["Remark"]));
            DFChoiceBox goodsInput;

            customPanel.Add("Goods_ID", new SimpleLabel("存货名称"), goodsInput = QueryCreator.DFChoiceBoxEnableMultiSelection(detailInfo.Fields["Goods_ID"], mQueryContainer, "Goods_ID", B3ButcheryDataSource.存货带编号全部));
            goodsInput.PlaceHolder = "名称 编号 简拼";
            customPanel["Goods_ID"].NotAutoAddToContainer = true;
            customPanel.Add("Origin", new SimpleLabel("存货产地"), goodsOrigin   = QueryCreator.DFTextBox(detailInfo.Fields["Goods_Code"]));
            customPanel.Add("Goods_Name", new SimpleLabel("存货名称"), goodsName = QueryCreator.DFTextBox(detailInfo.Fields["Goods_Name"]));
            customPanel.Add("Goods_Code", new SimpleLabel("存货编号"), QueryCreator.DFTextBox(detailInfo.Fields["Goods_Code"]));
            customPanel.Add("Goods_Brand", new SimpleLabel("存货品牌"), QueryCreator.DFChoiceBox(detailInfo.Fields["Goods_Name"], B3ButcheryDataSource.存货品牌));
            customPanel.Add("GoodsProperty_ID", new SimpleLabel("存货属性"), QueryCreator.DFChoiceBox(detailInfo.Fields["ID"], B3UnitedInfos.B3UnitedInfosConsts.DataSources.存货属性全部));
            customPanel.Add("PropertyCatalog_ID", new SimpleLabel("属性分类"), QueryCreator.DFChoiceBox(detailInfo.Fields["ID"], B3UnitedInfos.B3UnitedInfosConsts.DataSources.存货属性分类全部));
            customPanel.Add("DRemark", new SimpleLabel("备注"), QueryCreator.DFTextBox(detailInfo.Fields["Remark"]));
            customPanel.Add("CargoSpace_ID", new SimpleLabel("货位"), cargoSpaceName = QueryCreator.DFChoiceBoxEnableMultiSelection(detailInfo.Fields["CargoSpace_ID"], mQueryContainer, "CargoSpace_ID", B3ButcheryDataSource.货位), false);
            customPanel["CargoSpace_ID"].NotAutoAddToContainer = true;

            customPanel.Add("ProductLine_ID", new SimpleLabel("产品线"), _productLine = QueryCreator.DFChoiceBoxEnableMultiSelection(detailInfo.Fields["ID"], mQueryContainer, "ProductLine_ID", B3UnitedInfosConsts.DataSources.产品线全部));
            customPanel["ProductLine_ID"].NotAutoAddToContainer = true;

            customPanel.Add("ProductLineCategory_ID", new SimpleLabel("产品线分类"), _producttypeLine = QueryCreator.DFChoiceBoxEnableMultiSelection(detailInfo.Fields["ID"], mQueryContainer, "ProductLineCategory_ID", B3UnitedInfosConsts.DataSources.产品线分类));
            customPanel["ProductLineCategory_ID"].NotAutoAddToContainer = true;



            AddOtherQuery(customPanel, mainInfo);
            customPanel.Add("BillState", QueryCreator.一般单据状态(mainInfo.Fields["BillState"]));
            if (_useBrand)
            {
                customPanel.Add("BrandItem_ID", new SimpleLabel("品牌项"), QueryCreator.DFChoiceBoxEnableMultiSelection(detailInfo.Fields["ID"], B3UnitedInfosConsts.DataSources.品牌项));
            }
            var config = customPanel.CreateDefaultConfig(4);

            config.Expand = false;
            TagWebUtil.AddTagQueryInput(mDmoTypeID, customPanel, config, mQueryContainer);
            vPanel.Add(customPanel.CreateLayout());
        }
예제 #22
0
        protected override void BuildBasePropertiesEditor(TitlePanel titlePanel, PageLayoutSection section)
        {
            var layoutManager = new LayoutManager("main", mDFInfo, mDFContainer);
            var config        = new AutoLayoutConfig();

            config.Add("Name");
            config.Add("Packing_Attr");
            layoutManager.Config = config;
            section.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo);
            titlePanel.Controls.Add(layoutManager.CreateLayout());
        }
예제 #23
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var customPanel = new LayoutManager("Main", mainInfo, mQueryContainer);

            customPanel.Add("PlanNumber_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["PlanNumber_ID"], mQueryContainer, "PlanNumber_ID", B3ButcheryDataSource.计划号));
            customPanel["PlanNumber_ID"].NotAutoAddToContainer = true;

            customPanel.Add("AccountingUnit_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["AccountingUnit_ID"], mQueryContainer, "AccountingUnit_ID", DataKind.授权会计单位全部));
            customPanel["AccountingUnit_ID"].NotAutoAddToContainer = true;
            customPanel.CreateDefaultConfig(2).Expand = false;
            vPanel.Add(customPanel.CreateLayout());
        }
예제 #24
0
        /// <summary>
        /// Creates a layout with the specified name and optionally makes it current.
        /// </summary>
        /// <param name="name">The name of the viewport.</param>
        /// <param name="select">Whether to select it.</param>
        /// <returns>The ObjectId of the newly created viewport.</returns>
        public static ObjectId CreateAndMakeLayoutCurrent(this LayoutManager lm, string name, bool select = true)
        {
            var id = lm.GetLayoutId(name);

            if (!id.IsValid)
            {
                id = lm.CreateLayout(name);
            }
            if (select)
            {
                lm.CurrentLayout = name;
            }
            return(id);
        }
예제 #25
0
        protected override void BuildBody(Control container)
        {
            var layoutManager = new LayoutManager("main", mDFInfo, mDFContainer);
            var config        = new AutoLayoutConfig();

            config.Add("Name");
            config.Add("AccountingUnit_ID");
            config.Add("Department_ID");
            config.Add("ProductLinks_ID");
            config.Add("CollectType");
            config.Add("Remark");
            layoutManager.Config = config;
            container.Controls.Add(layoutManager.CreateLayout());
            var vPanel = container.EAdd(new VLayoutPanel());

            CreateDetailPanel(vPanel);
        }
예제 #26
0
        protected override void BuildBasePropertiesEditor(TitlePanel titlePanel, PageLayoutSection pageLayoutSection)
        {
            var layoutManager = new LayoutManager("", mDFInfo, mDFContainer);
            var config        = new AutoLayoutConfig();

            layoutManager.Config = config;
            config.Add("AccountingUnit_ID");
            config.Add("Department_ID");
            config.Add("Name");
            config.Add("Date");
            config.Add("WorkshopCategory_ID");
            config.Add("Remark");
            pageLayoutSection.SetRequired("AccountingUnit_ID");
            pageLayoutSection.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo);

            titlePanel.Controls.Add(layoutManager.CreateLayout());
        }
예제 #27
0
        protected override void BuildBody(Control container)
        {
            var layoutManager = new LayoutManager("main", mDFInfo, mDFContainer);

            layoutManager.Add("ChargePerson_ID", InputCreator.DFChoiceBox("授权员工", "ChargePerson_Name", true));
            var config = new AutoLayoutConfig();

            config.Add("Name");
            config.Add("ProductLine_ID");
            config.Add("ChargePerson_ID");
            layoutManager.Config = config;
            container.Controls.Add(layoutManager.CreateLayout());
            var vPanel = container.EAdd(new VLayoutPanel());

            CreateInputDetailPanel(vPanel);
            CreateOutputDetailPanel(vPanel);
        }
예제 #28
0
        protected override void AddQueryControls(VLayoutPanel vPanel)
        {
            var customPanel = new LayoutManager("Main", mainInfo, mQueryContainer);

            //查询条件包括::{会计单位}、{计划号}、{存货名称}、{存货编码}

            customPanel.Add("AccountingUnit_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["AccountingUnit_ID"], mQueryContainer, "AccountingUnit_ID", DataKind.授权会计单位全部));
            customPanel["AccountingUnit_ID"].NotAutoAddToContainer = true;

            customPanel.Add("PlanNumber_ID", QueryCreator.DFChoiceBoxEnableMultiSelection(mainInfo.Fields["PlanNumber_ID"], mQueryContainer, "PlanNumber_ID", B3ButcheryDataSource.计划号));
            customPanel["PlanNumber_ID"].NotAutoAddToContainer = true;

            customPanel.Add("Goods_Name", new SimpleLabel("存货名称"), QueryCreator.DFTextBox(mainInfo.Fields["AccountingUnit_Name"]));
            customPanel.Add("Goods_Code", new SimpleLabel("存货编号"), QueryCreator.DFTextBox(mainInfo.Fields["Department_Name"]));
            customPanel.CreateDefaultConfig(2).Expand = false;
            vPanel.Add(customPanel.CreateLayout());
        }
예제 #29
0
        protected override void BuildBasePropertiesEditor(TitlePanel titlePanel, PageLayoutSection section)
        {
            var layoutManager = new LayoutManager("main", mDFInfo, mDFContainer);

            //var config2 = new B3ButcheryConfig();
            //con
            var config = new AutoLayoutConfig();

            config.Add("AccountingUnit_ID");
            config.Add("Date");
            config.Add("Department_ID");
            config.Add("Customer_ID");
            config.Add("Employee_ID");
            config.Add("ProductionUnit_ID");
            config.Add("Remark");
            layoutManager.Config = config;
            section.ApplyLayout(layoutManager, config, mPageLayoutManager, mDFInfo);
            titlePanel.Controls.Add(layoutManager.CreateLayout());
        }
예제 #30
0
        protected override void BuildBody(Control container)
        {
            var layoutManager = new LayoutManager("main", mDFInfo, mDFContainer);
            var config        = new AutoLayoutConfig();

            config.Add("Date");
            config.Add("EndDate");
            config.Add("AccountingUnit_ID");
            config.Add("Department_ID");
            config.Add("Employee_ID");
            config.Add("PlanNumber");
            config.Add("ProductType");
            layoutManager.Config = config;
            container.Controls.Add(layoutManager.CreateLayout());

            var planNumberPanel = new HLayoutPanel();

            container.Controls.Add(planNumberPanel);
            planNumberButton = new TSButton();
            planNumberPanel.Add(planNumberButton).Click += delegate
            {
                if (Dmo.BillState == 单据状态.已审核 && !string.IsNullOrEmpty(Dmo.PlanNumber))
                {
                    using (var context = new TransactionContext())
                    {
                        var update = new DQUpdateDom(typeof(ProductPlan));
                        update.Where.Conditions.Add(DQCondition.EQ("PlanNumber", Dmo.PlanNumber));
                        update.Columns.Add(new DQUpdateColumn("PlanNumbers", true));

                        context.Session.ExecuteNonQuery(update);
                        context.Commit();
                    }

                    Dmo.PlanNumbers = true;
                    mBL.Update(Dmo);
                }
                AspUtil.RedirectAndAlert(this, Request.RawUrl, "计划号关闭成功");
            };
            var vPanel = container.EAdd(new VLayoutPanel());

            CreateInputDetailPanel(vPanel);
            CreateOutputDetailPanel(vPanel);
        }