4D v16.3SELECTION LIMITEE VERS TABLEAU |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
SELECTION LIMITEE VERS TABLEAU
SELECTION LIMITEE VERS TABLEAU
SELECTION LIMITEE VERS TABLEAU crée un ou plusieurs tableau(x) et y copie des données en provenance des champs de la sélection courante ou les numéros des enregistrements de la sélection courante. A la différence de SELECTION VERS TABLEAU qui s'applique à l'intégralité de la sélection courante, SELECTION LIMITEE VERS TABLEAU s'applique uniquement à une sous-sélection d'enregistrements, définie par les paramètres début et fin. Vous devez passer dans les paramètres début et fin des numéros d'enregistrements sous-sélectionnés s'inscrivant dans l'intervalle défini par la formule 1 <= début <= fin <= Enregistrements trouves ([...]). Si vous passez des numéros correspondant à 1 <= début = fin <= Enregistrements trouves ([...]), ce sont les champs ou les numéros des enregistrements de la sélection courante répondant à début = fin qui seront chargés. Si vous passez des numéros d'enregistrements incorrects, vous obtiendrez les résultats suivants :
Comme SELECTION VERS TABLEAU, SELECTION LIMITEE VERS TABLEAU s'applique à la sélection de la table passée en paramètre. La commande peut réaliser les opérations suivantes :
Chaque tableau est typé en fonction du type de champ. A noter toutefois que SELECTION LIMITEE VERS TABLEAU appliquée à un champ de type Heure créera un tableau de type Heure uniquement si le tableau n’a pas déjà été défini dans un autre type. Par exemple dans le contexte ci-dessous, le tableau monTab conservera le type Entier long : TABLEAU ENTIER LONG(monTab;0) Si vous chargez les numéros des enregistrements, ils sont copiés dans un tableau de type Entier long. Note : Il est possible d’appeler la commande SELECTION LIMITEE VERS TABLEAU avec uniquement les paramètres début et fin. Cette syntaxe particulière peut être employée pour lancer sur une sélection limitée l’exécution d’une série différée de commandes SELECTION VERS TABLEAU utilisant le paramètre * (cf. exemple 4). 4D Server : La commande SELECTION LIMITEE VERS TABLEAU est optimisée pour 4D Server. Chaque tableau est créé sur le serveur puis envoyé en totalité sur le poste client. ATTENTION : SELECTION LIMITEE VERS TABLEAU peut créer des tableaux de taille importante, en fonction de l'intervalle défini par début et fin, ainsi que du type et de la taille des données à charger. Comme les tableaux résident en mémoire, il peut être utile de tester la taille des tableaux créés après l'exécution de la commande, ou d'utiliser une méthode projet d'interception d'erreurs, installée par la commande APPELER SUR ERREUR. Une fois la commande correctement exécutée, la taille des tableaux résultants est égale à (fin-début)+1 — sauf si le paramètre fin est supérieur au nombre d'enregistrements dans la sélection. Dans ce cas, les tableaux contiennent (Enregistrements trouves([...])-début)+1 éléments. La ligne de code suivante utilise les 50 premiers enregistrements de la sélection courante de la table [Factures]. Les valeurs du champ [Factures]RéfFacture et du champ lié [Clients]RéfClient sont chargées. SELECTION LIMITEE VERS TABLEAU(1;50;[Factures]RéfFacture;tlRéfFacture;[Clients]RéfClient;tlRéfClient) Les lignes de code suivantes utilisent les 50 derniers enregistrements de la sélection courante de la table [Factures]. Les numéros d'enregistrements de la table [Factures] ainsi que ceux de la table liée [Clients] sont chargés : lTailleSél:=Enregistrements trouves([Factures]) Les lignes de code suivantes vous permettent de travailler séquentiellement avec des portions de 1000 enregistrements d'une sélection importante qui ne peut pas être chargée dans des tableaux en une seule fois : lMaxPage:=1000 Utilisation des 50 premiers enregistrements courants de la table [Factures] pour charger divers tableaux, en exécution différée : // Instructions différées
Voir aussi
APPELER SUR ERREUR
|
PROPRIÉTÉS
Produit : 4D HISTORIQUE
Créé : < 4D v6 UTILISATION DE L'ARTICLE
4D - Langage ( 4D v16) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||