我正在使用 .NET SDK 从另一个接受 UTF-8 数据编码的系统导入客户和交易,但在处理特殊字符时遇到了很多麻烦。是否有 (a) 需要转义哪些字符(如撇号)和 (b) QBO 中不允许使用哪些字符(如冒号)的完整列表?我在在线文档中所能找到的只是“使用反斜杠来转义撇号等特殊字符”。好的,那么“&”、“破折号”、“破折号”、“重音”、“尖音”……你明白了。
这个问题会影响查询和插入,从而导致各种问题。例如,如果我们按姓名查询客户,并且查询失败(可能是由于无效字符),我们尝试将客户插入到 QBO 中,这当然也会失败,因为客户存在或无效字符。确实,我们通常可以确定查询失败是由于字符错误还是记录不存在,但我们需要一个设计时解决方案。有什么建议么?
如果您使用查询端点,请对查询参数进行 URL 编码。
For ex -
对于以下查询
select * from Customer where DisplayName='Aülleünte'
网址请求将是
https://quickbooks.api.intuit.com/v3/company/<relamId>/query?query=select+*+from+Customer+where+DisplayName%3D%27A%C3%BClle%C3%BCnte%27
PN - 某些 QBO 文本字段(例如 - 客户窗口的“描述/注释”)允许输入作为查询响应的一部分返回的控制字符。由于 XML 不支持其中一些字符,因此对象反序列化失败/显示警告。
您应该从 UI 中删除这些字符,或者需要在客户端代码中使用一些 lib/regex 以编程方式删除这些字符。理想情况下,它应该在服务器端处理。
QBO Global UI 当然支持 UTF-8 编码。但看起来,QBO US UI 在处理特殊字符时的行为有所不同。
例如 - 在 QBO US UI 中,如果您输入 '你好嗎
' 然后保存后,它会转换为 '}Î
'.
Edit
以下是可接受的字符列表:
•字母数字(A-Z、a-z、0-9)
•逗号(,)
•点或句点(.)
•问号(?)
•At符号(@)
•与号(&)
•感叹号(!)
•数字/井号 (#)
•单引号(')
•波形符 (~)
•星号(*)
•空间 ( )
•下划线(_)
•减号/连字符(-)
•分号(;)
•加号(+)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)