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

XMLRAD Discussion :

DoBeforeXMLinstruction, Context , et InputDoc


Sujet :

XMLRAD

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2003
    Messages
    214
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 214
    Par défaut DoBeforeXMLinstruction, Context , et InputDoc
    Je viens de retomber sur un truc qui ne me parait pas logique dans le framework. Si quelqu'un peut m'éclairer ....

    Dans le gestionnaire d'évènement BeforeInternalInstruction d'un xmlservice du type UPDATE de lignes, je voudrais modifier à la volée une valeur qui sera updatée par mon xmlgram.

    je fais donc un Context.Values['TTC'] := 'MaNouvelleValeur;
    et là, mon update prend la valeur qui était précédemment dans mon contexte.

    J'ai donc cherché (et trouvé) le pb : la fonction FillParams (qui remplace les paramètres d'une requete) cherche dans le inputdoc la valeur, et seulement si elle est vide, va chercher dans le contexte. Bien évidemment, le InputDoc est déjà remplit à ce moment là.

    pour moi, la solution 'de base' serait de modifier la fonction FillParams, mais je me dis que si les GD (Gentils Développeurs) de Delos ont codé ça, c'est certainement qu'il doit y avoir une excellente raison ; mais pour l'instant, je n'arrive pas à voir un avantage àfaire cela, puisque le contexte se met à jour avec FillContext ????

    j'espère avoir été assez clair ... merci d'avance

  2. #2
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    comme pour les DBExtract, les vlaeurs sont mises dan sle Context que pour la lecture et non pour la modification.
    si tuveux réellement modifier la valeur à la volée, modifie le InputDoc dans le cas du XMLC_Pivot.

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2003
    Messages
    214
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 214
    Par défaut
    Ok pour le fait de modifier l'input, mais ma question était plutot le pourquoi utiliser l'input et non pas le context, qui était pour moi LA référence.

    Y a t il des avantages que je n'aurais pas vu, ou bien tout simplement que cela a été fait comme cela à l'origine c'est tout.

  4. #4
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    pour la mise à jour multiple ca utilise l'InputDoc avec le pivot car il y ade multiples valeurs pour de mêmes noms de champs
    Du coup tu peux pas stocker dans le Context plusieurs enregistrements. d'ou l'inputDoc en XML.

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

Discussions similaires

  1. [système] Comment ajouter un item dans le context menu de Windows ?
    Par ddmicrolog dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 29/06/2005, 17h03
  2. [] plusieurs instances de form avec leur contexte ?
    Par Seb-31 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 11/04/2003, 13h56
  3. Context menu Windows - icone pour un item
    Par Cameleon45 dans le forum Composants VCL
    Réponses: 7
    Dernier message: 07/03/2003, 13h48
  4. Context Menu - ( Code de P. Castelain )
    Par Cameleon45 dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 06/03/2003, 22h33
  5. Context sous Tomcat
    Par EL MANSOURI dans le forum JBuilder
    Réponses: 5
    Dernier message: 28/01/2003, 11h26

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