1. Bonjour tout le monde ! Veillez consulter la Politique de forum pour comprendre nos règles, Merci a vous !
    Rejeter la notice

Modifer structure d'1 fichier

Discussion dans 'Base de donnés & HFSQL' créé par Mohamed, Mar 15, 2018.

  1. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Bonjour tout le monde

    J'ai importer un fichier Paramètres depuis une analyse 2 vers une analyse 1 j'enregistre mon analyse puis je la génére sans problème.
    Lors je lance mon application pour le test la fonction : HModifieStructure(PARAMETRES,hmsNormal)
    affiche un message d'erreur "Le fichier PARAMETRES est provient d'une autre analyse"

    Ma question ou je peux trouver le GUID de l'analyse de 1 et 2 ou bien comment je corrige mon problème

    Merci d'vance
     
    Tags:
  2. gapplicat

    gapplicat Well-Known Member
    MEMBRE WX

    Inscrit:
    Mar 8, 2018
    Messages:
    399
    J'aime reçus:
    708
    Dans windev, dans l'analyse, bouton droit et Génération de l'analyse :
    - Ton fichier est il présent dans la liste ? Ajoute le chemin s'il n'y est pas

    Ton fichier devrait alors être modifié en structure...

    Sinon reste la solution d'exporter les données via le WDMAP vers un CSV et de les ré-interger par programmation dans ton nouveau fichier
     
  3. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Bonjour

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!

    et merci de votre réponse

    Je cherche pas à générer mes fichier par le générateur de l'analyse (Génération de l'analyse) mais par programmation en utilisant la fonction HModifieStructure().
    Cette dernière modifie mon fichier, qui était changé dans l'analyse, sans aucun message d'erreur mais à lancement d'application chez le client un message d'erreur "La description de fichier <Paramètres > est différente celle stockée dans le dossier....

    NB : je n'utilise pas la modification proposée par pcsoft au moment d'installation

    Merci
     
  4. obir

    obir Member

    Inscrit:
    Jan 1, 2018
    Messages:
    78
    J'aime reçus:
    78
    Voici donc mon code qui permet de copier des enregistrements d'un fichier source non déclarer vers un fichier de destination déclaré et de structure différente :

    ---------------

    Bouton5..Etat=Grisé

    BaseCopie est une Source de Données
    HDéclareExterne(fRepEnCours+"\Vernis_enreg_copie.FIC",BaseCopie)

    POUR TOUT BaseCopie
    ListeAjoute(Table1,BaseCopie.Marque+TAB+BaseCopie.Reference+TAB+BaseCopie.Contenance+TAB+BaseCopie.Couleur+TAB+BaseCopie.Texture+TAB+BaseCopie.Pinceau+TAB+BaseCopie.Couvrance+TAB+BaseCopie.Sechage+TAB+BaseCopie.Collection)
    FIN

    HCréationSiInexistant(Vernis_enreg)

    POUR TOUTE LIGNE DE Table1
    Vernis_enreg.Marque = Table1.Colonne1
    Vernis_enreg.Reference = Table1.Colonne2
    Vernis_enreg.Contenance = Table1.Colonne3
    Vernis_enreg.Couleur = Table1.Colonne4
    Vernis_enreg.Texture = Table1.Colonne5
    Vernis_enreg.Pinceau = Table1.Colonne6
    Vernis_enreg.Couvrance = Table1.Colonne7
    Vernis_enreg.Sechage = Table1.Colonne8
    Vernis_enreg.Collection = Table1.Colonne9
    HAjoute(Vernis_enreg)
    FIN

    Bouton5..Etat=Actif
     
  5. postmanwindev

    postmanwindev Member
    MEMBRE WX

    Inscrit:
    Mar 30, 2018
    Messages:
    105
    J'aime reçus:
    23
    un exemple peut etre
    gsAdresseipduserveur est une chaîne=Droite(HInfoServeur(maconnexion,hInfoNom),12)
    // HCréationSiInexistant("*")
    sListeDesErreurs est une chaîne
    // Vérification stricte de la structure de fichiers
    HVérifieStructure("*", hIdentique)
    // Pour tous les fichiers
    POUR TOUTE CHAÎNE sNomUnFichier DE HListeFichier() SEPAREE PAR RC
    QUAND EXCEPTION DANS
    // Ouverture ou création du fichier de données
    HCréationSiInexistant(sNomUnFichier)
    FAIRE
    // Problème
    // Il y a une différence de structure ?
    SI HErreur(hErrEnCours) = 70016 ALORS
    // Erreur 70016: LE FICHIER NE CORRESPOND PAS A SA DESCRIPTION
    ToastAffiche("Mise à jour de la structure du fichier <" + ...
    sNomUnFichier + "> en cours...", toastCourt, cvMilieu, chCentre)
    // On met à jour la structure du fichier
    SI PAS HModifieStructure(sNomUnFichier) ALORS
    // Echec de la mise à jour de la structure du fichier
    sListeDesErreurs += [RC] + ...
    "- Erreur de modification de structure pour le fichier <" + ...
    sNomUnFichier + "> : " + HErreurInfo()
    FIN
    SINON
    // Autres erreurs qu'une différence de structure
    sListeDesErreurs += [RC] + "- Erreur d'accès au fichier <" + ...
    sNomUnFichier + "> : " + HErreurInfo()
    FIN
    FIN
    FIN

    // Vérification compatible de la structure de fichier
    // Ainsi les modifications "les plus courantes" permettent
    // quand même l'utilisation de l'application (voir HVérifieStructure)
    HVérifieStructure("*", hCompatible)

    // Il y a eu des erreurs ?
    SI sListeDesErreurs <> "" ALORS
    // Message afin de prévenir
    SI PAS OuiNon("Des erreurs sont apparus lors de l'ouverture des fichiers : " + RC + ...
    sListeDesErreurs + RC +...
    "Continuer quand même l'application ?") ALORS
    FinProgramme()
    FIN
    FIN

    //-------------------------------
    jspr que cela vous aidera
     
    elghyati et Kill3rbko aiment ça.
  6. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Merci pour le code

    J'ai déjà presque le même code mais j'ai un problème parfois que la fonction modifieStructure ne modifie pas des fichiers
     
  7. postmanwindev

    postmanwindev Member
    MEMBRE WX

    Inscrit:
    Mar 30, 2018
    Messages:
    105
    J'aime reçus:
    23
    ques qu'elle ne modifie pas ? peux tu me donner un exemple s'il te plait
     
  8. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Merci

    Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens!



    Voila mon code :

    HVérifieStructure("*", hIdentique)
    HCréationSiInexistant("*") // ici lors un fichier a été modifié dans l'analyse cette dernière lance un message d'erreur
    sListeFichier est une chaîne= HListeFichier(DossierFichier,hLstDétail+hLstTriée)
    sFichier est une chaîne=ExtraitChaîne(sListeFichier,i,RC)
    TANTQUE sFichier<>EOT
    NomFichier= ExtraitChaîne(sFichier,1)
    HModifieStructure(NomFichier,hmsNormal,Null)
    i++

    sFichier=ExtraitChaîne(sListeFichier,i,RC)
    FIN

    HVérifieStructure("*", hCompatible)
     
  9. postmanwindev

    postmanwindev Member
    MEMBRE WX

    Inscrit:
    Mar 30, 2018
    Messages:
    105
    J'aime reçus:
    23
    bonjour
    Le hcréationsiinexistant moi je le met apres le code apres le hvérifiestructure....
     
  10. Mohamed

    Mohamed Active Member

    Inscrit:
    Jan 15, 2018
    Messages:
    304
    J'aime reçus:
    60
    Ca change rien care l'ordre ici n'pas de portance
     
  11. postmanwindev

    postmanwindev Member
    MEMBRE WX

    Inscrit:
    Mar 30, 2018
    Messages:
    105
    J'aime reçus:
    23
    si ça n'a pas d'importance pour quoi un message d'erreur alors ? ensuite ta connexion tu l'ouvre quand ?
     
  12. AXO

    AXO New Member

    Inscrit:
    Mai 6, 2021
    Messages:
    12
    J'aime reçus:
    2
    Salut à tous j'admire vos compétences dans le developpement j'espère compter sur les conseils des un et des autres pour avoir votre niveau aussi.
    J'ai aussi le même problème que mohamed depuis un certain temps.
     

Partager cette page

Chargement...