[RISOLTO] Come fareste voi ?

Discussioni sulle caratteristiche di database
Rispondi
schwantz69
Messaggi: 10
Iscritto il: sabato 8 ottobre 2011, 18:01

[RISOLTO] Come fareste voi ?

Messaggio da schwantz69 »

Ciao a tutti, ho il seguente problema:
Tabella contenente anagrafica clienti
Tabella contenente i singoli debiti dei clienti e i singoli pagamenti ricevuti dagli stessi
Ho creato un formulario principale che mi permette di estrarre il cliente desiderato, ho collegato un formulario secondario con un controllo tabella che mi visualizza tutti i movimenti effettuati dal cliente in questione (debiti e pagamenti). Sempre sul formulario secondario ho la possibilità di inserire ulteriori movimenti (debiti o pagamenti). Vorrei che dopo qualsiasi modifica applicata al formulario secondario (aggiunta movimento, eliminazione, variazione) una macro si occupasse di ricalcolare il saldo e lo visualizzasse.
Inizialmente pensavo di operare con Calc ma non sono riuscito a capire come collegare il database in modo dinamico per cui ho ripiegato su base.
ho pensato di inserire le colonne che puntano ai singoli campi del database nel controllo tabella manualmente ed aggiungere una colonna saldo da ricalcolare al verificarsi di uno dei già citati eventi, ma non sono riuscito a capire come potrei puntare alla colonna da aggiornare....
Come fareste voi ?
ciao e grazie
Ultima modifica di schwantz69 il domenica 13 novembre 2011, 19:08, modificato 2 volte in totale.
Openoffice 3 su Mac Os 10.6.8 Leopard
vladko
Volontario
Volontario
Messaggi: 1637
Iscritto il: martedì 3 agosto 2010, 8:02

Re: Come fareste voi ?

Messaggio da vladko »

non ho capito molto ma:
calcoli si fa con query poi un pulsante aggiorna e niente macro
guarda in tutorial di base.
quindi
tab soggetti
tab movimenti
query calcoli
fai sapere grazie
AOO 3.4.1 AOO341m1(Build:9593) Linux Mint Debian/Mate 64bit java 1.6.0.22 XP PRO/32bit
con Base --> sempre backup!!!
Se problema è Risolto --> Inserire [Risolto]nel titolo come spiega qui, grazie :-)
schwantz69
Messaggi: 10
Iscritto il: sabato 8 ottobre 2011, 18:01

Re: Come fareste voi ?

Messaggio da schwantz69 »

Sono conscio del fatto che mi sono spiegato in maniera orrenda.... cerco di farmi capire meglio:
Ho una tabella (MOV_CLI) con i seguenti campi:
ID -> Numero record
DATAOP -> Data Operazione
DESCOP -> Descrizione Operazione
IMPORTO -> Importo dell'operazione
CODCLI -> Codice Cliente

Ho poi una seconda tabella (ANAG_CLI) contenente l'anagrafica del cliente.
Ho creato un formulario in cui sono presenti codice cliente e indirizzo di quest'ultimo presi dalla tabella (ANAG_CLI)
Ho creato inoltre un sotto-formulario contenente i dati presi dalla tabella (MOV_CLI)
Allo stato attuale quando seleziono un cliente nella tabella del sotto-formulario vengono visualizzati (come voglio io) tutte le operazioni effettuate dal cliente in questione.
Cosa forrei fare ?
1) Vorrei aggiungere una colonna al controllo tabella presente nel sotto-formulario contenente il saldo alla data (somma algebrica del campo IMPORTO per ogni record)
2) Mi piacerebbe che la tabella svolgesse una duplice funzione, semplice visualizzazione e aggiornamento/inserimento dati pertanto ad ogni nuovo inserimento o aggiornamento record la colonna saldo alla data dovrebbe venire ricalcolata
Grazie in anticipo...
Openoffice 3 su Mac Os 10.6.8 Leopard
vladko
Volontario
Volontario
Messaggi: 1637
Iscritto il: martedì 3 agosto 2010, 8:02

Re: Come fareste voi ?

Messaggio da vladko »

base non è calc
non esiste subtotali
ogni riga di tabella è un record
quindi ripeto ci vuole query
in pratica:
tuo formulario di clienti
tuo sottoformulario di movimenti per cliente
pulsante aggiorna
tua query
dopo modifche su movimenti premi tasto aggiorna per vedere tottale che cambia


c'è esempio

fai sapere grazie
Allegati
schwantz69.odb
(13.36 KiB) Scaricato 285 volte
AOO 3.4.1 AOO341m1(Build:9593) Linux Mint Debian/Mate 64bit java 1.6.0.22 XP PRO/32bit
con Base --> sempre backup!!!
Se problema è Risolto --> Inserire [Risolto]nel titolo come spiega qui, grazie :-)
schwantz69
Messaggi: 10
Iscritto il: sabato 8 ottobre 2011, 18:01

Re: Come fareste voi ?

Messaggio da schwantz69 »

Ciao Vladko,
Anzitutto grazie per l'ottimo esempio che hai postato, effettivamente stavo pensando anche io ad una soluzione del genere ma non mi sembrava di facile realizzazione (come certamente hai capito sono alle prime armi con la suite Openoffice).
Ho 3 domande:
1) Immagino che la pressione del pulsante "Aggiorna" provochi l'esecuzione di una macro ma.... non ho trovato a quale evento l'hai collegata e soprattutto dove hai inserito la macro....
2) Come hai fatto a fare in modo che il formulario si apra a schermo intero ????? (sarà un mese che ci provo senza successo!)
3) Saresti così gentile da indicarmi come è possibile far comparire il comodo pulsantino che apre il calendario nel campo data operazione ? inoltre è possibile applicarlo anche ad un controllo da mettere sul formulario ?
grazie per l'aiuto e a buon rendere !
Openoffice 3 su Mac Os 10.6.8 Leopard
vladko
Volontario
Volontario
Messaggi: 1637
Iscritto il: martedì 3 agosto 2010, 8:02

Re: Come fareste voi ?

Messaggio da vladko »

Risposte:
1 no, si fa così:
tst dx su pulsante -->Proprietà
si apre finestra Proprietà Pulsante
in Scheda Generale trovare la linea Operazione e scegliere Aggiorna Formulario

2 non ho capito ma controlla che in modifica sia fiestra a Massimo e zoom 100

3 anche qui se è un campo di controllo sempre tstdx su controllo proprietà, scheda generale, scegliere apribile si,
se dentro a tabella fare clickdx su nome campo tabella, scegliere colonna, scheda generale, scegliere apribile si

fai sapere grazie
AOO 3.4.1 AOO341m1(Build:9593) Linux Mint Debian/Mate 64bit java 1.6.0.22 XP PRO/32bit
con Base --> sempre backup!!!
Se problema è Risolto --> Inserire [Risolto]nel titolo come spiega qui, grazie :-)
schwantz69
Messaggi: 10
Iscritto il: sabato 8 ottobre 2011, 18:01

Re: [RISOLTO] Come fareste voi ?

Messaggio da schwantz69 »

Vladko grazie per il tuo aiuto davvero prezioso !
Ho risolto tutto apportando alcune modifiche per meglio adattare il tuo esempio a quello che volevo fare io, in particolare:
Ho creato una macro che legge il codice cliente dal formulario principale e modifica la ricerca utilizzata per i calcoli in modo da calcolare solo il totale del cliente visualizzato
La macro l'ho poi collegata all'evento del cambio record del formulario principale in modo che ad ogni cambio record (premendo i tasti della barra di naviagazione) calcoli automaticamente il saldo e lo espoga negli appositi campi.
L'ho collegata poi all'evento "eseguire l'azione" del tasto (non potevo infatti utilizzare l'azione aggiorna formulario dovendo modificare il comando SQL della ricerca utilizzata per i calcoli).
Effettivamente era + facile del previsto, non avevo capito infatti come creare ulteriori formulari da collegare a sorgenti dati diverse... capito quello il resto è venuto quasi da se ;)
Spero di poter contraccambiare un giorno ciao e grazie ancora
Openoffice 3 su Mac Os 10.6.8 Leopard
vladko
Volontario
Volontario
Messaggi: 1637
Iscritto il: martedì 3 agosto 2010, 8:02

Re: [RISOLTO] Come fareste voi ?

Messaggio da vladko »

bene :D
contraccambiare? certo puoi mettere qui un esempio con codice macro così che anche altri può usare ;)
AOO 3.4.1 AOO341m1(Build:9593) Linux Mint Debian/Mate 64bit java 1.6.0.22 XP PRO/32bit
con Base --> sempre backup!!!
Se problema è Risolto --> Inserire [Risolto]nel titolo come spiega qui, grazie :-)
Rispondi