Creazione record uguale in due tabelle et altro

Creazione record uguale in due tabelle et altro

0
0

Buonasera a tutti. Dopo 20 anni sono di nuovo nel mondo (dorato) di FMPro. Quante cose nuove…

Vado al dunque: avrei bisogno di fare in modo che, creando un record in una tabella, se ne crei uno con campi con contenuti identici in una seconda tabella + altri della sola seconda tabelle. Abbiamo quindi due cose:

  • 1) creazione record in tabella 2 quando creo un record nella tabella 1
  • 2) aggiornamento dei dati del record nella tabella 1 quando li inserisco o modifico nella 2
  • 3) inserimento nuovi record solo in tabella 2 e agggiornamento automatico in tabella 1

Per avare un gestionale ergonomico e fruibile tutto questo, nella mia mente, dovrebbe essere automatizzato per semplificare la vita all’utente finale (altrimenti a che serve un gestionale? Uso 1000 fogli di Excel e via…). Pertanto:

Punto 1): penso di potercela fare con le mie conoscenze e con lo scripting.

Punto 2): non ho idea di come fare in modo che i dati inseriti nel record della seconda tabella si “autoriempiano” quando inserisco i dati nei record della prima o li modifico (non dovrebbe succedere, la modifica, ma cerco di mettermi nei panni dell’utente finale e semplificargli la vita).

Punto 3): spero di farcela

Sottolineo (ma l’avrete capito) che nella tabella 2 non posso mettere i campi della 1 (tramite relazione) perché dovrei poter aggiungere dei record con valori che nella tabella 1 non ci sono.

Es: movimento finanziario (emissione fattura) di 1.000€. Non capita di rado che il cliente la paghi “a pezzi” e quindi un semplice campo di spunta o inserimeno “pagato” (o quant’altro) non mi soddisfa. Preferirei che cliccando sul record del movimento finanziario originario (emissione fatt. di 1.000€) mi compaiano gli stessi dati in un’altra tabella ma possa poi aggiungere dei record tipo: “pagamento totale”, piuttosto che più record “pagamento parziale” fino alla chiusura (=zero) del record iniziale. Dovrei poter avere quindi nella tabella 2, faccio un es., quanto segue:

  • record con movimento inziale (emissione fattura di 1000€) come da tabella 1
  • record con pagamento parziale di 500€ in data x/y/z – non presente in tabella 1
  • record con pagamento parziale di 350€ in data x/y/z – non presente in tabella 1
  • record con pagamento a saldo di 150€ in data x/y/z – non presente in tabella 1
  • aggiornamento del record in tabella 1 con riporto saldo = zero

E’ chiaro che mi sto complicando la vita ma mi piace fare le cose bene. Basterebbe fare a meno della seconda tabella e mettere mano a mano il valore aggiornato dei pagamenti nel record iniziale e buonanotte. Oppure fare come sto facendo adesso: una sola tabella com tutti i movimenti finaziari legati ad un’operazione. Apro (e qui capiamo meglio) un serie di record per inizio contratto di locazione, come segue

  • un record con l’importo di locazione(in questo caso due mesi)
  • altro record con imposta di registro
  • altro record con imposta di bollo (potrei accorparlo a  quello sopra…)
  • altro record con spese condominiali
  • un record che chiude a saldo il canone di locazione
  • un record che chiude a saldol’imposta di registro
  • un record che chiude  a saldol’imposta di bollo
  • un record che chiude a saldole spese condominiali

Metto un campo a destra con i saldi progressivi e alla fine dovrei (sono, perché c’è già)  a zero.

Tuttto bene. Ma quando poi i record sono 100 o più (perché se uno ti entra e ci sta 8 anni o più…) e ti ballano 0,37€ devi andare a cercare dove mancano. Non è il massimo. Non muore nessuno ma non è così che deve fnzionare un gestionale, almeno dal mio punto di vista.

Spero di essere stato chiaro.

Grazie. Simone

PS: Allego esempio di come funziona ora (grezzo, in fase di implementazione).

 

 

 

Allegati:
Segnalato come spam
Pubblicata da (Domande: 13, Risposte: 21)
Domanda inviata 29 Agosto 2021 19:28
27 vis.
0
Domanda privata

Grazie.

Simone.

Segnalata come spam
Pubblicata da (Domande: 13, Risposte: 21)
Risposta inviata 30 Agosto 2021 17:11
0
Domanda privata

Buongiorno, Simone.

ti serve una relazione fra la chiave primaria della prima tabella e la chiave esterna della seconda. faccio un esempio:

diciamo che nella tabella A hai un campo chiamato ID, che univoco, indicizzato che fa da chiave primaria.

Nella tabella B inserisci un campo ID_tabellaA che metti in relazione con la tabella a:

A::ID= B::ID_tabellaA

a questo punto puoi creare via script i record in B partendo direttamente dalla tabella A, impostando il campo B::ID_tabellaA con i valori del campo A::ID.

In questo modo puoi avere 1 record nella tabella A (ad esempio saldo canone) pagato con più rcord della tabella B.

facci sapere!

.g.

Segnalata come spam
Pubblicata da (Domande: 0, Risposte: 1544)
Risposta inviata 30 Agosto 2021 16:24