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; } }
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); }
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 }
/// <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); } }