Newsgroup: it.comp.appl.access
Titolo: campo somma in maschera modalità folgio dati

Ciao a tutti
ci riprovo dopo aver postato
qualche tempo fa senza
aver ricevuto risposta
(probabilmente il post era lungo
o il titolo non significativo):
in una maschera (fattura)
voglio far vedere la somma
dei relativi ordini che rendo
anche visibili in una sottomaschera.
calcolo il totale in questo modo
nella sottomaschera
totale1 =Somma([importo ordini]
e prendo il valore così nella maschera
principale
totale2 = sms_ordini.Form!totale
il problema è che con la maschera principale
in modalità foglio dati il campo totale2
restituisce sempre lo stesso valore (quello della
prima fattura) e si aggiorna solo
se apro il foglio dati secondario
grazie se vorrete considerare la cosa

 ha scritto nel messaggio 
news:R8kDh.218$Mh1...@nntpserver.swip.net...

Innanzitutto vorrei suggerirti di impostare la lunghezza della riga ad un 
valore maggiore di quello che hai, perchè mi sembra che vada a capo troppo 
prima del margine destro della pagina, forse anche se hai uno schermo a 640 
x 480.
Se usi Outlook Express come me, trovi questa opzione fra: Menu strumenti - 
Opzioni - Cartella Invio - Formato invio posta - Imposta testo normale. Il 
valore che ho io è 76.
Per la domanda in particolare... potresti provare ad inviare una requery 
della sottomaschera.
Ciao
Antonio

 ha scritto nel messaggio 
news:45dde160$0$20807$5fc...@news.tiscali.it...

Grazie ad Antonio per i preziosissimi consigli (sia su outlook che access)
mi è rimasta na sola domanda: "c'è qualcun altro che può aiutarmi?"
grazie ancora comunque

 ha scritto nel messaggio 
news:CDoDh.289$Mh1...@nntpserver.swip.net...

Vado a tentoni perchè io tempo fa ho realizzato un'applicazione analoga, ma 
non avevo questo problema: quindi forse per un caso fortuito non ho 
sperimentato l'inconveniente. Ho verificato che io il campo Totale1 = 
somma([Importo ordini]) l'avevo messo al "piè di pagina pagina" ed il 
Totale2 della maschera principale veniva regolarmente aggiornato. Però al 
rientro nella maschera principale facevo anche delle requery e quindi 
potresti dover applicare entrambi i suggerimenti.
Altro argomento: vedi ora come si legge meglio il tuo messaggio ? Chissà, 
forse il formato ad intestino stretto e lungo scoraggiava la lettura e per 
questo nessuno avevo risposto al tuo quesito.
Ciao
Antonio


Ciao,
ma la tua totale fattura si deve aggiornare in base al record sul
quale ti sei posizionato nella sottomaschera?
Di sicuro devi mettere il requery, da qualche parte. tipo quando
cliccki su un record della sottomaschera, potresti mettere su quel
campo su corrente il comando
Me!totale2.requery
ma essendo un comando della maschera principale, non so se vada meglio
parent!totale2.requery
oppure
forms!mascheraPrincipale!totale2.requery
Buon lavoro
Samantha

Samantha
ciao Samantha e grazie, forse non mi sono spiegato,
però penso che tu capirai perchpè proprio qualche post
precedente hai affrontato un problema simile
(recordset e uso della funzione Dsum)
il campo che calcola il totale è (ovviamente) nel pià di pagina
di una sottomaschera, ma io voglio che compaia anche nella maschera
principale [fin qui so come fare anche senza i "preziosi" consigli di 
Antonio ;-) ]
il problema è dato dal fatto che anche la maschera principale è
in modalità foglio dati: questa è la ragione per cui i totali compaiono 
uguali
per tutti i record.
ma tu come hai fatto nel caso di machere continue e funzione Dsum?
ciao e grazie

 ha scritto nel messaggionews:1172216883.6...@m58g2000cwm.googlegroups.com...

Ahn
allora tu devi pescare nella query, dove hai i costi che sommati
formano il totale della fattura (oppure totali ordini) (quelli che
sommati nel piè pagina della maschera ti danno il valore che vuoi
richiamare).
nella modalità maschere continue, il DSUM da vba non andava e nemmeno
con il recordset (che cmq alla fine mi è servito ad altro)
A te serve metttere nell'origine campo del controllo in maschera il
codice DSUM, qui sotto ti faccio un copia incolla del mio:
=IIf(IsError(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]=
" & [DISTINTAID]);0));0;
(nz(DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]= " &
[DISTINTAID]);0)))
Non so quale dimestichezza hai con il codice, quindi:
questo è il codice che serve x recuperare il totale
DSum("[cstarticolo]";"[q_smcstflyTOTMATPRI]";"[dist_id]= " &
[DISTINTAID])
se i campi erano vuoti mi dava errore, per quello ho usato la funzione
Iif ((iserror(dsum);0;(dsum)) che è come la funzione se di excel
Tanto per chiacchierare, io ora sto implementando un recordset, che
prendendo i valori ricalcolati me li risalvi dentro la tabella
prodotti,
questa l'ho fatta stamattina, ma non ho ancora avuto tempo x testarla
Dim dbfly As Database
Dim rstfly As Recordset
Dim qdffly As QueryDef
Set dbfly = CurrentDb
Set qdffly = dbfly.QueryDefs("fissaFLY").sql = "SELECT
TBL_DIST.dist_id, TBL_DIST.cli_id, TBL_DIST.dist_data,
TBL_DIST.dist_fissatodata, TBL_DIST.dist_tot1, TBL_DIST.dist_vendita,
TBL_DIST.dist_totlav, TBL_DIST.dist_totcstvari, TBL_DIST.dist_margf,
TBL_DIST.dist_scartopercf, TBL_DIST.dist_tottrasp,
TBL_DIST.dist_przlistino FROM TBL_DIST WHERE
(((TBL_DIST.cli_id)=[forms]![Msc_generalistinovendita]!
[cbocliente]));"
qdffly.Parameters("[Forms]![MSC_Generalistinovendita]![CBOCLIENTE]") =
Parent![cboCliente]
'Dopo la query devo fare refresh altrimenti mi da un errore di
condivisione 3197
Qdffly.Refresh
Set rstfly = qdffly.OpenRecordset()
Set rst = Me.RecordsetClone
If rst.RecordCount <> 0 Then
Me.Refresh
    'rst.MoveLast
    'tot = rst.RecordCount
    rst.MoveFirst
   Do Until rst.EOF
     rst.Edit
     rst.Fields("dist_przlistino") =  Me!dist_przlistino
     rst.Fields("dist_fissatodata") = Me!dist_datafly
     rst.Fields("dist_tot1") = Me!fly1
     rst.Fields("dist_totlav") = Me!fly4
     rst.Fields("dist_totcstvari") = Me!fly5
     rst.Fields("dist_margf") = Me!fly9
     rst.Fields("dist_scartopercf") = Me!fly6
     rst.Fields("dist_tottrasp") = Me!fly7
     rst.Fields
     rst.Update
     'Me!fly1 = totmp
     rst.MoveNext
  Loop
  rst.Close
  rstMio.Close
Poi la provo e ti farò sapere come va,
fammi sapere se funzia il codice di cui sopra
Ciao
Samantha

 fammi sapere se funzia
adesso ho capito (questa volta non č ironico)
grazie

 wrote:
? Dunque funziona

 grazie
Ma mi verrebbe da supporre che i miei post siano
incasinati!?!     ;)    ;)
Si la parte sotto non c'entrava con quello che mi avevi chiesto... ma
dopo tanto lavoro perchè non condividerlo e avere una opinione?
Vabbè,
finisco sta offerta sofferta e poi testo quel codice,
Ciao,
Samantha