【问题标题】:Importing Data GI In web service在 Web 服务中导入数据 GI
【发布时间】:2019-01-10 00:12:57
【问题描述】:

我需要使用网络服务将自定义数据导入 Acumatica。

我创建了一个自定义表,其中包含 2 个字符串字段和一个用于保存 XML 数据的 ntext 字段。 为它创建了一个 GI 并暴露在 Web 服务端点中。

导入的JSON数据格式是这样的。

    [
  {
    "OrderNbr": "1",
    "CommandValue": "8",
    "Xmldata": "<?xml version=\"1.0\" encoding=\"utf-8\"?><MLW Cmd=\"8\" TStamp=\"2018-12-21T11:38:25\" Id=\"dsgx1\" OrgId=\"157035408\" DevId=\"b9d863ca-REG-4825e4aa-566b5fc7\" RouteId=\"Resource-879-1\" StopId=\"Location230\" LocationKey=\"Location230\" StopType=\"67\"> <GPS Altitude=\"278.46383285522461\" Latitude=\"34.0487467032243\" Longitude=\"-84.673757432107507\" NoOfSat=\"7\" Speed=\"1.3679999828338623\" SatTStamp=\"2018-12-21T11:37:26\" Direction=\"0\" FixQuality=\"A\" /> <FieldData LCode=\"1\" OwnerId=\"Location230\"> <Field FId=\"89815\" Value=\"No\" /> <Field FId=\"89817\" Value=\"No\" /> <Field FId=\"89816\" Value=\"Patrick N\" /> </FieldData> <Job Id=\"Order-878-4\" Status=\"4\"> <Item Status=\"4\" Id=\"TIFTUF\" Mode=\"Manual\" /> </Job></MLW>"
  }
]

我已经尝试在 POSTMAN 中使用基本身份验证。

我收到以下错误

PUT:400 错误请求 GET: 500 内部服务器错误。

更新:我创建了一个自定义列表页面并在端点中进行了配置。

我已经在 POSTMAN 和

中测试过

以下是用于创建记录的端点和 JSON 字符串

http://localhost/XYZ/(W(3))/entity/XYZ/17.200.001.001/MyResposeImport



{
    "OrderNbr": {value :"b"},
    "CommandValue": {value :"8"},
    "Xmldata": {value :"<?xml version='1.0' encoding='utf-8'?><MLW Cmd='8' TStamp='2018-12-21T11:38:25' Id='dsgx1' OrgId='157035408' DevId='b9d863ca-REG-4825e4aa-566b5fc7' RouteId='Resource-879-1' StopId='Location230' LocationKey='Location230' StopType='67'> <GPS Altitude='278.46383285522461' Latitude='34.0487467032243' Longitude='-84.673757432107507' NoOfSat='7' Speed='1.3679999828338623' SatTStamp='2018-12-21T11:37:26' Direction='0' FixQuality='A' /> <FieldData LCode='1' OwnerId='Location230'> <Field FId='89815' Value='No' /> <Field FId='89817' Value='No' /> <Field FId='89816' Value='Patrick N' /> </FieldData> <Job Id='Order-878-4' Status='4'> <Item Status='4' Id='TIFTUF' Mode='Manual' /> </Job></MLW>"}
  }

PUT 返回 OK 并在下面给出响应

{
    "id": "94a00013-37bf-4077-bfb6-2e8662988547",
    "rowNumber": 1,
    "note": null,
    "OrderNbr": {
        "value": "b"
    },
    "ShippingStatus": {},
    "XMLData": {},
    "custom": {},
    "files": []
}

我已在后端签入,但没有记录添加到表中。

我在隐藏部分下创建了站点地图,因为屏幕只是 API 调用。

记录未添加到表中可能是什么原因?

【问题讨论】:

  • 通用查询是查询,它们用于将数据从系统中取出,而不是导入。

标签: acumatica


【解决方案1】:

我已经解决了这个问题。 JSON 数据字段名称与 DAC 标签不同,API 看起来是 DAC 标签而不是字段名称。

我已将 JSON 数据更改为以下,它工作正常

{
    "OrderNbr": {value :"b"},
    "ShippingStatus": {value :"8"},
    "XMLData": {value :"<?xml version='1.0' encoding='utf-8'?><MLW Cmd='8' TStamp='2018-12-21T11:38:25' Id='dsgx1' OrgId='157035408' DevId='b9d863ca-REG-4825e4aa-566b5fc7' RouteId='Resource-879-1' StopId='Location230' LocationKey='Location230' StopType='67'> <GPS Altitude='278.46383285522461' Latitude='34.0487467032243' Longitude='-84.673757432107507' NoOfSat='7' Speed='1.3679999828338623' SatTStamp='2018-12-21T11:37:26' Direction='0' FixQuality='A' /> <FieldData LCode='1' OwnerId='Location230'> <Field FId='89815' Value='No' /> <Field FId='89817' Value='No' /> <Field FId='89816' Value='Patrick N' /> </FieldData> <Job Id='Order-878-4' Status='4'> <Item Status='4' Id='TIFTUF' Mode='Manual' /> </Job></MLW>"}
  }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-19
    • 2016-12-20
    • 1970-01-01
    相关资源
    最近更新 更多