09/Set/2010 
  Discussioni AttiveDiscussioni Attive  Mostra la lista degli UtentiLista Utenti  Cerca nel ForumCerca  HelpHelp
La tua ultima visita risale al 09/Set/2010 16:49.   RegistrazioneRegistrazione  LoginLogin

ASP-ASP.NET
 Forum IALweb : ASP-ASP.NET
Oggetto Discussione: LINQ to XML e campi calcolati Invia RispostaInserisci Nuova Discussione
Autore
Messaggio << Discussione Prec | Discussione Succ >>
sacher
Senior Member
Senior Member
Avatar

Registrato: 22/Set/2004
Stato Connessione: Sconnesso
Messaggi: 209
Postato: 17/Nov/2009 09:59 | IP Salvato Riporta sacher

Ho il seguente codice che raggruppa gli elementi in base a Cod_L1 (in questo caso regione) e somma i valori di Anno1 e Anno2. Non sono in grado però di ottenere 2 campi calcolati, ossia:
- differenza tra le somme di  Anno1 e Anno2
- percentuale della somma di Anno2 sulla somma di Anno1

Qualcuno mi sa aiutare?

Codice:

        Dim xml As XDocument = _
        <?xml version="1.0"?>
        <NewDataSet>
             <Table>
                 <Cod_L1>1</Cod_L1>
                 <Nome_L1>Friuli Venezia Giulia</Nome_L1>
                 <Cod_L2>7</Cod_L2>
                 <Nome_L2>Gorizia</Nome_L2>
                 <Cod_L3>54</Cod_L3>
                 <Nome_L3>Agente 1</Nome_L3>
                 <Anno1>7</Anno1>
                 <Anno2>5</Anno2>
             </Table>
             <Table>
                 <Cod_L1>1</Cod_L1>
                 <Nome_L1>Friuli Venezia Giulia</Nome_L1>
                 <Cod_L2>6</Cod_L2>
                 <Nome_L2>Udine</Nome_L2>
                 <Cod_L3>54</Cod_L3>
                 <Nome_L3>Agente 1</Nome_L3>
                 <Anno1>9</Anno1>
                 <Anno2>9</Anno2>
             </Table>
             <Table>
                 <Cod_L1>1</Cod_L1>
                 <Nome_L1>Friuli Venezia Giulia</Nome_L1>
                 <Cod_L2>6</Cod_L2>
                 <Nome_L2>Udine</Nome_L2>
                 <Cod_L3>43</Cod_L3>
                 <Nome_L3>Agente 2</Nome_L3>
                 <Anno1>8</Anno1>
                 <Anno2>10</Anno2>
             </Table>
             <Table>
                 <Cod_L1>1</Cod_L1>
                 <Nome_L1>Friuli Venezia Giulia</Nome_L1>
                 <Cod_L2>5</Cod_L2>
                 <Nome_L2>Pordenone</Nome_L2>
                 <Cod_L3>43</Cod_L3>
                 <Nome_L3>Agente 2</Nome_L3>
                 <Anno1>7</Anno1>
                 <Anno2>6</Anno2>
             </Table>
        </NewDataSet>

         Dim Livello1 = From c In xml.Descendants("Table") _
                          Group c By c.Element("Cod_L1").Value Into g = Group, _
                          TotAnno1 = Sum(CType(c.Elements("Anno1").Value, Decimal)), _
                          TotAnno2 = Sum(CType(c.Elements("Anno2").Value, Decimal)) _
                          Order By g.Elements("Nome_L1").Value Descending _
                          Select New With { _
                          .Cod = g.Elements("Cod_L1").Value, _
                          .Desc = g.Elements("Nome_L1").Value, _
                          .TotAnno1 = TotAnno1, _
                          .TotAnno2 = TotAnno2}



__________________
Errare è umano, ma per incasinare davvero tutto ci vuole un computer. (Legge di Murphy - Quinta legge dell'inattendibilità)
Top ^ Letto sacher's Profilo Cerca per altri Messaggi per sacher
 

Se vuoi postare una risposta prima devi login
Se non sei ancora registrato prima devi registrarti

  Invia RispostaInserisci Nuova Discussione
Versione Stampabile Versione Stampabile

Cambia Forum
Non Puoi postare nuove Discussioni nel Forum
Non Puoi rispondere alle Discussioni del Forum
Non Puoi cancellare i tuoi Messaggi nel Forum
Non Puoi modificare i tuoi Messaggi nel Forum
Non Puoi creare sondaggi nel Forum
Non Puoi votare sondaggi nel Forum



Pagina generata in 0,1094 secondi.
IALweb.it - Testata registrata presso il Tribunale di Pordenone in data 3/10/2003 con iscrizione n. 498
Copyright  |  Legal Terms  |  Credits