Re: [Soap Question] Problem with the = in a query resolved ... sort of

2006-10-03 Thread Sean Garrison
Ok ... the lt; worked.  Thank you so much for your help.  Now when I
actually get the search results the first row is missing ... 

For example:
I am running this query in Soap:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' = 1.)
AND ('rad_Status' lt;= Pending)

It yields 6 results.

If I run the same query in Remedy:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' = 1.)
AND ('rad_Status' = Pending)

I get 7 results.  The first row seems to be missing every time.  So I have
assumed it was my code ...

 so here is my soap code that prints out the values:

 my $response = $soap-OpGetList($header,$inputData);

 #Check for Errors
 if (soapErrorCheck($response) == 0) {
 # Process each of the records
 foreach my $row($response-paramsout()) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
 }
}



Am I missing something?  

Any input would be greatly appreciated.

Thanks,

Sean






-Original Message-
From: Action Request System discussion list(ARSList)
[mailto:[EMAIL PROTECTED] On Behalf Of Carey Matthew Black
Sent: Monday, October 02, 2006 11:39 PM
To: arslist@ARSLIST.ORG
Subject: Re: [Soap Question] Problem with the = in a query

Sean,

I have not tested this...

But I think your first dealing with an XML issue.

lt; instead of 


Now if ARS will understand that... well that might be a different problem.
:)

-- 
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.


On 10/2/06, Sean Garrison [EMAIL PROTECTED] wrote:
 Hello listers,

 I have a quick question about Soap.   We have a soap interface we are
 running and when I pass in a qualification like this:

 'rad_Status' = Pending I get an error:

 Fault: org.xml.sax.SAXParseException: The content beginning = is not
 legal markup. Perhaps the = (#3d;) character should be a letter.
 Detail:

 I have tried using the html equivalent:

 'rad_Status'%3C%3D%20%22Pending%22

 Which yields a Bad Qualification error.  I have also tried escaping the

 value:

 'rad_Status' \= Pending

 That didn't doesn't work either.


 Anyone have any idea on how to get around this?

 Thanks,

 Sean


___
UNSUBSCRIBE or access ARSlist Archives at http://www.wwrug.org

___
UNSUBSCRIBE or access ARSlist Archives at http://www.wwrug.org


Re: [Soap Question] Problem with the = in a query resolved ... sort of

2006-10-03 Thread Carey Matthew Black

Sean,

That looks like Perl, SOAP::Lite to me... :) So forgive me if I have
made a bad assumption...

Reed up on the SOAP::Lite module...

IN/OUT, OUT PARAMETERS AND AUTOBINDING

SOAP::Lite gives you access to all parameters (both in/out and out)
and also does some additional work for you. Lets consider following
example:

 mehodResponse
   res1name1/res1
   res2name2/res2
   res3name3/res3
 /mehodResponse

In that case:

 $result = $r-result; # gives you 'name1'
 $paramout1 = $r-paramsout;  # gives you 'name2', because of
scalar context
 $paramout1 = ($r-paramsout)[0]; # gives you 'name2' also
 $paramout2 = ($r-paramsout)[1]; # gives you 'name3'

or

 @paramsout = $r-paramsout; # gives you ARRAY of out parameters
 $paramout1 = $paramsout[0]; # gives you 'res2', same as ($r-paramsout)[0]
 $paramout2 = $paramsout[1]; # gives you 'res3', same as ($r-paramsout)[1]


So I think you should do this...



 if (soapErrorCheck($response) == 0) {

# add this to get a full array of the results
@paramsout = $response-paramsout;

# Process each of the records
 # foreach my $row($response-paramsout()) {  # incorrect use of --paramsout ?
foreach my $row(@paramsout) {
 print($row-{'txt_Service_Event'}. );
 print($row-{'txt_Description'}.\n);
}
}



Maybe there is a more compact syntax than the above, but the above
might also be clearer for the next person too.

HTH.

--
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.

On 10/3/06, Sean Garrison [EMAIL PROTECTED] wrote:

Ok ... the lt; worked.  Thank you so much for your help.  Now when I
actually get the search results the first row is missing ...

For example:
I am running this query in Soap:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' = 1.)
AND ('rad_Status' lt;= Pending)

It yields 6 results.

If I run the same query in Remedy:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' = 1.)
AND ('rad_Status' = Pending)

I get 7 results.  The first row seems to be missing every time.  So I have
assumed it was my code ...

 so here is my soap code that prints out the values:

 my $response = $soap-OpGetList($header,$inputData);

 #Check for Errors
 if (soapErrorCheck($response) == 0) {
 # Process each of the records
 foreach my $row($response-paramsout()) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
 }
}



Am I missing something?

Any input would be greatly appreciated.

Thanks,

Sean


___
UNSUBSCRIBE or access ARSlist Archives at http://www.wwrug.org


Re: [Soap Question] Problem with the = in a query resolved ... sort of

2006-10-03 Thread Sean Garrison
Thanks Carey for your help.  Unfortunately this time it did not resolve the
issue.  I'm beginning to think there is either a bug with the soap interface
(SOAP::Lite) or with web services.  

Here is the code change:

if (soapErrorCheck($response) == 0) {
  # add this to get a full array of the results
  my @params = $response-paramsout;

  # Process each of the records
foreach my $row(@params) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
}
  }

It still yields 6 results.  

I am running this query in Soap:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' = 1.)
AND ('rad_Status' lt;= Pending)

It yields 6 results.
Txt_Service_Event   rad_Status  txt_Description
2   Pending
3   Re-Opened 
4   Pending
5   Re-Opened
6   Pending
7   Pending

If I run the same query in Remedy:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' = 1.)
 AND ('rad_Status' = Pending)

I get seven results:

Txt_Service_Event   rad_Status  txt_Description
1   Pending
2   Pending
3   Re-Opened 
4   Pending
5   Re-Opened
6   Pending
7   Pending

I was wondering if anyone else had run into a similar issue  I am
running ARS 6.3 patch 17 on solaris. 

Thanks,

Sean 





-Original Message-
From: Action Request System discussion list(ARSList)
[mailto:[EMAIL PROTECTED] On Behalf Of Carey Matthew Black
Sent: Tuesday, October 03, 2006 12:38 PM
To: arslist@ARSLIST.ORG
Subject: Re: [Soap Question] Problem with the = in a query resolved ...
sort of

Sean,

That looks like Perl, SOAP::Lite to me... :) So forgive me if I have
made a bad assumption...

Reed up on the SOAP::Lite module...

IN/OUT, OUT PARAMETERS AND AUTOBINDING

SOAP::Lite gives you access to all parameters (both in/out and out)
and also does some additional work for you. Lets consider following
example:

  mehodResponse
res1name1/res1
res2name2/res2
res3name3/res3
  /mehodResponse

In that case:

  $result = $r-result; # gives you 'name1'
  $paramout1 = $r-paramsout;  # gives you 'name2', because of
scalar context
  $paramout1 = ($r-paramsout)[0]; # gives you 'name2' also
  $paramout2 = ($r-paramsout)[1]; # gives you 'name3'

or

  @paramsout = $r-paramsout; # gives you ARRAY of out parameters
  $paramout1 = $paramsout[0]; # gives you 'res2', same as ($r-paramsout)[0]
  $paramout2 = $paramsout[1]; # gives you 'res3', same as ($r-paramsout)[1]


So I think you should do this...


  if (soapErrorCheck($response) == 0) {
# add this to get a full array of the results
@paramsout = $response-paramsout;

 # Process each of the records
  # foreach my $row($response-paramsout()) {  # incorrect use of
--paramsout ?
foreach my $row(@paramsout) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
 }
}



Maybe there is a more compact syntax than the above, but the above
might also be clearer for the next person too.

HTH.

-- 
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.

On 10/3/06, Sean Garrison [EMAIL PROTECTED] wrote:
 Ok ... the lt; worked.  Thank you so much for your help.  Now when I
 actually get the search results the first row is missing ...

 For example:
 I am running this query in Soap:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
 AND ('rad_Status' lt;= Pending)

 It yields 6 results.

 If I run the same query in Remedy:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
 AND ('rad_Status' = Pending)

 I get 7 results.  The first row seems to be missing every time.  So I have
 assumed it was my code ...

  so here is my soap code that prints out the values:

  my $response = $soap-OpGetList($header,$inputData);

  #Check for Errors
  if (soapErrorCheck($response) == 0) {
  # Process each of the records
  foreach my $row($response-paramsout()) {
   print($row-{'txt_Service_Event'}. );
   print($row-{'txt_Description'}.\n);
  }
 }



 Am I missing something?

 Any input would be greatly appreciated.

 Thanks,

 Sean


___
UNSUBSCRIBE or access ARSlist Archives at http://www.wwrug.org

___
UNSUBSCRIBE or access ARSlist Archives at http://www.wwrug.org


Re: [Soap Question] Problem with the = in a query resolved ... sort of

2006-10-03 Thread Grooms, Frederick W
If you look at the logs on MidTier what does it say the query is?

-Original Message-
From: Action Request System discussion list(ARSList)
[mailto:[EMAIL PROTECTED] On Behalf Of Sean Garrison
Sent: Tuesday, October 03, 2006 12:35 PM
To: arslist@ARSLIST.ORG
Subject: Re: [Soap Question] Problem with the = in a query resolved ...
sort of

Thanks Carey for your help.  Unfortunately this time it did not resolve
the issue.  I'm beginning to think there is either a bug with the soap
interface
(SOAP::Lite) or with web services.  

Here is the code change:

if (soapErrorCheck($response) == 0) {
  # add this to get a full array of the results
  my @params = $response-paramsout;

  # Process each of the records
foreach my $row(@params) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
}
  }

It still yields 6 results.  

I am running this query in Soap:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.) AND ('rad_Status' lt;= Pending)

It yields 6 results.
Txt_Service_Event   rad_Status  txt_Description
2   Pending
3   Re-Opened 
4   Pending
5   Re-Opened
6   Pending
7   Pending

If I run the same query in Remedy:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)  AND ('rad_Status' = Pending)

I get seven results:

Txt_Service_Event   rad_Status  txt_Description
1   Pending
2   Pending
3   Re-Opened 
4   Pending
5   Re-Opened
6   Pending
7   Pending

I was wondering if anyone else had run into a similar issue  I am
running ARS 6.3 patch 17 on solaris. 

Thanks,

Sean 





-Original Message-
From: Action Request System discussion list(ARSList)
[mailto:[EMAIL PROTECTED] On Behalf Of Carey Matthew Black
Sent: Tuesday, October 03, 2006 12:38 PM
To: arslist@ARSLIST.ORG
Subject: Re: [Soap Question] Problem with the = in a query resolved ...
sort of

Sean,

That looks like Perl, SOAP::Lite to me... :) So forgive me if I have
made a bad assumption...

Reed up on the SOAP::Lite module...

IN/OUT, OUT PARAMETERS AND AUTOBINDING

SOAP::Lite gives you access to all parameters (both in/out and out) and
also does some additional work for you. Lets consider following
example:

  mehodResponse
res1name1/res1
res2name2/res2
res3name3/res3
  /mehodResponse

In that case:

  $result = $r-result; # gives you 'name1'
  $paramout1 = $r-paramsout;  # gives you 'name2', because of
scalar context
  $paramout1 = ($r-paramsout)[0]; # gives you 'name2' also
  $paramout2 = ($r-paramsout)[1]; # gives you 'name3'

or

  @paramsout = $r-paramsout; # gives you ARRAY of out parameters
  $paramout1 = $paramsout[0]; # gives you 'res2', same as
($r-paramsout)[0]
  $paramout2 = $paramsout[1]; # gives you 'res3', same as
($r-paramsout)[1] 

So I think you should do this...


  if (soapErrorCheck($response) == 0) {
# add this to get a full array of the results @paramsout =
$response-paramsout;

 # Process each of the records
  # foreach my $row($response-paramsout()) {  # incorrect use of
--paramsout ?
foreach my $row(@paramsout) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
 }
}



Maybe there is a more compact syntax than the above, but the above might
also be clearer for the next person too.

HTH.

--
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.

On 10/3/06, Sean Garrison [EMAIL PROTECTED] wrote:
 Ok ... the lt; worked.  Thank you so much for your help.  Now when I 
 actually get the search results the first row is missing ...

 For example:
 I am running this query in Soap:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
 AND ('rad_Status' lt;= Pending)

 It yields 6 results.

 If I run the same query in Remedy:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
 AND ('rad_Status' = Pending)

 I get 7 results.  The first row seems to be missing every time.  So I 
 have assumed it was my code ...

  so here is my soap code that prints out the values:

  my $response = $soap-OpGetList($header,$inputData);

  #Check for Errors
  if (soapErrorCheck($response) == 0) {  # Process each of the records

 foreach my $row($response-paramsout()) {
   print($row-{'txt_Service_Event'}. );
   print($row-{'txt_Description'}.\n);
  }
 }



 Am I missing something?

 Any input would be greatly appreciated.

 Thanks,

 Sean



___
UNSUBSCRIBE or access

Re: [Soap Question] Problem with the = in a query resolved ... sort of

2006-10-03 Thread Carey Matthew Black

Sean,

Ok... then my next guess would be it is a timezone issue. :)

Does your web Service client specify what timezone the client is in in
the header information?

Could it be that one less record is due to how 09/01/2006 00:00:00
AM is interpreted in the User Tool vs Web Services client?

Can you list the values from each client for the tickets involved and
see if they values agree?

--
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.



On 10/3/06, Sean Garrison [EMAIL PROTECTED] wrote:

Thanks Carey for your help.  Unfortunately this time it did not resolve the
issue.  I'm beginning to think there is either a bug with the soap interface
(SOAP::Lite) or with web services.

Here is the code change:

if (soapErrorCheck($response) == 0) {
  # add this to get a full array of the results
  my @params = $response-paramsout;

  # Process each of the records
foreach my $row(@params) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
}
  }

It still yields 6 results.

I am running this query in Soap:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' = 1.)
AND ('rad_Status' lt;= Pending)

It yields 6 results.
Txt_Service_Event   rad_Status  txt_Description
2   Pending
3   Re-Opened
4   Pending
5   Re-Opened
6   Pending
7   Pending

If I run the same query in Remedy:

('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' = 1.)
 AND ('rad_Status' = Pending)

I get seven results:

Txt_Service_Event   rad_Status  txt_Description
1   Pending
2   Pending
3   Re-Opened
4   Pending
5   Re-Opened
6   Pending
7   Pending

I was wondering if anyone else had run into a similar issue  I am
running ARS 6.3 patch 17 on solaris.

Thanks,

Sean





-Original Message-
From: Action Request System discussion list(ARSList)
[mailto:[EMAIL PROTECTED] On Behalf Of Carey Matthew Black
Sent: Tuesday, October 03, 2006 12:38 PM
To: arslist@ARSLIST.ORG
Subject: Re: [Soap Question] Problem with the = in a query resolved ...
sort of

Sean,

That looks like Perl, SOAP::Lite to me... :) So forgive me if I have
made a bad assumption...

Reed up on the SOAP::Lite module...

IN/OUT, OUT PARAMETERS AND AUTOBINDING

SOAP::Lite gives you access to all parameters (both in/out and out)
and also does some additional work for you. Lets consider following
example:

  mehodResponse
res1name1/res1
res2name2/res2
res3name3/res3
  /mehodResponse

In that case:

  $result = $r-result; # gives you 'name1'
  $paramout1 = $r-paramsout;  # gives you 'name2', because of
scalar context
  $paramout1 = ($r-paramsout)[0]; # gives you 'name2' also
  $paramout2 = ($r-paramsout)[1]; # gives you 'name3'

or

  @paramsout = $r-paramsout; # gives you ARRAY of out parameters
  $paramout1 = $paramsout[0]; # gives you 'res2', same as ($r-paramsout)[0]
  $paramout2 = $paramsout[1]; # gives you 'res3', same as ($r-paramsout)[1]


So I think you should do this...


  if (soapErrorCheck($response) == 0) {
# add this to get a full array of the results
@paramsout = $response-paramsout;

 # Process each of the records
  # foreach my $row($response-paramsout()) {  # incorrect use of
--paramsout ?
foreach my $row(@paramsout) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
 }
}



Maybe there is a more compact syntax than the above, but the above
might also be clearer for the next person too.

HTH.

--
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.

On 10/3/06, Sean Garrison [EMAIL PROTECTED] wrote:
 Ok ... the lt; worked.  Thank you so much for your help.  Now when I
 actually get the search results the first row is missing ...

 For example:
 I am running this query in Soap:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
 AND ('rad_Status' lt;= Pending)

 It yields 6 results.

 If I run the same query in Remedy:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
 AND ('rad_Status' = Pending)

 I get 7 results.  The first row seems to be missing every time.  So I have
 assumed it was my code ...

  so here is my soap code that prints out the values:

  my $response = $soap-OpGetList($header,$inputData);

  #Check for Errors
  if (soapErrorCheck($response) == 0) {
  # Process each of the records
  foreach my $row($response-paramsout

Re: [Soap Question] Problem with the = in a query resolved ... sort of

2006-10-03 Thread Sean Garrison
To make it easier I've included the whole function:

sub soapGetList{
 my $soap = shift;
 my $user = shift;
 my $pass = shift;
 my $query = shift;

 # Initialize the Header
 my $header = SOAP::Header-name(
   'AuthenticationInfo', { userName = $user, password = $pass , locale =
en_US, timezone = EST}
  );
   # Pass the Request_ID of the ticket
 my $inputData = SOAP::Data-new(
name  = 'Qualification',
value = $query,
type  = 'xsd:string'
   );
 my $response = $soap-OpGetList($header,$inputData);


  if (soapErrorCheck($response) == 0) {
  # add this to get a full array of the results
  my @params = $response-paramsout;

  # Process each of the records
foreach my $row(@params) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
}
  }

 return (0);
}

Actual Data:

Service Event+  Status  Description Creation Date
SE01631976  Pending Desc1   9/5/2006 16:38
SE01634780  Pending Desc2   9/8/2006 11:35
SE01636647  Re-Opened   Desc3   9/11/2006 9:32
SE01643964  Pending Desc4   9/18/2006 9:09
SE01644297  Re-Opened   Desc5   9/18/2006 12:40
SE01650246  Pending Desc6   9/24/2006 12:05
SE01656135  Pending Desc7   10/1/2006 2:31
SE01658513  AcceptedDesc8   10/3/2006 15:26

The record that is not being returned is SE01631976.  

The timezone really wouldn't matter because the earliest date from the
results is 9/5/2006 4:38:03 PM

Sean 





-Original Message-
From: Action Request System discussion list(ARSList)
[mailto:[EMAIL PROTECTED] On Behalf Of Carey Matthew Black
Sent: Tuesday, October 03, 2006 4:02 PM
To: arslist@ARSLIST.ORG
Subject: Re: [Soap Question] Problem with the = in a query resolved ...
sort of

Sean,

Ok... then my next guess would be it is a timezone issue. :)

Does your web Service client specify what timezone the client is in in
the header information?

Could it be that one less record is due to how 09/01/2006 00:00:00
AM is interpreted in the User Tool vs Web Services client?

Can you list the values from each client for the tickets involved and
see if they values agree?

-- 
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.



On 10/3/06, Sean Garrison [EMAIL PROTECTED] wrote:
 Thanks Carey for your help.  Unfortunately this time it did not resolve
the
 issue.  I'm beginning to think there is either a bug with the soap
interface
 (SOAP::Lite) or with web services.

 Here is the code change:

 if (soapErrorCheck($response) == 0) {
   # add this to get a full array of the results
   my @params = $response-paramsout;

   # Process each of the records
 foreach my $row(@params) {
   print($row-{'txt_Service_Event'}. );
   print($row-{'txt_Description'}.\n);
 }
   }

 It still yields 6 results.

 I am running this query in Soap:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
 AND ('rad_Status' lt;= Pending)

 It yields 6 results.
 Txt_Service_Event   rad_Status  txt_Description
 2   Pending
 3   Re-Opened
 4   Pending
 5   Re-Opened
 6   Pending
 7   Pending

 If I run the same query in Remedy:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
  AND ('rad_Status' = Pending)

 I get seven results:

 Txt_Service_Event   rad_Status  txt_Description
 1   Pending
 2   Pending
 3   Re-Opened
 4   Pending
 5   Re-Opened
 6   Pending
 7   Pending

 I was wondering if anyone else had run into a similar issue  I am
 running ARS 6.3 patch 17 on solaris.

 Thanks,

 Sean





 -Original Message-
 From: Action Request System discussion list(ARSList)
 [mailto:[EMAIL PROTECTED] On Behalf Of Carey Matthew Black
 Sent: Tuesday, October 03, 2006 12:38 PM
 To: arslist@ARSLIST.ORG
 Subject: Re: [Soap Question] Problem with the = in a query resolved ...
 sort of

 Sean,

 That looks like Perl, SOAP::Lite to me... :) So forgive me if I have
 made a bad assumption...

 Reed up on the SOAP::Lite module...
 
 IN/OUT, OUT PARAMETERS AND AUTOBINDING

 SOAP::Lite gives you access to all parameters (both in/out and out)
 and also does some additional work for you. Lets consider following
 example:

   mehodResponse
 res1name1/res1
 res2name2/res2
 res3name3/res3
   /mehodResponse

 In that case:

   $result = $r-result; # gives you 'name1'
   $paramout1 = $r-paramsout

Re: [Soap Question] Problem with the = in a query resolved ... sort of

2006-10-03 Thread Carey Matthew Black

Sean,

Ok..
Guessing that

$query = ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND
('rad_Severity' = 1.)
AND ('rad_Status' lt;= Pending)


So is the Actual Data what was returned by the Web Service or the User Tool?

Can we see the data for the record of question from the other client?
(You may need to add the 'Create-Date' field to the output of the
method for testing?)

--
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.



On 10/3/06, Sean Garrison [EMAIL PROTECTED] wrote:

To make it easier I've included the whole function:

sub soapGetList{
 my $soap = shift;
 my $user = shift;
 my $pass = shift;
 my $query = shift;

 # Initialize the Header
 my $header = SOAP::Header-name(
   'AuthenticationInfo', { userName = $user, password = $pass , locale =
en_US, timezone = EST}
  );
   # Pass the Request_ID of the ticket
 my $inputData = SOAP::Data-new(
name  = 'Qualification',
value = $query,
type  = 'xsd:string'
   );
 my $response = $soap-OpGetList($header,$inputData);


  if (soapErrorCheck($response) == 0) {
  # add this to get a full array of the results
  my @params = $response-paramsout;

  # Process each of the records
foreach my $row(@params) {
  print($row-{'txt_Service_Event'}. );
  print($row-{'txt_Description'}.\n);
}
  }

 return (0);
}

Actual Data:

Service Event+  Status  Description Creation Date
SE01631976  Pending Desc1   9/5/2006 16:38
SE01634780  Pending Desc2   9/8/2006 11:35
SE01636647  Re-Opened   Desc3   9/11/2006 9:32
SE01643964  Pending Desc4   9/18/2006 9:09
SE01644297  Re-Opened   Desc5   9/18/2006 12:40
SE01650246  Pending Desc6   9/24/2006 12:05
SE01656135  Pending Desc7   10/1/2006 2:31
SE01658513  AcceptedDesc8   10/3/2006 15:26

The record that is not being returned is SE01631976.

The timezone really wouldn't matter because the earliest date from the
results is 9/5/2006 4:38:03 PM

Sean





-Original Message-
From: Action Request System discussion list(ARSList)
[mailto:[EMAIL PROTECTED] On Behalf Of Carey Matthew Black
Sent: Tuesday, October 03, 2006 4:02 PM
To: arslist@ARSLIST.ORG
Subject: Re: [Soap Question] Problem with the = in a query resolved ...
sort of

Sean,

Ok... then my next guess would be it is a timezone issue. :)

Does your web Service client specify what timezone the client is in in
the header information?

Could it be that one less record is due to how 09/01/2006 00:00:00
AM is interpreted in the User Tool vs Web Services client?

Can you list the values from each client for the tickets involved and
see if they values agree?

--
Carey Matthew Black
Remedy Skilled Professional (RSP)
ARS = Action Request System(Remedy)

Love, then teach
Solution = People + Process + Tools
Fast, Accurate, Cheap Pick two.



On 10/3/06, Sean Garrison [EMAIL PROTECTED] wrote:
 Thanks Carey for your help.  Unfortunately this time it did not resolve
the
 issue.  I'm beginning to think there is either a bug with the soap
interface
 (SOAP::Lite) or with web services.

 Here is the code change:

 if (soapErrorCheck($response) == 0) {
   # add this to get a full array of the results
   my @params = $response-paramsout;

   # Process each of the records
 foreach my $row(@params) {
   print($row-{'txt_Service_Event'}. );
   print($row-{'txt_Description'}.\n);
 }
   }

 It still yields 6 results.

 I am running this query in Soap:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
 AND ('rad_Status' lt;= Pending)

 It yields 6 results.
 Txt_Service_Event   rad_Status  txt_Description
 2   Pending
 3   Re-Opened
 4   Pending
 5   Re-Opened
 6   Pending
 7   Pending

 If I run the same query in Remedy:

 ('dt_Creation Date' = 09/01/2006 00:00:00 AM) AND ('rad_Severity' =
1.)
  AND ('rad_Status' = Pending)

 I get seven results:

 Txt_Service_Event   rad_Status  txt_Description
 1   Pending
 2   Pending
 3   Re-Opened
 4   Pending
 5   Re-Opened
 6   Pending
 7   Pending

 I was wondering if anyone else had run into a similar issue  I am
 running ARS 6.3 patch 17 on solaris.

 Thanks,

 Sean





 -Original Message-
 From: Action Request System discussion list(ARSList)
 [mailto:[EMAIL PROTECTED] On Behalf Of Carey Matthew Black
 Sent: Tuesday, October 03, 2006 12:38 PM
 To: arslist