Я пытаюсь использовать некоторые классы, которые будут хранить данные счета, и я не могу заставить его работать. Я просто хочу, чтобы он сохранял детали счета-фактуры в массиве. Вот код, может быть, кто-то может понять это. Также id как для LineItems для случайного количества элементов продукта, не уверен, как это сделать. Я делаю это, чтобы в конечном итоге отправить данные через веб-службу из мс-доступа.Доступ к классам классов VBA
Вот другой код struct_XOrder:
Public OrderNumber As String
Public ClientShortName As String
'"LineItems" is an array with elements defined as struct_LineItem
'See Complex Types: Arrays in Microsoft Office 2003 Web Services Toolkit Help
'for details on implementing arrays.
Public LineItems As Variant
Public OrderError As String
Херес struct_LineItem:
Public ProductSKU As String
Public Qty As Long
Public UnitPrice As Variant
Public ItemComment As String
Public ItemError As String
Heres мой основной код
Sub webservicetest()
Dim NewOrder As struct_XOrder
Dim LineItems(1 To 2) As Variant
Dim Xline(1 To 2) As Variant
Set Xline() = struct_LineItem
Set NewOrder = New struct_XOrder
Set NewOrder.LineItems() = New struct_LineItem
Set NewOrder.LineItems() = New Xline
'Xline = New struct_LineItem
Xline(1).ItemComment = "items"
Xline(1).Qty = 10
NewOrder.LineItems() = Xline()
NewOrder.ClientShortName = "DemoClient"
NewOrder.OrderNumber = "12345"
'Xline(1).ItemComment = "item1"
'Xline(1).Qty = 5
Debug.Print NewOrder.ClientShortName
Debug.Print NewOrder.OrderNumber
'For i = LBound(Xline) To UBound(Xline): Debug.Print Xline(i): Next
'Debug.Print Xline(1).ItemComment
'Debug.Print Xline(1).Qty
End Sub
спасибо. Это имеет больший смысл. Иль поиграет с ним, чтобы заставить его делать то, что я хочу. – Col
Модуль класса struct_xorder изменен, есть ли способ, которым я могу просто сохранить его как 'lineitems как вариант'? Это вызывает ошибки. @enderland – Col
BTY веб-службы находятся в https://webservices.p3pl.com/WSOrder.asmx?WSDL, если это помогает кому-то лучше понять. – Col