Исправить аварийный символ WSDL для неработающего - PullRequest
1 голос
/ 24 апреля 2019

Я построил запрос в пользовательском интерфейсе SOAP, который работает нормально:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:CHG_ChangeInterface_WS">
   <soapenv:Header>
      <urn:AuthenticationInfo>
         <urn:userName></urn:userName>
         <urn:password></urn:password>
         <!--Optional:-->
         <urn:authentication>?</urn:authentication>
         <!--Optional:-->
         <urn:locale>?</urn:locale>
         <!--Optional:-->
         <urn:timeZone>?</urn:timeZone>
      </urn:AuthenticationInfo>
   </soapenv:Header>
   <soapenv:Body>
      <urn:Change_QueryList_Service>
         <urn:Qualification>('Change Request Status'!="Closed" AND 'Change Request Status'!="Cancelled") AND 'Scheduled Start Date'>"2019-04-22" AND 'Scheduled End Date'&lt;"2019-05-06" </urn:Qualification>

         <urn:startRecord>1</urn:startRecord>
         <urn:maxLimit>10</urn:maxLimit>
      </urn:Change_QueryList_Service>
   </soapenv:Body>
</soapenv:Envelope>

Когда я делаю этот же вызов через мой код C #, он работает нормально, и я получаю ожидаемые результаты:

 var response = service.Change_QueryList_Service("'Scheduled Start Date' > \"2019-04-22\"", "1", "1000").ToList();

Когда я изменяю этот вызов так, чтобы он содержал некоторый диапазон, как я делал в примере с SOAP UI, он не жаловался на XML (который я получаю):

var response = service.Change_QueryList_Service("'Scheduled Start Date' >= \"2019-04-22\" AND 'Scheduled End Date' < \"2019-05-06\"", "1", "1").ToList();

Я пытался экранировать «меньше чем»символ с, но это также не дает результатов (жалуется на символ 66 строки квалификации, с которого начинается escape-последовательность:

var response = service.Change_QueryList_Service("'Scheduled Start Date' >= \"2019-04-22\" AND 'Scheduled End Date' &lt; \"2019-05-06\"", "1", "1").ToList();

Любая помощь будет принята. Спасибо!

1 Ответ

0 голосов
/ 25 апреля 2019

Попробуйте установить 1000 для третьего параметра, как в первом примере. Также в документации Remedy имена полей отображаются с подчеркиванием вместо пробелов:

Sheduled_Start_Date

BMC Remedy 8 - Change_Querylist

...