Somma del campo totale di uno stesso articolo

venerdì 10 ottobre 2008 - 18.33

nanopeppe Profilo | Newbie

Innanzi tutto un saluto a tutti poichè sono nuovo di queste parti.
Vorrei esporre subito il mio problema...dunque...io ho un report fatto con crystal report 10 che altro non è che la fattura da dare al cliente con la lista degli articoli acquistati dallo stesso. Il report funziona perfettamente, ma c'è una cosa che vorrei cambiare: capita spesso che all'interno del report ci sia, faccio un esempio, l'articolo PIPPO sulla prima riga di pz.10, poi c'è l'articolo TOPOLINO pz.20 e poi di nuovo la riga PIPPO pz.12. Come posso fare per accorpare gli articoli PIPPO? In poche parole vorrei che la voce sia sempre una sola e che sommasse i pz (nel nostro esempio 32).

freeteo Profilo | Guru

ciao,
questo tipo di operazioni è sotto la definizione di "raggruppamento".
I raggruppamenti del report (li puoi aggiungere dal menu insert->group) scegliendo il campo da usare come gruppo (nel tuo caso il campo che ha i valori uguali "PIPPO" tra le varie righe) supponiamo il campo "codice".

Raggruppando la sezione dettagli per quel campo "codice", ti basta solo spostare i campi che hai adesso, dalla sezione dettagli alla sezione "group header" (o footer) in modo che le varie righe siano sempre singole (uguali a quello che vedi adesso).
Aggiunto il gruppo, puoi mettere un campo sommatoria, che nel caso di singola riga è ovviamente pari alla singola riga, ma nel caso in cui tu abbia diversi "PIPPO" avrai direttamente la somma, sempre come singola riga.

A questo punto sopprimi la sezione "dettagli" che come avrai capito, è stata rimpiazzata dallìheader/footer(dipendo prima dove hai spostato i campi dei dettagli)

ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

nanopeppe Profilo | Newbie

Ciao freeteo, intanto ti ringrazio per la risposta.
Dunque io sono andato su esperto gruppo ed ho creato il gruppo inserendo precodice (abbrevaizione di tre caratteri del fornitore del prodotto) e il codice dell'articolo. Crystal mi crea due Header di gruppo e anche se provo a mettere la sommatoria, mi da il totale dei pezzi dell'intero documento su tutte le righe.

freeteo Profilo | Guru

>Ciao freeteo, intanto ti ringrazio per la risposta.
di niente figurati, siamo qui per questo.


>Crystal mi crea due
>Header di gruppo e anche se provo a mettere la sommatoria, mi
>da il totale dei pezzi dell'intero documento su tutte le righe.
mmm...devi aver sbagliato qualcosa quando hai inserito il campo sommatoria, puoi farmi avere il report? (specificando anche per quale campo vuoi il raggruppamento)
Allegalo qui, oppure se preferisci mandamelo via email.

Grazie.

ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

nanopeppe Profilo | Newbie

Ok...ti ho inviato il mio report. Il tipo di raggruppamento che mi occorre è precodice->codice articolo perchè potrebbe capitare che ci siano due articoli con lo stesso codice ma col precodice diverso e rischierei di sommare due articoli completamente diversi.

freeteo Profilo | Guru

ciao,
quello che io farei te l'ho allegato.

Come vedi aggiungo i 2 gruppi che mi dicevi, precodice->codice e poi sposto tutti i dati di dettaglio sulla sezione groupheader del secondo dei 2.
Poi ho visto che il campo "netto" che avevi messo giù era stringa, e per fare la somma deve essere un numero, perciò ho aggiunto una formula, dove faccio il "toNumber({campostringa})" così facendo posso fare tastoDX->insert->summary e trovare l'operazione di "Sum".

Non riesco a testarlo perchè mi manca il driver per i dbf, cmq questa è la strada...

ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

nanopeppe Profilo | Newbie

Perfetto, ho capito e ti ringrazio. L'unica cosa che non capisco è per quale gruppo devo fare la somma, pre il primo (precodice) o per il secondo (codice)?

freeteo Profilo | Guru

>è per quale gruppo devo fare la somma, pre il primo (precodice)
>o per il secondo (codice)?
mah io direi per il secondo, dato che è quello che discrimina effettivamente gli eventuali record uguali da sommare...

ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

nanopeppe Profilo | Newbie

Si Freeteo, avevo già provato e in effetti bisogna prendere in considerazione proprio quello. Mentre ho dovuto aggiungere un controllo per la conversione in tipo numerico del campo stringa. Il controllo serve a verificare che il campo stringa non sia vuoto poichè se si facesse la conversione darebbe errore. Ora funziona bene tranne qualche problemino che sto risolvendo da solo. Sono anni che faccio il programmatore e come un pollo solo oggi sto cominciando ad usare il Crystal...è fantastico proprio...troppo fico...

freeteo Profilo | Guru

>solo. Sono anni che faccio il programmatore e come un pollo solo
>oggi sto cominciando ad usare il Crystal...
beh, l'importante è crescere, sempre, non è detto che le cose devono essere scoperte/capite/apprezzate da subito


>è fantastico proprio...troppo fico...
Crystal è molto complesso ma allo stesso tempo complesso, nel 95% dei casi risolve infatti tutte le esigenze di una parte di stampa che chiede l'utente...direi un tool veramente utile per chi fa programmi.
Pecca di pesantezza, quello si...ma cosa vuoi tutto non si può avere.


ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5