Script de création , de modification et de validation
Script de création :
Affecter une valeur à un champ d'une entité en fonction du contexte.
var type= CRM.GetContextInfo("Opportunity","oppo_type");
DefaultValue=type;
Script de validation :
Exemple n°1 : vérifier l'unicité d'un numéro de série à la sauvegarde (en création ou en modification d'une fiche Machine)
var SN= Values('mach_SN');
var machid= Values("LIID") ;
if (machid> 0)
{
var sSQL="select count(*) as total from machines where mach_machinesid<>"+machid+" and mach_Deleted is null and mach_sn= "+SN;
}
else
{
var sSQL="select count(*) as total from machines where mach_Deleted is null and mach_sn= "+SN;
}
Query = CRM.CreateQueryObj(sSQL);
Query.SelectSQL();
if (Query('total') == 0)
{ Valid = true;
}
else
{ErrorStr = "Le numéro de série n'est pas unique !";
Valid = false;
}
Exemple n°2 : Vérifier la validité d'un numéro de SIREN lors de la sauvegarde (en création ou en modification). Dans l'exemple , nous limitons le contrôle à un secteur représentant la France.
var secterr = Values('comp_secterr');
if (secterr ==-1342177274)
{
var SIREN1 = new String(Values('comp_siret'));
var SIREN =SIREN1.substr(0,9);
var cle = new Array( SIREN.length );
var n = 0,sum = 0;
for( n = 0; n < SIREN.length; ++n )
{
cle [n] = parseInt ( SIREN.charAt(n) );
}
for( n = cle.length -2; n >= 0; n-=2 )
cle [n] *= 2;
for( n = 0; n < cle.length; ++n )
{
if( cle [n] > 9 )
{ cle [n]-=9;}
sum += cle [n];
}
if ((sum%10)==0)
{ Valid=true; }
else
{ Valid = false; }
}