我们最近刚刚将Acumatica实例升级到版本6.10.0680。我在之前的实例(V 5.30.2489)上使用基于合同的API登录API并使用以下代码创建销售订单:
using (DefaultSoapClient client = new DefaultSoapClient(binding, address))
{
try {
//Login to Acumatica API
await client.LoginAsync(_acumaticaUid, _acumaticaPwd, _acumaticaCompany, null, null);
//Create a sales order with the specified values
SalesOrder newOrder = (SalesOrder)await client.PutAsync(orderToBeCreated);
client.Logout();
return newOrder;
}
catch (Exception e)
{
//order addition to Acumatica failed, update the order status in Woo Commerce
client.Logout();
Console.WriteLine("Acumatica could not add specified entity: " + e);
return null;
}
}
客户地址参数的网址:" https://mysandbox.acumatica.com/MyCompany/entity/Default/5.30.001"
上面的代码对我以前使用的版本完美无缺,但现在在v6.1中使用此代码时,我在client.LoginAsync()方法中获得了未经授权的401响应。以下是错误响应:
HTTP请求未经授权使用客户端身份验证方案 '匿名&#39 ;.从服务器收到的身份验证标头是 '具有基本'
我认为升级后的版本是向后兼容的,所以不应该仍然有效吗?我是否需要更改某些内容才能在v6.1上进行此操作?
您可以在Acumatica的未来版本中使用相同的系统端点 ERP。例如,如果您使用版本5.30.001的系统端点 和合同版本1访问Acumatica ERP 5.3,你可以使用 访问Acumatica ERP未来版本的相同端点。
P.S。最终我们将升级到现在可用的REST API,但这需要同时工作。