do case case lcCommand = "myfunction1" lAnswer = This.MyFunction1( MyXml ) *-** etc... endcaseThis works, go figure :-)
>lcCommand = "This."+lcCommand+"(["+lcXml+"])" >lAnswer = &lcCommand >>
>>define class basecom as Session >> procedure Init >> ***blablabla >> endproc >> procedure Error ( nError, nMethod, nLine ) >> ***bla bla bla >> endproc >>enddefine >> >>define class myWS as basecom olepublic >> procedure myfunction1( inxml as String ) as String >> *** bla bla >> endproc >> procedure myfunction2( inxml as String ) as String >> *** more bla bla >> endproc >> >> procedure myDispatch( DispXml as String ) >> *** DispXml contains a command clause ( "myfunction1" or "myfunction2" ) >> *** and the xml parameter to send >> *** so we strip those from dispxml, say to lcCommand and lcXml >> >> lcCommand = "This."+lcCommand+"("+lcXml+")" >> >> lAnswer = &lcCommand &&& <-- this call fails >> >>enddfine>>Why the call fails? Shouldn't it call the other functions using This. ? Is there another way to get a pointer to the created com object?