0
他のコンピュータにVB.NETアプリケーションをインストールする際に問題があります。他のコンピュータの表示入力文字列が正しい形式でない
[ボタンの追加]を押して項目を選択すると、プログラムは入力文字列が正しい形式でないと言います。私のDataTableの宣言はここにある :
Private Sub prvFillDT()
dtSales = New DataTable
dtSales.Columns.Add("no", System.Type.GetType("System.String"))
dtSales.Columns.Add("goodscode", System.Type.GetType("System.String"))
dtSales.Columns.Add("goodsname", System.Type.GetType("System.String"))
dtSales.Columns.Add("information", System.Type.GetType("System.String"))
dtSales.Columns.Add("qty", System.Type.GetType("System.Double"))
dtSales.Columns.Add("price", System.Type.GetType("System.Double"))
dtSales.Columns.Add("discount", System.Type.GetType("System.Double"))
dtSales.Columns.Add("total", System.Type.GetType("System.Double"))
End Sub
そして、ここでボタンがコード
Dim arrFields() As String = {"GoodsCode", "GoodsName", "Stock", "UnitPrice"}
Dim kn As SqlConnection = OpenKNS(Settings.ConnectionString)
Dim cmd As SqlCommand = New SqlCommand("usp_is_Goods_SLC_01", kn)
If fLookup.GetLookUpSP("List Goods", cmd, arrFields, "", "") Then
Try
If fLookup.pubLookUpDone Then
If arrFields(2) = "0" Then
MsgBox(arrFields(1) & " stock is not enough !")
Exit Sub
End If
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "goodscode", arrFields(0))
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "goodsname", arrFields(1))
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "qty", 1)
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "price", arrFields(3))
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "total", 1 * arrFields(3))
End If
Catch ex As Exception
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "goodscode", "")
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "goodsname", "")
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "qty", 0)
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "price", 0)
bndReport2.SetRowCellValue(bndReport2.FocusedRowHandle, "total", 0)
End Try
bndReport2.UpdateSummary()
End If
を追加します。ここでのStoredProcedure:
SELECT GoodsCode,GoodsName,Stock,
CONVERT(varchar,UnitPrice,1) UnitPrice
FROM Ms_Goods WHERE [Status]=1
問題は、他のコンピュータに表示されるが、私のコードやコンピュータ上の問題は問題ありませんか?
唯一の私たちのために道があった場合どの行に例外がスローされたのか、そして実際の入力文字列は何が起こったのかを知ることができます。 – jmcilhinney
コードが特定の形式を想定している間に、異なるマシン上で日付または数値の形式設定が異なる可能性があります。それはちょうど教育された推測ですが、私はそのエラーメッセージとそれがどこにも起こっていないという事実を見た他の時代に基づいています。私たちはすべての関連情報を確かめる必要があります。 – jmcilhinney