SOAP add attachment to existing issue VBA

Arek Patek December 9, 2012

Hi,

I am trying to add the attachment to an exisitng issue in JIRA using SOAP in VBA (Excel).

The following code crashes, "Putting data into SoapMapper byte failed".

As far as I know bytArray should be the variant array with elements defined as Byte, I don't know why it fails...

Public Sub AddJiraAttachment()
    
Dim token As Variant

Dim SoapClient
Set SoapClient = CreateObject("MSSOAP.SoapClient30")
SoapClient.mssoapinit ("https://jira_instance/rpc/soap/jirasoapservice-v2?wsdl")


token = SoapClient.LogIn(username, password)

If Err <> 0 Then
wscript.echo "initialization failed " + Err.description
End If

Dim added As Boolean
Dim fileName() As Variant

fileName = Array("test.xls")

Dim intFileNum As Integer
Dim bytRtnVal() As Byte
Dim bytArray() As Variant

intFileNum = FreeFile

Open "C:\test.xls" For Binary Access Read As intFileNum
        
    ReDim Preserve bytRtnVal(LOF(intFileNum) - 1)
    Get intFileNum, , bytRtnVal
    Close intFileNum
        
bytArray = Array(bytRtnVal) 


added = SoapClient.addAttachmentsToIssue(token, TICKET_KEY, fileName, bytArray)
    
    
End Sub

Does anybody know how should this array with elements defined as byte look like?

1 answer

0 votes
Doug Bass January 31, 2013

IN java we use this code. Maybe this will help you?

// use the base64 call as its 10 times faster due to soap handling of byte arrays jiraSoapService.addBase64EncodedAttachmentsToIssue(authToken, issueKey, new String[]{filename}, new String[]{new String(Base64.encode(contents))});

Suggest an answer

Log in or Sign up to answer