PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → Problems reading Data from HF SQL in Visual Basic 2015
Problems reading Data from HF SQL in Visual Basic 2015
Iniciado por pieterbostyn, 23,jun. 2018 12:27 - No hay respuesta
Publicado el 23,junio 2018 - 12:27
I get wrong values when i read a field from an HyperFile SQL database.

Source code:
'OleDB
Try
'Openen Sarah Database HyperFile SQL
Dim OleDbConnectionStr As string = "Provider=PCSoft.HFSQL; Initial Catalog=X:\Sarah\COPAM2018;"
Dim OleDbSQL As string = "Select NUMART, DENOMART, DENOMART2, QTESTOCK, PXVENTE, PXACHAT,CTVA from ARTICLES WHERE NUMART='" & TextBox1.Text & "'"
Dim OleDbConnection As new OleDbConnection(OleDbConnectionStr)

'Openen van verbinding
OleDbConnection.Open()

'Maak een Command object aan
Dim OleDbCommand As new OleDbCommand(OleDbSQL, OleDbConnection)
OleDbCommand.CommandType = CommandType.Text

'Maak een datareader aan
Dim OleDbReader As OleDbDataReader = OleDbCommand.ExecuteReader()

'Zoek de Data en plaats IN lokale variabelen
WHILE OleDbReader.Read()
Dim EANCODE As string = CType(OleDbReader.Item("NUMART"), string)
Dim PN As string = CType(OleDbReader.Item("DENOMART"), string)
Dim DESC As string = CType(OleDbReader.Item("DENOMART2"), string)
Dim QTY As string = CType(OleDbReader.Item("QTESTOCK"), string)
Dim VKPRICEEXCL_SARAH = OleDbReader.Item("PXVENTE")

Dim PRICE_SARAH = OleDbReader.Item("PXACHAT")
Dim BTW As string = CType(OleDbReader.Item("CTVA"), string)
Dim BRON As string = "SARAH"
Dim VKPRICEINCL As string = VKPRICEEXCL_SARAH * 1.21
Dim MARGE_F As string = VKPRICEEXCL_SARAH - PRICE_SARAH
Dim MARGE_P As string = ((VKPRICEEXCL_SARAH / PRICE_SARAH) - 1) * 100

TextBox2.Text = DESC
TextBox3.Text = QTY
TextBox4.Text = PRICE_SARAH
TextBox5.Text = BTW
TextBox6.Text = VKPRICEEXCL_SARAH

Dim Rij As string() = new string() {BRON, DESC, PN, EANCODE, QTY, PRICE_SARAH, MARGE_P, MARGE_F, VKPRICEEXCL_SARAH, VKPRICEINCL}
DataGridView1.Rows.Add(Rij)
END WHILE

'Sluit de verbindingen met de database
OleDbReader.Close()
OleDbConnection.Dispose()
OleDbConnection.Close()
Catch ex As EXCEPTION
MessageBox.Show("Niks gevonden in de database.[SARAH]", "Zoeken")
END Try


for VKPRICEEXCL_SARAH i get vaulue = 2478,5124 instead of 24,785124
in the database its a Currency field

What's wrong with the code above?