Exemplo n.º 1
0
        public override void AfterRender(IPart Part, EventArgs args)
        {
            base.AfterRender(Part, args);
            ToPoTryCalcUIForListFormWebPart p = (ToPoTryCalcUIForListFormWebPart)Part;
            UFGrid g = (UFGrid)Part.GetUFControlByName(Part.TopLevelContainer, "DataGrid01");

            g.AllowAddRow    = false;
            g.AllowDeleteRow = false;
            g.AllowInsertRow = false;
            //试算页面选中需要进行试算的请购行
            IUIRecordCollection arr = p.Model.PRLine.SelectRecords;

            //循环试算结果集合,试算结果集合的PrimaryKey是料号的ID
            for (int j = 0; j < p.Model.TryCalcView.Records.Count; j++)
            {
                for (int i = 0; i < arr.Count; i++)
                {
                    PRLineRecord r = (PRLineRecord)arr[i];
                    if (r.ItemInfo_ItemID_PurchaseInfo_PurchaseQuotaMode == 4)                                   //料号的分配方式是4:按比例分配,则设置对应的试算结果行不可编辑供应商
                    {
                        if (r.ItemInfo_ItemID.ToString() == p.Model.TryCalcView.Records[j]["ItemID"].ToString()) //请购行的料号ID与试算结果的主键(料号ID)比较
                        {
                            g.SetCellDisabled(p.Model.TryCalcView.Records[j].Index, "Supplier");
                        }
                    }
                }
                //设置试算结果的数量不可编辑
                g.SetCellDisabled(p.Model.TryCalcView.Records[j].Index, "ToPOQtyTU");
                g.SetCellDisabled(p.Model.TryCalcView.Records[j].Index, "ToPOQtyTBU");
            }
        }
 private void btnRefresh_Click_Extend(object sender, EventArgs e)
 {
     if (this.CurrentState["PurchaseOrderView"] != null)
     {
         IUIRecordCollection iuiRercords = this.CurrentState["PurchaseOrderView"] as IUIRecordCollection;
         foreach (IUIRecord record in iuiRercords)
         {
             UFIDA.U9.Cust.GS.FI.BatchPaymentForPOUIModel.PurchaseOrderViewRecord poRecord = record as UFIDA.U9.Cust.GS.FI.BatchPaymentForPOUIModel.PurchaseOrderViewRecord;
             if (poRecord != null)
             {
                 PurchaseOrderViewRecord newRecord = this.Model.PurchaseOrderView.AddNewUIRecord();
                 newRecord.DocumentType    = poRecord.DocumentType;
                 newRecord.POOrg           = poRecord.POOrg;
                 newRecord.POOrg_Code      = poRecord.POOrg_Code;
                 newRecord.POOrg_Name      = poRecord.POOrg_Name;
                 newRecord.PODocNo         = poRecord.PODocNo;
                 newRecord.PODocID         = poRecord.PODocID;
                 newRecord.BusDate         = poRecord.BusDate;
                 newRecord.Supplier        = poRecord.Supplier;
                 newRecord.Supplier_Code   = poRecord.Supplier_Code;
                 newRecord.Supplier_Name   = poRecord.Supplier_Name;
                 newRecord.Currency        = poRecord.Currency;
                 newRecord.Currency_Code   = poRecord.Currency_Code;
                 newRecord.Currency_Name   = poRecord.Currency_Name;
                 newRecord.Currency_Symbol = poRecord.Currency_Symbol;
                 newRecord.Currency_MoneyRound_Precision  = poRecord.Currency_MoneyRound_Precision;
                 newRecord.Currency_MoneyRound_RoundType  = poRecord.Currency_MoneyRound_RoundType;
                 newRecord.Currency_MoneyRound_RoundValue = poRecord.Currency_MoneyRound_RoundValue;
                 newRecord.Buyer            = poRecord.Buyer;
                 newRecord.Buyer_Code       = poRecord.Buyer_Code;
                 newRecord.Buyer_Name       = poRecord.Buyer_Name;
                 newRecord.Dept             = poRecord.Dept;
                 newRecord.Dept_Code        = poRecord.Dept_Code;
                 newRecord.Dept_Name        = poRecord.Dept_Name;
                 newRecord.TotalMoney       = poRecord.TotalMoney;
                 newRecord.PrePayMoney      = poRecord.PrePayMoney;
                 newRecord.PayMoney         = poRecord.PayMoney;
                 newRecord.TotalPayRedMoney = poRecord.TotalPayRedMoney;
                 newRecord.PreApplyMoney    = poRecord.PreApplyMoney;
                 newRecord.RedMoney         = poRecord.RedMoney;
                 newRecord.MoveMoney        = poRecord.MoveMoney;
                 newRecord.IntoMoney        = poRecord.IntoMoney;
                 newRecord.CanPreMoney      = poRecord.CanPreMoney;
                 //newRecord.ThisMoveMoney = poRecord.ThisPreMoney;
             }
         }
         this.CurrentState["PurchaseOrderView"] = null;
     }
 }
Exemplo n.º 3
0
        public override void AfterRender(IPart Part, EventArgs args)
        {
            base.AfterRender(Part, args);
            ToPoTryCalcUIFormWebPart p = (ToPoTryCalcUIFormWebPart)Part;
            //获取页面上的DataGrid
            UFGrid g = (UFGrid)Part.GetUFControlByName(Part.TopLevelContainer, "DataGrid01");

            //设置DataGrid01不可新增、插入、删除
            g.AllowAddRow    = false;
            g.AllowDeleteRow = false;
            g.AllowInsertRow = false;

            //试算页面选中需要进行试算的请购行
            IUIRecordCollection arr = p.Model.PR_PRLineList.SelectRecords;

            //循环试算结果集合,试算结果集合的PrimaryKey是料号的ID
            for (int j = 0; j < p.Model.TryCalcView.Records.Count; j++)
            {
                for (int i = 0; i < arr.Count; i++)
                {
                    PR_PRLineListRecord r = (PR_PRLineListRecord)arr[i];
                    if (r.ItemInfo_ItemID_PurchaseInfo_PurchaseQuotaMode == 4)                                   //料号的分配方式是4:按比例分配,则设置对应的试算结果行不可编辑供应商
                    {
                        if (r.ItemInfo_ItemID.ToString() == p.Model.TryCalcView.Records[j]["ItemID"].ToString()) //请购行的料号ID与试算结果的主键(料号ID)比较
                        {
                            g.SetCellDisabled(p.Model.TryCalcView.Records[j].Index, "Supplier");
                        }
                    }
                }
                //设置试算结果的数量不可编辑
                g.SetCellDisabled(p.Model.TryCalcView.Records[j].Index, "ToPOQtyTU");
                g.SetCellDisabled(p.Model.TryCalcView.Records[j].Index, "ToPOQtyTBU");
            }

            //UFSoft.UBF.UI.AtlasHelper.RegisterClientScript(p.Page, p.Page.GetType(), "disabledategrid", "$().ready(function(){ $('#u_S_S1_DataGrid01_MainBody>table>tbody>tr>td').click(function(){$('#u_S_S1_DataGrid01_MainBody>table>tbody>tr>td input').attr('disabled', 'disabled');});});", true);
        }
Exemplo n.º 4
0
        public override void AfterEventProcess(UFSoft.UBF.UI.IView.IPart Part, string eventName, object sender, EventArgs args)
        {
            base.AfterEventProcess(Part, eventName, sender, args);
            //if (UFIDA.U9.UI.PDHelper.PDContext.Current.OrgRef.CodeColumn != "J002") return;//组织必须等于贸易中心  "1001411156753998"
            if (!UFIDA.U9.Cust.GS.FT.PlugInUI.PubHelperUI.SOUIHelperExtend.IsTradeCenterOrg())
            {
                return;                                                                               //组织必须等于贸易中心
            }
            string strMeg = string.Empty;

            UFSoft.UBF.UI.WebControlAdapter.UFWebButton4ToolbarAdapter webButton = sender as UFSoft.UBF.UI.WebControlAdapter.UFWebButton4ToolbarAdapter;
            #region//复制按钮
            if (webButton != null && webButton.Action == "CopyClick")
            {
                part = Part;
                IUIRecord record = this.part.Model.Views["SO"].FocusedRecord;
                if (record != null)
                {
                    if (!string.IsNullOrEmpty(record["DescFlexField_PrivateDescSeg5"] + ""))
                    {
                        record["DescFlexField_PrivateDescSeg5"] = string.Empty;
                    }
                    if (!string.IsNullOrEmpty(record["DescFlexField_PrivateDescSeg6"] + ""))
                    {
                        record["DescFlexField_PrivateDescSeg6"] = string.Empty;
                    }
                    if (!string.IsNullOrEmpty(record["DescFlexField_PrivateDescSeg7"] + ""))
                    {
                        record["DescFlexField_PrivateDescSeg7"] = string.Empty;
                    }
                    if (!string.IsNullOrEmpty(record["DescFlexField_PrivateDescSeg8"] + ""))
                    {
                        record["DescFlexField_PrivateDescSeg8"] = string.Empty;
                    }
                    //是否折扣
                    if (!string.IsNullOrEmpty(record["DescFlexField_PrivateDescSeg1"] + ""))
                    {
                        record["DescFlexField_PrivateDescSeg1"] = "false";
                    }
                    IUIRecordCollection records = this.part.Model.Views["SO_SOLines"].Records;
                    foreach (IUIRecord curRecord in records)
                    {
                        if (!string.IsNullOrEmpty(curRecord["DescFlexField_PrivateDescSeg2"] + ""))
                        {
                            curRecord["DescFlexField_PrivateDescSeg2"] = string.Empty;//调价原因
                        }
                        if (!string.IsNullOrEmpty(curRecord["DescFlexField_PrivateDescSeg6"] + ""))
                        {
                            curRecord["DescFlexField_PrivateDescSeg6"] = "false";//是否佣金
                        }
                        if (!string.IsNullOrEmpty(curRecord["DescFlexField_PrivateDescSeg20"] + ""))
                        {
                            curRecord["DescFlexField_PrivateDescSeg20"] = string.Empty;//已核销数量
                        }
                        if (!string.IsNullOrEmpty(curRecord["DescFlexField_PrivateDescSeg8"] + ""))
                        {
                            curRecord["DescFlexField_PrivateDescSeg8"] = decimal.Zero;; //已出运数量
                        }
                        if (!string.IsNullOrEmpty(curRecord["DescFlexField_PrivateDescSeg16"] + ""))
                        {
                            curRecord["DescFlexField_PrivateDescSeg16"] = decimal.Zero;//实际出运数量
                        }
                    }
                }
            }
            #endregion
        }
Exemplo n.º 5
0
        /// <summary>
        /// 批量拉单
        /// </summary>
        private void BatchCreatePrePayment()
        {
            int selectCount = this.Model.PurchaseOrderView.SelectRecords.Count;

            if (selectCount == 0)
            {
                throw new Exception("未选中数据!");
            }

            DataTable table = new DataTable();

            table.Columns.Add("Supplier", typeof(long));
            table.Columns.Add("Currency", typeof(long));
            table.Columns.Add("POOrg", typeof(long));
            table.Columns.Add("Dept", typeof(long));
            table.Columns.Add("Buyer", typeof(long));

            #region 对选中的数据按照供应商、币种、采购组织、来源组织、采购部门、业务员进行分组
            foreach (PurchaseOrderViewRecord record in this.Model.PurchaseOrderView.SelectRecords)
            {
                decimal preMoney = record.ThisPreMoney ?? decimal.Zero;
                decimal canMoney = record.CanPreMoney ?? decimal.Zero;
                if (preMoney <= 0)
                {
                    throw new Exception("本次预付金额必须大于0!");
                }
                if (preMoney > canMoney)
                {
                    throw new Exception("本次预付金额不能大于可预付金额!");
                }

                StringBuilder strWhere = new StringBuilder(300);
                strWhere.Append("Supplier='" + record.Supplier.ToString() + "'");
                strWhere.Append(" and Currency='" + record.Currency.ToString() + "'");
                strWhere.Append(" and POOrg='" + record.POOrg.ToString() + "'");
                strWhere.Append(" and Dept='" + record.Dept.ToString() + "'");
                strWhere.Append(" and Buyer='" + record.Buyer.ToString() + "'");

                DataRow[] drs = table.Select(strWhere.ToString());
                if (drs != null && drs.Length == 0)
                {
                    DataRow dr = table.NewRow();
                    dr["Supplier"] = record.Supplier;
                    dr["Currency"] = record.Currency;
                    dr["POOrg"]    = record.POOrg;
                    dr["Dept"]     = record.Dept;
                    dr["Buyer"]    = record.Buyer;
                    table.Rows.Add(dr);
                }
            }
            #endregion

            #region 把分单后的数据赋值给创建预付款通知单的BP
            List <UFIDA.U9.Cust.GS.FI.PrePaymentBP.PrePaymentHeadDTOData> headList = new List <PrePaymentBP.PrePaymentHeadDTOData>();
            foreach (DataRow dr in table.Rows)
            {
                UFIDA.U9.Cust.GS.FI.PrePaymentBP.PrePaymentHeadDTOData head = new PrePaymentBP.PrePaymentHeadDTOData();
                if (this.NameValues["DocumentType"] != null)
                {
                    head.DocumentType = long.Parse(this.NameValues["DocumentType"].ToString());
                }
                head.Currency = long.Parse(dr["Currency"].ToString());
                head.Supplier = long.Parse(dr["Supplier"].ToString());
                head.POOrg    = long.Parse(dr["POOrg"].ToString());
                head.Dept     = long.Parse(dr["Dept"].ToString());
                head.Buyer    = long.Parse(dr["Buyer"].ToString());

                LocateExpressionCollection expList = new LocateExpressionCollection();

                LocateExpression exp1 = new LocateExpression("Supplier", ExpressionOperator.Equal, long.Parse(dr["Supplier"].ToString()));
                LocateExpression exp2 = new LocateExpression("Currency", ExpressionOperator.Equal, long.Parse(dr["Currency"].ToString()));
                LocateExpression exp3 = new LocateExpression("POOrg", ExpressionOperator.Equal, long.Parse(dr["POOrg"].ToString()));
                LocateExpression exp4 = new LocateExpression("Dept", ExpressionOperator.Equal, long.Parse(dr["Dept"].ToString()));
                LocateExpression exp5 = new LocateExpression("Buyer", ExpressionOperator.Equal, long.Parse(dr["Buyer"].ToString()));

                expList.Add(exp1);
                expList.Add(exp2);
                expList.Add(exp3);
                expList.Add(exp4);
                expList.Add(exp5);

                ILocateExpression   _ILocateExpression = expList;
                IUIRecordCollection records            = this.Model.PurchaseOrderView.SelectRecords.FindAll(expList);
                head.PrePaymentLineDTOs = new List <PrePaymentBP.PrePaymentLineDTOData>();
                foreach (IUIRecord record in records)
                {
                    PurchaseOrderViewRecord poRecord = record as PurchaseOrderViewRecord;

                    PrePaymentBP.PrePaymentLineDTOData line = new PrePaymentBP.PrePaymentLineDTOData();
                    line.PurchaseOrder = poRecord.PODocID.Value;
                    line.PrePayMoney   = poRecord.ThisPreMoney.Value;
                    head.PrePaymentLineDTOs.Add(line);
                }
                headList.Add(head);
            }
            UFIDA.U9.Cust.GS.FI.PrePaymentBP.Proxy.BatchCreatePrePaymentBPProxy bp = new PrePaymentBP.Proxy.BatchCreatePrePaymentBPProxy();
            bp.PrePaymentHeadDTOs = headList;
            List <UFIDA.U9.Cust.GS.FI.PubBP.CommonDTOData> resultList = bp.Do();

            this.CurrentState["CommonDTODataList"] = resultList;
            #endregion

            if (this.Model.QueryConditionView.FocusedRecord.IsShow.Value)
            {
                NameValueCollection param = new NameValueCollection();
                param.Add("PDPageStatus", "Browse");//这行代码是控制弹开画面为浏览状态
                string FormID = "9b3eb33f-d188-4d0d-8856-aff8c6c23f1e";
                this.ShowModalDialog(FormID, "批量预付结果", "810", "375", null, param, false, false);
            }
        }