第十一篇

本文详细解析了基于单据ID查询相关数据的具体实现步骤。主要包括从数据库中获取单据头信息,更新SQL查询条件,获取单据明细及树形结构数据,并将其显示在界面上,同时对数据进行清理及状态更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这个才是根据单据查询按钮的主要逻辑

当然这个允许恶心不到人 看下一篇吧

 

 1      #region sheetSearch --
 2         private void GetSheet(string getCurrentSheetid, DataRow Row)
 3         {
 4             //step 2
 5             DataTable table = SqlHelper.ExecuteDataTable(connString, @"select * from Uld_od_OrderHead where sheetid ='" + getCurrentSheetid + "'");
 6 
 7             if (table.Rows.Count == 0)
 8                 return;
 9             
10             DataRow SheetHead = table.Rows[0];
11             Keyid = Convert.ToInt32(SheetHead["Keyid"]);
12 
13             //step 3
14             String newSqlTree = sqlTree;
15             newSqlTree = newSqlTree + " AND [Keyid]= " + Keyid;
16             DataTable treeListTable = SqlHelper.ExecuteDataTable(connString, newSqlTree);
17 
18             String newSqlGrid = sqlGrid;
19             newSqlGrid = newSqlGrid + " AND [Keyid]= " + Keyid;
20             DataTable gridListTable = SqlHelper.ExecuteDataTable(connString, newSqlGrid);
21 
22             //step 4
23             if (SheetHead != null)
24             {
25                 ClearControlValue(panelBottom);
26                 ClearControlValue(panelTop);
27             }
28             if (TreeDataView != null && TreeDataView.Count > 0)
29             {
30                 TreeDataView.Table.Clear();
31                 TreeDataView.Table.AcceptChanges();
32             }
33             if (GridDataView != null && GridDataView.Count > 0)
34             {
35                 GridDataView.Table.Clear();
36                 GridDataView.Table.AcceptChanges();
37             }
38 
39 
40             //step 5
41             SheetSetValue(Row, panelBottom);
42             SheetHeadSetValue(SheetHead);
43 
44 
45             treeList1.DataSource = TreeDataView = treeListTable.DefaultView;
46             gridControl1.DataSource = GridDataView = gridListTable.DefaultView;
47 
48             GridDataView.Table.AcceptChanges();
49             TreeDataView.Table.AcceptChanges();
50 
51             //step 6
52             Object TempLineNo = TreeDataView.Table.Compute("max(lineno)""");
53             int tempLineNo = TempLineNo.ToString().Equals(""? 0 : (Int32)TempLineNo;
54 
55 
56             h = tempLineNo < 100 ? 100 : (tempLineNo / 50 + 1* 50;
57 
58             //step 7
59             hasDataChange = false;
60             UpdateAcitonState(AcitonState.SheetSearch);
61             if (dt11 != null && dt11.Rows.Count > 0)
62             {
63                FirstSheet.Enabled= PriviewSheet.Enabled = dt11.Select("单据编号 < '" + Row["单据编号"+
64 
65 "'").Length > 0;                
66 
67             LastSheet.Enabled= NextSheet.Enabled = dt11.Select("单据编号 > '" + Row["单据编号"+ "'").Length >
68 
69 0;
70             }
71         }

 

 

转载于:https://www.cnblogs.com/ruyi/archive/2011/07/29/2121344.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值