PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Utiliser une chaîne de caractères pour le provider OLE DB
  • En cas d'échec, la description de la connexion n'est pas conservée
  • Deux connexions sont ouvertes sur le serveur
  • Validité de la connexion
  • Pseudo connexion à une base de données HFSQL Classic
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
gpwOuvreConnexion (Fonction)
En anglais : gpwOpenConnection
ODBCHFSQLNon disponible avec ces types de connexion
Ouvre une connexion à une base de données spécifique Client/Serveur pour gérer les fichiers du groupware utilisateur en mode Client/Serveur. La connexion reste ouverte jusqu'à la fin de l'application.
La fonction gpwOuvreConnexion permet de définir et ouvrir une connexion pour les fichiers de données du groupware utilisateur. Pour utiliser la même connexion sur tous les fichiers de données de l'application, il suffit d'utiliser la fonction HChangeConnexion. Ensuite, la fonction gpwOuvre permet d'indiquer le positionnement des fichiers de données permettant de gérer les droits, et des fichiers de données permettant d'identifier les utilisateurs.
Remarque : A partir de la version 19, HFSQL est le nouveau nom de HyperFileSQL.
Exemple
// Utilisation des fichiers du groupware utilisateur avec une base MySQL
SI gpwOuvreConnexion("gpwCx", "Test", "MotPasseMySQL", ...
"Serveur_apollon", "TEST", hAccèsNatifMySQL) = Faux ALORS
Erreur(ErreurInfo())
SINON
// Les fichiers du groupware utilisateur
// sont automatiquement créés
// si l'utilisateur a les droits sur MySQL.
nRes est un entier = gpwOuvre()
// Si le login a échoué
SI nRes <> gpwOk ALORS
SELON nRes
CAS gpwErreur :
Erreur("Erreur à l'initialisation.", ErreurInfo())
CAS gpwUtilisateurInconnu :
Erreur("Utilisateur inconnu.")
CAS gpwMotPasseInvalide :
Erreur("Mot de passe invalide.")
FIN
FIN
// Utilisation de la même connexion pour tous les fichiers de données
HChangeConnexion("*", "gpwCx")
Trace(HNbEnr(CEDEX))
FIN
// Changer le mot de passe des fichiers du groupware utilisateur
// par programmation
// Exemple avec le fichier GPWUTILISATEUR
gpwInitAnalyse()
GPWUTILISATEUR est une Source de Données
CNX_GPWu_HFCS est une Connexion
sMotDePasseGPWu est une chaîne = "PCSGPW2001"

// Paramètres de la connexion
CNX_GPWu_HFCS..Provider = hAccèsHFClientServeur
CNX_GPWu_HFCS..Utilisateur = "UserServerHf"
CNX_GPWu_HFCS..MotDePasse = "MotDePasseServerHF"
CNX_GPWu_HFCS..Serveur = "ServeurHF"
CNX_GPWu_HFCS..BaseDeDonnées = "GPWu"
CNX_GPWu_HFCS..Cryptage = hCryptageNon

// Ouverture de la connexion
gpwOuvreConnexion(CNX_GPWu_HFCS)
HChangeConnexion(GPWUTILISATEUR,CNX_GPWu_HFCS)
HPasse(GPWUTILISATEUR, sMotDePasseGPWu)
HCréationSiInexistant(GPWUTILISATEUR)
HChangeMotDePasse(GPWUTILISATEUR, "TEST")

CAS ERREUR:
Erreur(HErreurInfo() + RC + ErreurInfo())
Syntaxe

Définir et ouvrir une connexion Masquer les détails

<Résultat> = gpwOuvreConnexion(<Nom de la connexion> , <Nom de l'utilisateur> [, <Mot de passe>] , <Source des données> [, <Base de données>] , <Provider OLE DB ou Accès Natif> [, <Accès> [, <Informations étendues>]] , <Options supplémentaires>)
<Résultat> : Booléen
  • Vrai si l'opération a été réalisée,
  • Faux en cas de problème. La fonction HErreurInfo permet d'identifier l'erreur.
L'ouverture effective de la connexion n'est pas réalisée par la fonction gpwOuvreConnexion. La fonction peut renvoyer Vrai même si les valeurs passées en paramètre sont incorrectes.
Utilisez la fonction gpwOuvre pour indiquer le positionnement des fichiers de données permettant de gérer les droits, et les fichiers de données permettant d'identifier les utilisateurs. Les répertoires indiqués doivent être relatifs au répertoire du serveur.
<Nom de la connexion> : Chaîne de caractères (avec guillemets)
Nom de la nouvelle connexion à définir et à ouvrir. Ce nom ne doit pas être déjà utilisé par une autre connexion (connexion définie dans l'analyse, ou définie avec la fonction HOuvreConnexion ou HDécritConnexion).
<Nom de l'utilisateur> : Chaîne de caractères (avec guillemets)
Nom de l'utilisateur utilisé pour se connecter à la base de données Client/Serveur. Ce paramètre peut être récupéré grâce à la propriété ..CxUtilisateur.
<Mot de passe> : Chaîne de caractères optionnelle (avec guillemets)
Mot de passe de la connexion à la base de données Client/Serveur (si ce mot de passe existe). Si aucun mot de passe n'est nécessaire, utilisez une chaîne vide ("") ou le mot-clé NULL.
<Source des données> : Chaîne de caractères (avec guillemets)
Chemin complet de la source de données. La connexion sera créée et ouverte pour cette source de données. Ce paramètre peut être récupéré grâce à la propriété ..CxBaseDeDonnées.
<Base de données> : Chaîne de caractères optionnelle (avec guillemets)
Nom de la base de données à utiliser sur la source de données. Si ce paramètre n'est pas nécessaire, utilisez une chaîne vide (""). Ce paramètre peut être récupéré grâce à la propriété ..CxInitialCatalog.
<Provider OLE DB ou Accès Natif> : Chaîne de caractères ou Constante
  • Nom du provider OLE DB utilisé. Pour retrouver facilement la chaîne à utiliser, utilisez l'option "Connexion" de l'éditeur d'analyses (voir Notes).

    ou
  • une des constantes suivantes :
    hAccèsHF7Pseudo-connexion à une base HFSQL Classic (monoposte ou réseau)
    hAccèsHFClientServeurConnexion à une base HFSQL Client/Serveur
    hAccèsNatifAS400Accès Natif AS/400 (module optionnel)
    hAccèsNatifDB2Accès Natif DB2 (module optionnel)
    hAccèsNatifInformixAccès Natif Informix (module optionnel)
    hAccèsNatifMySQLAccès Natif MySQL (module optionnel)
    hAccèsNatifOracleAccès Natif Oracle (module optionnel)
    hAccèsNatifPostgreSQLAccès Natif PostgreSQL (module optionnel)
    hAccèsNatifProgressAccès Natif Progress (module optionnel)
    hAccèsNatifSQLServerAccès Natif SQL Server (module optionnel)
    hAccèsNatifSybaseAccès Natif Sybase (module optionnel)
    hAccèsNatifxBaseAccès Natif xBase
    hODBCProvider OLE DB pour ODBC.
    Permet d'accéder à une source de données ODBC déclarée dans les sources de données ODBC de Windows.
    hOledbAccess97Provider OLE DB pour Access 97
    hOledbAccess2000Provider OLE DB pour Access 2000
    hOledbDBase5Provider OLE DB pour DBase 5
    hOledbExcel2000Provider OLE DB pour Excel 2000
    hOledbExcel97Provider OLE DB pour Excel 97
    hOledbLotus4Provider OLE DB pour Lotus 4
    hOledbOracleProvider OLE DB pour Oracle
    hOledbSQLServerProvider OLE DB pour SQL Server
OLE DB Attention : Pour utiliser une connexion OLE DB, il est nécessaire :
  • d'installer le MDAC version 2.6 minimum (installation réalisée avec WINDEV ou WEBDEV et lors de la création du programme d'installation)
  • d'installer le provider OLE DB correspondant à la base de données manipulée.
    Ce paramètre peut être récupéré grâce à la propriété ..CxProviderOLEDB.
<Accès> : Constante optionnelle
Paramètre le type d'accès à la base.
hOLectureEcriture
(valeur par défaut)
La base de données est accessible en lecture et en écriture. Il est possible aussi bien de lire des enregistrements que d'écrire de nouveaux enregistrements.
hOLectureLa base de données est accessible uniquement en lecture. Seule la lecture des enregistrements est possible. Il n'est pas possible d'en ajouter ou d'en supprimer.
Ce paramètre peut être récupéré grâce à la propriété ..CxAccès.
<Informations étendues> : Chaîne de caractères optionnelle (entre guillemets)
Informations optionnelles insérées dans la chaîne de connexion à la base de données. Si des mots-clés spécifiques sont reconnus, les informations correspondantes sont extraites de la chaîne de connexion. Le reste de la chaîne de connexion est envoyé à la base de données. Les paramètres extraits sont ensuite traité spécifiquement par l'accès natif ou OLE DB utilisé.
Ces mots-clés doivent être indiqués de la manière suivante : "<Mot-clé> = <Valeur>".
Accès Natifs Les mots-clés reconnus pour l'accès Natif MySQL :
Server PortPour plus de détails sur ces paramètres, consultez la documentation de MySQL (mot-clé = 'mysql_real_connect').
Unix Socket
Client Flag
OLE DB Les mots-clés reconnus pour l'accès par un provider OLE DB :
WD Command TimeoutFixe la durée maximale (en secondes) de l'exécution d'une commande (Timeout de commande). Ne fonctionne pas sur l'accès natif MySQL.
WD Connect TimeoutFixe la durée maximale (en secondes) de la tentative de connexion (Timeout de connexion). Ne fonctionne pas sur l'accès natif MySQL.
HFSQL Client/Serveur Les mots-clés reconnus pour l'accès par HFSQL Client/Serveur :
CRYPTAGEActive le cryptage des informations transmises entre le Client et le Serveur. Ce mot-clé peut prendre deux valeurs :
  • RAPIDE
  • RC5_16 pour utiliser un cryptage RC5 à 16 boucles.
Ce paramètre peut être récupéré grâce à la propriété ..CxInfosEtendues.
<Options supplémentaires> : Constante
Si ce paramètre n'est pas spécifié, le moteur HFSQL détermine automatiquement les meilleurs paramètres à utiliser en fonction de la base accédée et du provider OLE DB utilisé.
Pour forcer certains paramètres, il est possible de combiner les constantes suivantes :
  • Emplacement des curseurs
    hCurseurClientCurseur géré par le MDAC. Offre souvent plus de fonctionnalités qu'un curseur serveur. Un curseur client est obligatoirement un curseur statique.
    hCurseurServeurCurseur géré par la base de données. Ce curseur peut répercuter facilement les changements effectués par d'autres utilisateurs sur les données.
  • Type de curseur
    hCurseurDynamiqueCurseur offrant de nombreuses fonctionnalités, mais consommant beaucoup de mémoire. Ce curseur autorise tous les types de déplacement. Il permet d'accéder à toutes les modifications, ajouts et suppressions réalisées par les autres utilisateurs.
    hCurseurForwardOnlyCurseur rapide et consommant peu de mémoire. Le déplacement se fait du premier enregistrement au dernier. Les données modifiées par les autres utilisateurs ne sont pas visibles.
    hCurseurOpenKeySetCurseur manipulant un jeu d'enregistrements figé. Seules des clés correspondant à l'enregistrement sont stockées et non les enregistrements (peu de ressources mémoire utilisées). Les enregistrements supprimés ne sont plus accessibles. Les modifications réalisées par les autres utilisateurs sont visibles (mais pas les ajouts).
    hCurseurStatiqueRécupère une copie de tous les enregistrements de la requête en mémoire (consommation mémoire importante). Tous les types de déplacement sont autorisés.
  • Mode de blocage
    hCurseurLectureSeuleLe jeu d'enregistrements manipulé ne pourra pas être modifié.
    hCurseurOptimisteL'enregistrement n'est verrouillé que lors de sa mise à jour
    hCurseurPessimisteL'enregistrement est verrouillé dès son édition pour être modifié.
Attention : tous les providers OLE DB ne gèrent pas tous les types de curseur.
Ce paramètre peut être récupéré grâce à la propriété ..CxOptionsCurseur.

Ouvrir une connexion définie avec une variable de type Connexion Masquer les détails

<Résultat> = gpwOuvreConnexion(<Nom de la connexion>)
<Résultat> : Booléen
  • Vrai si l'opération a été réalisée,
  • Faux en cas de problème. La fonction HErreurInfo permet d'identifier l'erreur.
L'ouverture effective de la connexion n'est pas réalisée par la fonction gpwOuvreConnexion. La fonction peut renvoyer Vrai même si les valeurs passées en paramètre sont incorrectes.
Utilisez la fonction gpwOuvre pour indiquer le positionnement des fichiers de données permettant de gérer les droits, et les fichiers de données permettant d'identifier les utilisateurs. Les répertoires indiqués doivent être relatifs au répertoire du serveur.
<Nom de la connexion> : Variable de type Connexion
Nom de la variable de type Connexion à ouvrir. Ce nom ne doit pas être déjà utilisé par une autre connexion (connexion définie dans l'analyse, ou définie avec la fonction HOuvreConnexion ou HDécritConnexion).
Remarques

Utiliser une chaîne de caractères pour le provider OLE DB

Pour trouver facilement la chaîne de caractères à utiliser pour définir le provider OLE DB, il est conseillé de procéder de la manière suivante :
  1. Dans l'éditeur d'analyses, affichez la fenêtre de description des connexions (option "Analyse .. Connexion").Dans l'éditeur d'analyses, affichez la fenêtre de description des connexions : sous le volet "Analyse", dans le groupe "Connexion", cliquez sur "Connexions".
  2. Sélectionnez le provider à utiliser (combo "Connexion par").
  3. La chaîne de caractères correspondant au provider s'affiche. Cette chaîne de caractères peut être utilisée dans la syntaxe 2 à la place des constantes.

En cas d'échec, la description de la connexion n'est pas conservée

Si l'ouverture de la connexion échoue, la description de cette connexion n'est pas validée. Il est ainsi possible de re-définir une connexion du même nom.
Par exemple, si la tentative de connexion échoue avec le mot de passe par défaut, il est possible de réaliser une nouvelle tentative avec un autre mot de passe.

Deux connexions sont ouvertes sur le serveur

Deux contextes HFSQL sont utilisés par le Groupware Utilisateur. Il est donc normal d'observer dans le centre de contrôle HFSQL deux connexions pour une unique instance de l'application.

Validité de la connexion

La fonction gpwOuvreConnexion se comporte comme la fonction HDécritConnexion : cette fonction ne fait pas immédiatement la connexion.
La fonction gpwOuvreConnexion note les paramètres de connexion à utiliser lorsqu'il faudra par la suite se connecter.
Afin de valider cette connexion, vous pouvez appeler la fonction HOuvreConnexion avant la fonction gpwOuvreConnexion avec les mêmes paramètres. Ainsi, les paramètres de connexion seront déjà vérifiés lors de l'appel de la fonction gpwOuvreConnexion.
WINDEVWEBDEV - Code ServeurWindowsLinuxAjax

Pseudo connexion à une base de données HFSQL Classic

Des fichiers de données OLE DB ou natifs sont décrits sous l'éditeur d'analyses. Pour manipuler ces descriptions avec une base de données HFSQL Classic, le paramètre <Provider OLE DB ou Accès Natif> doit correspondre à la constante hAccèsHF7.
Les fichiers de données au format HFSQL Classic correspondant à la description des fichiers OLE DB ou natifs seront créés si nécessaire dans le répertoire défini par le paramètre <Source des données>.
Composante : wd240gpu.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire