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

XML/XSL et SOAP Discussion :

[XFORMS] Fonctions


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 33
    Par défaut [XFORMS] Fonctions
    Bonjour,

    J'essaie de comprendre comment fonctionne Xforms. J'arrive à faire des formulaires basiques qui enregistrent le résultat dans un fichier xml (qui sert un peu de base de données), mais j'ai besoin de fonctionnalités plus "avancées".
    Je souhaiterais savoir comment implémenter des fonctions un peu comme le ferait Javascript.

    Dans mon cas le formulaire consiste à sélectionner plusieurs notes pour différents critères.
    J'aimerais pouvoir:
    - calculer la moyenne avec des coefficients pour chaque critère
    - afficher cette note
    - l'enregistrer en même temps que le reste du formulaire dans le fichier xml lors de la soumission

    Xforms étant relativement récent, je n'ai pas trouvé de pages donnant des exemples pour une telle utilisation. Est-ce que vous en connaîtriez, ou pourriez me dire comment je dois faire?
    Outre mon problème spécifique, je souhaite en fait savoir comment utiliser des fonctions et des variables avec Xforms.

    Merci de votre aide!

  2. #2
    Membre Expert Avatar de alain.couthures
    Profil pro
    Gérant
    Inscrit en
    Avril 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Avril 2007
    Messages : 902
    Par défaut
    XForms permet de demander à ce que des calculs soient réalisés sur des éléments d'instance. Ca peut s'appliquer à une moyenne avec coefficients mais il faut mettre d'abord chaque note avec le coefficient appliqué avant que d'en faire la somme.

    Voici un lien sur une question similaire, il y a un mois :http://www.developpez.net/forums/sho...d.php?t=320107

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 33
    Par défaut
    Merci pour le lien, j'ai regardé l'autre post, et ça m'a beaucoup aidé. Mais je n'ai pas totalement résolu mon problème !
    En fait si j'ai bien compris il faut imposer une contrainte sur une valeur, cette contrainte étant en fait un calcul à partir d'autres valeurs. C'est bien ce que je cherche.

    J'explique un peu plus précisément mon problème:
    * J'ai un fichier XML contenant des informations sur plusieurs partenaires de la forme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <Partenariats>
    	<PartenariatSelectionné/>
    	<Partenaire>
    		<Apports>
            		<Argent>1</Argent>
            		<ArgentCoefficient>1</ArgentCoefficient>
        		</Apports>
    	</Partenaire>
    </Partenariats>
    * Mon formulaire me permet de sélectionner un partenaire et d'éditer chaque point (Argent ici) pour lui donner une valeur différente
    * Mon objectif est de calculer la note de ce partenariat avec les coefficients

    Le problème est que cela fonctionne pour un partenariat, mais quand je change de partenaire, les valeurs ne s'actualisent pas.
    Il me semble que le lien (bind) que je définis dans mon header se lie avec un partenaire spécifique, mais ne se met pas à jour lorsque je change de partenariat.

    Est-ce que vous avez une idée de comment je peux mettre à jour l'affichage, car il enregistre en même temps les valeurs du mauvais partenaire?

    Voici ce que j'ai dans mon head (en simplifié):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xf:bind id="NotePartenaire" nodeset="//Partenariat/Apports/Note" calculate="../Argent * ../ArgentCoefficient/">
    Et dans mon body:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <xf:select1 ref="/Partenariats/PartenariatSélectionné">
    	<xf:label>Sélectionner un partenariat : </xf:label>
    	<xf:itemset nodeset="/Partenariats/Partenariat">
    		<xf:label ref="Général/Nom"/>
    		<xf:value ref="Général/Nom"/>
    	</xf:itemset>
    </xf:select1>
    <xf:group ref="/Partenariats/Partenariat[Général/Nom = /Partenariats/PartenariatSélectionné]">
    	<xf:output bind="NotePartenaire">
    		<xf:label>Note Partenaire: </xf:label>
    	</xf:output>
    </xf:group>
    Je pense que j'ai besoin de mettre à jour mon bind dans le head, mais je ne vois pas comment faire...

    Merci de votre aide!

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Fonction API
    Par margilb dans le forum C++Builder
    Réponses: 2
    Dernier message: 08/07/2002, 11h11
  3. Implémentation des fonctions mathématiques
    Par mat.M dans le forum Mathématiques
    Réponses: 9
    Dernier message: 17/06/2002, 16h19
  4. fonction printf
    Par ydeleage dans le forum C
    Réponses: 7
    Dernier message: 30/05/2002, 11h24
  5. FOnction api specifiant la position de la souris
    Par florent dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/05/2002, 20h07

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