SUPPRIMER SOUS ENREGISTREMENT

4D - Documentation   Français   English   German   Español   Japanese   4D v11 SQL, Commandes par thèmes   4D v11 SQL, Liste alphabétique des commandes   4D v11 SQL, Constantes par thèmes   Retour   Précédent   Suivant

version 11 (Modifiée)


SUPPRIMER SOUS ENREGISTREMENT (sousTable)

ParamètreTypeDescription
sousTableSous-tableSous-table de laquelle supprimer le
sous-enregistrement courant

Note de compatibilité : Les sous-tables ne sont plus prises en charge à compter de la version 11 de 4D. Un mécanisme de compatibilité assure le fonctionnement de cette commande dans les bases de données converties, toutefois il est fortement conseillé de remplacer les sous-tables par des tables liées standard.

Description

SUPPRIMER SOUS ENREGISTREMENT supprime le sous-enregistrement courant de sousTable. S'il n'y a pas de sous-enregistrement courant, SUPPRIMER SOUS ENREGISTREMENT ne fait rien. Après la suppression, la sous-sélection courante de sousTable est vide. En conséquence, la commande SUPPRIMER SOUS ENREGISTREMENT ne peut pas être utilisée pour parcourir une sous-sélection et supprimer des sous-enregistrements sélectionnés.

La suppression d'un sous-enregistrement n'est pas définitive tant que l'enregistrement parent n'est pas validé. La suppression d'un enregistrement parent entraîne automatiquement la suppression de tous ses sous-enregistrements.

Pour supprimer une sous-sélection, vous devez d'abord créer la sous-sélection, puis supprimer le premier sous-enregistrement, recréer la sous-sélection puis supprimer de nouveau le premier enregistrement, etc.

Exemples

(1) L'exemple suivant supprime tous les sous-enregistrements d'une sous-table :

   TOUS LES SOUS ENREGISTREMENTS([Personnes]Enfants) 
   Tant que (Sous enregistrements trouves([Personnes]Enfants)>0) 
      SUPPRIMER SOUS ENREGISTREMENT([Personnes]Enfants) 
      TOUS LES SOUS ENREGISTREMENTS([Personnes]Enfants)
   Fin tant que

(2) L'exemple suivant supprime de la sous-table [Personnes]Enfants tous les sous-enregistrements dans lesquels l'âge des enfants est supérieur ou égal à 12 ans :

   TOUT SELECTIONNER([Personnes]) ` Sélection de tous les enregistrements 
   Boucle ($vELEnrg;1;Enregistrements trouves([Personnes])) ` Pour chaque enregistrement
          ` Recherche de tous les enregistrements ayant des sous-enregistrements correspondant aux critères
      CHERCHER SOUS ENREGISTREMENTS([Personnes]Enfants;[Personnes]Enfants'Age>=12) 
         ` Boucle jusqu'à ce que la recherche ne trouve plus d'enregistrement
      Tant que (Sous enregistrements trouves([Personnes]Enfants)>0) 
            ` Supprimer le sous-enregistrement
         SUPPRIMER SOUS ENREGISTREMENT([Personnes]Enfants)
            ` On poursuit la recherche
         CHERCHER SOUS ENREGISTREMENTS([Personnes]Enfants;[Personnes]Enfants'Age>=12)  
      Fin tant que 
      STOCKER ENREGISTREMENT([Personnes]) ` Sauvegarde de l'enregistrement parent 
      ENREGISTREMENT SUIVANT([Personnes]) 
   Fin de boucle

Référence

CHERCHER SOUS ENREGISTREMENTS, Sous enregistrements trouves, STOCKER ENREGISTREMENT, TOUS LES SOUS ENREGISTREMENTS.


4D - Documentation   Français   English   German   Español   Japanese   4D v11 SQL, Commandes par thèmes   4D v11 SQL, Liste alphabétique des commandes   4D v11 SQL, Constantes par thèmes   Retour   Précédent   Suivant