You need to sign in to do that
Don't have an account?
colin Berrouard
Assigning a value to a field object
Hi
I have an Insert trigger (after insert) on object Reservation Terrain than update Terrain Disponible object.
I have to update the Terrain_Disponible.Available field to "NO", and update Terrain_Disponible.Date_reserve field to Reservation_Terrain.Date_de_reservation value
Here is the schema
Here the code with an error at line 13
trigger TRG_Reservation2 on Reservation_Terrain__c (after insert) {
Set<Id> tdIdSet = new Set<Id>();
for(Reservation_Terrain__c rt: Trigger.new) {
if(rt.Terrain_Disponible__c != null)
tdIdSet.add(rt.Terrain_Disponible__c);
}
if(!tdIdSet.isEmpty()) {
List<Terrain_Disponible__c> tdList = [SELECT Id, Name, Available__c, Date_reserve__c FROM Terrain_Disponible__c WHERE Id IN: tdIdSet];
for(Terrain_Disponible__c td: tdList) {
td.Available__c = 'NO';
td.Date_reserve__c = Date_de_reservation__c.new; <-- The error line
}
update tdList;
}
}
Could you give me a hand?
thank you
I have an Insert trigger (after insert) on object Reservation Terrain than update Terrain Disponible object.
I have to update the Terrain_Disponible.Available field to "NO", and update Terrain_Disponible.Date_reserve field to Reservation_Terrain.Date_de_reservation value
Here is the schema
Here the code with an error at line 13
trigger TRG_Reservation2 on Reservation_Terrain__c (after insert) {
Set<Id> tdIdSet = new Set<Id>();
for(Reservation_Terrain__c rt: Trigger.new) {
if(rt.Terrain_Disponible__c != null)
tdIdSet.add(rt.Terrain_Disponible__c);
}
if(!tdIdSet.isEmpty()) {
List<Terrain_Disponible__c> tdList = [SELECT Id, Name, Available__c, Date_reserve__c FROM Terrain_Disponible__c WHERE Id IN: tdIdSet];
for(Terrain_Disponible__c td: tdList) {
td.Available__c = 'NO';
td.Date_reserve__c = Date_de_reservation__c.new; <-- The error line
}
update tdList;
}
}
Could you give me a hand?
thank you
Hi Colin,
Please find the below code:
Please do let me know if it helps you.
Regards,
Mahesh
All Answers
assuming Reservation_Terrain__c is the field name of reservation terrain in Terrain_Disponible. if its not replace it with the name
Please try with the below code and make sure with the field API names and object API names. please make sure with the child relationship name in the sub query ***** Reservation_Terrains__c ******
trigger TRG_Reservation2 on Reservation_Terrain__c (after insert)
{
Set<Id> tdIdSet = new Set<Id>();
list<Terrain_Disponible__c> ttdlist = new ttdlist<Terrain_Disponible__c>();
for(Reservation_Terrain__c rt: Trigger.new)
{
if(rt.Terrain_Disponible__c != null)
tdIdSet.add(rt.Terrain_Disponible__c);
}
if(!tdIdSet.isEmpty())
{
List<Terrain_Disponible__c> tdList = [SELECT Id, Name, Available__c, Date_reserve__c,(select Date_de_reservation__c from Reservation_Terrains__c ) FROM Terrain_Disponible__c WHERE Id IN: tdIdSet];
}
for(Terrain_Disponible__c td: tdList)
{
td.Available__c = 'NO';
for (Reservation_Terrain__c r : td.Reservation_Terrains__c )
{
td.Date_reserve__c = r.Date_de_reservation__c;
ttdlist.add(td);
}
}
update ttdlist;
}
if you have any issue with the above code then please let me know or else if it works then please mark this as best answer !!!!
Hi Colin,
Please find the below code:
Please do let me know if it helps you.
Regards,
Mahesh
It works