Gestionale con MySql e OpenOffice – 5 primo sottoform

Costruita l’interfaccia grafica usando il formulario di base per accedere alla tabella fatture di mysql, andiamo a sviluppare l’idea.

Di norma ogni fattura va anche pagata e di solito il pagamento ha una scadenza, in altri casi il pagamento e diviso in 2 o 3 parti e viene pagato con 2 o 3 scadenze differenti.
Quindi ad ogni fattura è associata nessuna, una o più scadenze di pagamento.

Per organizzare queste scadenze ci servirà una tabella in mysql che contengo almeno l’importo, la data della scadenza e l’id di riferimento della fattura.
Poi serve di poter inserire queste scadenze nella tabella mysql.
Questo verrà fatto dal formulario (inteso come la pagina) delle fatture attraverso un sotto-formulario. Che è un formulario (inteso come oggetto di raccordo tra mysql e base) che appartiene ad un “formulario-padre” ed è a questo collegato da un campo.
Nel nostro caso quando scegliamo una fattura vedremo nel sottoformulario tutte le scadenze di quella fattura, e quando scriviamo le scadenze le stiamo associando alla fattura che in quel momento è selezionata nel formulario padre. Si collega quindi il campo id della tabella fatture, con il campo della tabella scadenze che è dedicato agli id delle fatture.

Si costruisce una tabella in mysql, dentro nuovoschema, di nome scadenze con i seguenti campi:

idscadenze (PK, NN, AI), tipo INT
data_sca (NN), tipo DATE
idfatture_sca, tipo INT
importo_sca, tipo DOUBLE, default: 0
pagare_sca, tipo BINARY, default: false
tipo_pagam_sca, tipo INT, default: 1

Una scadenza senza data non può essere rintracciata quindi si vincola con Not Null il campo data_sca;
poi serve autorizzare il pagamento mediante il campo pagare_sca: al momento dell’inserimento dovrà essere non autorizzato per poi ricevere autorizzazione nell’imminenza del pagamento;
infine siccome il pagamento può svolgersi con riba, bonifico, contanti, assegno, carta di credito o quant’altro, il tipo di pagamento viene indicato nel campo tipo_pagam_sca. Con valore prestabilito pari a 1 (vd dopo: RiBa)

Per associare a un numero una parola che indichi la modalità di pagamento, creiamo un’altra tabella
nome:
tipi_pagamento
Campi:
idtipi_pagamento (PK, NN, AI), tipo INT
tipo_pagam_tip
(NN, UQ), tipo VARCHAR(45)

Il tipo di pagamento ha la clausola UQ: unique, perché non avrebbe senso avere due tipi di pagamento uguali con 2 id differenti.

In questa tabella inseriamo, o facendo doppio click sulla tabella dalla workbench di mysql o dalla sezione tabelle di base:

RiBa
Bon
Ass
CaCr
Cont

Che stanno per “ricevuta bancaria”, “bonifico”, “assegno”, “carta di credito” o “contanti”. Volendo uno può scriverli anche per esteso.

Ora andiamo su base e modifichiamo il formulario che finora gestisce le fatture.
Se avevamo base aperto mentre abbiamo fatto queste modifiche da mysql può essere necessario chiuderlo e riaprirlo perchè si riescano a vedere le tabelle appena create.

Quindi tasto destro → modifica sul formulario Formulario1, poi si clicca sul tasto navigatore formulario e si clicca col tasto destro su Formulario → nuovo → Formulario


Abbiamo creato un sotto-formulario: un oggetto che appartiene agli oggetti di Formulario, infatti nella rappresentazione del navigatore, questo è allineato all’oggetto griglia.

Ora si clicca su tasto destro proprietà del nuovo formulario, e lo si imposta.

Nella scheda Dati nel campo Tipo di contenuto possiamo lasciare Tabella e andiamo ad inserire nel campo Contenuto, dalla tendina, nuovoschema.scadenze.

Poi clicchiamo sui tre puntini (…) affianco al campo Collega da o Collega per, e nella finestra che appare, selezioniamo id_fatture_sca e id_fatture_sca:

Quindi abbiamo queste impostazioni:

Clicchiamo anche sui tre puntini affianco al campo ordina e scegliamo come Nome campo data_sca e sequenza crescente.
In questo modo facciamo che il formulario appaia ordinato per data crescente.

Ora possiamo chiudere o ignorare la finestra “proprietà modulo” e andiamo a creare nella nostra pagina una griglia collegata al sotto-formulario appena impostato.
Per far sì che la griglia appartenga al sottoformulario questo deve essere selezionato nel navigatore formulario mentre si crea la griglia.
Possiamo creare la griglia con la procedura guidata oppure colonna per colonna. L’importante è che non appaia il campo idscadenze ma nemmeno il campo idfatture_sca. Anche il campo pagare_sca non è necessario appaia in questa pagina.

In generale tutti i campi superflui è preferibile evitare di inserirli perchè l’utente sarà obbligato a battere invio su questi prima di poter arrivare alla riga successiva.

Abbiamo questa situazione. Se clicchiamo su modo bozza on/off possiamo cominciare a inserire le scadenze fattura per fattura.

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: