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 :

problème avec HSupprimeTout [WD20]


Sujet :

WinDev

  1. #1
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut problème avec HSupprimeTout
    bonjour,

    J'ai un petit soucis avec la fonction HSupprimeTout(MonFichier1)

    MonFichier1 est en liaison avec un autre fichier de données MonFichier2, voici la description de la liaison :
    (désolé pour le nom utilisé des fichiers dans mes printscreen...)

    Nom : descript.png
Affichages : 732
Taille : 15,5 Ko

    Voici les règles d'intégrité :

    Nom : integr.png
Affichages : 675
Taille : 18,3 Ko

    Donc logiquement si je supprime les enregistrements de MonFichier1, les enregistrements de MonFichier2 (qui sont en relation) devront être supprimés également ???!!!!!

    et bien NON !!

    ils sont toujours là après la fonction HSupprimeTout(MonFichier1) !!

    Quelqu'un saurait-il me dire pourquoi et comment y remédier ???

    Milles merci d'avance !!


    Bien cordialement,

    JJacques68

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Bonjour,

    quel est le type de la base de données ? Si ce n'est pas du HyperFile, je ne suis pas sûr que cela fonctionne ....

    à bientôt,

    Nicolas

  3. #3
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut
    bonjour,

    Le type des fichier est HFSQL Classic...

    Par contre je viens de me rendre compte qu'elle apparait avec fond jaune, comme si c'était un fichier de relation...

    je sais pas si ça joue...

    merci !!

  4. #4
    Membre éprouvé
    Inscrit en
    Avril 2008
    Messages
    1 129
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 1 129
    Points : 1 283
    Points
    1 283
    Par défaut Ai - je bien compris?
    Citation Envoyé par jjacques68 Voir le message
    Donc logiquement si je supprime les enregistrements de MonFichier1, les enregistrements de MonFichier2 (qui sont en relation) devront être supprimés également ???!!!!!
    et bien NON !!

    Si j'ai bien compris....

    si je supprime les enregistrements de MonFichier1, les rubriques (id liées de MonFichier1 dans MonFichier2) devront être supprimés également et pas les enregistrements de MonFichier2.

  5. #5
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    Bonjour,

    je viens de reprendre l'exemple CRM de PCSoft qui contient des fichiers hyperfile et j'ai fait les manipulations dont tu parles et là, patatra ! Les lignes de la tables Commande sont bien supprimées mais pas les dépendances (historique + LigneCmd) ... Donc ce n'est pas un problème de version (je suis en v19).

    J'ai forcé avant le HSupprimeTout la gestion de l'intégrité mais rien de mieux.

    J'ai essayé en passant par le GO ou par un exe fraichement généré et ça ne fonctionne pas non plus !

    Je pense que tu devrais demandé au support PCSoft dans quelle mesure l'intégrité de l'analyse est bien prise en compte par les fonctions H ... afin d'avoir une réponse !

    à bientôt,

    Nicolas

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    914
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 914
    Points : 1 496
    Points
    1 496
    Par défaut
    Bonjour
    Une discussion sur le sujet
    http://www.developpez.net/forums/d12...te-on-cascade/

  7. #7
    Rédacteur/Modérateur

    Avatar de dsr57
    Homme Profil pro
    Analyste programmeur senior
    Inscrit en
    Octobre 2003
    Messages
    1 139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Analyste programmeur senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 139
    Points : 4 681
    Points
    4 681
    Billets dans le blog
    22
    Par défaut
    Bonjour

    Je viens d'effectuer un test simple avec 2 fichiers HF classic et cela fonctionne.

    As tu essayer de re générer l'analyse ?

    Bon dev
    ------------------------------------------------------------------------------------------------------------------------------------------
    Mon message vous a aidé, pensez à remercier . La discussion est résolue, n'oubliez pas le tag
    ------------------------------------------------------------------------------------------------------------------------------------------
    Site perso : Formation, Expérience, Réalisations, ...
    Blog : Le Blog de DSR57 - Programmation WinDev

  8. #8
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut
    Bonjour merci a tous pour votre participation,

    Yusep, j'ai lu ton lien, mais cela ne m'aide pas beaucoup...

    Je viens de me rendre compte que dans mon analyse, j'ai un autre cas de figure (de fichier lié avec les mêmes règles d'intégrité...) qui est exactement le même.
    Et là, la suppression en cascade se fait très bien !!!

    La description des fichiers est identique !!!

    dsr57, j'ai re généré l'analyse mais sans aucune amélioration

    J'ai du mal à comprendre le problème...

  9. #9
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut
    N'y aurait pas une option quelque part qui désactive les règles d'intégrité ??

    y a t il un moyen d'effectuer des tests ?

  10. #10
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut
    En fait je crois avoir trouvé le bug...

    Je viens de changer mon code,

    J'utilisais le HSupprimeTout(MonFichier1)...

    J'ai changer avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    HLitPremier(MonFichier1)
    TANTQUE HTrouve() ET PAS HEnDehors()
         HSupprime()
         HLitSuivant()
    FIN
    Et là étrange, ça fonctionne !!!

    pourquoi ??

  11. #11
    Rédacteur/Modérateur

    Avatar de dsr57
    Homme Profil pro
    Analyste programmeur senior
    Inscrit en
    Octobre 2003
    Messages
    1 139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Analyste programmeur senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 139
    Points : 4 681
    Points
    4 681
    Billets dans le blog
    22
    Par défaut
    Bonjour

    Peut être une explication (du moins c'est une hypothèse), la fonction HSupprimeTout n'effectue pas de parcours du fichier HF ce qui ne déclenche pas les contraintes d'intégrités ...

    Bon dev
    ------------------------------------------------------------------------------------------------------------------------------------------
    Mon message vous a aidé, pensez à remercier . La discussion est résolue, n'oubliez pas le tag
    ------------------------------------------------------------------------------------------------------------------------------------------
    Site perso : Formation, Expérience, Réalisations, ...
    Blog : Le Blog de DSR57 - Programmation WinDev

  12. #12
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    donc on peut bien appeler ça un bug ?!

  13. #13
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 469
    Points : 121
    Points
    121
    Par défaut
    je crois qu'il faut pas toujours chercher à comprendre chez PCSoft
    je marque en résolu ce sujet...

    Merci a tous pour votre aide !!

    Cordialement.

  14. #14
    Rédacteur/Modérateur

    Avatar de dsr57
    Homme Profil pro
    Analyste programmeur senior
    Inscrit en
    Octobre 2003
    Messages
    1 139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Analyste programmeur senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 139
    Points : 4 681
    Points
    4 681
    Billets dans le blog
    22
    Par défaut
    Bonjour

    Je viens de faire uen requête au support technique, on verra si leur réponse nous apporte plus de précision.


    Bon dev à tous
    ------------------------------------------------------------------------------------------------------------------------------------------
    Mon message vous a aidé, pensez à remercier . La discussion est résolue, n'oubliez pas le tag
    ------------------------------------------------------------------------------------------------------------------------------------------
    Site perso : Formation, Expérience, Réalisations, ...
    Blog : Le Blog de DSR57 - Programmation WinDev

  15. #15
    Rédacteur/Modérateur

    Avatar de dsr57
    Homme Profil pro
    Analyste programmeur senior
    Inscrit en
    Octobre 2003
    Messages
    1 139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Analyste programmeur senior
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 139
    Points : 4 681
    Points
    4 681
    Billets dans le blog
    22
    Par défaut
    Bonjour à tous

    Je reviens vers vous pour vous informer de la réponse de PC-Soft suit à mes requêtes (et oui il en fallu 2 ...).

    Première requête :

    Je voulais savoir si il est normal que la fonction HsupprimeTout ne prenne pas en compte les erreurs d'intégrités.

    Protocole de reproduction :
    • Créer 2 fichiers HF
    • Creer une liaison avec les cardinalités 0,n ----- 1,1
    • Sélectionner la règle de suppression : Supprimer le "fichier1" et tous ses "Fichier2"
    • Saisir quelques valeurs
    • Appeler la fonction HSupprimeTout sur le fichier 1
    • Les enregistremets du fichiers 2 sont encore présent


    Réponse de PC -Soft :

    Bonjour Monsieur ....,

    Je suis vraiment désolé de ce problème mais nos tests ne l'ont pas détecté. Il faut donc rechercher à le reproduire sur un projet très simple à nous transmettre.

    Merci de votre coopération.
    Deuxième requête :

    J'ai créé un projet, et transmis au support, ci-dessous la réponse de Pc-Soft :

    Bonjour Monsieur ...,

    Merci pour ces éléments. En fait HSupprimeTout ne réalise pas une suppression classique, à la manière de hSupprime. Cette commande est plutôt une version rapide de hCreation(), car notamment, elle réinitialise les identifiants automatiques.

    Cette commande n'active pas le contrôle d'intégrité.

    Je suis sincèrement désolé de la gêne occasionnée et je vous remercie de votre coopération.

    Bon dev à tous
    ------------------------------------------------------------------------------------------------------------------------------------------
    Mon message vous a aidé, pensez à remercier . La discussion est résolue, n'oubliez pas le tag
    ------------------------------------------------------------------------------------------------------------------------------------------
    Site perso : Formation, Expérience, Réalisations, ...
    Blog : Le Blog de DSR57 - Programmation WinDev

  16. #16
    Membre émérite
    Homme Profil pro
    Développeur et responsable micros/réseaux
    Inscrit en
    Octobre 2010
    Messages
    1 286
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur et responsable micros/réseaux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 286
    Points : 2 562
    Points
    2 562
    Par défaut
    J'en reste coi !

  17. #17
    Expert confirmé
    Homme Profil pro
    ?
    Inscrit en
    Juillet 2002
    Messages
    2 378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : ?

    Informations forums :
    Inscription : Juillet 2002
    Messages : 2 378
    Points : 4 494
    Points
    4 494
    Par défaut
    Bonjour

    Merci du retour

    Si ça fonctionne comme ça, ok. Mais dans ce cas il faudrait qu'ils l'indiquent clairement dans la page d'aide

  18. #18
    Membre émérite
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 075
    Points : 2 441
    Points
    2 441
    Par défaut
    Bonjour,

    Citation Envoyé par hpascal Voir le message
    ... dans ce cas il faudrait qu'ils l'indiquent clairement dans la page d'aide
    C'est malheureusement une des justifications importantes dans le choix de ne pas travailler avec HF / HFSQL.
    La documentation est lacunaire et les mécanismes sous-jacents relèvent de la boîte noire.
    Lorsqu'on rencontre un problème, on n'est jamais certain de l'aborder par le bon bout et personne, hors PCsoft, ne peut y répondre.
    Lequel PCsoft n'est pas toujours très empressé.

    Avec les autres SGBD, l'info est beaucoup plus transparente et disponible.
    Et la communauté est beaucoup plus informée.

    Hemgé

  19. #19
    Membre actif
    Inscrit en
    Octobre 2013
    Messages
    274
    Détails du profil
    Informations forums :
    Inscription : Octobre 2013
    Messages : 274
    Points : 248
    Points
    248
    Par défaut
    Citation Envoyé par dsr57 Voir le message
    Bonjour à tous

    Je reviens vers vous pour vous informer de la réponse de PC-Soft suit à mes requêtes (et oui il en fallu 2 ...).

    Première requête :

    Je voulais savoir si il est normal que la fonction HsupprimeTout ne prenne pas en compte les erreurs d'intégrités.

    Protocole de reproduction :
    • Créer 2 fichiers HF
    • Creer une liaison avec les cardinalités 0,n ----- 1,1
    • Sélectionner la règle de suppression : Supprimer le "fichier1" et tous ses "Fichier2"
    • Saisir quelques valeurs
    • Appeler la fonction HSupprimeTout sur le fichier 1
    • Les enregistremets du fichiers 2 sont encore présent


    Réponse de PC -Soft :



    Deuxième requête :

    J'ai créé un projet, et transmis au support, ci-dessous la réponse de Pc-Soft :




    Bon dev à tous
    ils sont forts!
    hsupprimetout = hcreation

    c pourtant pas compliqué!

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

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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