You need to sign in to do that
Don't have an account?
Jayesh Deo 2
insert Hiring Manager record and 5 related position records and 2 related candidates for each position record.
From the below code I can insert hiring manager record and positions records seperately but cannot able to insert related section hiring manager records and related section candidate records. I am learning Apex. Please Help!
public static void HiringManagerInsertrec()
{
Hiring_Manager__c hrmo=new Hiring_Manager__c();
hrmo.Name='rajees shubhamq';
hrmo.Email__c='ja@tzoq.com';
hrmo.location__c='Mumbai';
id hrID=hrmo.id;
insert hrmo;
list<position__c> pos=new list <position__c>();
for (integer counter=1; counter<10; counter++)
{
position__c posObj=new position__c();
posObj.Name='HR subedar1';
posObj.Hiring_Manager__c=hrID;
pos.Add(posobj);
}
if(!pos.Isempty())
{
insert pos;
}
list <Candidate__c> can=new list <Candidate__c>();
for (integer counter=1; counter<=2; counter++)
{
Candidate__c cc=new Candidate__c();
cc.name='rahul2 pawarq';
}
IF(!CAN.IsEmpty())
{
insert can;
}
system.debug('number of DML used:'+limits.getDmlStatements());
system.debug('Number of record processed:'+limits.getDmlRows());
system.debug('number of max limigt dml statements:'+limits.getLimitDmlStatements());
}
}
public static void HiringManagerInsertrec()
{
Hiring_Manager__c hrmo=new Hiring_Manager__c();
hrmo.Name='rajees shubhamq';
hrmo.Email__c='ja@tzoq.com';
hrmo.location__c='Mumbai';
id hrID=hrmo.id;
insert hrmo;
list<position__c> pos=new list <position__c>();
for (integer counter=1; counter<10; counter++)
{
position__c posObj=new position__c();
posObj.Name='HR subedar1';
posObj.Hiring_Manager__c=hrID;
pos.Add(posobj);
}
if(!pos.Isempty())
{
insert pos;
}
list <Candidate__c> can=new list <Candidate__c>();
for (integer counter=1; counter<=2; counter++)
{
Candidate__c cc=new Candidate__c();
cc.name='rahul2 pawarq';
}
IF(!CAN.IsEmpty())
{
insert can;
}
system.debug('number of DML used:'+limits.getDmlStatements());
system.debug('Number of record processed:'+limits.getDmlRows());
system.debug('number of max limigt dml statements:'+limits.getLimitDmlStatements());
}
}
Can you try as below.
Thanks,
All Answers
The main issue in you code is you are assigning the id before the Hiring manager record is created.Can you try the below code.
Let me know if you face any issues.
If this solution helps, Please mark it as best answer.
Thanks,
Can you try as below.
Thanks,
A small issue in the code. Can you try below.
Thanks,
Finally, Suggested code worked. I made small changes. Please check.
Thanks to You for new learnings today!
public static void HiringManagerInsertrec()
{
Hiring_Manager__c hrmo=new Hiring_Manager__c();
hrmo.Name='Rahul Dravid Homework exercise ';
hrmo.Email__c='ja@tzoq.com';
hrmo.location__c='Mumbai';
insert hrmo;
list<position__c> pos=new list <position__c>();
for (integer counter=1; counter<10; counter++)
{
position__c posObj=new position__c();
posObj.Name='HR subedar1';
posObj.Hiring_Manager__c=hrmo.id;
pos.Add(posobj);
}
if(!pos.Isempty())
{
insert pos;
}
list <Candidate__c> can=new list <Candidate__c>();
For(position__c ps: pos)
{
for (integer counter=1; counter<=2; counter++)
{
Candidate__c cc=new Candidate__c();
cc.Candidate_Name__c ='rahul2 pawarq';
cc.position__c=ps.id;
can.add(cc);
}
}
IF(!CAN.IsEmpty())
{
insert can;
}
system.debug('number of DML used:'+limits.getDmlStatements());
system.debug('Number of record processed:'+limits.getDmlRows());
system.debug('number of max limigt dml statements:'+limits.getLimitDmlStatements());
}
}