using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using CoreFS.CA06; using Infragistics.Win.UltraWinGrid; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Core.StlMes.Client.SaleOrder.Dialog { public partial class FrmOrdNoSelect : FrmBase { public FrmOrdNoSelect() { InitializeComponent(); } public FrmOrdNoSelect(OpeBase _ob) { InitializeComponent(); this.ob = _ob; } private string[] ordArr = null; /// /// 合同号 /// public string[] OrdArr { get { return ordArr; } set { ordArr = value; } } private void FrmOrdNoSelect_Load(object sender, EventArgs e) { QueryOrderNo(); } private void QueryOrderNo() { DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.CoreOrderAuthentication.queryOrdNo", null, this.ob); GridHelper.CopyDataToDatatable(ref dt, ref dataTable1, true); } private void btn_OK_Click(object sender, EventArgs e) { gdOrd.UpdateData(); UltraGridRow[] row = gdOrd.Rows.AsQueryable().Where(a => a.Cells["CHK"].Value.ToString().ToUpper() == "TRUE").ToArray(); if (row.Length <= 0) { MessageUtil.ShowWarning("请选择合同号!"); return; } if(row.Length>300) { MessageUtil.ShowWarning("鉴于系统数据量过大,合同号的个数不能超过300个!"); return; } string[] ordArr = new string[row.Length]; for (int i = 0; i < row.Length; i++) { ordArr[i] = row[i].Cells["ORDER_NO"].Value.ToString(); } this.OrdArr = ordArr; DialogResult = DialogResult.OK; } private void btn_Cancel_Click(object sender, EventArgs e) { this.Close(); } private void txtOrd_TextChanged(object sender, EventArgs e) { string txtOrd = this.txtOrd.Text.Trim(); if (txtOrd != "" && txtOrd != "搜索") { UltraGridBand band = this.gdOrd.DisplayLayout.Bands[0]; band.ColumnFilters["ORDER_NO"].FilterConditions.Clear(); band.ColumnFilters["ORDER_NO"].FilterConditions.Add(FilterComparisionOperator.Contains, txtOrd); } else { UltraGridBand band = this.gdOrd.DisplayLayout.Bands[0]; band.ColumnFilters["ORDER_NO"].FilterConditions.Clear(); } } private void txtOrd_AfterEnterEditMode(object sender, EventArgs e) { string txtOrd = this.txtOrd.Text.Trim(); if (txtOrd == "搜索") this.txtOrd.Text = ""; } private void txtOrd_AfterExitEditMode(object sender, EventArgs e) { string txtOrd = this.txtOrd.Text.Trim(); if (txtOrd == "") this.txtOrd.Text = "搜索"; } private void gdOrd_AfterSelectChange(object sender, AfterSelectChangeEventArgs e) { foreach (var row in gdOrd.Selected.Rows) { if (row.GetType() != typeof(Infragistics.Win.UltraWinGrid.UltraGridGroupByRow)) { row.Cells["CHK"].Value = true; } } } } }