Newsgroup: it.comp.appl.access
Titolo: Ragruppare movimenti

Buonasera a tutti
 
Nel mio db 
(
https://drive.google.com/file/d/1pNDPdKkMDctiLQehON63b3f2cpu10Yll/view?usp=sharing
) 
nella gestione del conto corrente ed in particolar modo dei movimenti 
della carta di credito, la banca a metà mese mi addebita l'intero 
ammontare dei movimenti fatti il mese prima.
 
Io invece li "contabilizzo" di volta in volta.
 
Riassumendo, nell'estratto conto mi trovo per esempio Addebito VISA € 
1.200,00, invece nel db ho un numero X di movimenti che compongono quei 
1.200,00€.
 
Mi piacerebbe inserire le spese VISA di volta in volta quando faccio il 
movimento ma trovarmi un unico importo di Addebito con relativa 
descrizione al 15 del mese successivo salvo festivi, diversamente va 
anticipato o posticipato.
 
Penso che si debba procedere in questo modo, registrare i movimenti VISA 
in una nuova tabella e ragrupparli con una query alla data di addebito 
predefinita. Non ne sono certo di questa soluzione, cosa mi consigliate? 
Grazie e buona serata.
 
 
 
 
-- 
RoBort


Perche' una nuova tabella?
Io userei una tabella unica, magari aggiungi un campo tipo 
CODICE_ESTRATTO_CONTO e su quel campo ci metti un valore uguale per 
tutti i record che vanno a comporre i 1200 euro dell'esempio sopra
Normalmente avrai visibile il dettaglio dei movimenti, se raggruppi per 
campo CODICE_ESTRATTO_CONTO (che potrai valorizzare anche con la data 
estratto conto, tanto ce ne sara' al max 1 in quel giorno)  vedrai gli 
importi delle righe con lo stesso CODICE_ESTRATTO_CONTO sommati ed 
equivalenti a quello che ti arriva con la stampa estratto conto
 

 
 
Ciao, grazie per la dritta. La mia idea è diversa sul dafarsi anche se 
non so completamente come attuarla. Innanzittutto vorrei fare in modo 
che all'addebito dei movimenti VISA l'importo ci sia già 
automaticamente, senza doverlo inserire manualmente. In pratica vorrei 
fare come se fosse una distinta base per la costruzione di un oggetto, 
come se dovessi scaricare dal magazzino i pezzi utilizzati per 
costruirlo. Esempio, Opel Corsa composta dai pezzi x, y, etc. etc. etc. 
in fattura dell'acquirente non appaiono i pezzi utilizzati per 
costruirla, solo il prodotto acquistato. Non so se rendo l'idea. Il 16 
di agosto in uscita dal conto corrente, potrei mettere come descrizione 
VISA LUGLIO, dove tale descrizione è composta dagli addebiti inseriti a 
luglio di volta in volta a spesa fatta.
 
-- 
RoBort


VISA LUGLIO e' quello che ho consigliato come valore da inserire su 
campo CODICE_ESTRATTO_CONTO
Tutte le righe col valore VISA LUGLIO potrebbero essere raggruppate e 
visualizzarti l'importo che ti appare nell'estratto conto cartaceo che 
ti arriva, questa e' un'idea di come avere il totale partendo inserendo 
le varie righe componenti l'estratto conto
Non si capisce bene se vuoi partire inserendo l'estratto conto oppure le 
righe che lo compongono

 righe che lo compongono
 
Non avevo afferrato in un primo momento il tuo consiglio. Ora ho capito 
abbastanza anche se non mi è chiaro come devo fare al giorno 
dell'addebito VISA a visualizzare una sola descrizione ed un totale.
 
Devo però fare un passo indietro e fare la spiegazione sintetica del db. 
La tabella è una solo, gestisco sia il conto corrente che le spese 
"cash". Una form mi visualizza le spese per il periodo, generalmente il 
mese in corso. Se una spesa (esempio al supermercato) viene pagata con 
la carta di credito, al momento di inserirla nel db tramite una flag 
decido se deve essere visualizzata nella lista delle spese mensili. Le 
spese bancarie per esempio o qualche spesa che faccio conto terzi (i 
familiari che mi fanno fare acquisti per conto loro e mi danno il 
contante), non le faccio rientrare nella maschera delle spese per il 
periodo.
 
Ricapitolando, se oggi 31 luglio faccio una spesa al supermercato e pago 
con carta di credito, vorrei come faccio ora, contabilizzarla alla data 
odierna in modo tale da visualizzarla con le spese di luglio ma al 
contempo ritrovarla contabilizzata nel conto corrente al 16 di agosto 
assieme a tutte le altre spese VISA di luglio, sotto ad un'unica voce.
 
Un po' contorta la questione... Ho previsto tre date quando inserisco un 
movimento di conto corrente; Data spesa (è la data effettiva della 
spesa) data operazione e data valuta che avrei potuto unificare in 
un'unica data. La data dell'operazione è quella della contabilizzazione 
effettiva che spesso discosta dalla data della spesa anche se dovessi 
pagare con PagoBancomat. Data valuta potrei anche farne a meno, comunque 
è la data dell'effettivo addebito in conto.
 
 
 
-- 
RoBort

 
 
Quando ci sono i movimenti finanziari, inserirai un record per ogni 
movimento, dove:
-Il campo IMPORTO conterra' il valore del movimento
-Il campo CODICE_ESTRATTO_CONTO conterra' l'indicatore dell'estratto 
conto dove apparira' quel movimento, ad esempio 'EC_AGOSTO_2021'
 
Il giorno che arriva l'estratto conto dovrai solamente visualizzare le 
tue righe  GROUP BY CODICE_ESTRATTO_CONTO
Una roba del tipo
select sum(IMPORTO) as TOTALE_EC,CODICE_ESTRATTO_CONTO from 
MOVIMENTIRIGHE group by CODICE_ESTRATTO_CONTO
 
Se non sei pratico di raggruppamenti, datti un'occhiata a qualche 
esempio che contenga il 'group by', la chiave e' tutta li
 
In sostanza quando arriva l'ec non devi inserire niente, hai gia' 
inserito (o dovresti averlo fatto) le righe che comporranno l'importo 
totale dell'ec
Semplicemente visualizzi le informazioni in altra forma, raggruppate 
usando il contenuto del campo CODICE_ESTRATTO_CONTO
 
Tieni conto che se quel campo lo valorizzi a mano, e' altamente 
probabile che in un record scrivi EC_AGO_2021 in un altro EC_AGOSTO_2021
Ovviamente capirai che quando le raggruppi, i due record sopra 
appariranno su righe separate, effetto non desiderato



anch'io farei come suggerito da RobertoA solo che invece di valorizzare il campo con "EC_AGO_2021" lo valorizzerei con un intero, tanto si sa che i pagamenti fatti a luglio, saranno contabilizzati ad agosto.
In questo modo potresti gestire anche le spese conto terzi: 
- 0 per le spese tue
- 1 per le spese tue con la carta
- 2 per le spese conto terzi cash
- 3 per le spese conto terzi con la carta
 
Se i soldi ti vengono ridati in tempi brevi potresti evitare di gestire il tempo che intercorre tra il pagamento e il ritorno dei soldi, altrimenti potresti anche aggiungere altri valori 
- 4 per le spese conto terzi cash (soldi avuti)
- 5 per le spese conto terzi con la carta (soldi avuti cash) 
(anche se in quest'ultimo caso è come se avessi effettuato un prelievo e inserirei un movimento in entrata di pari valore)
 
Quando fai le query, a seconda di quello che vuoi sapere, devi impostare la query.
Inoltre il 15 di ogni mese ti conviene inserire una nuova riga con valore, ad esempio -1, con la somma di tutte le spese con valore 1 del mese precedente.

 
 
Vi ringrazio per le dritte, non ho risposto prima perchè ho tentato di 
capire il tutto. Onestamente non ne sono venuto a capo... In pratica non 
ho capito come dovrei procedere... Chiedo venia.
 
-- 
RoBort


Abbi pazienza, ma se dici 'non funziona' non dai nessuna informazione 
sul 'che cosa' non funziona
Descrivi cosa non hai capito e magari qualche chance di ricevere aiuto 
magari ce l'hai ancora
Studia e prova come funziona il 'group by' su una query sql