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 :

Transaction HF et requête SQL


Sujet :

WinDev

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    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 Transaction HF et requête SQL
    Hello, bonjour à tous!

    Une question vraiment bête, mais je me la pose depuis un certain temps alors

    Lorsqu'une transaction a échoué sur un fichier, est ce que cela peut empêcher une requête HF ou SQL sur le fichier concerné?

    Dans un second temps Y aurait t-il un moyen d'annuler automatiquement toutes les transactions échouées à chaque démarrage de l'appli.

    Un client a juré de pourrir la vie : après un an de bagarre il a finalement décidé d'acheter un onduleur, mais malgré la coupure d'électricité il travaille jusqu'à vider l'onduleur

    Merci d'avance

  2. #2
    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
    hum bonsoir à tous!

    C'est quand meme terrible de devoir lancer le Centre de controle HF pour libérer un enregistrement en transaction

    N'y a t-il pas une exception pour la transaction?
    Quand je fais un houvre(MonFichier) je n'ai pas d'erreur,
    Mais lorsque je fait un POUR TOUT MonFichier, j'ai l'erreur de transaction sur un numéro d'enregistrement.

    Y a t-il une possibilité d'intercepter cette erreur avant le déclenchement?

    Merci d'avance

  3. #3
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2004
    Messages
    2 339
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Calvados (Basse Normandie)

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

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 339
    Points : 3 854
    Points
    3 854
    Par défaut
    Bonjour,

    Est-ce que HTransactionAnnule(..) ne ferait pas l'affaire ?

  4. #4
    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,

    si c'est une appli monoposte :
    HTransactionListe et HAnnuleTransaction sur le résultat. Si c'est en multiutilisateurs, c'est plus compliqué car il faut identifier les transactions qui ne sont plus actives .... Normalement le flag à 1 devrait suffire mais on peut avoir des surprises.

    à bientôt,

    nicolas

  5. #5
    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
    Merci les amis!
    Je vais regarder du coté de HtransactionListe() et je suis en multi utilisateurs!

    J'avais déjà essayé en vain Htransactiondebut() et htaransactionannule() à l'init du projet mais sans succès!

  6. #6
    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
    Salut!
    Je ne m'en sors pas du tout avec ces fichus transactions...
    Si seulement on pouvait intercepter l'erreur de transaction
    En effet au démarrage de l'appli je fait systématiquement sur tous les fichiers un QUAND EXCEPTION DANS Houvre(MonFichier)
    et je n'ai aucune erreur de transaction alors que le fichier est bien en transaction!

    Dans l'init du projet j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gsJournalTransaction est une Chaine = CompleteRep(Frepexe)+"Transaction.trs"
    HtransactionDebut(gsJournalTransaction) est donc utilisé partout dans le projet en cas de mise en place d'une transaction.

    Du coup je pense (à tort?) que les fichiers en transactions concernant chaque poste client se trouve sur le poste lui-meme.

    Bref pour résumer, Houvre(MonFichierEnTransaction) ne déclenche pas d'erreur de transaction, mais en parcourant ou en effectuant un HLitRecherche() l'erreur est déclenchée!

    Vais-je etre obligé de parcourir chacun de mes fichiers du projet pour déclencher cette satanée erreur de transactions?

    Merci encore une fois pour le temps que vous prenez

Discussions similaires

  1. [AC-2003] Requête sql avec méthode DoCmd.Runsql bloqué dans une transaction
    Par rana dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 09/03/2010, 13h20
  2. Transaction sur Requêtes Entities et Requêtes SQL pures
    Par Arnard dans le forum Accès aux données
    Réponses: 1
    Dernier message: 20/04/2009, 13h38
  3. [Requête] SQL SERVER 2000 / Transact SQL
    Par plutonium719 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/09/2007, 17h56
  4. Réponses: 1
    Dernier message: 08/08/2007, 11h26
  5. Utilisation d'une fonction Transact-SQL ds une requête SQL
    Par Fl0ppeur dans le forum Langage SQL
    Réponses: 1
    Dernier message: 21/02/2006, 13h42

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