Somma totale campo con esclusione

Somma totale campo con esclusione

0
0

Ciao a tutti, magari sarà un problema banale ma non riesco a risolverlo, mi spiego.
2 tabelle relazionate dal campo id
Tabella A anagrafica (id cognome nome etc)
Tabella B (id, maglietta, pantaloncini, calzettoni, scarpe etc..)
Vengono consegnato “x” magliette a tutti con un campo “riassunto->totale di” ottengo il quantitativo totale delle magliette consegnate, il problema nasce al momento che un atleta lascia la squadra (non cancello le schede dell’atleta per futura memoria ed anche nel caso ritorni in squadra) e purtroppo dalla sua scheda personale, dove sono inserite “x” magliette vengono ancora conteggiate nel totale delle magliette consegnate. A me invece serve il totale delle magliette degli atleti attualmente in squadra, esclusi quelli che hanno lasciato la rosa: come faccio a far si che dal totale mi vengano defalcate le magliette degli atleti non presenti anche se risultano in anagrafica?
Spero di essere riuscito a spiegarmi e come di consueto ringrazio tanto chi vorrà aiutarmi

Segnalato come spam
Pubblicata da (Domande: 51, Risposte: 161)
Domanda inviata 8 Ottobre 2015 13:49
121 vis.
0
Domanda privata

In realtà mi sembra che la soluzione di Giuseppe sia altrettanto semplice. Da non esperto quale sono l’ho capita in questo modo: crei un campo calcolato, che ipotizziamo di chiamare ’magliette_della_rosa’, (con risultato numerico) che, in un certo senso, è un doppione di quello ’magliette’ che già hai. Il calcolo parte da una condizione If che può anche essere quella che hai riportato nel tuo secondo post dell’8/10 (anche se la doppia negazione rende il tutto poco comprensibile, secondo me) riscritta in questo modo If (not EVuoto (non_in_rosa); 0; magliette). Sempre che io abbia capito bene (e che non mi sia incartato con la doppia negazione), e cioè che il campo ’non_in_rosa’ contenga un qualsiasi valore solo nel caso in cui l’atleta NON faccia più parte della rosa, il campo calcolato ’magliette_della_rosa’ riporterà il numero delle magliette dell’atleta solo nel caso in cui sia ancora parte della rosa altrimenti riporterà 0. Il campo riassunto_totale a questo punto non è altro che la somma dei valori del campo ’magliette_della_rosa’ ed il risultato sarà il numero delle magliette dei giocatori facenti parte della rosa poiché per gli altri il valore da sommare è 0. Se non ti funziona è perché mi sono perso nelle negazioni e quindi devi solo invertire i risultati della funzione If.

Segnalata come spam
Pubblicata da (Domande: 17, Risposte: 24)
Risposta inviata 13 Ottobre 2015 12:30
0
Domanda privata

Semplice ed efficace, effettivamente la soluzione di Renato (grazie ;) ) mi sembra più pratica, magari non è quella più tecnica, però si addice di più alle mie ”capacità di sviluppo”

Certo mi piacerebbe capire meglio anche la soluzione di Giuseppe, però anche provandoci in mille modi non sono riuscito ad applicarla

 

Segnalata come spam
Pubblicata da (Domande: 51, Risposte: 161)
Risposta inviata 12 Ottobre 2015 17:28
0
Domanda privata

Mi sembra una soluzione un po’ complicata. Quella suggerita da G.Pupita mi sembra più semplice dove ’una certa condizione’ corrisponde a verificare se ogni singolo atleta fa parte o meno della rosa. Mi par di capire che il campo da usare per la verifica ce l’hai già (’non_in_rosa’) e quindi rimane da creare il campo calcolato di appoggio in cui se l’atleta fa parte della rosa viene riportato il numero di magliette che ha avuto mentre se non ne fa parte viene riportato 0(zero). La somma fatta su questo campo calcolato riporta quindi il totale delle magliette in uso agli atleti in rosa dato che per gli altri il campo è a zero. In circostanze analoghe ho usato un sistema diverso. Il campo ’non_in_rosa’ del tuo esempio lo uso a mo’ di interruttore mettendo ’SI’ per gli atleti in rosa e ’NO’ per quelli che non lo sono. All’apertura del file faccio partire uno script che mi filtra le schede in base a ’non_in_rosa’ = ’SI. (in questo caso il nome del campo confonde un po’ idee; meglio sarebbe chiamarlo ’in_rosa’) In questo modo il campo riassunto mi mostra il totale delle maglie in uso ai soli atleti facenti parte della rosa in quanto gli altri sono ’nascosti’. Se voglio vedere il totale delle maglie che ho complessivamente in giro basta fare un ’trova tutti’ oppure posso vedere il totale delle maglie date a chi non fa più parte della rosa facendo una ricerca su ’non_in_rosa’ = ’NO’. Il tutto senza dover creare nuovi campi.

Segnalata come spam
Pubblicata da (Domande: 17, Risposte: 24)
Risposta inviata 12 Ottobre 2015 16:28
0
Domanda privata

asp forse ci sono arrivato, per favore correggetemi se sbaglio

creo un campo riassunto facendo conteggiare le magliette di tutti, poi creo un campo calcolato inserendo If ( not EVuoto ( non_in_rosa ); Somma ( magliette ) ; ”” ) e poi creo un altro campo che sia il risultato del campo riassunto meno il campo calcolato?

Sono stato bravo? ditemi che è giusto :D

Segnalata come spam
Pubblicata da (Domande: 51, Risposte: 161)
Risposta inviata 8 Ottobre 2015 18:54
0
Domanda privata

ma in realtà io parto dal presupposto che non so quante magliette ho consegnato a quella persona, quindi come faccio a specificarlo con il campo calcolato che mi hai suggerito? Scusa la mia ignoranza di solito per conteggiare qualcosa ho sempre usato questa ”formula” If ( not evuoto (campo)  ; 1 ; ”” ) ma qui non posso usarlo perchè io devo conoscere il numero totale delle magliette e non a quante persone l’ho data (almeno credo di fare il giusto ragionemento, felice di essere smentito)

Segnalata come spam
Pubblicata da (Domande: 51, Risposte: 161)
Risposta inviata 8 Ottobre 2015 18:40
0
Domanda privata

In genere si usa un calcolato del tipo
If (una certa condizione ; quantità di magliette ; 0)

poi la somma la fai su questo calcolato

Segnalata come spam
Pubblicata da unknown (Domande: 0, Risposte: 0)
Risposta inviata 8 Ottobre 2015 18:34