1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
Public Structure TArticle
Dim codbar1 As Integer
Dim codbar2 As Integer
Dim LongueurChaine As Byte
<VBFixedString(30)> Dim nom As String
Dim famille As Byte
Dim remise As Byte
Dim prix As Integer
Dim actif As Byte 'en principe boolean mais prend 2 octets en VB
Public Shared Widening Operator CType(ByVal buffer As Byte()) As TArticle
Dim art As New TArticle
With art
.codbar1 = bufferToInteger(buffer(0), buffer(1), buffer(2), buffer(3))
.codbar2 = bufferToInteger(buffer(4), buffer(5), buffer(6), buffer(7))
.LongueurChaine = buffer(8)
.nom = bufferToCharTab(9, 30, buffer)
.famille = buffer(39)
.remise = buffer(40)
.prix = bufferToInteger(buffer(41), buffer(42), buffer(43), buffer(44))
.actif = buffer(45)
End With
Return art
End Operator
Public Shared Widening Operator CType(ByVal art As TArticle) As Byte()
Dim buffer(45) As Byte
With art
IntegerToBuffer(.codbar1, 0, buffer)
IntegerToBuffer(.codbar2, 4, buffer)
buffer(8) = .LongueurChaine
CharTabToBuffer(9, 30, .nom, buffer)
buffer(39) = .famille
buffer(40) = .remise
IntegerToBuffer(.prix, 41, buffer)
buffer(45) = .actif
End With
Return buffer
End Operator
End Structure |
Partager