• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 760
  • Last Modified:

Array dimensions do not match

I have written this:

Private Sub Command0_Click()
Dim c As clsws_SFlow
Set c = New clsws_SFlow
Dim v As Variant
v = c.wsm_GetInstructionsTest("SSLConvey", "garnys", "courage")
MsgBox (v)
End Sub

Which calls:

Public Function wsm_GetInstructionsTest(ByVal str_sSource As String, ByVal str_sUser As String, ByVal str_sPass As String) As Variant
    '*****************************************************************
    'Proxy function created from http://195.217.202.154/application/cmti/webservice/searchflowws.asmx?wsdl.
    '
    '"wsm_GetInstructionsTest" is an array with elements defined as Variant
    'See Complex Types: Arrays in Microsoft Office 2003 Web Services Toolkit Help
    'for details on implementing arrays.
    '*****************************************************************

    'Error Trap
    On Error GoTo wsm_GetInstructionsTestTrap

    wsm_GetInstructionsTest = sc_SFlow.GetInstructionsTest(str_sSource, str_sUser, str_sPass)

Exit Function
wsm_GetInstructionsTestTrap:
    SFlowErrorHandler "wsm_GetInstructionsTest"
End Function


But i am getting the error "SoapMapper: Array dimensions do not match" from the line "v = c.wsm_GetInstructionsTest("SSLConvey", "garnys", "courage")"....help?
0
danBosh
Asked:
danBosh
1 Solution
 
JR2003Commented:
Are you sure the error is not coming from this line?

wsm_GetInstructionsTest = sc_SFlow.GetInstructionsTest(str_sSource, str_sUser, str_sPass)
0
 
_agj_Commented:
the error would be shown on the line as danBOsh says...because the error though generated by a function internal to this wsm_getinstructions function.

I guess you could try out the webservice internally to check if it works. The array might need to be implemented differently.
0
 
danBoshAuthor Commented:
What? so are u saying that the error is thrown from the webservice and not the code i have shown above?...
0
 
JR2003Commented:
When an error is raised it has a .Source property and a .Desription property and a .ErrorNumber which contains the error number. If you include an error trap in each procedure you write it will be much easier to find the exact reason for the error. Here is some code you could paste into each of your functions:



    On Error GoTo Trap



    'Main body of code here
    '....
    '....
    '....
    '....

    GoTo SkipTrap

Trap:
   
    Dim iResult As VbMsgBoxResult
    With Err
        iResult = MsgBox("Error: " & .Number & vbNewLine & _
                "Description: " & .Description & vbNewLine & _
                "Source: " & .Source, vbAbortRetryIgnore Or vbExclamation, "Error")
        If iResult = vbRetry Then
            Resume
        ElseIf iResult = vbIgnore Then
            Resume Next
        End If
    End With

SkipTrap:

0
 
patrickabCommented:
Today it is 26th November so I guess those 4 days have well and truly passed!
0

Featured Post

Become an Android App Developer

Ready to kick start your career in 2018? Learn how to build an Android app in January’s Course of the Month and open the door to new opportunities.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now