PC SOFT - Documentation en ligne
Version : 18.0
Communauté : 0 annotation | Annoter Flux RSS
Cette page est également disponible pour : WINDEV Mobile, WINDEV, WEBDEV, Etats & Requêtes
Version affichée :
HSauvePosition (Fonction)
En anglais : HSavePosition

 
WinDev WebDev - Code Serveur WebDev - Code Navigateur WinDev Mobile Etats et Requêtes   Windows Linux Windows Mobile Windows Phone Android Widget Android iPhone/iPad Windows Store apps   Java PHP Ajax Code Utilisateur (MCU) Langage Externe   HyperFileSQL HyperFileSQL Client/Serveur Procédures stockées Hyper File 5.5 OLE DB ODBC Accès Natifs

Mémorise le contexte en cours d'un fichier de données : enregistrement en cours, filtre, pointeurs de lecture. Il est ainsi possible de suspendre momentanément le traitement en cours, d'utiliser le fichier de données par ailleurs (pour effectuer des vérifications par exemple). Le contexte sauvegardé pourra être restitué grâce à la fonction HRetourPosition. Le traitement principal pourra alors continuer.

La fonction HSauvePosition permet de sauvegarder :

  • le numéro de l'enregistrement manipulé,
  • les différents pointeurs dans l'index (sauvegarde pour chaque clé de la position dans l'index),
  • le filtre en cours. Il sera nécessaire d'utiliser la constante HRPFiltre dans la fonction HRetourPosition pour retrouver le filtre sauvegardé.
Cette fonction peut être utilisée indifféremment avec les fichiers de données, les vues HyperFileSQL ou les requêtes.

Versions 15 et supérieures
WinDev Mobile Android Cette fonction est désormais disponible pour les applications Android.
Nouveauté 15
WinDev Mobile Android Cette fonction est désormais disponible pour les applications Android.
WinDev Mobile Android Cette fonction est désormais disponible pour les applications Android.
Versions 17 et supérieures
WinDev Mobile iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 17
WinDev Mobile iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
WinDev Mobile iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 18 et supérieures
WinDev Mobile Widget Android Cette fonction est désormais disponible en mode Widget Android.
WinDev WinDev Mobile Windows Store apps Cette fonction est désormais disponible en mode Windows Store apps.
Nouveauté 18
WinDev Mobile Widget Android Cette fonction est désormais disponible en mode Widget Android.
WinDev WinDev Mobile Windows Store apps Cette fonction est désormais disponible en mode Windows Store apps.
WinDev Mobile Widget Android Cette fonction est désormais disponible en mode Widget Android.
WinDev WinDev Mobile Windows Store apps Cette fonction est désormais disponible en mode Windows Store apps.
 
// Recherche d'un enregistrement
HLitRecherchePremier(CLIENT, NOM, Nom)
TANTQUE HTrouve(CLIENT) = Vrai
        // Sauve le contexte en cours
        nPos = HSauvePosition(CLIENT, NOM)
       // Vérification d'un client d'un autre nom
        HLitRecherche(CLIENT, NOM, Nom2)
        SI HTrouve() = Vrai ALORS Compteur = Compteur + 1
        // Restaure le contexte
        HRetourPosition(nPos)
        HLitSuivant(CLIENT, NOM)
FIN

<Résultat> = HSauvePosition([<Nom du fichier> [, <Nom de la rubrique>]] [, <Options>])

<Résultat> : Entier
  • Numéro de la position sauvegardée,
  • -1 en cas d'erreur.
<Nom du fichier> : Chaîne de caractères optionnelle (avec ou sans guillemets)
Nom du fichier de données, de la vue ou de la requête manipulé. Si ce nom n'est pas spécifié, la fonction HSauvePosition va manipuler le dernier fichier de données utilisé par la dernière fonction de gestion HyperFileSQL (fonction commençant par la lettre H).
<Nom de la rubrique> : Chaîne de caractères optionnelle (avec ou sans guillemets)
Nom de la rubrique utilisée. Si ce paramètre n'est pas spécifié, la fonction HSauvePosition sauve les positions de toutes les rubriques pour lesquelles un parcours est en cours.
Hyper File 5.5 Le paramètre <Nom de la rubrique> ne sera pas pris en compte : la position sera sauvegardée pour toutes les rubriques sur lesquelles un parcours est en cours.
<Options> : Constante optionnelle de type entier
Permet de paramétrer la sauvegarde :

hSauveRubriquesSauve les valeurs des rubriques en mémoire au moment de l'utilisation de la fonction HSauvePosition. Ces valeurs seront restaurées lors de l'appel à la fonction HRetourPosition.

Android Widget Android Java Ce paramètre n'est pas supporté.

Exemples de gestion de position dans un fichier de données

Les fonctions HSauvePosition et HRetourPosition peuvent être utilisées par exemple dans les cas suivants :
  • parcours d'un fichier de données selon une clé (visualisation fiche à fiche), appel d'une autre fenêtre pour visualisation sous forme de table. La gestion des positions permet de revenir simplement sur le bon enregistrement dans le parcours fiche à fiche.
  • visualisation d'un fichier dans une table. Sélection d'un enregistrement pour un accès fiche à fiche. La gestion des positions permet de revenir à l'affichage de la table en étant correctement positionné dans le fichier de données.

Réinitialisation des positions

Attention : toutes les fonctions entraînant l'ouverture ou la fermeture d'un fichier de données réinitialisent les numéros de contexte (par exemple HCréation, HFerme, ...).

Divers

  • Le nombre d'appels à la fonction HSauvePosition n'est pas limité.
  • Il est possible d'imbriquer les fonctions HSauvePosition et HRetourPosition pour un même fichier de données.
  • Si l'enregistrement pointé lors de l'appel à la fonction HSauvePosition est supprimé, il n'est plus possible d'appeler la fonction HRetourPosition.
WinDev WebDev - Code Serveur Etats et Requêtes Java PHP Ajax Code Utilisateur (MCU) Procédures stockées OLE DB Accès Natifs

Repositionnement par OLE DB et Accès Natif MySQL, DB2 et Informix

Si la base de données ou l'état du parcours (parcours ré-initialisé par exemple) ne permettent pas de se repositionner directement sur l'enregistrement, le repositionnement est effectué dans le cache des enregistrement lus.

Les fonctions suivantes réinitialisent le parcours :

Ce fonctionnement est également observé en Java.

 
Composantes :
WinDev WebDev - Code Serveur Etats et Requêtes wd180hf.dll
Windows Mobile wp180hf.dll
Java wd180java.jar
Linux wd180hf.so
Android wd180android.jar
 
 
Version minimum requise : 9
Communauté : 0 annotation Flux RSS
Connectez-vous pour ajouter une annotation | Conditions Générales du service d'annotations