#!/usr/bin/perl use warnings; use strict; use diagnostics; use XML::Simple; use Data::Dumper; use Log::Log4perl; use SOAP::Lite 0.65 +trace => 'debug'; #Initialize Logger Log::Log4perl->init("log.conf"); my $logger = Log::Log4perl->get_logger(); my $outputFormat = "SAWRowsetData"; my $SQL = qq(sql); my $sessionID = "session id"; my $soap = SOAP::Lite ->readable(1) ->uri('urn://oracle.bi.webservices/v6') ->proxy( 'http://host:port/analytics/saw.dll/wsdl/v6' ); my $serializer = $soap->serializer(); $serializer->register_ns("urn://oracle.bi.webservices/v6","sawsoap"); my $som = $soap->call('executeSQLQuery', SOAP::Data->name('sawsoap:sql' => $SQL)->type('xsd:string'), SOAP::Data->name('sawsoap:outputFormat' => $outputFormat)->type('sawsoap:XMLQueryOutputFormat'), SOAP::Data->name('sawsoap:executionOptions')->type('sawsoap:XMLQueryExecutionOptions')->value( \SOAP::Data->value( SOAP::Data->name("sawsoap:async")->type("xsd:boolean")->value("?"), SOAP::Data->name("sawsoap:maxRowsPerPage")->type("xsd:int")->value("?"), SOAP::Data->name("sawsoap:refresh")->type("xsd:boolean")->value("?"), SOAP::Data->name("sawsoap:presentationInfo")->type("xsd:boolean")->value("?"), SOAP::Data->name("sawsoap:type")->type("xsd:string")->value("?"))), SOAP::Data->name('sawsoap:sessionID' => $sessionID)->type('xsd:string') ); $logger->info(Dumper $som);