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 InvoicingTool { public partial class CheckBillFail : Form { public CheckBillFail(string ServerPartShop_id, bool IsUnmatch) { InitializeComponent(); if (IsUnmatch) { lblTite.Text = "盘点无库存信息商品查询"; SearchUnmatchDataView(ServerPartShop_id); } else { lblTite.Text = "未盘点商品信息查询"; SearchDataView(ServerPartShop_id); } txtSearch.Focus(); } private void SearchDataView(string ServerPartShop_id) { string _selectsql = "SELECT ROW_NUMBER() OVER (ORDER BY CHECKCOMMODITYDETAIL_ID) " + "AS CHECKCOMMODITYDETAIL_ID, A.COMMODITY_BARCODE AS COMMODITY_BARCODE," + "A.COMMODITY_NAME AS COMMODITY_NAME, ISNULL(A.OVERPLUSCOUNT,0) AS " + "OVERPLUSCOUNT,ISNULL(A.CUROVERPLUSCOUNT,0) AS CUROVERPLUSCOUNT," + "(ISNULL(A.CUROVERPLUSCOUNT,0) - ISNULL(A.OVERPLUSCOUNT,0)) AS " + "DIFFERENCECOUNT,A.CHECKDATE AS CHECKDATE " + "FROM T_CHECKCOMMODITYDETAIL A,T_CHECKCOMMODITYEX B " + "WHERE A.CHECKCOMMODITY_ID = B.CHECKCOMMODITY_ID AND " + "B.CHECK_STATE = 0 AND B.SERVERPARTSHOP_ID = " + ServerPartShop_id + " AND ( A.CHECKDESC IS NULL OR A.CHECKDATE <> A.END_DATE ) " + "ORDER BY CHECKCOMMODITYDETAIL_ID"; DataTable _DataTable = DBHelper.QueryOdbc(_selectsql).Tables[0]; if (_DataTable.Rows.Count > 0) { CheckView.DataSource = _DataTable; CheckView.Rows[_DataTable.Rows.Count - 1].Selected = true; CheckView.CurrentCell = CheckView.Rows[_DataTable.Rows.Count - 1].Cells[0]; } } /// /// 显示盘点商品列表 /// private void SearchUnmatchDataView(string ServerPartShop_id) { string _selectsql = "SELECT ROW_NUMBER() OVER (ORDER BY CHECKCOMMODITYUNMATCH_ID) " + "AS CHECKCOMMODITYDETAIL_ID, A.COMMODITY_BARCODE AS COMMODITY_BARCODE," + "A.COMMODITY_NAME AS COMMODITY_NAME, ISNULL(A.OVERPLUSCOUNT,0) AS " + "OVERPLUSCOUNT,ISNULL(A.CUROVERPLUSCOUNT,0) AS CUROVERPLUSCOUNT," + "(ISNULL(A.CUROVERPLUSCOUNT,0) - ISNULL(A.OVERPLUSCOUNT,0)) AS " + "DIFFERENCECOUNT,A.CHECKDATE AS CHECKDATE " + "FROM T_CHECKCOMMODITYUNMATCH A,T_CHECKCOMMODITYEX B " + "WHERE A.CHECKCOMMODITY_ID = B.CHECKCOMMODITY_ID AND " + "B.CHECK_STATE = 0 AND B.SERVERPARTSHOP_ID = " + ServerPartShop_id + " ORDER BY CHECKCOMMODITYDETAIL_ID"; DataTable _DataTable = DBHelper.QueryOdbc(_selectsql).Tables[0]; if (_DataTable.Rows.Count > 0) { CheckView.DataSource = _DataTable; CheckView.Rows[_DataTable.Rows.Count - 1].Selected = true; CheckView.CurrentCell = CheckView.Rows[_DataTable.Rows.Count - 1].Cells[0]; } } private void txtSearch_TextChanged(object sender, EventArgs e) { if (txtSearch.Text != "") { DataTable _DataTable = CheckView.DataSource as DataTable; _DataTable.DefaultView.RowFilter = "commodity_barcode like '%" + txtSearch.Text + "%' or commodity_name like '%" + txtSearch.Text + "%'"; } else { DataTable _DataTable = CheckView.DataSource as DataTable; _DataTable.DefaultView.RowFilter = ""; } } private void btnClose_Click(object sender, EventArgs e) { Close(); } private void CheckBillFail_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Escape) { Close(); } } } }