Imports Microsoft.Dynamics.GP.eConnect.Serialization
Imports Microsoft.Dynamics.GP.eConnect
Public Class PMTransactionType
Sub CreateVoucher()
'PM: Create a voucher
Try
Dim intNumberOfLines As Int16 = 0 '0 = 1 line
'declare our eConnect classes
Dim oeConnectType As New Microsoft.Dynamics.GP.eConnect.Serialization.eConnectType
Dim oPMTransactionType As New Microsoft.Dynamics.GP.eConnect.Serialization.PMTransactionType
Dim oeConnectFunctions As New eConnect11Lib.GP11.eConnectFunctions("vmGP11", "TWO")
Dim strVoucherNumber As String = oeConnectFunctions.GetPMNextVoucherNumber(IncrementDecrement.Increment)
'create the document header
Dim otaPMTransactionInsert As New Microsoft.Dynamics.GP.eConnect.Serialization.taPMTransactionInsert
'populate the header
With otaPMTransactionInsert
.DOCTYPE = 1
.VCHNUMWK = strVoucherNumber
.VENDORID = "ACETRAVE0001"
.DOCAMNT = 100
.PRCHAMNT = 100
.CHRGAMNT = 100
.DOCNUMBR = "MYDOC"
.BACHNUMB = "MYBATCH"
.DOCDATE = "1/1/2017"
End With
'assign the header to the master
oPMTransactionType.taPMTransactionInsert = otaPMTransactionInsert
'declare an object for the detail line
Dim oTaPMDistribution As Microsoft.Dynamics.GP.eConnect.Serialization.taPMDistribution_ItemsTaPMDistribution
'populate the detail line
oTaPMDistribution = New Microsoft.Dynamics.GP.eConnect.Serialization.taPMDistribution_ItemsTaPMDistribution
With oTaPMDistribution
.VCHRNMBR = strVoucherNumber
.DOCTYPE = 1
.VENDORID = "ACETRAVE0001"
.ACTNUMST = "000-2100-00"
.DISTTYPE = 6
.DEBITAMT = 100
ReDim Preserve oPMTransactionType.taPMDistribution_Items(0)
oPMTransactionType.taPMDistribution_Items(0) = oTaPMDistribution
End With
oTaPMDistribution = New Microsoft.Dynamics.GP.eConnect.Serialization.taPMDistribution_ItemsTaPMDistribution
With oTaPMDistribution
.VCHRNMBR = strVoucherNumber
.DOCTYPE = 1
.ACTNUMST = "000-1220-01"
.VENDORID = "ACETRAVE0001"
.DISTTYPE = 2
.CRDTAMNT = 100
ReDim Preserve oPMTransactionType.taPMDistribution_Items(1)
oPMTransactionType.taPMDistribution_Items(1) = oTaPMDistribution
End With
ReDim Preserve oeConnectType.PMTransactionType(0)
oeConnectType.PMTransactionType(0) = oPMTransactionType
oeConnectFunctions.CreateTransactionEntity(oeConnectType)
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
End Class