Использование Apex Data Loader для загрузки записей в объект с отношениями основных данных - PullRequest
3 голосов
/ 23 июля 2010

Мне нужно загрузить данные в два объекта. Я могу загрузить данные в один объект с помощью загрузчика данных. Второй объект имеет отношение master-details с первым объектом, поэтому мне нужно иметь уникальный идентификатор записи записей первого объекта в файле CSV. Как я могу добавить эти идентификаторы записи в мой файл CSV?

Ответы [ 2 ]

5 голосов
/ 23 июля 2010

Вы можете загрузить «основные» записи после первоначальной загрузки и выполнить некоторое сопоставление, подобное (Имя -> Id).В Excel это может быть достигнуто с VLOOKUP.После того, как вы сгенерировали новый список «подробных» объектов, не должно возникнуть проблем с их загрузкой.Сопоставление «ID-> загруженные записи» также доступно в файле журнала успеха, созданном Apex Data Loader.

Но лучше сказать громко: «Винт Salesforce ID, мне не нужно вонять»ID ":) Подумайте, есть ли у вашего" мастера "какое-то уникальное поле.Это может быть даже «идентификатор» существующей системы, из которой вы импортируете в Salesforce.Создайте это поле в Salesforce (если вы этого еще не сделали) и пометьте его как «Внешний идентификатор».После этого вы сможете использовать этот внешний идентификатор вместо обычного идентификатора Salesforce в качестве способа установления связи между источником и целью.В псевдокоде:

с обычным идентификатором Salesforce вы должны

INSERT INTO detail_object (Name, SomeValue, master_ID) VALUES ("foo", "bar", [some valid salesforce id])

С помощью внешних идентификаторов вы можете легко и просто сказать Salesforce, что нужно выполнить всю тяжелую работу

INSERT INTO detail_object (Name, SomeValue, master_ID) VALUES ("foo", "bar", (SELECT Id from master_object where some_field_marked_as_external_id = "123")

Посмотрите руководство пользователя Data Loader для быстрого запуска и поиграйтесь с внешними идентификаторами, если можете (возможно, в бесплатной редакции для разработчиков?).Проще использовать, чем описать.

1 голос
/ 11 января 2012

Если вы используете загрузчик данных Apex, вам придется сделать 3 вещи:

1: вставить основную запись (записи). это даст им идентификаторы

2: снова экспортируйте эти основные записи, включая их идентификаторы, и интегрируйте их в свои данные. VLOOKUP наиболее полезен для такого рода вещей.

Или, если есть только одна основная запись, еще проще, просто скопируйте идентификатор из URL-адреса и добавьте его в каждую подробную запись в вашей электронной таблице.

3: затем вставьте подробные записи с основными идентификаторами

...