00001 #!perl
00002
00003 use SOAP::Lite;
00004 use IO::File;
00005
00006
00007 my $service = SOAP::Lite
00008 ->uri('urn:msd_soap_service')
00009 #->proxy('http:
00010 ->proxy('http:
00011 # Or:
00012 #-> service('http:
00013
00014
00015
00016 my $sql ='select * from entry e, author a where e.res_val <= 2.5 and e.entry_id = a.entry_id and a.last_name = \'HENRICK\' ';
00017 my $connName = 'MyPerlConnection';
00018 my $queryName = 'MyPerlQuery';
00019 my $resName = 'MyPerlResult';
00020 my $buf=50;
00021
00022 print "\nCalling method: msdConnect()\n";
00023
00024
00025 my $result1 = $service->msdConnect(SOAP::Data->name('conn-name')->type('xsd:string')->value($connName));
00026
00027 unless ($result1->fault) {
00028 print "\nmsdConnect() called successfully.\n";
00029 print $result1->result();
00030 }else{
00031 print join ', ',
00032 $result1->faultcode,
00033 $result1->faultstring;
00034 }
00035 print "\nCalling method: msdResultset()\n";
00036 my $result2 = $service->msdResultset(SOAP::Data->name('conn-name')->type('xsd:string')->value($connName),
00037 SOAP::Data->name('query-name')->type('xsd:string')->value($queryName),
00038 SOAP::Data->name('res-name')->type('xsd:string')->value($resName));
00039
00040
00041 unless ($result2->fault) {
00042 print "\nmsdResultset() called successfully.\n";
00043 print $result2->result();
00044 }else{
00045 print join ', ',
00046 $result2->faultcode,
00047 $result2->faultstring;
00048 }
00049
00050 print "\nCalling method: msdQuery()\n";
00051 my $result3 = $service->msdQuery(SOAP::Data->name('conn-name' => $connName),
00052 SOAP::Data->name('query-name'=> $queryName),
00053 SOAP::Data->name('result-name'=> $resName),
00054 SOAP::Data->name('stm'=> $sql));
00055
00056 unless ($result3->fault) {
00057 print "\nmsdQuery() called successfully.\n";
00058 print $result3->result();
00059 }else{
00060 print join ', ',
00061 $result3->faultcode,
00062 $result3->faultstring;
00063 }
00064
00065
00066 print "\nCalling method: msdExecQuery()\n";
00067 my $result4 = $service->msdExecQuery(SOAP::Data->name('conn-name' => $connName),
00068 SOAP::Data->name('query-name'=> $queryName),
00069 SOAP::Data->name('result-name'=> $resName),
00070 SOAP::Data->name('buf'=> $buf));
00071
00072
00073
00074
00075 unless ($result4->fault) {
00076 print "\nmsdExecQuery() called successfully.\n";
00077 print $result4->result();
00078
00079 }else{
00080 print join ', ',
00081 $result4->faultcode,
00082 $result4->faultstring;
00083 }
00084
00085 print "\nCalling method: msdGetResultSet()\n";
00086
00087
00088 print "\nI am here 1.\n";
00089
00090 my $result5 = $service->msdGetResultSet(SOAP::Data->name('conn-name' => $connName),
00091 SOAP::Data->name('query-name'=> $queryName),
00092 SOAP::Data->name('result-name'=> $resName));
00093 $col =1;
00094 print "\nI am here 2.\n";
00095 unless ($result5->fault) {
00096 print "\nmsdGetResultSet() called successfully.\n";
00097
00098 my $dataSet = $result5->result();
00099 $record_set = $dataSet;
00100
00101 foreach my $rec (@$record_set) {
00102 $row=1;
00103 foreach my $val (@$rec) {
00104 print "Column ", $col ," Row: ", $row, " value = " ;
00105 print $val, "\n";
00106
00107 $row++;
00108 }
00109 $col++;
00110 }
00111
00112 }else{
00113 print join ', ',
00114 $result5->faultcode,
00115 $result5->faultstring;
00116 }
00117
00118 print "\nCalling method: msdEndQueryPack()\n";
00119 my $result6 = $service->msdEndQueryPack(SOAP::Data->name('query-name')->type('xsd:string')->value($queryName),
00120 SOAP::Data->name('result-name')->type('xsd:string')->value($resName));
00121
00122 unless ($result6->fault) {
00123 print "\nmsdEndQueryPack() called successfully.\n";
00124 print $result6->result();
00125 }else{
00126 print join ', ',
00127 $result6->faultcode,
00128 $result6->faultstring;
00129 }
00130
00131 print "\nCalling method: msdEndConnect() \n";
00132 my $result12 = $service->msdEndConnect(SOAP::Data->name('conn-name')->type('xsd:string')->value($connName));
00133
00134 unless ($result12->fault) {
00135 print "\nmsdEndConnect() called successfully.\n";
00136 print $result12->result();
00137 }else{
00138 print join ', ',
00139 $result12->faultcode,
00140 $result12->faultstring;
00141 }
00142
00143