Naviguation dans :  Perl  JavaScript  Détail  - load.cgi?Appel=extractUser
 présentée :  par cas d'appel   par traitements 
Retour à l'accueil
  
 
 Requêtes 

 load – User 

 Execer 

Requêtes de Ça-déménage.com
Accès particulier
Exécution de la requête


 extractUser  Exécution de la requête — Extraire des données
Syntaxe Execer(x,To,date,nom,val,RTN)
Paramètres 
nom  type  Description 
 IN Cas d'appel
To  IN Cas d'appel
date  IN Date de clôture de la base (éventuellement vide)
nom  IN Identifiant d'appel
val  IN Valeur fournie à l'appel
RTN  OUT Code JavaScript retourné au client
Perl : scalaire passé par référence – JavaScript : tableau à 1 élément
retourne  OUT  = "" : Traitement correct
= chaîne non vide : Message d'erreur
Fonctions util. 
 printLog Ecriture de la log
 splitMail Supprime l'adresse e-mail dans un enregistement
 splitAddr Supprime les informations nominatives des enregistrements
 wsRunVar Paramètres de gestion des valeurs
 wsRun Paramètres de gestion des enregistrements

 fromDBase Extrait des enregistrements — Extraire des données
 toClient Construit le code JavaScript à retourner au client — Extraire des données


Code Perl 


sub Execer {local($x,$To,$date,$nom,$val,$RTN) = @_; 
 local($i,$In,$Out,$Num,$Mail); 
 $In = ''; $Out = ''; $Num = ''; $Mail = '';
 $wwNum = '';
 &printLog("Load",'Log','/#T(Appel):'.$x.' '.$To.$nom.' '.$val.'');
 local($x1,$k,$Dest); 
 if ($val!~/^(Admin|User)/) {return 'Erreur extract: 100'}; $Dest = $1; $val = substr($val,length($1));
 if (($i=&fromDBase($Dest,\$In,$date,$val,""))!=0) {return 'Erreur lecture: '.$i.''};
if ($Dest eq "Admin") {
 if ($In=~/\/#T\(gloEtat\):1\/#T/) {return 'Erreur extract: 110'};
 if ($In!~/\/#T\(gloVData\):(.*)/) {return 'Erreur extract: 111'}; $x1 = $1;
 if (($k=index($x1,"/#L:"))==-1) {return 'Erreur extract: 112'}; $x1 = substr($x1,$k+4);
 if (($k=index($x1,"/#L:"))==-1) {return 'Erreur extract: 112'}; $x1 = substr($x1,$k+4);
 if (($k=index($x1,"/#L:"))==-1) {return 'Erreur extract: 112'}; $x1 = substr($x1,$k+4);
 if (($k=index($x1,"/#L:"))==-1) {return 'Erreur extract: 112'}; $x1 = substr($x1,0,$k);
 $Out .= "var wsGate = \"".$x1."\";\n";
} else {
 if (($i=&splitMail($Dest,\$In,\$Mail))!=0) {return 'Erreur mail: '.$i.''};
 if (($i=&splitAddr($To,$nom,\$In))!=0) {return 'Erreur addr: '.$i.''};
 if (($i=&wsRun("runImport",$Dest,\$In,\$Out))!=0) {return 'Erreur export: '.$i.''};
}
 if (($i=&toClient($x,$To,\$Out,$RTN))!=0) {return 'Erreur export: '.$i.''};
 return '';
}
Code JavaScript 


function Execer(x,To,date,nom,val,RTN) { 
 var i,In,Out,Num,Mail; 
 In = Array(''); Out = Array(''); Num = Array(''); Mail = Array('');
 wwNum = Array('');
 printLog("Load",'Log','/#T(Appel):'+x+' '+To+nom+' '+val+'');
 var x1,k,Dest; 
 if (!val.match(/^(Admin|User)/)) {return 'Erreur extract: 100'}; Dest = RegExp.$1; val = val.substr(RegExp.$1.length);
 if ((i=fromDBase(Dest,In,date,val,""))!=0) {return 'Erreur lecture: '+i.toString()};
if (Dest=="Admin") {
 if (In[0].match(/\/#T\(gloEtat\):1\/#T/)) {return 'Erreur extract: 110'};
 if (!In[0].match(/\/#T\(gloVData\):(.*)/)) {return 'Erreur extract: 111'}; x1 = RegExp.$1;
 if ((k=x1.indexOf("/#L:"))==-1) {return 'Erreur extract: 112'}; x1 = x1.substr(k+4);
 if ((k=x1.indexOf("/#L:"))==-1) {return 'Erreur extract: 112'}; x1 = x1.substr(k+4);
 if ((k=x1.indexOf("/#L:"))==-1) {return 'Erreur extract: 112'}; x1 = x1.substr(k+4);
 if ((k=x1.indexOf("/#L:"))==-1) {return 'Erreur extract: 112'}; x1 = x1.substr(0,k);
 Out[0] += "var wsGate = \""+x1+"\";\n";
} else {
 if ((i=splitMail(Dest,In,Mail))!=0) {return 'Erreur mail: '+i.toString()};
 if ((i=splitAddr(To,nom,In))!=0) {return 'Erreur addr: '+i.toString()};
 if ((i=wsRun("runImport",Dest,In,Out))!=0) {return 'Erreur export: '+i.toString()};
}
 if ((i=toClient(x,To,Out,RTN))!=0) {return 'Erreur export: '+i.toString()};
 return '';
}