Salesforce将一个对象拆分为两个(父子关系)
我有来自第三方工具的salesforce对象的数据,如下所示: ID | field1 | field2 | Criteria1重要性| Criteria1核心| Criteria1竞赛分数| Criteria2重要性| Criteria2核心| Criteria2竞赛分数| criteriaN 我想将其拆分为父子关系,如下所示: 父对象: ID |字段1 |字段2 |标准(外键) 和子对象: 标准名称|重要性|分数|选手核心 希望这是有意义的,我从两周以来一直在寻找:/Salesforce将一个对象拆分为两个(父子关系),salesforce,clone,master-detail,records,Salesforce,Clone,Master Detail,Records,我有来自第三方工具的salesforce对象的数据,如下所示: ID | field1 | field2 | Criteria1重要性| Criteria1核心| Criteria1竞赛分数| Criteria2重要性| Criteria2核心| Criteria2竞赛分数| criteriaN 我想将其拆分为父子关系,如下所示: 父对象: ID |字段1 |字段2 |标准(外键) 和子对象: 标准名称|重要性|分数|选手核心 希望这是有意义的,我从两周以来一直在寻找:/ 提前感谢。问题解决了,
提前感谢。问题解决了,我创建了子对象和顶点触发器来填充字段。 这就是它的样子:
trigger ResultChildTrigger on VANG_Survey_Result__c (after insert) {
List<SurveyDetail__c> details = new List<SurveyDetail__c>();
for (VANG_Survey_Result__c newResult: Trigger.New) {
//if (newResult.Id != null) {
details.add(new SurveyDetail__c(
Name = 'Overall Sales Approach',
Survey_Result__c = newResult.Id,
importance__c = decimal.valueOf(newResult.Q1Value__c),
score__c = decimal.valueOf(newResult.Q2Value__c),
competitor_score__c = decimal.valueOf(newResult.Q3Value__c)
));
}
insert details;
在VANG_测量结果上触发结果ChildTrigger(插入后){
列表详细信息=新列表();
for(VANG_Survey_Result__c newResult:Trigger.New){
//if(newResult.Id!=null){
详细信息。添加(新调查详细信息)(
名称='整体销售方法',
调查结果c=newResult.Id,
重要性=十进制.valueOf(newResult.Q1Value\uu c),
分数c=十进制.valueOf(newResult.Q2Value\uu c),
竞争对手得分=十进制.valueOf(newResult.q3valuec)
));
}
插入详细信息;
}问题解决了,我创建了子对象和一个顶点触发器来填充字段。 这就是它的样子:
trigger ResultChildTrigger on VANG_Survey_Result__c (after insert) {
List<SurveyDetail__c> details = new List<SurveyDetail__c>();
for (VANG_Survey_Result__c newResult: Trigger.New) {
//if (newResult.Id != null) {
details.add(new SurveyDetail__c(
Name = 'Overall Sales Approach',
Survey_Result__c = newResult.Id,
importance__c = decimal.valueOf(newResult.Q1Value__c),
score__c = decimal.valueOf(newResult.Q2Value__c),
competitor_score__c = decimal.valueOf(newResult.Q3Value__c)
));
}
insert details;
在VANG_测量结果上触发结果ChildTrigger(插入后){
列表详细信息=新列表();
for(VANG_Survey_Result__c newResult:Trigger.New){
//if(newResult.Id!=null){
详细信息。添加(新调查详细信息)(
名称='整体销售方法',
调查结果c=newResult.Id,
重要性=十进制.valueOf(newResult.Q1Value\uu c),
分数c=十进制.valueOf(newResult.Q2Value\uu c),
竞争对手得分=十进制.valueOf(newResult.q3valuec)
));
}
插入详细信息;
}原始对象是否已在SFDC中?您如何导入?您可以使用Apex来转换该对象。该结构将是包含字段的父对象和包含其余字段的子对象。您应该限制子对象,以便仅通过代码创建它。是的,原始对象已在SFDC中,third party应用程序是一个调查工具,它将答案传输到SFDC对象,因此我无法修改它们的传输方式。我如何在apex代码中执行此操作?您有示例吗?我有编程背景,所以只需要一个简单的示例。谢谢您需要自己编写此过程的逻辑。首先,您需要创建空的子对象,然后用“数据来源”中的值填充所有可能的字段(我建议您为此使用String.split方法)。插入它。然后创建父对象;对其执行相同操作;将子对象的id设置为父对象的特定字段。插入父对象。我将保持父对象的原样,并创建一个子对象,在其中复制必要字段。根据您的建议,我进行了一些研究,并找到了apex触发器的示例“在创建父记录时创建子记录"我将尝试修改此代码以满足我的需要。原始对象已在SFDC中?您如何进行导入?您可以使用Apex转换对象。结构将是包含字段的父对象,以及包含其余字段的子对象。您应该限制子对象,以便仅通过代码创建它。是的原始对象已经在SFDC中,第三方应用程序是一个调查工具,它将答案传输到SFDC对象,因此我无法修改它们的传输方式。我如何在apex代码中执行此操作?您有示例吗?我有编程背景,所以只需要一个简单的示例。谢谢您需要自己编写此过程的逻辑。首先,您需要创建空的子对象,然后用“数据来源”中的值填充所有可能的字段(我建议您为此使用String.split方法)。插入它。然后创建父对象;对其执行相同操作;将子对象的id设置为父对象的特定字段。插入父对象。我将保持父对象的原样,并创建一个子对象,在其中复制必要字段。根据您的建议,我进行了一些研究,并找到了apex触发器的示例“创建父记录时创建子记录”我将尝试修改此代码以满足我的需要