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 :

edition de resultats - Regroupement de coureurs par addition de temps


Sujet :

XML/XSL et SOAP

  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur aménagement montagne
    Inscrit en
    Septembre 2019
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur aménagement montagne
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Septembre 2019
    Messages : 17
    Par défaut edition de resultats - Regroupement de coureurs par addition de temps
    Bonjour,

    Je n'y connais pas grand chose en xml mais j'aimerais faire tourner un programme.
    Il s'agit de chronométrage de coureurs par équipe lors de courses de ski.

    Actuellement, il n'est possible d'éditer que les résultats par équipe des 3 meilleurs chronos (homme et femme confondu) ou les résultats par équipe des n chrono homme + n chrono femme.

    Or, pour une course en particulier, je souhaiterai pouvoir calculer les résultats par équipe des 3 meilleurs chrono avec au moins 1 femme dans l'équipe !

    J'ai commencer un bout de code, mais celui-ci ne semble pas fonctionner...

    Pourriez-vous m'éclairer ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
     
    <?xml version="1.0" encoding="UTF-8"?>
    <!-- Editions Entité "ESF PLAGNE BELLECOTE" !-->
    <edition>
      <menu>
        <menu title="Résultats" image="./res/32x32_ranking.png">
    	<menu title="Résultats Equipe avec Fille" image="./res/16x16_official.png" id="Top3EquipeAvecFille" choix_manche="1" equipe=""/>
      </menu>
      </menu>
     
        <!-- Résultats regroupement 3 meilleurs temps par Equipe avec au moins une fille, ... -->
     
      <report id="Top3EquipeAvecFille" title="Classement Equipe - Top 3 avec au moins une fille" header="1" first_header="0">
     
    <lua>
     
    teams = {}
     
    <!-- Construire les équipes -->
    for i=0,body:GetNbRows()-1 do
     
        local eq = body:GetCell('Equipe',i)
        local sexe = body:GetCell('Sexe',i)
    	local temps = body:GetCellTime('Tps',i)
     
        if eq ~= nil and eq ~= '' and temps &gt; 0 then
     
            if teams[eq] == nil then
                teams[eq] = {}
            end
     
            table.insert(teams[eq],{
                temps = temps,
                sexe = sexe
            })
     
        end
    end
     
    result = {}
     
    <!-- Calcul du score équipe -->
    for eq,data in pairs(teams) do
     
        table.sort(data,function(a,b) return a.temps &lt; b.temps end)
     
        if #data >= 3 then
     
            local total = 0
            local fille = false
     
            for k=1,3 do
     
                total = total + data[k].temps
     
                if data[k].sexe == 'F' then
                    fille = true
                end
     
            end
     
            if fille == true then
     
                table.insert(result,{
                    equipe = eq,
                    total = total
                })
     
            end
     
        end
     
    end
     
    <!-- Trier les équipes -->
    table.sort(result,function(a,b) return a.total &lt; b.total end)
     
    <!-- Effacer résultats individuels -->
    body:Clear()
     
    <!-- Générer tableau final -->
    for i,v in ipairs(result) do
     
        body:AddRow()
     
        local r = body:GetNbRows()-1
     
        body:SetCell('Clt',r,i)
        body:SetCell('Equipe',r,v.equipe)
        body:SetCellInt('Total',r,v.total)
     
    end
    </lua>
     
    <order key="Clt Asc"/>
     
    <paper orientation="portrait"/>
     
    <body>
     
    <call option="couleur_alternee" file="./edition/options.xml"/>
     
    <font size="9"/>
    <padding all="0px"/>
    <spacing all="4"/>
     
    <row value="auto"/>
     
    <text col="6" align="center" label="Clt" font_weight="bold">$(Clt)</text>
     
    <text col="40" align="left" label="Equipe" font_weight="bold">
    $(Equipe)
    </text>
     
    <text col="15" align="right" label="Total Temps" font_weight="bold">
    $(Total)
    </text>
     
    <line col_start="1" col_end="0" pen_size="4" border="bottom"/>
     
        </body>
      </report>
    </edition>

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 587
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 587
    Par défaut
    Hello,

    c'est-à-dire qu'on ne va pas deviner ce que tu utilises. L'exemple que tu nous montres ne correspond pas à une technologie connue.

    Difficile de dire si c'est plutôt une question XML, plutôt une question Lua, ou plutôt une question spécifique au machin que tu as et qui hybride les deux.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 12
    Dernier message: 16/08/2012, 12h33
  2. Regrouper les données par rapport à la date
    Par goldeagle dans le forum Access
    Réponses: 7
    Dernier message: 11/12/2006, 15h35
  3. Réponses: 7
    Dernier message: 24/05/2006, 11h52
  4. Regrouper des champs par mois
    Par nou366 dans le forum Bases de données
    Réponses: 4
    Dernier message: 17/05/2006, 14h23
  5. [Mail] Envoyer résultat d'un questionnaire par mail
    Par Jiraiya42 dans le forum Langage
    Réponses: 15
    Dernier message: 22/04/2006, 18h58

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