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

WinDev Discussion :

Exploitation de fichiers externes à l'analyse via PHP CLI


Sujet :

WinDev

  1. #1
    Membre confirmé
    Femme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 339
    Points : 586
    Points
    586
    Par défaut Exploitation de fichiers externes à l'analyse via PHP CLI
    Bonjour,


    J'ai une appli windev (dont j'ai pas les sources) basée sur des fichiers hyperfile et je tente d'exploiter ces fichiers en PHP CLI.

    Pour ce faire, j'ai du recréer un fichier d'analyse .wdd a partir de tous les fichiers .FIC.

    Je peux bien voir et exploiter la base en PHP CLI.

    Seulement les développeurs de l'application windev ont fait en sorte que leur appli crée une nouvelle table (.FIC) chaque jour pour les nouvelles données.
    Nouveau fichier .FIC donc, qui n'est pas inclu dans mon .wdd.

    Comment faire en sorte de pouvoir taper dans les nouveaux fichiers ?

    D'avance merci.

    Quelques précisions utiles :
    - J'ai lu tous les commentaires de "morale" vis à vis de la licence. J'ai une licence Windev valide, mais je veux volontairement passer par PHP CLI.
    - Je n'ai aucun moyen de contacter les développeurs de l'appli windev, et il est donc impossible de modifier son code source.
    - Le fichier .wdd est créé aujourd'hui, mais il ne sera pas recréé en environnement de production, c'est pourquoi je veux trouver un moyen de pouvoir taper dans les nouveaux fichiers (à moins que vous ne connaissiez un moyen de recréer le fichier analyse automatiquement )

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Est ce que ça résume bien votre problématique :

    Comment accéder à des tables physiques différentes (fichier HF pour chaque jour) alors que vous n'avez accès qu'à une table logique par l'analyse ?

    Je voudrais être sûr d'avoir bien compris.

  3. #3
    Membre expert
    Avatar de mail.spam
    Homme Profil pro
    Développeur Windev et technicien maintenance
    Inscrit en
    Janvier 2008
    Messages
    1 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Windev et technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 1 914
    Points : 3 803
    Points
    3 803
    Par défaut
    Bonjour,

    Quand tu dis
    Le fichier .wdd est créé aujourd'hui, mais il ne sera pas recréé en environnement de production
    Tu entend quoi par là?

    Attention je n'ai pas testé ce que je dis par la suite, mais c'est une piste à exploiter.

    Si tu as l'analyse une solution serai de renommer ton fichier fic avec le nom défini dans l'analyse et ainsi accéder aux infos.

    Mais il faudrait savoir ce que tu veux faire exactement.
    Car si tu veux accéder aux infos pendant que le fichier est utilisé ça risque de poser problème.
    la touche est ton amie. l'aide ne mord pas quand on la consulte...
    PS : n'oubliez jamais que nous ne sommes pas avec vous sur le projet. Donc plus vous donnez d'informations et d'exemples de codes et plus nous pourrons vous aider. (Un exemple vaut mieux que de longs discours...)

    Pensez à utiliser les votes et à cliquer sur , merci

  4. #4
    Membre confirmé
    Femme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 339
    Points : 586
    Points
    586
    Par défaut
    Citation Envoyé par vmolines Voir le message
    Est ce que ça résume bien votre problématique :

    Comment accéder à des tables physiques différentes (fichier HF pour chaque jour) alors que vous n'avez accès qu'à une table logique par l'analyse ?

    Je voudrais être sûr d'avoir bien compris.
    Je ne suis pas sûre de saisir la différence entre ces deux notions en Windev. :s

  5. #5
    Membre confirmé
    Femme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 339
    Points : 586
    Points
    586
    Par défaut
    Citation Envoyé par mail.spam Voir le message
    Quand tu dis
    Tu entend quoi par là?
    C'est moi qui aie reconstitué le fichier d'analyse à partir des fichiers .FIC. Est-ce que ça répond à ta question ?

    Citation Envoyé par mail.spam Voir le message
    Si tu as l'analyse une solution serai de renommer ton fichier fic avec le nom défini dans l'analyse et ainsi accéder aux infos.

    Mais il faudrait savoir ce que tu veux faire exactement.
    Car si tu veux accéder aux infos pendant que le fichier est utilisé ça risque de poser problème.
    Le but est justement de l'exploiter lorsqu'il est utilisé, c'est-à-dire que je ne peux pas le renommer. Je suis consciente que ça risque de poser des problèmes de verrous, et je tenterai par la suite de gérer ce cas là. Mais pour ça il faut que je puisse les atteindre par mon script ^^

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Citation Envoyé par Isythiel Voir le message
    Je ne suis pas sûre de saisir la différence entre ces deux notions en Windev. :s
    Ok alors abordé différemment. Quand vous accédez aux données d'un des jours via PHP CLI, vous le faîtes en interrogeant quelle table ?

  7. #7
    Membre confirmé
    Femme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 339
    Points : 586
    Points
    586
    Par défaut
    Citation Envoyé par vmolines Voir le message
    Ok alors abordé différemment. Quand vous accédez aux données d'un des jours via PHP CLI, vous le faîtes en interrogeant quelle table ?
    Pour l'instant je ne le fais pas. Mais je me rends compte qu'il y a un fichier histo_j_cde puis après des fichiers histo_<date>, ça correspond à ce que vous essayiez de m'expliquer ?

    [Edit : ajout de précisions]
    Quand je dis "pour l'instant je ne le fais pas", je ne le fais pas sur ces fichiers :
    J'ai un dossier général qui contient l'exécutable et plusieurs fichiers .FIC qui correspondent aux données qui changeront le moins souvent (liste des produits, liste des utilisateurs, etc). C'est à partir de ceux là que j'ai recréé mon analyse .wdd. Et donc ce sont ces données que je peux lire via PHP CLI.

    J'ai ensuite un dossier /histo/ qui contient les fameux fichiers décrits plus haut, et qui ont l'air de servir pour les enregistrements de chaque commande de la journée. Je n'ai pas osé les inclure dans l'analyse en pensant qu'ils étaient susceptibles de changer (dans le sens ou je n'aurai qu'une fois le fichier histo_<dateX> mais pas les données des jours suivants).

    Est-ce que je dois inclure tout de même un de ces fichiers ? Comment ça se passe par la suite ?

    Si je n'ai pas été claire, n'hésitez pas à me demander de reformuler.
    Merci.

  8. #8
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    En fait ce que je veux dire c'est qu'Hyperfile travaille utilise l'analyse comme schéma pour accéder aux données. Vous ne pouvez accéder à des tables non définies dans l'analyse (sauf depuis Windev qui permet de définir dynamiquement l'analyse).

    Donc vous êtes limité à l'analyse que vous définissez à un instant donné pour accéder aux tables qui elles peuvent être créées dynamiquement au fil des jours.

    Toutes les solutions que je vois pour traiter votre problème sont horribles :

    - changer physiquement le nom d'un fichier que l'analyse ne connait pas pour le remplacer par un que l'analyse connait (solution proposée par Mail.spam). Exemple : vous avez dans l'analyse seulement histo_j1. L'application windev créée histo_j2.FIC le 2ème jour. Vous renommez histo_j2.FIC en histo_j1.FIC et vous manipulerez alors le jour 2 à travers la B]histo_j1[/B] de l'analyse.

    Solution horrible qui pose des problèmes de performance, de concurrence d'accès et qui difficile à mettre en place.

    - faire un programme windev qui accède à ces données en décrivant l'analyse de manière dynamique et les fournit à votre application (socket, webservice, ...). Très nul aussi.

    - refaire un applicatif pour remplacer celui en Windev. En profiter pour revoir le modèle de données. Y transférer les données des fichiers Hyperfiles existants. Très bien mais vous n'avez sûrement pas le temps.

  9. #9
    Membre confirmé
    Femme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 339
    Points : 586
    Points
    586
    Par défaut
    Citation Envoyé par vmolines Voir le message
    En fait ce que je veux dire c'est qu'Hyperfile travaille utilise l'analyse comme schéma pour accéder aux données. Vous ne pouvez accéder à des tables non définies dans l'analyse (sauf depuis Windev qui permet de définir dynamiquement l'analyse).

    Donc vous êtes limité à l'analyse que vous définissez à un instant donné pour accéder aux tables qui elles peuvent être créées dynamiquement au fil des jours.
    C'est exactement mon problème.


    Citation Envoyé par vmolines Voir le message
    Toutes les solutions que je vois pour traiter votre problème sont horribles :

    - changer physiquement le nom d'un fichier que l'analyse ne connait pas pour le remplacer par un que l'analyse connait (solution proposée par Mail.spam). Exemple : vous avez dans l'analyse seulement histo_j1. L'application windev créée histo_j2.FIC le 2ème jour. Vous renommez histo_j2.FIC en histo_j1.FIC et vous manipulerez alors le jour 2 à travers la B]histo_j1[/B] de l'analyse.

    Solution horrible qui pose des problèmes de performance, de concurrence d'accès et qui difficile à mettre en place.
    Effectivement, et surtout pas faisable parce que l'appli windev travaille en temps réel sur le fichier du jour concerné (et donc va chercher ce fichier spécifiquement), que je dois exploiter en temps réel aussi. Ben oui sinon c'est pas drôle :p

    Citation Envoyé par vmolines Voir le message
    - faire un programme windev qui accède à ces données en décrivant l'analyse de manière dynamique et les fournit à votre application (socket, webservice, ...). Très nul aussi.
    J'en étais limite à me demander si c'est pas ce que j'allais faire, je commence à être bien bloquée... Mais je suis d'accord, c'est moche.

    Citation Envoyé par vmolines Voir le message
    - refaire un applicatif pour remplacer celui en Windev. En profiter pour revoir le modèle de données. Y transférer les données des fichiers Hyperfiles existants. Très bien mais vous n'avez sûrement pas le temps.
    Impossible, mon client a déja acheté la licence de ce produit et s'est engagé avec l'entreprise qui "développe" cette solution. Et accessoirement, je n'ai pas le temps

    Ensuite, je me demandais s'il était possible de créer une nouvelle table dans ODBC, ayant le nom du fichier que je cherchais à joindre.

  10. #10
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut
    Vous avez precisé que vous n'aviez pas les sources de l'application Windev. C'est peut être de ce côté qu'il vaut mieux creuser. Payez pour avoir les sources s'il faut, ça ne coûtera rien comparé à l'horreur engendrée par une autre solution.

  11. #11
    Membre confirmé
    Femme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2009
    Messages
    339
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2009
    Messages : 339
    Points : 586
    Points
    586
    Par défaut
    Malheureusement ça n'est pas une question de prix...
    Ce n'est vraiment pas une solution envisageable.

Discussions similaires

  1. Conversion de fichier xls en csv via php
    Par Realniggaz dans le forum Langage
    Réponses: 1
    Dernier message: 05/06/2013, 15h31
  2. [XML] Génération fichier XML pour RSS via PHP, problème lors de l'écriture
    Par gator dans le forum Bibliothèques et frameworks
    Réponses: 10
    Dernier message: 04/02/2012, 18h17
  3. [Configuration] limite de temps pour l'éxécution de scripts via php-cli
    Par icer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 28/05/2007, 11h33
  4. Réponses: 3
    Dernier message: 31/03/2007, 10h18
  5. Réponses: 2
    Dernier message: 27/05/2004, 00h40

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