Newsgroup: it.comp.appl.access
Titolo: Access 97 - Modulo Qualcuno disposto ad aiutarmi

Ciao ragazzi ho bisogno che qualche esperto mi dedichi qualche minuto
Ho una tabella dalla quale tramite query creo dei totali progressivi 
avvalendomi di un modulo trovato su sitocomune.
Ho bisogno che il totale progressivo si azzeri al cambiare del codice 
articolo. naturalmente la tabella � ordinata per codice articolo.
posso spedire a qualcuno un piccolo database d'esempio in modo da spiegare 
cosa devo ottenere materialmente?
Grazie in anticipo

PER FAVORE AIUTOOOO!!!!!
:-D

 ha scritto nel messaggio 
news:hbpdbu$1ap$1...@news.eternal-september.org...

invece di invaire file
incolla qui la funzione
e lo statement della query

 ha scritto nel messaggio 
news:hbpn3v$ro$1...@tdi.cu.mi.it...

MODULO:
Function TotProgrQry(KeyName As String, KeyValue, FieldNameToGet As String, 
NomeTabella As String, codice)
Dim RS As DAO.Recordset
On Error GoTo Err_TotProgrQry
TotProgrQry = 0
Set RS = CurrentDb().OpenRecordset(NomeTabella, dbOpenDynaset)
' Trova il record corrente
Select Case RS.Fields(KeyName).Type
    ' La chiave � Numerica?
    Case DB_INTEGER, DB_LONG, DB_CURRENCY, DB_SINGLE, _
        DB_DOUBLE, DB_BYTE
        RS.FindFirst "[" & KeyName & "] = " & KeyValue
    ' La chiave � di tipo Data/ora?
    Case DB_DATE
        RS.FindFirst "[" & KeyName & "] = #" & Format(KeyValue, 
"mm/dd/yyyy") & "#"
    ' La chiave � di tipo Testo?
    Case DB_TEXT
        RS.FindFirst "[" & KeyName & "] = '" & KeyValue & "'"
    Case Else
        MsgBox "ERRORE: Tipo dati della chiave non valido!"
        Exit Function
   End Select
Do Until RS.BOF
    TotProgrQry = TotProgrQry + RS(FieldNameToGet)
    RS.MovePrevious
Loop
Set RS = Nothing
Bye_TotProgrQry:
    Exit Function
Err_TotProgrQry:
    Resume Bye_TotProgrQry
End Function
QUERY
SELECT Giacenza.Codice, Giacenza.Codice_inequivocabile, Giacenza.Settimana, 
Giacenza.Giacenza, 
CDbl(TotProgrQry("codice_inequivocabile",[Codice_inequivocabile],"giacenza","Query1",[codice])) 
AS Totale
FROM Giacenza;
Quando cambia [Codice] si deve azzerare la giacenza e partire da quella 
relativa a quel record e cos� via
Cmq Il database � 50K se vuoi te lo spedisco verrebbe pi� semplice capirci

 ha scritto nel messaggio 
news:hbpdbu$1ap$1...@news.eternal-september.org...

sempre sul sito comune ci trovi anche la soluzione:
faq 2.33 e 2.34 vedi quale fa per te.
Daniele 

 faq 2.33 e 2.34 vedi quale fa per te.
non � quello che mi serve. ho bisogno di una somma *progressiva* da un 
valore preso da un'altra colonna
che riparta dalla giacenza del record relativo al cambio di "prodotto"
non so come vi arriva query:
      Codice
     Codice_inequivocabile
     Settimana
     Giacenza
     Totale
      001_4
     001_4_1
     1
     200
     200
      001_4
     001_4_2
     2
     50
     250
      001_4
     001_4_3
     3
     50
     300
      001_4
     001_4_4
     4
     56
     356
      001_4
     001_4_5
     5
     60
     416
      001_5
     001_5_1
     1
     60
     476
      001_5
     001_5_2
     2
     50
     526
      001_5
     001_5_3
     3
     5
     531
      001_5
     001_5_4
     4
     100
     631
      001_5
     001_5_5
     5
     20
     651
quando il codice da 001_4  passa a 001_5 la giacenza "totale" dev'essere = 
60

 wrote in message 
news:hbpdbu$1ap$1...@news.eternal-september.org...

A me puoi spedirlo.
Bruno
brun...@libero.it
 

 ha scritto nel messaggio 
news:4ae07065$0$1100$4faf...@reader3.news.tin.it...

Bruno il problema � che sui NG non ha senso se gli risolvi a casa
Nessuno sa come hai risolto e quindi serve solo a lui.
Poi disponibili lo siamo tutti.
non dargli del pesce, insegnagli a pescare 

 non dargli del pesce, insegnagli a pescare
guarda, capisco il tuo intervento ma ho un serio problema lavorativo da 
risolvere.
la cosa che posso promettere � che se si trova la soluzione (e sicuramente 
la trovate) la posto per tutti
grazie cmq
ciao

 
brun...@libero.it
spedito. grazie!

 ha scritto nel messaggio 
news:hbpso5$6tl$1...@news.eternal-september.org...

Guarda che � l'atteggiamento che � sbagliato
Se hai un problema di lavoro, lo risolvi studiando o pagando.
Non so che lavoro fai, ma se hai un laboratorio di scarpe e uno viene e ti 
dice, guarda queste scarpe le uso per lavoro, sono rotte, me le aggiusti?
Discorso diverso �, non � che vuoi farmi capire come posso risolvere, il 
fatto che lo insegni a me non rimarr� solo a me,
ma a tutti coloro ch partecipano

 ma a tutti coloro ch partecipano
va be ho solo detto la verit�, potevo girarci intorno. cmq credo di aver 
spiegato.

 ma a tutti coloro ch partecipano
va be ho solo detto la verit�, potevo girarci intorno. cmq credo di aver
spiegato.

 wrote in message 
news:hbpsoi$734$1...@news.eternal-september.org...

S� ma fammi capir bene, da questo:
Codice	Giacenza
100_4	200
100_4	50
100_4	50
100_4	56
100_4	60
100_5	60
100_5	50
100_5	5
100_5	100
100_5	20
vuoi ottenere questo?
Codice	Giacenza	ProgressiviPerCodice
100_4	200	200
100_4	50	250
100_4	50	300
100_4	56	356
100_4	60	416
100_5	60	60
100_5	50	110
100_5	5	115
100_5	100	215
100_5	20	235
Con ogni mezzo, o hai qualche preferenza?
Bruno 

 Con ogni mezzo, o hai qualche preferenza?
che significa con ogni mezzo? O__o
:)

 che significa con ogni mezzo? O__o
Con VBA, query, a forza di moccoli...
Bruno 

 Public Sub TotPerCodice()
[...]
Si pu� ancora economizzare qualche riga.
Con quel che costa la carta...
=========================================
Public Sub TotPerCodice()
Dim RS As Recordset, PreviousKey As String
Dim PreviousSum As Currency
Set RS = CurrentDb.OpenRecordset("Giacenza", dbOpenDynaset)
PreviousKey = RS![codice]
Do Until RS.EOF
    If RS![codice] = PreviousKey Then
        PreviousSum = PreviousSum + RS![Giacenza]
    Else
        PreviousKey = RS![codice]
        PreviousSum = RS![Giacenza]
    End If
    RS.Edit
    RS![ProgressiviPerCodice] = PreviousSum
    RS.Update
    RS.MoveNext
Loop
End Sub
========================================
Bruno 

query
devo eseguirlo da query si richiama come una funzione?
devo passargli gli stessi parametri di quest'ultima?

 wrote in message 
news:4ae0b976$0$1104$4faf...@reader2.news.tin.it...

1 - Metti un Command Button in una scheda e nell'evento
     OnClick metti una linea di codice:
     TotPerCodice   (nessun paramentro)
2 - Dall'editor VBA un  Click sul triangolino Run Sub/User Form.
3 - Altre personalizzazioni ad libitum.
Una delle tre.
Bruno 

 >query

Vedi questa soluzione:
http://support.microsoft.com/kb/205183/it
La funzione la devi modificare  nella seguente maniera se vuoi mantenere i
decimali in maniera corretta:
Function fncRunSum(lngCatID As Long, dblUnits As Double) As Double   
'Variables that retain their values.
    Static lngID As Long
    Static dblAmt As Double
    If lngID <> lngCatID Then
        'If the current ID does not match the last ID, then (re)initialize.
        lngID = lngCatID
        dblAmt = dblUnits
    Else
        'If the current ID matches the last, keep a running sum for the ID.
        dblAmt = dblAmt + dblUnits
    End If
    'Pass the running sum back to the query.
    fncRunSum = dblAmt
End Function
--
sv
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

Volevo ringraziare tutti coloro che sono stati pazienti con me e mi hanno 
aiutato a sbrogliare questa matassa
grazie!