範囲内で動作するアプリケーションにエクスポート(Excelへのアクセス)関数を記述しました。SQLすべてのデータを選択していない間
ユーザは、A-F、G-M、N-RおよびS-Zの4 RadioButtons
です。
グリッドにすべての顧客をロードする、のは、ユーザがrbtnAF
を選択したとしましょうCustomer_Code
フィールドは、A、B、C、D、EまたはFで始まる
データをロードするためのコード以下のとおりである。
Dim strFields As String = "[Customer_Addresses].[Cust_Code], [Customers].[Customer_Name], [Customer_Addresses].[Contact_Code], [Customer_Addresses].[Contact_Name], " & _
"[Customer_Addresses].[Contact_Type], [Customer_Addresses].[Add1], [Customer_Addresses].[Add2], [Customer_Addresses].[Add3], [Customer_Addresses].[Add4], " & _
"[Customer_Addresses].[Add5], [Customer_Addresses].[Postcode], [Customer_Addresses].[Country], [Customer_Addresses].[Telephone], [Customer_Addresses].[Fax], " & _
"[Customer_Addresses].[Email], [Customer_Addresses].[Mobile_Phone], [Customers].[Customer_Category], [Customers].[Average_Payment_Terms], " & _
"[Customers].[Notes], [Customers].[salesRep], [Customers].[hoEmail], [Customers].[webpage] FROM Customers " & _
"INNER JOIN Customer_Addresses ON [Customers].[Customer_Code] =[Customer_Addresses].[Cust_Code]"
If rbtnAF.Checked = True Then
sql = "SELECT " & strFields & " WHERE [Customer_Addresses].[Cust_Code] BETWEEN " & _
"'A*' AND 'F*' ORDER BY [Customer_Addresses].[Cust_Code]"
Dim da As New OleDbDataAdapter(sql, con)
Dim ds As New DataSet
Dim dt As New System.Data.DataTable
da.Fill(ds)
dt = ds.Tables(0).Copy()
ugExport.DataSource = Nothing
ugExport.DataSource = dt
これだった、私は私がグリッドに正しい範囲をロードし、私が望んでいたとして、それらをエクスポートすることができた、細かい作業、と思いました。 しかし、ユーザーは私に戻って来て、すべての顧客を読み込んでいないと言いました。
私はこれがちょっと変わったと思ったので、データベースをロードして自分でテストしました。 DBには、この画像でわかるように、A-Fの範囲に収まる4人の顧客がいます。私はその後、エクスポートリストに顧客の範囲A-Fを表示したときに
しかし、唯一の2顧客が表示さがあります。
これは、顧客一覧画面でTextBox
は、ユーザが顧客コードで検索できるようにすることがあり、また、注目に値します - 私は1つだけFを入力すると予想されるように、すべての4人の顧客が表示されます。
基準に適合する4つのレコードがあるにもかかわらず、地球上では何が起こっているのでしょうか?リテラル文字として*あなたはそれが扱うことがわかります構文の間で確認する