Option Explicit
Public Function CreateITLULi(ByRef pITLULi As Buffer, ByVal idsITRec As Long, ByVal z As Integer, ByVal sItmCode As String, ByVal sItmDetail As String, ByVal dblAmt As Double, ByVal dblPrice As Double, ByVal dtLine As Date)
Dim strTemp As String
Dim strTemp2 As String
Dim blank As Buffer
Dim lCode As Long
Dim lDesc As Long
Dim lngDec As Long
Dim lngDec2 As Long
Dim bytCode(52) As Byte
Dim bytDesc(255) As Byte
Dim dblTax As Double
Dim sUnit As String
Dim strTemp3 As String
Dim lUnit As Long
Dim lngDec3 As Long
Dim bytUnit(15) As Byte
Dim lTaxRev As Long
Dim lTaxCode As Long
Dim sLineDate As String
Dim lLgth As Long
Dim iTemp0 As Integer
Dim iTemp1 As Integer
Dim dTemp0 As Double
Dim i As Integer
iTemp0 = 0
iTemp1 = 1
dTemp0 = 0
sLineDate = CStr(Format(dtLine, "dd/mm/yyyy"))
sItmDetail = sLineDate & " -- " & sItmDetail
strTemp = ""
lCode = Len(sItmCode)
For i = 0 To (lCode - 1)
strTemp = Mid(sItmCode, (i + 1), 1) 'Returns character at position
lngDec = DecimalCode(strTemp) 'Custom function that returns the decimal value of a ascii chracter
bytCode(i) = CByte(lngDec)
Next
lLgth = 0
strTemp2 = ""
lDesc = Len(sItmDetail)
For i = 0 To (lDesc - 1)
strTemp2 = Mid(sItmDetail, (i + 1), 1) 'Returns character at position
lngDec2 = DecimalCode(strTemp2) 'Custom function that returns the decimal value of a ascii chracter
bytDesc(i) = CByte(lngDec2)
Next
lLgth = 0
sUnit = "Each"
strTemp3 = ""
lUnit = Len(sUnit)
For i = 0 To (lUnit - 1)
strTemp3 = Mid(sUnit, (i + 1), 1) 'Returns character at position
lngDec3 = DecimalCode(strTemp3) 'Custom function that returns the decimal value of a ascii chracter
bytUnit(i) = CByte(lngDec3)
Next
dblTax = Math.Round((dblAmt * (0.06)), 3)
lTaxRev = 21
lTaxCode = 12
Call CopyMemory(pITLULi.Data(0), idsITRec, 4) '' itrecid number
Call CopyMemory(pITLULi.Data(4), z, 2) 'line number
Call CopyMemory(pITLULi.Data(6), bytCode(0), 52)
Call CopyMemory(pITLULi.Data(58), bytUnit(0), 15)
Call CopyMemory(pITLULi.Data(73), iTemp1, 2)
Call CopyMemory(pITLULi.Data(75), bytDesc(0), 255)
Call CopyMemory(pITLULi.Data(330), dblAmt, 8)
Call CopyMemory(pITLULi.Data(338), dTemp0, 8)
Call CopyMemory(pITLULi.Data(346), dTemp0, 8)
Call CopyMemory(pITLULi.Data(354), dblPrice, 8)
Call CopyMemory(pITLULi.Data(362), dTemp0, 8)
Call CopyMemory(pITLULi.Data(370), dTemp0, 8)
Call CopyMemory(pITLULi.Data(378), iTemp0, 2)
Call CopyMemory(pITLULi.Data(380), lTaxCode, 4)
Call CopyMemory(pITLULi.Data(384), lTaxRev, 4)
Call CopyMemory(pITLULi.Data(388), dblTax, 8)
Call CopyMemory(pITLULi.Data(396), blank.Data(0), 1604)