Newsgroup: it.comp.appl.access
Titolo: Somma in sottomaschere

Salve a tutti
Devo fare un DB per la fatturazione di una societa' usando AccessXP
(so che qualcuno storce il naso ma questo ho).
Questa soc. ha dei consulenti che vanno in giro per l'italia e che
sostengono delle spese (viaggio, albergo ecc.)
Per ogni consulenza possono essere impiegati piu' consulenti in giorni
diversi.
Per ora fanno le fatture a mano (sbagliando spesso) utilizzano word e
le fatture hanno questo aspetto:
spett.....
fattura numero data
onorario            1000 E
  consul. 1
    viaggio    50 E
    ristor     20 E
      tot.         70 E
 
  consul. 2
    viaggio    50 E
    ristor     20 E
    taxi       10 E
      tot.         80 E
  tot. spese         150 E
 
totale imponibile   1150 E
iva e totale finale
ho creato tre tabelle:
la prima contenente le singole spese (tipo spesa, importo e un codice
che la collega alla seconda)
la seconda per il collegamento delle spese al consulente
la terza e' la fattura vera e propria.
Ora il problema:
Ho creato le maschere fattura che contiene la sottomaschera consulenti
la quale contiene la sottomaschera spese.
Nella sottomaschera consulenti ho inserito (nel pie' di pagna) un
controllo calcolato chiandolo 'tot_spese' contenente la formula
'=Somma([Imp_spesa])' con l'importo delle spese e funziona.
Nella maschera fattura devo mettere il totale delle spese ma il
risultato e' sempre '#Errore' ho provato con '=Somma([Imp_spesa])'
niente, con '=Somma([sm_spese-fattura]!tot_spese)' nisba,
'=Somma([sm_spese-fattura]!Imp_spese)' sempre errore mi da ho anche
tentato con '=Somma(Somma[Imp_spesa]' con il solito risultato.
E' una limitazione nel numero di sottomaschere o sono ceco io che non
vedo la soluzione?
Se la soluzione c'e' datemi degli indizi su dove trovarla altrimenti
con la pappa pronta non imparero' mai.
Grazie a tutti e scusate la lunghezza
--
Ciao
Andrea Malfatti

 ha scritto nel messaggio
news:el3b00lq1lg6dilim...@4ax.com...

Ciao Andrea
Nel controllo della maschera fattura devi fare riferimento al controllo
sottomaschera:
=[Nomesottomaschera].Form!NomecontrolloTotaleFattura
Ciao Daniele

 ha scritto nel messaggio
news:el3b00lq1lg6dilim...@4ax.com...

La funzione Somma è una funzione di aggregazione e come tale non ti permette
di sommare i valori contenuti in caselle di testo ma ti permette solo di
sommare i valori contenuti in un campo dei record contenuti nell'origine
record della maschera che contiene la casella di testo relativa alla
funzione Somma.
Ora è evidente che Imp_Spesa è il nome di un campo che NON appartiene certo
all'oggetto che è origine record della maschera principale, ma della
sottomaschera: qundi non puoi usarlo in una funzione Somma contenuta nella
maschera principale; di contro con la funzione Somma non puoi riferimento a
nomi di caselle di testo non associate.
Per risolvere il tuo problema devi usare la funzione di aggregazione sui
dominii DSum (vedi help) con la quale effettuerai la somma di tutti gli
Imp_spesa della tabella spese relativi ai record della fattura corrente (per
selezionare i record da sommare devi impostare adeguatamente i criteri della
funzione DSum, per la qual cosa vedi cosa ti dice l'help).
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 wrote:
Grazie sia a Roberto che a cidi (anche se la tua soluzione non sono
riuscito a farla funzionare).
Ho studiato un poco la Dsum e alla fine ci sono riuscito.
--
Ciao
Andrea Malfatti