我正在开发ERP和Prestashop商店之间的集成,我现在正在尝试使用产品过滤器来检查产品是否已经存在,因此我可以添加新产品或更新现有产品。
当我尝试获取过滤器结果时,我得到了一个带有以下错误消息的XML响应
<![CDATA[The ""sort"" value has to be formed as this example: ""field_ASC"" or '[field_1_DESC,field_2_ASC,field_3_ASC,...]' (""field"" has to be an available field)]]>
我不明白这是什么意思,我已经搜索了一段时间,并没有找到任何具体问题,我发现所有的例子都是一样的。
这是我的代码,它在VB中,我正在使用Bukimedia Prestasharp
Dim oProdFac = New ProductFactory(oParameters.UrlAPI, oParameters.TokenAPI, oParameters.KeyAPI)
Dim objFiltro = New Dictionary(Of String, String)
Dim listFilterProducts As New List(Of Bukimedia.PrestaSharp.Entities.product)
objFiltro.Add("reference", "My_Product_Id")
listFilterProducts = oProdFac.GetByFilter(objFiltro, "null", "null")
我究竟做错了什么?
好吧,答案很简单,让我感到惭愧。
我在GetByFilter函数中发送了不正确的参数。我改变了这个
listFilterProducts = oProdFac.GetByFilter(objFiltro, "null", "null")
对此
listFilterProducts = oProdFac.GetByFilter(objFiltro, "reference_ASC", "null")
就像xml消息所说的那样。它解决了这个问题。