В моей настройке Лиды могут иметь несколько Аффилированных лиц (пользовательский объект Affiliate__c), которые реализуются через дочерние отношения, и где каждый Аффилированное лицо состоит из имени и двух связанных объектов: Аффилированного Лида и аффилированного Аккаунта.

При попытке создать лида вместе с (существующим) партнером с использованием ресурса составного дерева и следующей полезной нагрузки происходит сбой с Cannot reference a foreign key field Account__r.

{
    "records": [
        {
            "attributes": {
                "type": "Lead",
                "referenceId": "ref1"
            },
            "LastName": "Doe",
            "Lead_External_Id": "L1",
            "Affiliates__r": {
                "records": [
                    {
                        "attributes": {
                            "type": "Affiliate__c",
                            "referenceId": "ref2"
                        },
                        "Name": "First Affiliation",
                        "Account__r": {
                            "Id": "123456"
                        }
                    }
                ]
            }
        }
    ]
}

Однако, если я использую составной ресурс со следующей полезной нагрузкой, он работает нормально:

{
    "compositeRequest": [
        {
            "method": "POST",
            "url": "/services/data/v43.0/sobjects/Lead",
            "referenceId": "ref1",
            "body": {
                "LastName": "Doe",
                "Lead_External_Id": "L1"
            }
        },
        {
            "method": "POST",
            "url": "/services/data/v43.0/sobjects/Affiliate__c",
            "referenceId": "ref2",
            "body": {
                "Name": "First Affiliation",
                "Lead__r": {
                    "Lead_External_Id": "L1"
                },
                "Account__r": {
                    "Id": "123456"
                }
            }
        }       
    ]
}

Что я делаю неправильно при использовании Composite Tree Resource? Разве этот ресурс не может создавать дочерние отношения со ссылкой на другой объект?

4
stan 23 Июл 2018 в 13:28

1 ответ

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

0
SF Learner 20 Окт 2019 в 09:31