Как создать отношения с помощью Acumatica REST API - PullRequest
0 голосов
/ 18 января 2019

Я хотел бы установить отношения между клиентом -> контакт. В общем, я хотел бы знать правильный способ создания отношений в Acumatica Rest API.

Я отправляю следующее тело json как PUT, используя curl в php

Я попытался передать ContactIDs в массиве Contacts, но он просто говорит мне, что мне не хватает таких полей, как DefAddressID, но когда я пытаюсь добавить поле, оно не исчезает.

Я могу создать отношения из контакта, добавив значение customerid в поле businessaccount, но я хотел бы иметь возможность создавать отношения обоими способами.

{
  "AccountRef": {},
  "ApplyOverdueCharges": {
    "value": false
  },
  "AutoApplyPayments": {
    "value": false
  },
  "BillingAddressSameAsMain": {
    "value": true
  },
  "BillingContactSameAsMain": {
    "value": true
  },
  "CreatedDateTime": {
    "value": "2014-07-14T14:26:40.1+00:00"
  },
  "CurrencyID": {
    "value": "USD"
  },
  "Contacts": [
    {
      "ContactID": {
        "value": "12108"
      }
    },
    {
      "ContactID": {
        "value": "12107"
      }
    }
  ],
  "CurrencyRateType": {},
  "CustomerClass": {
    "value": "KEY"
  },
  "CustomerID": {
    "value": "FBSG2"
  },
  "CustomerName": {
    "value": "Faye Business Systems Group"
  },
  "EnableCurrencyOverride": {
    "value": true
  },
  "EnableRateOverride": {
    "value": false
  },
  "EnableWriteOffs": {
    "value": true
  },
  "FOBPoint": {},
  "LeadTimedays": {
    "value": 0
  },
  "LocationName": {
    "value": "Primary Location"
  },
  "MultiCurrencyStatements": {
    "value": false
  },
  "OrderPriority": {
    "value": 0
  },
  "ParentRecord": {},
  "PriceClassID": {},
  "PrintDunningLetters": {
    "value": false
  },
  "PrintInvoices": {
    "value": false
  },
  "PrintStatements": {
    "value": false
  },
  "ResidentialDelivery": {
    "value": false
  },
  "SaturdayDelivery": {
    "value": false
  },
  "SendDunningLettersbyEmail": {
    "value": false
  },
  "SendInvoicesbyEmail": {
    "value": false
  },
  "SendStatementsbyEmail": {
    "value": false
  },
  "ShippingAddressSameAsMain": {
    "value": true
  },
  "ShippingBranch": {},
  "ShippingContactSameAsMain": {
    "value": true
  },
  "ShippingRule": {
    "value": "Back Order Allowed"
  },
  "ShippingTerms": {},
  "ShippingZoneID": {},
  "ShipVia": {},
  "StatementCycleID": {
    "value": "EOM"
  },
  "StatementType": {
    "value": "Open Item"
  },
  "Status": {
    "value": "Active"
  },
  "TaxRegistrationID": {},
  "TaxZone": {},
  "Terms": {
    "value": "30D"
  },
  "WarehouseID": {},
  "WriteOffLimit": {
    "value": 20.0000
  },
  "custom": {},
  "files": []
},

Я ожидаю, что смогу зайти в учетную запись клиента и увидеть контакты, которые я только что связал, на вкладке контактов. Я также хотел бы иметь возможность войти в контакт и увидеть клиента.

Фактические результаты: Я получаю сообщения об ошибках Ошибка: «DefAddressID» не может быть пустым.

Ответы [ 2 ]

0 голосов
/ 27 февраля 2019

Мне кажется, я понимаю вашу ситуацию

Вы пытаетесь создать контакт прямо с экрана клиента, что невозможно. Если вы перейдете на этот экран в пользовательском интерфейсе, вы можете заметить, что на вкладке контактов есть кнопка «Добавить контакт». Это может создать иллюзию того, что вы можете добавить контакт с экрана клиента.

Фактически эта кнопка открывает экран контактов и предварительно заполняет определенные поля значениями в зависимости от того, где вы были.

Таким образом, если вы хотите создать контакт через веб-службы, вы должны пройти через контакт в конечной точке.

0 голосов
/ 23 февраля 2019

Это не поддерживается API Acumatica.

...