4D v14.3SUPPRIMER SOUS ENREGISTREMENT |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
SUPPRIMER SOUS ENREGISTREMENT
|
SUPPRIMER SOUS ENREGISTREMENT ( sousTable ) | ||||||||
Paramètre | Type | Description | ||||||
sousTable | Sous-table |
![]() |
Sous-table de laquelle supprimer le sous-enregistrement courant | |||||
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.
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.
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
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
Produit : 4D
Thème : Sous-enregistrements
Numéro :
96
Nom intl. : DELETE SUBRECORD
Modifié : 4D v11 SQL
CHERCHER SOUS ENREGISTREMENTS
Sous enregistrements trouves
STOCKER ENREGISTREMENT
TOUS LES SOUS ENREGISTREMENTS
4D - Langage ( 4D v12.4)
4D - Langage ( 4D v11 SQL Release 6)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v13.5)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)