IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HyperFileSQL Discussion :

Fichier dans répertoire avec nom identique [HF25]


Sujet :

HyperFileSQL

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut Fichier dans répertoire avec nom identique
    Bonjour à tous,

    Je commence sur windev et je rencontre un problème, j'ai une base de données existante qui contient plusieurs répertoires avec des noms différents, mais avec un fichier fic qui comporte tout le temps le même nom.
    exemple :
    Dossier A -> client.fic
    Dossier B -> client.fic
    Dossier C -> client.fic

    Je souhaite via windev les connectées à mon analyse, le problème est qu'il en voie qu'un seul, a vous une solution svp ? Je ne peux pas renommer les fichiers

    Merci d'avance

  2. #2
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par tony-28 Voir le message
    Bonjour à tous,

    Je commence sur windev et je rencontre un problème, j'ai une base de données existante qui contient plusieurs répertoires avec des noms différents, mais avec un fichier fic qui comporte tout le temps le même nom.
    exemple :
    Dossier A -> client.fic
    Dossier B -> client.fic
    Dossier C -> client.fic

    Je souhaite via windev les connectées à mon analyse, le problème est qu'il en voie qu'un seul, a vous une solution svp ? Je ne peux pas renommer les fichiers

    Merci d'avance
    Je pense avoir compris le principe pour moi un peu tordu, si quelqu'un peut me confirmer.

    Il faut déclarer une variable en source de donnée.
    On lui crée un alias pour récupérer la description de base.
    Et enfin, on pointe notre alias vers le fichier qu'on le souhaite utiliser.

    Exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    client2 est une Source de Données
    HAlias(client,client2)
    HChangeNom(client2,".\DOSSIER\client")
     
    HLitRecherchePremier(client2,Ref,"123")
    ...

  3. #3
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 389
    Points : 9 564
    Points
    9 564
    Par défaut
    Bonjour,

    Tu ne peux déclarer (pas connecter) qu'une seule description à ton analyse. Ton idée de HAlias est très bien.

    Regarde du côté de HchangeRep() également.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Bonjour,

    Tu ne peux déclarer (pas connecter) qu'une seule description à ton analyse. Ton idée de HAlias est très bien.

    Regarde du côté de HchangeRep() également.
    Bonjour,

    Merci pour ton retour, effectivement après ma dernière réponse, j'ai découvert hchangerep() qui est très bien.

    Dans l'idée, je souhaitais créer un trigger, pour copier les données lors des ajouts dans la table DOSSIERA/client.fic à DOSSIERB/client.fic donc pour le moment, je suis arrivé à faire ce que je voulais sans les dossiers sur une base test et il me reste à reproduire dans la même situation avec les dossiers.

  5. #5
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 389
    Points : 9 564
    Points
    9 564
    Par défaut
    Question bête : Pourquoi utilises tu des dossiers ? Ne peux tu pas faire une description de fichier légèrement différente en gérant le "dossier" ? Cela te permettrait de n'avoir qu'un seul fichier client.
    Tu as une description qui doit ressembler à ça : CLIENT(IdClient, Nom, Prénom, Adresse, CP, ville,...)
    Et la transformer en CLIENT(Dossier, IdClient, Nom, Prénom, Adresse, CP, ville,...) ?

  6. #6
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 045
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 045
    Points : 2 503
    Points
    2 503
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Question bête : Pourquoi utilises tu des dossiers ? Ne peux tu pas faire une description de fichier légèrement différente en gérant le "dossier" ? Cela te permettrait de n'avoir qu'un seul fichier client.
    Tu as une description qui doit ressembler à ça : CLIENT(IdClient, Nom, Prénom, Adresse, CP, ville,...)
    Et la transformer en CLIENT(Dossier, IdClient, Nom, Prénom, Adresse, CP, ville,...) ?
    Oui et non.
    On ne sait pas ce que fait son appli, mais imaginons :
    Dossier A : 45000 Clients
    Dossier B : 454000 Clients
    Dossier C : 4 Clients.

    Ce pauvre gars qui utilise le dossier C va être diaboliquement pénalisé.
    Et puis quand il va sauvegarder il va connaitre les Clients de A et de B (et il va leur piquer, le bougre)
    J'ai volontairement caricaturé, mais le HchangeRep() est tellement simple.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Question bête : Pourquoi utilises tu des dossiers ? Ne peux tu pas faire une description de fichier légèrement différente en gérant le "dossier" ? Cela te permettrait de n'avoir qu'un seul fichier client.
    Tu as une description qui doit ressembler à ça : CLIENT(IdClient, Nom, Prénom, Adresse, CP, ville,...)
    Et la transformer en CLIENT(Dossier, IdClient, Nom, Prénom, Adresse, CP, ville,...) ?

    Car la base de données n'est pas la mienne et dépend d'un logiciel, j'ai besoin que lorsque un client est ajouté dans le dossierA/client.fic, le trigger rentre en action pour faire un hajoute dans le dossierB/client.fic et je ne veux pas faire une application d'arrière-plan avec un hsurveille() pour moi le plus propre reste un trigger, je maîtrise en sqlserver, mais en hfsql je débute donc je cherche comment m'y prendre correctement.

    Dans l'idée voila comment j'ai procéder pour le moment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    client_dossierB est une Source de Données
    HAlias(client, client_dossierB)
    HChangeNom(client_dossierB,".\DOSSIERB\client")
     
    client_dossierB.Statut_AMS		= client.Nom
    client_dossierB.ID_mvt			= client.Prénom
    HAjoute(client_dossierB)
    Mais ça ne marche pas, il me dit aucune analyse n'est ouverte et le fichier <client> n'a pas été décrit

  8. #8
    Membre émérite
    Femme Profil pro
    .
    Inscrit en
    Janvier 2012
    Messages
    1 045
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : .
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 1 045
    Points : 2 503
    Points
    2 503
    Par défaut
    En effet, ça change tout.

    Commencez par expliquer le fond de la problématique,
    afin que ceux qui vous répondent ne le fasse pas à côté de la plaque.

    Cordialement.

    Donc il y a un ou n fichiers Clients (qui en réalité ne font qu'un, puisque l'ajout dans l'un provoque l'ajout dans tous les autres).
    Et j'ose imaginer qu'il en est de même pour modif et annul.
    De plus ils ne fait pas partie de l'analyse en cours.
    (c'est un fichier dit "externe")

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par tony-28 Voir le message
    Car la base de données n'est pas la mienne et dépend d'un logiciel, j'ai besoin que lorsque un client est ajouté dans le dossierA/client.fic, le trigger rentre en action pour faire un hajoute dans le dossierB/client.fic et je ne veux pas faire une application d'arrière-plan avec un hsurveille() pour moi le plus propre reste un trigger, je maîtrise en sqlserver, mais en hfsql je débute donc je cherche comment m'y prendre correctement.

    Dans l'idée voila comment j'ai procéder pour le moment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    client_dossierB est une Source de Données
    HAlias(client, client_dossierB)
    HChangeNom(client_dossierB,".\DOSSIERB\client")
     
    client_dossierB.Statut_AMS		= client.Nom
    client_dossierB.ID_mvt			= client.Prénom
    HAjoute(client_dossierB)
    Mais ça ne marche pas, il me dit aucune analyse n'est ouverte et le fichier <client> n'a pas été décrit

    J'ai trouvé ! Je poste la solution, faut simplement comprendre comment windev résonne, mais je cherchait trop loin ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    client_dossierB est une Source de Données
    HDéclareExterne(".\DOSSIERB\client.FIC", client_dossierB)
     
    client_dossierB.Nom		= client.Nom
    client_dossierB.Prenom			= client.Prénom
    HAjoute(client_dossierB)
    Savez-vous, mais je pense que j'ai m'as réponse s'il est possible d'exécuter une application depuis un trigger, je ne voie pas comment ça serait possible, mais je demande aux cas où

  10. #10
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 389
    Points : 9 564
    Points
    9 564
    Par défaut
    Bravo pour tes recherches et l'utilisation du hdeclareexterne.
    Il existe également HcopieEnreg() qui ne semble pas utile dans ton cas si tu n'as que le nom et le prénom.

    Il n'est pas possible d'exécuter une appli. Par contre, tu peux exécuter une procédure stockée sur ton serveur HFCS.

  11. #11
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Bravo pour tes recherches et l'utilisation du hdeclareexterne.
    Il existe également HcopieEnreg() qui ne semble pas utile dans ton cas si tu n'as que le nom et le prénom.

    Il n'est pas possible d'exécuter une appli. Par contre, tu peux exécuter une procédure stockée sur ton serveur HFCS.
    Merci !

    Je n'ai pas que le nom et prénom, ce n'est qu'un exemple pour simplifier m'a démarche, mais merci pour ta suggestion et effet HcopieEnreg() sauf erreur de ma part à besoin que les nom des tables soit identiques ce qui est mon cas donc ton idée pourrais également marcher.

    Oui j'ai crée m'as procédure stockée où j'ai insérer le code précédemment communiqué, par contre j'ai besoin d'envoyer les informations à une API, le mieux reste de passer par un service avec Hsurveille() ?

  12. #12
    Expert éminent
    Avatar de frenchsting
    Homme Profil pro
    multitâches-multifonctions
    Inscrit en
    Juin 2003
    Messages
    5 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : multitâches-multifonctions
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 389
    Points : 9 564
    Points
    9 564
    Par défaut
    Bonjour,

    Il y a pléthore de méthode. HSurveille en est une. Un appli avec un timersys / thread fonctionne aussi. Pour ne citer que 2 exemples....

    A toi de voir, suivant l'architecture que tu as.

  13. #13
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Citation Envoyé par frenchsting Voir le message
    Bonjour,

    Il y a pléthore de méthode. HSurveille en est une. Un appli avec un timersys / thread fonctionne aussi. Pour ne citer que 2 exemples....

    A toi de voir, suivant l'architecture que tu as.
    Parfait merci pour tes conseils, je passe le post en résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 84
    Dernier message: 02/06/2022, 21h16
  2. Personnaliser Nom Fichier dans Cellule.avec STXT
    Par stef3700 dans le forum Excel
    Réponses: 4
    Dernier message: 09/05/2017, 11h21
  3. [Débutant] Rechercher fichier dans repertoire avec le début du nom
    Par Netpasnet dans le forum VB.NET
    Réponses: 3
    Dernier message: 27/03/2015, 14h21
  4. Enregistrement de fichier dans un nouveau nom
    Par Cece06 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 30/06/2012, 12h18
  5. Mettre le nom du fichier dans TextEdit ?? Avec CFileDialog
    Par P'tit Troll dans le forum Windows
    Réponses: 2
    Dernier message: 19/04/2005, 18h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo