2016-08-24 4 views
0

Mabuhay!Datagridviewを使用して表2に列Aの値を追加する方法

これを行う最も効率的で便利な方法は何ですか?

私は選択クエリを持って、私のフィルタのdatagridviewベースに配置します。それは5列を持っています。私はそのDatagridviewの列CAがすでに列3にある表2に存在するかどうかを知りたいですか?

SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=db;User ID=sa;Password=pw"); 
      // DateTime dt = new DateTime(); 
      //dt = DateTime.Now.ToString(); 
      SqlDataAdapter sda = new SqlDataAdapter("SELECT max(PurchaseOrder.POTitle) as Description,sum(PurchaseOrderEntry.Price *PurchaseOrderEntry.QuantityOrdered) as Amount, max(PurchaseOrder.PONumber)as PONumber, " + 
         " max(PurchaseOrderEntry.OrderNumber) as BoxCount, max(PurchaseOrderEntry.OrderNumber) as PLC,max(PurchaseOrderEntry.OrderNumber) as Branch, max(PurchaseOrderEntry.OrderNumber) as PreparedBy, max(PurchaseOrderEntry.OrderNumber) as CheckedBy " + 
         " FROM PurchaseOrder LEFT OUTER JOIN" + 
         " PurchaseOrderEntry ON PurchaseOrder.ID = PurchaseOrderEntry.PurchaseOrderID" + 
         " WHERE (PurchaseOrder.Remarks like '%" + tanggapan.Text + "%') AND (PurchaseOrder.DateCreated BETWEEN '" + dateTimePicker1.Text + "' AND '" + dateTimePicker2.Text + "' and PurchaseOrder.OtherStoreID = '" + branch.Text + "') Group By PurchaseOrder.PONumber", con); 
      DataTable dt = new DataTable(); 
      sda.Fill(dt); 
      dataGridView1.DataSource = dt; 

これは私のクエリフィルタを示しています。 PurchaseOrderEntry.OrderNumberがすでに自分のレコードに存在する場合、どのようにすればいいのかを知ることができます。

ありがとうございました! Chris

答えて

0

このコードを自分の作品に追加しました。現在作業中です。

DataTable dt = new DataTable(); 
dt.Clear(); 
dt.Reset(); 

con.Close(); 

adaptors1.SelectCommand = con.CreateCommand(); 
adaptors1.SelectCommand.CommandText = "Select TOP 1 [ponumber],[clref] from [ISSPandayan].[dbo].[" + branch.Text + "] where [ponumber] = '" + dr.Cells["ponumber"].Value + "' ORDER BY [clref] ASC"; 
adaptors1.Fill(dt); 

// select query para malam kung existing ponumber 
if (dt.Rows.Count == 1) 
{ 
    adaptorss.InsertCommand.Parameters.Add("@already", SqlDbType.VarChar).Value = dt.Rows[0][1].ToString(); 
} 
else 
{ 
    adaptorss.InsertCommand.Parameters.Add("@already", SqlDbType.VarChar).Value = " "; 
} 

//adaptorss.InsertCommand.Parameters.Add("@already", SqlDbType.VarChar).Value = ""; 

//MessageBox.Show(Convert.ToString(dr.Cells["description"].Value)); 
con.Close(); 
con.Open(); 

adaptorss.InsertCommand.ExecuteNonQuery(); 
adaptorss.InsertCommand.Parameters.Clear(); 
関連する問題