php – sales force在一次调用中保存依赖对象
发布时间:2020-12-13 16:51:10 所属栏目:PHP教程 来源:网络整理
导读:我使用salesforce合作伙伴WSDL和soap api在salesforce上上传数据并将其存储在SF对象上 我有两个依赖对象,它们有一个用于子对象的查找字段 当我存储父对象时,我想存储从属子对象数据. 如何使用SOAP api实现此目的. 提前致谢.. 解决方法 您可以通过在父对象类
我使用salesforce合作伙伴WSDL和soap api在salesforce上上传数据并将其存储在SF对象上
我有两个依赖对象,它们有一个用于子对象的查找字段 当我存储父对象时,我想存储从属子对象数据. 如何使用SOAP api实现此目的. 提前致谢.. 解决方法
您可以通过在父对象类型上使用外部ID字段在SOAP中执行此操作,这将允许您发送父&单个调用中的子对象,并通过外部Id字段值自动关联它们.
这是Java中的一个示例,它可以一次创建帐户和相关联系人.联系人通过extId__c字段与帐户相关联. public static void main(String[] args) throws Exception { // login to salesforce. PartnerConnection pc = Connector.newConnection(args[0],args[1]); // The new Account record we're going to create. SObject acc = new SObject(); acc.setType("Account"); acc.setField("Name","My New Account"); acc.setField("extId__c",UUID.randomUUID().toString()); // The new Contact record we're going to create. SObject con = new SObject(); con.setType("Contact"); con.setField("FirstName","Simon"); con.setField("LastName","Fell"); // This Account object we build with the relationship to the account above based // on the extId__c field,and then we set it on the contact record // this is the standard FK lookup using ExternalIds feature. SObject parentAcc = new SObject(); parentAcc.setType("Account"); parentAcc.setField("extId__c",acc.getField("extId__c")); con.setField("Account",parentAcc); // Now we can insert both records at once SaveResult [] sr = pc.create(new SObject [] { acc,con} ); printSaveResult("Account result",sr[0]); printSaveResult("Contact result",sr[1]); } private static void printSaveResult(String label,SaveResult sr) { if (sr.isSuccess()) System.out.println(label + " success recordId is " + sr.getId()); else System.out.println(label + " failed,reason is " + sr.getErrors()[0].getMessage()); } 当我运行它时,它会打印出来 Account result success recordId is 0013000001DFMRxAAP Contact result success recordId is 0033000001aEgskAAC 当我登录网络应用程序时,我可以在其相关列表中看到我的新帐户记录和子联系人记录. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |