Création de tableau en JS
[syntax="javascript"]function AjouterLigne() {
/*
Ajoute une ligne dans le tableau
*/
// Test les champs
if(!(TesterChamps())) return '';
// Efface les champs
EffacerChampsSaisis();
// Quitte la fonction
return '';
}
function TesterChamps() {
/*
Test tous les champs nécessaire pour la fabrication des lignes
*/
var Form = document.forms[0];
var TitreColonne = new Array();
var ValeurChamps = new Array();
var LibelleColonne = new Array();
// Vérification des champs
if(Form.fld_Nom.value == '') {
alert('Veuillez saisir le nom.');
Form.fld_Nom.focus();
return false;
}
if(Form.fld_Prenom.value == '') {
alert('Veuillez saisir le prénom.');
Form.fld_Prenom.focus();
return false;
}
if(Form.fld_Adresse.value == '') {
alert('Veuillez saisir l\'adresse.');
Form.fld_Adresse.focus();
return false;
}
if(Form.fld_CodePostal.value == '') {
alert('Veuillez saisir le code postal.');
Form.fld_CodePostal.focus();
return false;
}
if(Form.fld_Ville.value == '') {
alert('Veuillez saisir la ville.');
Form.fld_Ville.focus();
return false;
}
TitreColonne = new Array('M_Nom', 'M_Prenom', 'M_Adresse', 'M_CodePostal', 'M_Ville');
LibelleColonne = new Array('Nom', 'Prénom', 'Adresse', 'Code postal', 'Ville');
ValeurChamps = new Array(Form.fld_Nom.value, Form.fld_Prenom.value, Form.fld_Adresse.value, Form.fld_CodePostal.value, Form.fld_Ville.value);
// Création d'une nouvelle ligne
ConstruireLigne(TitreColonne, LibelleColonne, ValeurChamps);
return true;
}
function ConstruireLigne(TitreColonne, LibelleColonne, ValeurChamps) {
/*
Construit une ligne
*/
var Separateur = ';';
// Ajoute dans chaque champs multivalué les nouvelles valeurs
for (iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) {
var Objet = eval('document.forms[0].' + TitreColonne[iCompteur]);
if (Objet.value == '') {
Objet.value = ValeurChamps[iCompteur];
} else {
Objet.value = Objet.value + Separateur + ValeurChamps[iCompteur];
}
}
// Ajoute les champs de colonne et les libéllés associés dans les champs M_TitreColonne et M_LibelleColonne
ConstruireChamps(TitreColonne, 'M_TitreColonne');
ConstruireChamps(LibelleColonne, 'M_LibelleColonne');
// Construit la ligne
MontrerLigne(TitreColonne, LibelleColonne, ValeurChamps, Separateur);
return '';
}
function MontrerLigne(TitreColonne, LibelleColonne, ValeurChamps, Separateur) {
var TableauMasque = document.getElementById('TableauJS');
var Nombre = eval('document.forms[0].' + TitreColonne[1]);
// Création de l'entête s'il s'agit de la première ligne
if(Nombre.value.indexOf(Separateur) < 0) {
CreerEntete(LibelleColonne, '');
}
// Ajoute une ligne
CreerLigne(ValeurChamps);
return '';
}
function CreerEntete(LibelleColonne, Lecture) {
var TableauMasque = document.getElementById('TableauJS');
var trNouveau = TableauMasque.insertRow(-1);
trNouveau.align = 'middle';
// Création d'une cellule par valeur
for (iCompteur = 0; iCompteur < LibelleColonne.length; iCompteur++) {
var tdNouveau = trNouveau.insertCell(-1);
NouveauTexte = document.createTextNode(LibelleColonne[iCompteur]);
tdNouveau.appendChild(NouveauTexte);
}
// Vérification du mode lecture
if (Lecture != 'L') {
var tdNouveau = trNouveau.insertCell(-1);
NouveauTexte = document.createTextNode('');
tdNouveau.appendChild(NouveauTexte);
}
}
function CreerLigne(ValeurChamps) {
var TableauMasque = document.getElementById('TableauJS');
var trNouveau = TableauMasque.insertRow(-1);
trNouveau.align = 'middle';
for (iCompteur = 0; iCompteur < ValeurChamps.length; iCompteur++) {
var tdNouveau = trNouveau.insertCell(-1);
NouveauTexte = document.createTextNode(ValeurChamps[iCompteur]);
tdNouveau.appendChild(NouveauTexte);
}
// Ajoute la dernière cellule
var tdNouveau = trNouveau.insertCell(-1);
trNouveau.align = 'middle';
var x = document.createElement("A");
eval("x.href=\"javascript:SupprimerLigne('" + trNouveau.rowIndex + "');\"");
var y = document.createTextNode("Supprimer");
x.appendChild(y)
tdNouveau.appendChild(x);
}
function SupprimerLigne(IndexTableau) {
EffacerTout();
EffacerElement(IndexTableau);
CreerTableau('');
}
function EffacerTout() {
var TableauMasque = document.getElementById('TableauJS');
for (var iCompteur = 0; iCompteur < TableauMasque.rows.length; iCompteur) {
TableauMasque.deleteRow(0);
}
}
function CreerTableau(Lecture){
var Separateur = ';';
var NumeroNom = document.forms[0].M_Nom.value.split(Separateur);
if (document.forms[0].M_Nom.value == '') { return '' };
var TitreColonne = document.forms[0].M_TitreColonne.value.split(Separateur);
var Objet = new Array(TitreColonne.length);
for (var iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) {
var Temp = eval('document.forms[0].' + TitreColonne[iCompteur]);
Objet[iCompteur] = Temp.value.split(Separateur);
}
var TableauMasque = document.getElementById('TableauJS');
var LibelleColonne = document.forms[0].M_LibelleColonne.value.split(Separateur);
CreerEntete(LibelleColonne, Lecture);
for (jCompteur = 0; jCompteur < NumeroNom.length; jCompteur++) {
var trNouveau = TableauMasque.insertRow(-1);
trNouveau.align = 'middle';
for (iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) {
var tdNouveau = trNouveau.insertCell(-1);
NouveauTexte = document.createTextNode(Objet[iCompteur][jCompteur]);
tdNouveau.appendChild(NouveauTexte);
}
if (Lecture != 'L') {
var tdNouveau = trNouveau.insertCell(-1);
trNouveau.align = 'middle';
var x = document.createElement("A");
eval("x.href=\"javascript:SupprimerLigne('" + trNouveau.rowIndex + "');\"");
var y = document.createTextNode("Supprimer");
x.appendChild(y);
tdNouveau.appendChild(x);
}
}
}
function ConstruireChamps(Tableau, Champs) {
var Separateur = ';';
for (iCompteur = 0; iCompteur < Tableau.length; iCompteur++) {
var Objet = eval('document.forms[0].' + Champs);
if (iCompteur == 0) {
Objet.value = Tableau[iCompteur];
} else {
Objet.value = Objet.value + Separateur + Tableau[iCompteur];
}
}
}
function EffacerElement(IndexTableau) {
var Retour = 1;
var Separateur = ';';
var TitreColonne = document.forms[0].M_TitreColonne.value.split(Separateur);
for (var iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) {
var Objet = eval('document.forms[0].' + TitreColonne[iCompteur]);
var SplitObjet = Objet.value.split(Separateur);
if (SplitObjet.length == 1 && IndexTableau == 1) {
Objet.value = '';
Retour = 0;
} else {
Objet.value = SupprimerDansTableau(SplitObjet, IndexTableau);
}
}
return Retour;
}
function SupprimerDansTableau(Tableau, IndexTableau) {
Separateur = ';';
var Temp = '';
for (jCompteur = 0; jCompteur < Tableau.length; jCompteur++) {
if(jCompteur != (IndexTableau - 1)) {
if (Temp == '') {
Temp = Tableau[jCompteur];
} else {
Temp = Temp + Separateur + Tableau[jCompteur];
}
}
}
return Temp;
}
function EffacerChampsSaisis() {
var Form = document.forms[0];
Form.fld_Nom.value = '';
Form.fld_Prenom.value = '';
Form.fld_Adresse.value = '';
Form.fld_CodePostal.value = '';
Form.fld_Ville.value = '';
}
[/syntax]
Le synopsis de la base.
Synopsis de base de documents Lotus Notes - créé à 23:36:02 le 21/08/2006
Informations de masque Nom : Ajouter un contact Pseudonyme : AC Dernière modification : 21/08/2006 23:15:42 Commentaire : [Sans] Type : Document Formule du titre de la fenêtre : "Contact" Inclure dans le menu Création : Oui Inclure dans Recherche par masque : Oui Masque par défaut : Non Actualiser automatiquement les champs : Non Envoi de documents à l'enregistrement : Non Enregistrement du masque dans documents : Non Récupérer contenus de champ existants : Non Enregistrer mises à jour comme réponses : Non Convertir versions antérieures en réponses : Non Activer les objets pendant la création : Non Activer les objets pendant l'édition : Non Activer les objets pendant la lecture : Non Clés de chiffrement de document : [Sans] Liste d'accès aux docs créés avec ce masque : Tous les utilisateurs Liste d'accès à ce masque pour création : Tous les utilisateurs Sous-composants : Champ : M_Nom Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_Prenom Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_Adresse Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_CodePostal Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_Ville Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_TitreColonne Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_LibelleColonne Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : $$Return Type de données : Texte Message d'aide : [Sans] Type de champ : Calculé à l'affichage Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule : "[http://" + Server_name + "/" + CheminBase + "/All]"; En script : Non Champ : Server_Name Type de données : Texte Message d'aide : [Sans] Type de champ : Calculé à l'affichage Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule : Server_Name En script : Non Champ : CheminBase Type de données : Texte Message d'aide : [Sans] Type de champ : Calculé à l'affichage Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule : @WebDbName En script : Non Champ : fld_ModeLecture Type de données : Mots-clés Message d'aide : [Sans] Type de champ : Modifiable Interface utilisateur mot-clé : Standard Autoriser valeurs non répertoriées : Non Mots-clés disponibles : Oui|1 Non|2 Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : 2 En script : Non Sous-masque: Calculé Formule : @If(fld_ModeLecture != "1"; "sm_AC_E"; "sm_AC_L"); Code JavaScript et HTML : Masque Ajouter un contact En-tête JS function AjouterLigne() { /* Ajoute une ligne dans le tableau */ // Test les champs if(!(TesterChamps())) return ''; // Efface les champs EffacerChampsSaisis(); // Quitte la fonction return ''; } function TesterChamps() { /* Test tous les champs nécessaire pour la fabrication des lignes */ var Form = document.forms[0]; var TitreColonne = new Array(); var ValeurChamps = new Array(); var LibelleColonne = new Array(); // Vérification des champs if(Form.fld_Nom.value == '') { alert('Veuillez saisir le nom.'); Form.fld_Nom.focus(); return false; } if(Form.fld_Prenom.value == '') { alert('Veuillez saisir le prénom.'); Form.fld_Prenom.focus(); return false; } if(Form.fld_Adresse.value == '') { alert('Veuillez saisir l\'adresse.'); Form.fld_Adresse.focus(); return false; } if(Form.fld_CodePostal.value == '') { alert('Veuillez saisir le code postal.'); Form.fld_CodePostal.focus(); return false; } if(Form.fld_Ville.value == '') { alert('Veuillez saisir la ville.'); Form.fld_Ville.focus(); return false; } TitreColonne = new Array('M_Nom', 'M_Prenom', 'M_Adresse', 'M_CodePostal', 'M_Ville'); LibelleColonne = new Array('Nom', 'Prénom', 'Adresse', 'Code postal', 'Ville'); ValeurChamps = new Array(Form.fld_Nom.value, Form.fld_Prenom.value, Form.fld_Adresse.value, Form.fld_CodePostal.value, Form.fld_Ville.value);
// Création d'une nouvelle ligne ConstruireLigne(TitreColonne, LibelleColonne, ValeurChamps); return true; } function ConstruireLigne(TitreColonne, LibelleColonne, ValeurChamps) { /* Construit une ligne */ var Separateur = ';'; // Ajoute dans chaque champs multivalué les nouvelles valeurs for (iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) { var Objet = eval('document.forms[0].' + TitreColonne[iCompteur]); if (Objet.value == '') { Objet.value = ValeurChamps[iCompteur]; } else { Objet.value = Objet.value + Separateur + ValeurChamps[iCompteur]; } }
// Ajoute les champs de colonne et les libéllés associés dans les champs M_TitreColonne et M_LibelleColonne
ConstruireChamps(TitreColonne, 'M_TitreColonne');
ConstruireChamps(LibelleColonne, 'M_LibelleColonne');
// Construit la ligne
MontrerLigne(TitreColonne, LibelleColonne, ValeurChamps, Separateur);
return '';
} function MontrerLigne(TitreColonne, LibelleColonne, ValeurChamps, Separateur) { var TableauMasque = document.getElementById('TableauJS'); var Nombre = eval('document.forms[0].' + TitreColonne[1]);
// Création de l'entête s'il s'agit de la première ligne if(Nombre.value.indexOf(Separateur) < 0) { CreerEntete(LibelleColonne, ''); }
// Ajoute une ligne CreerLigne(ValeurChamps); return ''; } function CreerEntete(LibelleColonne, Lecture) { var TableauMasque = document.getElementById('TableauJS'); var trNouveau = TableauMasque.insertRow(-1); trNouveau.align = 'middle';
// Création d'une cellule par valeur for (iCompteur = 0; iCompteur < LibelleColonne.length; iCompteur++) { var tdNouveau = trNouveau.insertCell(-1); NouveauTexte = document.createTextNode(LibelleColonne[iCompteur]); tdNouveau.appendChild(NouveauTexte); } // Vérification du mode lecture if (Lecture != 'L') { var tdNouveau = trNouveau.insertCell(-1); NouveauTexte = document.createTextNode(''); tdNouveau.appendChild(NouveauTexte); } } function CreerLigne(ValeurChamps) { var TableauMasque = document.getElementById('TableauJS'); var trNouveau = TableauMasque.insertRow(-1); trNouveau.align = 'middle'; for (iCompteur = 0; iCompteur < ValeurChamps.length; iCompteur++) { var tdNouveau = trNouveau.insertCell(-1); NouveauTexte = document.createTextNode(ValeurChamps[iCompteur]); tdNouveau.appendChild(NouveauTexte); }
// Ajoute la dernière cellule var tdNouveau = trNouveau.insertCell(-1); trNouveau.align = 'middle'; var x = document.createElement("A"); eval("x.href=\"javascript:SupprimerLigne('" + trNouveau.rowIndex + "');\""); var y = document.createTextNode("Supprimer"); x.appendChild(y) tdNouveau.appendChild(x); } function SupprimerLigne(IndexTableau) { EffacerTout(); EffacerElement(IndexTableau); CreerTableau(''); } function EffacerTout() { var TableauMasque = document.getElementById('TableauJS'); for (var iCompteur = 0; iCompteur < TableauMasque.rows.length; iCompteur) { TableauMasque.deleteRow(0); } } function CreerTableau(Lecture){ var Separateur = ';'; var NumeroNom = document.forms[0].M_Nom.value.split(Separateur); if (document.forms[0].M_Nom.value == '') { return '' }; var TitreColonne = document.forms[0].M_TitreColonne.value.split(Separateur); var Objet = new Array(TitreColonne.length); for (var iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) { var Temp = eval('document.forms[0].' + TitreColonne[iCompteur]); Objet[iCompteur] = Temp.value.split(Separateur); }
var TableauMasque = document.getElementById('TableauJS'); var LibelleColonne = document.forms[0].M_LibelleColonne.value.split(Separateur); CreerEntete(LibelleColonne, Lecture); for (jCompteur = 0; jCompteur < NumeroNom.length; jCompteur++) { var trNouveau = TableauMasque.insertRow(-1); trNouveau.align = 'middle'; for (iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) { var tdNouveau = trNouveau.insertCell(-1); NouveauTexte = document.createTextNode(Objet[iCompteur][jCompteur]); tdNouveau.appendChild(NouveauTexte); } if (Lecture != 'L') { var tdNouveau = trNouveau.insertCell(-1); trNouveau.align = 'middle'; var x = document.createElement("A"); eval("x.href=\"javascript:SupprimerLigne('" + trNouveau.rowIndex + "');\""); var y = document.createTextNode("Supprimer"); x.appendChild(y); tdNouveau.appendChild(x); } } } function ConstruireChamps(Tableau, Champs) { var Separateur = ';'; for (iCompteur = 0; iCompteur < Tableau.length; iCompteur++) { var Objet = eval('document.forms[0].' + Champs); if (iCompteur == 0) { Objet.value = Tableau[iCompteur]; } else { Objet.value = Objet.value + Separateur + Tableau[iCompteur]; } } } function EffacerElement(IndexTableau) { var Retour = 1; var Separateur = ';'; var TitreColonne = document.forms[0].M_TitreColonne.value.split(Separateur); for (var iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) { var Objet = eval('document.forms[0].' + TitreColonne[iCompteur]); var SplitObjet = Objet.value.split(Separateur); if (SplitObjet.length == 1 && IndexTableau == 1) { Objet.value = ''; Retour = 0; } else { Objet.value = SupprimerDansTableau(SplitObjet, IndexTableau); } } return Retour; } function SupprimerDansTableau(Tableau, IndexTableau) { Separateur = ';'; var Temp = ''; for (jCompteur = 0; jCompteur < Tableau.length; jCompteur++) { if(jCompteur != (IndexTableau - 1)) { if (Temp == '') { Temp = Tableau[jCompteur]; } else { Temp = Temp + Separateur + Tableau[jCompteur]; } } } return Temp; } function EffacerChampsSaisis() { var Form = document.forms[0]; Form.fld_Nom.value = ''; Form.fld_Prenom.value = ''; Form.fld_Adresse.value = ''; Form.fld_CodePostal.value = ''; Form.fld_Ville.value = ''; } Code LotusScript : [Aucun]
Informations de vue Nom : All Dernière modification : 21/08/2006 23:22:18 Commentaire : [Sans] Vue par défaut : Oui Réponses non hiérarchisées : Désactivé(e) Etat à l'ouverture de la vue : Détaillées Marqueurs de documents non lus : Aucun Fréquence d'actualisation : Automatique Suppression de l'index : Jamais Liste d'accès à la vue : Tous les utilisateurs Formules relatives à l'heure : Non Formule de sélection : SELECT @All Sous-composants : Numéro de la colonne : 1 Titre de la colonne : Contact Formule de la colonne : @UpperCase(M_Nom); Largeur de colonne : 20 caractères Séparateur de liste : Masqué : Non Réponses seulement : Non Icône : Non Format de nombre : Libre Pourcentage (valeur * 100)% : Non Parenthèses pour nombres négatifs : Non Ponctué au millier : Non Format horaire : 21/08/2006 23:36:02 Tri : Non Justification : Gauche Total : Aucun Masquer valeurs détaillées : Non Numéro de la colonne : 2 Titre de la colonne : Adresse Formule de la colonne : M_Ville Largeur de colonne : 50 caractères Séparateur de liste : Masqué : Non Réponses seulement : Non Icône : Non Format de nombre : Libre Pourcentage (valeur * 100)% : Non Parenthèses pour nombres négatifs : Non Ponctué au millier : Non Format horaire : 21/08/2006 23:36:02 Tri : Non Justification : Gauche Total : Aucun Masquer valeurs détaillées : Non Action: Ajouter un contact Formule : @Command([Compose]; "" : ""; "AC"); Code JavaScript et HTML : [Aucun] Code LotusScript : [Aucun]
Informations de sous-masque Nom : Mode écriture Pseudonyme : sm_AC_E Dernière modification : 21/08/2006 23:10:27 Inclure dans la liste Insérer un sous-masque : Oui Inclure dans la boîte de dialogue du nouveau masque : Non Sous-composants : Champ : fld_Nom Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_Nom En script : Non Champ : fld_Prenom Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_Prenom En script : Non Champ : fld_Adresse Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_Adresse En script : Non Champ : fld_CodePostal Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_CodePostal En script : Non Champ : fld_Ville Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_Ville En script : Non Code JavaScript et HTML : [Aucun] Code LotusScript : [Aucun]
Nom : Mode lecture Pseudonyme : sm_AC_L Dernière modification : 21/08/2006 23:09:57 Inclure dans la liste Insérer un sous-masque : Oui Inclure dans la boîte de dialogue du nouveau masque : Non Sous-composants : [Aucun] Code JavaScript et HTML : [Aucun] Code LotusScript :
[Aucun]
/*
Ajoute une ligne dans le tableau
*/
// Test les champs
if(!(TesterChamps())) return '';
// Efface les champs
EffacerChampsSaisis();
// Quitte la fonction
return '';
}
function TesterChamps() {
/*
Test tous les champs nécessaire pour la fabrication des lignes
*/
var Form = document.forms[0];
var TitreColonne = new Array();
var ValeurChamps = new Array();
var LibelleColonne = new Array();
// Vérification des champs
if(Form.fld_Nom.value == '') {
alert('Veuillez saisir le nom.');
Form.fld_Nom.focus();
return false;
}
if(Form.fld_Prenom.value == '') {
alert('Veuillez saisir le prénom.');
Form.fld_Prenom.focus();
return false;
}
if(Form.fld_Adresse.value == '') {
alert('Veuillez saisir l\'adresse.');
Form.fld_Adresse.focus();
return false;
}
if(Form.fld_CodePostal.value == '') {
alert('Veuillez saisir le code postal.');
Form.fld_CodePostal.focus();
return false;
}
if(Form.fld_Ville.value == '') {
alert('Veuillez saisir la ville.');
Form.fld_Ville.focus();
return false;
}
TitreColonne = new Array('M_Nom', 'M_Prenom', 'M_Adresse', 'M_CodePostal', 'M_Ville');
LibelleColonne = new Array('Nom', 'Prénom', 'Adresse', 'Code postal', 'Ville');
ValeurChamps = new Array(Form.fld_Nom.value, Form.fld_Prenom.value, Form.fld_Adresse.value, Form.fld_CodePostal.value, Form.fld_Ville.value);
// Création d'une nouvelle ligne
ConstruireLigne(TitreColonne, LibelleColonne, ValeurChamps);
return true;
}
function ConstruireLigne(TitreColonne, LibelleColonne, ValeurChamps) {
/*
Construit une ligne
*/
var Separateur = ';';
// Ajoute dans chaque champs multivalué les nouvelles valeurs
for (iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) {
var Objet = eval('document.forms[0].' + TitreColonne[iCompteur]);
if (Objet.value == '') {
Objet.value = ValeurChamps[iCompteur];
} else {
Objet.value = Objet.value + Separateur + ValeurChamps[iCompteur];
}
}
// Ajoute les champs de colonne et les libéllés associés dans les champs M_TitreColonne et M_LibelleColonne
ConstruireChamps(TitreColonne, 'M_TitreColonne');
ConstruireChamps(LibelleColonne, 'M_LibelleColonne');
// Construit la ligne
MontrerLigne(TitreColonne, LibelleColonne, ValeurChamps, Separateur);
return '';
}
function MontrerLigne(TitreColonne, LibelleColonne, ValeurChamps, Separateur) {
var TableauMasque = document.getElementById('TableauJS');
var Nombre = eval('document.forms[0].' + TitreColonne[1]);
// Création de l'entête s'il s'agit de la première ligne
if(Nombre.value.indexOf(Separateur) < 0) {
CreerEntete(LibelleColonne, '');
}
// Ajoute une ligne
CreerLigne(ValeurChamps);
return '';
}
function CreerEntete(LibelleColonne, Lecture) {
var TableauMasque = document.getElementById('TableauJS');
var trNouveau = TableauMasque.insertRow(-1);
trNouveau.align = 'middle';
// Création d'une cellule par valeur
for (iCompteur = 0; iCompteur < LibelleColonne.length; iCompteur++) {
var tdNouveau = trNouveau.insertCell(-1);
NouveauTexte = document.createTextNode(LibelleColonne[iCompteur]);
tdNouveau.appendChild(NouveauTexte);
}
// Vérification du mode lecture
if (Lecture != 'L') {
var tdNouveau = trNouveau.insertCell(-1);
NouveauTexte = document.createTextNode('');
tdNouveau.appendChild(NouveauTexte);
}
}
function CreerLigne(ValeurChamps) {
var TableauMasque = document.getElementById('TableauJS');
var trNouveau = TableauMasque.insertRow(-1);
trNouveau.align = 'middle';
for (iCompteur = 0; iCompteur < ValeurChamps.length; iCompteur++) {
var tdNouveau = trNouveau.insertCell(-1);
NouveauTexte = document.createTextNode(ValeurChamps[iCompteur]);
tdNouveau.appendChild(NouveauTexte);
}
// Ajoute la dernière cellule
var tdNouveau = trNouveau.insertCell(-1);
trNouveau.align = 'middle';
var x = document.createElement("A");
eval("x.href=\"javascript:SupprimerLigne('" + trNouveau.rowIndex + "');\"");
var y = document.createTextNode("Supprimer");
x.appendChild(y)
tdNouveau.appendChild(x);
}
function SupprimerLigne(IndexTableau) {
EffacerTout();
EffacerElement(IndexTableau);
CreerTableau('');
}
function EffacerTout() {
var TableauMasque = document.getElementById('TableauJS');
for (var iCompteur = 0; iCompteur < TableauMasque.rows.length; iCompteur) {
TableauMasque.deleteRow(0);
}
}
function CreerTableau(Lecture){
var Separateur = ';';
var NumeroNom = document.forms[0].M_Nom.value.split(Separateur);
if (document.forms[0].M_Nom.value == '') { return '' };
var TitreColonne = document.forms[0].M_TitreColonne.value.split(Separateur);
var Objet = new Array(TitreColonne.length);
for (var iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) {
var Temp = eval('document.forms[0].' + TitreColonne[iCompteur]);
Objet[iCompteur] = Temp.value.split(Separateur);
}
var TableauMasque = document.getElementById('TableauJS');
var LibelleColonne = document.forms[0].M_LibelleColonne.value.split(Separateur);
CreerEntete(LibelleColonne, Lecture);
for (jCompteur = 0; jCompteur < NumeroNom.length; jCompteur++) {
var trNouveau = TableauMasque.insertRow(-1);
trNouveau.align = 'middle';
for (iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) {
var tdNouveau = trNouveau.insertCell(-1);
NouveauTexte = document.createTextNode(Objet[iCompteur][jCompteur]);
tdNouveau.appendChild(NouveauTexte);
}
if (Lecture != 'L') {
var tdNouveau = trNouveau.insertCell(-1);
trNouveau.align = 'middle';
var x = document.createElement("A");
eval("x.href=\"javascript:SupprimerLigne('" + trNouveau.rowIndex + "');\"");
var y = document.createTextNode("Supprimer");
x.appendChild(y);
tdNouveau.appendChild(x);
}
}
}
function ConstruireChamps(Tableau, Champs) {
var Separateur = ';';
for (iCompteur = 0; iCompteur < Tableau.length; iCompteur++) {
var Objet = eval('document.forms[0].' + Champs);
if (iCompteur == 0) {
Objet.value = Tableau[iCompteur];
} else {
Objet.value = Objet.value + Separateur + Tableau[iCompteur];
}
}
}
function EffacerElement(IndexTableau) {
var Retour = 1;
var Separateur = ';';
var TitreColonne = document.forms[0].M_TitreColonne.value.split(Separateur);
for (var iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) {
var Objet = eval('document.forms[0].' + TitreColonne[iCompteur]);
var SplitObjet = Objet.value.split(Separateur);
if (SplitObjet.length == 1 && IndexTableau == 1) {
Objet.value = '';
Retour = 0;
} else {
Objet.value = SupprimerDansTableau(SplitObjet, IndexTableau);
}
}
return Retour;
}
function SupprimerDansTableau(Tableau, IndexTableau) {
Separateur = ';';
var Temp = '';
for (jCompteur = 0; jCompteur < Tableau.length; jCompteur++) {
if(jCompteur != (IndexTableau - 1)) {
if (Temp == '') {
Temp = Tableau[jCompteur];
} else {
Temp = Temp + Separateur + Tableau[jCompteur];
}
}
}
return Temp;
}
function EffacerChampsSaisis() {
var Form = document.forms[0];
Form.fld_Nom.value = '';
Form.fld_Prenom.value = '';
Form.fld_Adresse.value = '';
Form.fld_CodePostal.value = '';
Form.fld_Ville.value = '';
}
[/syntax]
Le synopsis de la base.
Synopsis de base de documents Lotus Notes - créé à 23:36:02 le 21/08/2006
Informations de masque Nom : Ajouter un contact Pseudonyme : AC Dernière modification : 21/08/2006 23:15:42 Commentaire : [Sans] Type : Document Formule du titre de la fenêtre : "Contact" Inclure dans le menu Création : Oui Inclure dans Recherche par masque : Oui Masque par défaut : Non Actualiser automatiquement les champs : Non Envoi de documents à l'enregistrement : Non Enregistrement du masque dans documents : Non Récupérer contenus de champ existants : Non Enregistrer mises à jour comme réponses : Non Convertir versions antérieures en réponses : Non Activer les objets pendant la création : Non Activer les objets pendant l'édition : Non Activer les objets pendant la lecture : Non Clés de chiffrement de document : [Sans] Liste d'accès aux docs créés avec ce masque : Tous les utilisateurs Liste d'accès à ce masque pour création : Tous les utilisateurs Sous-composants : Champ : M_Nom Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_Prenom Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_Adresse Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_CodePostal Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_Ville Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_TitreColonne Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : M_LibelleColonne Type de données : Texte Séparateurs de liste en entrée : Point-virgule Séparateur de liste à l'affichage : Point-virgule Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non En script : Non Champ : $$Return Type de données : Texte Message d'aide : [Sans] Type de champ : Calculé à l'affichage Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule : "[http://" + Server_name + "/" + CheminBase + "/All]"; En script : Non Champ : Server_Name Type de données : Texte Message d'aide : [Sans] Type de champ : Calculé à l'affichage Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule : Server_Name En script : Non Champ : CheminBase Type de données : Texte Message d'aide : [Sans] Type de champ : Calculé à l'affichage Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule : @WebDbName En script : Non Champ : fld_ModeLecture Type de données : Mots-clés Message d'aide : [Sans] Type de champ : Modifiable Interface utilisateur mot-clé : Standard Autoriser valeurs non répertoriées : Non Mots-clés disponibles : Oui|1 Non|2 Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : 2 En script : Non Sous-masque: Calculé Formule : @If(fld_ModeLecture != "1"; "sm_AC_E"; "sm_AC_L"); Code JavaScript et HTML : Masque Ajouter un contact En-tête JS function AjouterLigne() { /* Ajoute une ligne dans le tableau */ // Test les champs if(!(TesterChamps())) return ''; // Efface les champs EffacerChampsSaisis(); // Quitte la fonction return ''; } function TesterChamps() { /* Test tous les champs nécessaire pour la fabrication des lignes */ var Form = document.forms[0]; var TitreColonne = new Array(); var ValeurChamps = new Array(); var LibelleColonne = new Array(); // Vérification des champs if(Form.fld_Nom.value == '') { alert('Veuillez saisir le nom.'); Form.fld_Nom.focus(); return false; } if(Form.fld_Prenom.value == '') { alert('Veuillez saisir le prénom.'); Form.fld_Prenom.focus(); return false; } if(Form.fld_Adresse.value == '') { alert('Veuillez saisir l\'adresse.'); Form.fld_Adresse.focus(); return false; } if(Form.fld_CodePostal.value == '') { alert('Veuillez saisir le code postal.'); Form.fld_CodePostal.focus(); return false; } if(Form.fld_Ville.value == '') { alert('Veuillez saisir la ville.'); Form.fld_Ville.focus(); return false; } TitreColonne = new Array('M_Nom', 'M_Prenom', 'M_Adresse', 'M_CodePostal', 'M_Ville'); LibelleColonne = new Array('Nom', 'Prénom', 'Adresse', 'Code postal', 'Ville'); ValeurChamps = new Array(Form.fld_Nom.value, Form.fld_Prenom.value, Form.fld_Adresse.value, Form.fld_CodePostal.value, Form.fld_Ville.value);
// Création d'une nouvelle ligne ConstruireLigne(TitreColonne, LibelleColonne, ValeurChamps); return true; } function ConstruireLigne(TitreColonne, LibelleColonne, ValeurChamps) { /* Construit une ligne */ var Separateur = ';'; // Ajoute dans chaque champs multivalué les nouvelles valeurs for (iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) { var Objet = eval('document.forms[0].' + TitreColonne[iCompteur]); if (Objet.value == '') { Objet.value = ValeurChamps[iCompteur]; } else { Objet.value = Objet.value + Separateur + ValeurChamps[iCompteur]; } }
// Ajoute les champs de colonne et les libéllés associés dans les champs M_TitreColonne et M_LibelleColonne
ConstruireChamps(TitreColonne, 'M_TitreColonne');
ConstruireChamps(LibelleColonne, 'M_LibelleColonne');
// Construit la ligne
MontrerLigne(TitreColonne, LibelleColonne, ValeurChamps, Separateur);
return '';
} function MontrerLigne(TitreColonne, LibelleColonne, ValeurChamps, Separateur) { var TableauMasque = document.getElementById('TableauJS'); var Nombre = eval('document.forms[0].' + TitreColonne[1]);
// Création de l'entête s'il s'agit de la première ligne if(Nombre.value.indexOf(Separateur) < 0) { CreerEntete(LibelleColonne, ''); }
// Ajoute une ligne CreerLigne(ValeurChamps); return ''; } function CreerEntete(LibelleColonne, Lecture) { var TableauMasque = document.getElementById('TableauJS'); var trNouveau = TableauMasque.insertRow(-1); trNouveau.align = 'middle';
// Création d'une cellule par valeur for (iCompteur = 0; iCompteur < LibelleColonne.length; iCompteur++) { var tdNouveau = trNouveau.insertCell(-1); NouveauTexte = document.createTextNode(LibelleColonne[iCompteur]); tdNouveau.appendChild(NouveauTexte); } // Vérification du mode lecture if (Lecture != 'L') { var tdNouveau = trNouveau.insertCell(-1); NouveauTexte = document.createTextNode(''); tdNouveau.appendChild(NouveauTexte); } } function CreerLigne(ValeurChamps) { var TableauMasque = document.getElementById('TableauJS'); var trNouveau = TableauMasque.insertRow(-1); trNouveau.align = 'middle'; for (iCompteur = 0; iCompteur < ValeurChamps.length; iCompteur++) { var tdNouveau = trNouveau.insertCell(-1); NouveauTexte = document.createTextNode(ValeurChamps[iCompteur]); tdNouveau.appendChild(NouveauTexte); }
// Ajoute la dernière cellule var tdNouveau = trNouveau.insertCell(-1); trNouveau.align = 'middle'; var x = document.createElement("A"); eval("x.href=\"javascript:SupprimerLigne('" + trNouveau.rowIndex + "');\""); var y = document.createTextNode("Supprimer"); x.appendChild(y) tdNouveau.appendChild(x); } function SupprimerLigne(IndexTableau) { EffacerTout(); EffacerElement(IndexTableau); CreerTableau(''); } function EffacerTout() { var TableauMasque = document.getElementById('TableauJS'); for (var iCompteur = 0; iCompteur < TableauMasque.rows.length; iCompteur) { TableauMasque.deleteRow(0); } } function CreerTableau(Lecture){ var Separateur = ';'; var NumeroNom = document.forms[0].M_Nom.value.split(Separateur); if (document.forms[0].M_Nom.value == '') { return '' }; var TitreColonne = document.forms[0].M_TitreColonne.value.split(Separateur); var Objet = new Array(TitreColonne.length); for (var iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) { var Temp = eval('document.forms[0].' + TitreColonne[iCompteur]); Objet[iCompteur] = Temp.value.split(Separateur); }
var TableauMasque = document.getElementById('TableauJS'); var LibelleColonne = document.forms[0].M_LibelleColonne.value.split(Separateur); CreerEntete(LibelleColonne, Lecture); for (jCompteur = 0; jCompteur < NumeroNom.length; jCompteur++) { var trNouveau = TableauMasque.insertRow(-1); trNouveau.align = 'middle'; for (iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) { var tdNouveau = trNouveau.insertCell(-1); NouveauTexte = document.createTextNode(Objet[iCompteur][jCompteur]); tdNouveau.appendChild(NouveauTexte); } if (Lecture != 'L') { var tdNouveau = trNouveau.insertCell(-1); trNouveau.align = 'middle'; var x = document.createElement("A"); eval("x.href=\"javascript:SupprimerLigne('" + trNouveau.rowIndex + "');\""); var y = document.createTextNode("Supprimer"); x.appendChild(y); tdNouveau.appendChild(x); } } } function ConstruireChamps(Tableau, Champs) { var Separateur = ';'; for (iCompteur = 0; iCompteur < Tableau.length; iCompteur++) { var Objet = eval('document.forms[0].' + Champs); if (iCompteur == 0) { Objet.value = Tableau[iCompteur]; } else { Objet.value = Objet.value + Separateur + Tableau[iCompteur]; } } } function EffacerElement(IndexTableau) { var Retour = 1; var Separateur = ';'; var TitreColonne = document.forms[0].M_TitreColonne.value.split(Separateur); for (var iCompteur = 0; iCompteur < TitreColonne.length; iCompteur++) { var Objet = eval('document.forms[0].' + TitreColonne[iCompteur]); var SplitObjet = Objet.value.split(Separateur); if (SplitObjet.length == 1 && IndexTableau == 1) { Objet.value = ''; Retour = 0; } else { Objet.value = SupprimerDansTableau(SplitObjet, IndexTableau); } } return Retour; } function SupprimerDansTableau(Tableau, IndexTableau) { Separateur = ';'; var Temp = ''; for (jCompteur = 0; jCompteur < Tableau.length; jCompteur++) { if(jCompteur != (IndexTableau - 1)) { if (Temp == '') { Temp = Tableau[jCompteur]; } else { Temp = Temp + Separateur + Tableau[jCompteur]; } } } return Temp; } function EffacerChampsSaisis() { var Form = document.forms[0]; Form.fld_Nom.value = ''; Form.fld_Prenom.value = ''; Form.fld_Adresse.value = ''; Form.fld_CodePostal.value = ''; Form.fld_Ville.value = ''; } Code LotusScript : [Aucun]
Informations de vue Nom : All Dernière modification : 21/08/2006 23:22:18 Commentaire : [Sans] Vue par défaut : Oui Réponses non hiérarchisées : Désactivé(e) Etat à l'ouverture de la vue : Détaillées Marqueurs de documents non lus : Aucun Fréquence d'actualisation : Automatique Suppression de l'index : Jamais Liste d'accès à la vue : Tous les utilisateurs Formules relatives à l'heure : Non Formule de sélection : SELECT @All Sous-composants : Numéro de la colonne : 1 Titre de la colonne : Contact Formule de la colonne : @UpperCase(M_Nom); Largeur de colonne : 20 caractères Séparateur de liste : Masqué : Non Réponses seulement : Non Icône : Non Format de nombre : Libre Pourcentage (valeur * 100)% : Non Parenthèses pour nombres négatifs : Non Ponctué au millier : Non Format horaire : 21/08/2006 23:36:02 Tri : Non Justification : Gauche Total : Aucun Masquer valeurs détaillées : Non Numéro de la colonne : 2 Titre de la colonne : Adresse Formule de la colonne : M_Ville Largeur de colonne : 50 caractères Séparateur de liste : Masqué : Non Réponses seulement : Non Icône : Non Format de nombre : Libre Pourcentage (valeur * 100)% : Non Parenthèses pour nombres négatifs : Non Ponctué au millier : Non Format horaire : 21/08/2006 23:36:02 Tri : Non Justification : Gauche Total : Aucun Masquer valeurs détaillées : Non Action: Ajouter un contact Formule : @Command([Compose]; "" : ""; "AC"); Code JavaScript et HTML : [Aucun] Code LotusScript : [Aucun]
Informations de sous-masque Nom : Mode écriture Pseudonyme : sm_AC_E Dernière modification : 21/08/2006 23:10:27 Inclure dans la liste Insérer un sous-masque : Oui Inclure dans la boîte de dialogue du nouveau masque : Non Sous-composants : Champ : fld_Nom Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_Nom En script : Non Champ : fld_Prenom Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_Prenom En script : Non Champ : fld_Adresse Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_Adresse En script : Non Champ : fld_CodePostal Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_CodePostal En script : Non Champ : fld_Ville Type de données : Texte Message d'aide : [Sans] Type de champ : Modifiable Signature des sections et messages : Non Chiffrement : Désactivé(e) Accès Editeur nécessaire pour mise à jour : Non Formule de valeur par défaut : fld_Ville En script : Non Code JavaScript et HTML : [Aucun] Code LotusScript : [Aucun]
Nom : Mode lecture Pseudonyme : sm_AC_L Dernière modification : 21/08/2006 23:09:57 Inclure dans la liste Insérer un sous-masque : Oui Inclure dans la boîte de dialogue du nouveau masque : Non Sous-composants : [Aucun] Code JavaScript et HTML : [Aucun] Code LotusScript :
[Aucun]