与sugarcrm和delphi 7的肥皂连接

时间:2011-12-27 21:55:57

标签: delphi soap sugarcrm

我创建了一个delphi 7程序,并使用soap wsdl连接到sugarcrm。 我正在使用Tnt组件来支持unicode。到目前为止,一切都按预期工作。 当我使用

传递带有unicode字符串的查询时
get_entry_list(session, 'Accounts',
  '<The unicode string query>',
  'NAME',
  fetchedall,
  sf,
  Trunc(seMaxRes.Value),
   0);

没有任何结果返回 请求如下:

<?xml version="1.0"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
  <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <NS1:get_entry_list xmlns:NS1="http://www.sugarcrm.com/sugarcrm">
      <session xsi:type="xsd:string">cviljal690kflmq992enth5ps6</session>
      <module_name xsi:type="xsd:string">Accounts</module_name>
      <query xsi:type="xsd:string">Accounts.name like "%ΞΒ£%"</query>
      <order_by xsi:type="xsd:string">NAME</order_by>
      <offset xsi:type="xsd:int">0</offset>
      <select_fields xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="xsd:string[0]"/>
      <max_results xsi:type="xsd:int">25</max_results>
      <deleted xsi:type="xsd:int">0</deleted>
    </NS1:get_entry_list>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

我对查询参数的编码做错了。 我在传递查询参数时使用了UTF8Encode而不缺

由于

1 个答案:

答案 0 :(得分:1)

好的解决了。 升级到delphi XE2 ......