> Hi All,
> 
> This seems like it should be simpler than it has been for me, but I am 
> neither an expert with webservices nor CF. Though not a newbie, my 
> guess is that there is something fundamental I am missing. I have 
> sought answers to this and read many articles, but either the 
> suggestions do not work, do not apply or talk of writing a wrapper in 
> java. Perhaps it isn't even possible to represent this in CF, but I 
> have not seen anything that says that, either.
> 
> Anyway, the webservice I call returns an array of objects named 
> TABLE_OF_BAPIRET2 (if I am understanding properly). After making the 
> call, doing a cfdump of the result I get "Variable TABLE_OF_BAPIRET2 
> is undefined". See attached code below for INVOKE and CFDUMP code.
> 
> These results are not surprising after reading the article "Handling 
> complex data types" (http://livedocs.adobe.
> com/coldfusion/7/htmldocs/wwhelp/wwhimpl/common/html/wwhelp.
> htm?context=ColdFusion_Documentation&file=00001554.htm). So, I changed 
> the cfdump to reference TABLE_OF_BAPIRET2.MESSAGE. This did not work 
> (I did not expect it to since there is nothing in the statement 
> referencing the array element). However, it did give me more promising 
> results: "Element MESSAGE is undefined in TABLE_OF_BAPIRET2". This 
> tells me I can reference the return variable as suggested by the cited 
> article, but I must be doing something wrong. NOTE: when I specified 
> an index by stating TABLE_OF_BAPIRET2[1].MESSAGE, I go back to the 
> error "Variable TABLE_OF_BAPIRET2 is undefined". This I did not expect 
> and am now stumped.
> 
> I've attached below the relevant section of the wsdl defining the 
> structure. I am also attaching the SOAP message that is returned.
> 
> Is it even possible to decipher this object? Or, do I need to use java 
> (I am comfortable with that, but would rather use CF). I strongly 
> believe this is not the case, that there is something fairly simple I 
> am overlooking, but cannot see it. So, any help is greatly 
> appreciated!
> 
> TIA,
> 
> bill 
> -------------------------------------------------
> The INVOKE of the webservice
> -------------------------------------------------
        
> <cfinvoke 
               
> webservice="http://sapcrd.comfort.
com:80> 00/sap/bc/srt/rfc/sap/Z_YXG_SIMPLE_INPUT_TEST_WS?sap-client=300&wsdl=1.
> 1"
               
> username="turnbo"
               
> password="myX2bare"
               
> method="Z_YXG_SIMPLE_INPUT_TEST"
               
> BAPIRET2="#myArray#"
               
> IN_NO_ROW="1"
               
> IN_TEXT="This is a test."
               
> returnVariable="TABLE_OF_BAPIRET2"
          
> />
          
> 
        
> <cfdump var="#TABLE_OF_BAPIRET2#" /> 
> 
> -------------------------------------------------
> The WSDL snippet
> -------------------------------------------------
               
> <xsd:complexType name="BAPIRET2">
                    
> <xsd:sequence>
                         
> <xsd:element name="TYPE" type="tns:char1"/>
                         
> <xsd:element name="ID" type="tns:char20"/>
                         
> <xsd:element name="NUMBER" type="tns:numeric3"/>
                         
> <xsd:element name="MESSAGE" type="tns:char220"/>
                         
> <xsd:element name="LOG_NO" type="tns:char20"/>
                         
> <xsd:element name="LOG_MSG_NO" type="tns:numeric6"/>
                         
> <xsd:element name="MESSAGE_V1" type="tns:char50"/>
                         
> <xsd:element name="MESSAGE_V2" type="tns:char50"/>
                         
> <xsd:element name="MESSAGE_V3" type="tns:char50"/>
                         
> <xsd:element name="MESSAGE_V4" type="tns:char50"/>
                         
> <xsd:element name="PARAMETER" type="tns:char32"/>
                         
> <xsd:element name="ROW" type="xsd:int"/>
                         
> <xsd:element name="FIELD" type="tns:char30"/>
                         
> <xsd:element name="SYSTEM" type="tns:char10"/>
                    
> </xsd:sequence>
               
> </xsd:complexType>
               
> <xsd:complexType name="TABLE_OF_BAPIRET2">
                    
> <xsd:sequence>
                         
> <xsd:element name="item" minOccurs="0" maxOccurs="unbounded" 
> type="tns:BAPIRET2"/>
                    
> </xsd:sequence>
               
> </xsd:complexType>
> 
> -------------------------------------------------
> The SOAP response
> -------------------------------------------------
> <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.
> org/soap/envelope/">
     
> <soap-env:Body>
          
> <n0:Z_YXG_SIMPLE_INPUT_TESTResponse 
> xmlns:n0="urn:sap-com:document:sap:rfc:functions">
               
> <BAPIRET2>
                    
> <item>
                         
> <TYPE>S</TYPE> 
                         
> <ID>Trillium</ID> 
                         
> <NUMBER>001</NUMBER> 
                         
> <MESSAGE>This is a test.</MESSAGE> 
                         
> <LOG_NO /> 
                         
> <LOG_MSG_NO>000000</LOG_MSG_NO> 
                         
> <MESSAGE_V1 /> 
                         
> <MESSAGE_V2 /> 
                         
> <MESSAGE_V3 /> 
                         
> <MESSAGE_V4 /> 
                         
> <PARAMETER /> 
                         
> <ROW>0</ROW> 
                         
> <FIELD /> 
                         
> <SYSTEM /> 
                    
> </item>
               
> </BAPIRET2>
          
> </n0:Z_YXG_SIMPLE_INPUT_TESTResponse>
     
> </soap-env:Body>
> </soap-env:Envelope> 
> 
I did, BTW, try to use [b]returnVariable="TABLE_OF_BAPIRET2[]"[/b] as is 
suggest by the article "Did you know: Array of components" 
(http://www.coldfusionjedi.com/index.cfm?mode=entry&entry=FAE8F3B9-BC72-0C47-D669E522B0559213).
 That, too, errored, but for a different reason. The error states 'The string 
"TABLE_OF_BAPIRET2[]" is not a valid ColdFusion variable name'.

Any pointers or suggestions?

bill 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Adobe® ColdFusion® 8 software 8 is the most important and dramatic release to 
date
Get the Free Trial
http://ad.doubleclick.net/clk;160198600;22374440;w

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:299513
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4

Reply via email to