Newsgroup: it.comp.appl.access
Titolo: strutturare al meglio tabella documenti ddt preventivi fatture...

sto realizzando un piccolo gestionale e vorrei chiedervi se secondo voi č 
meglio fare un unica tabella che contiene tutti i documenti preventivi 
ordini ddt e fatture oppure una tabella per ogni tipo documento? considerate 
che poi dovrň importare un ordine o un preventivo in un ddt o in una 
fattura, secondo voi quale strada č migliore e perchč?
Grazie. 

 ha scritto nel messaggio news:cmvflg$lhh$1...@lacerta.tiscalinet.it...

secondo me č meglio avere piů tabelle perchč dopo risulterŕ piů leggibile in caso di tanti recorded inoltre potresti avere bisogno 
di campi diversi a seconda della natura dell'oggetto.. quindi se fai tutto in una tabella avrai un bel po' di campi...
poi, secondo me, il dover importare un ordine in un ddt sia nella stessa tabella che in tabelel diverse ti comporta lo stesso 
lavoro.. la query sarŕ cmq di accodamento... cambia solo la source...
per ora non mi viene altro :).. se mi si illumina il cervello (impossibile in questi giorni.. penso solo alla neve che si sta 
cumulando sui monti :)) ti farň sapere :)
ciao
Nick

 Grazie.
Se lasci tutto in un'unica tabella aggiungendo un campo "tipo documento"
che distingua tra ddt, fattura, ordine, ecc... ti basta modificare il
valore di un solo campo per trasformare un'offerta in un ordine o in una
fattura, e gestisci tutto con un'unica maschera che però sarà più
complicata di quanto potrebbero essere le 3-4 maschere singole che
gestiscono ciascuna uno specifico documento.
Ma i vari tipi di documento hanno tutti la stessa struttura e gli stessi
campi nel tuo db?
Namor
-- 
namor at inwind punto it
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio
news:cmvflg$lhh$1...@lacerta.tiscalinet.it...

Dal punto di vista meramente accademico, se i documenti citati sono
concenttualmente diversi,  devono essere considerati quali Entitŕ diverse.
Questo significa che dovresti creare una tabella per tipologia di documento.
In pratica perň, se le caratteristiche comuni ai documenti sono molte allora
si possono adottare due soluzioni:
1) Creare un'unica tabella contenente tutti gli attributi di tutti i
documenti, aggiungendo un attributo (cioč una colonna) qualificatore
mediante il quale distinguere i record secondo la tipologia del
corrispondente documento. Questa soluzione č in forma NON NORMALE: spreca
memoria per la presenza di molti valori NULL, ti consente la compilazione di
query piů semplici e risente di un calo prestazionale al crescere del numero
dei record (sempre che tu non definisca un appropriato indice);
2) Creare una tabella principale contenente tutti gli attributi (cioč le
colonne) comuni a tutte le tipologie di documenti e tante 'tabelline' quante
sono le diverse tipologie di documento, ciascuna contenente solo gli
attributi specifici. Ovviamente le 'tabelline' e la tabella principale
devono essere in relazione con vincoli di integritŕ referenziale. Questa
soluzione č quella che preferisco perchč in FORMA NORMALE. Devi "ammattire"
di piů per scrivere una query (a meno che tu non abbia piena dimestichezza
con i JOIN) ma hai i vantaggi di risparmio di memoria (che se crei dei file
mdb con tabelle access 'pure' č un vantaggio non di poco conto) e un livello
prestazionale, a tempo di esecuzione delle query, maggiore della soluzione
1), specialmente definendo appositi indici (ma questo č un altro capitolo
che non conviene aprire ora per motivi di spazio).
Il motivo della maggior efficenza prestazionale della soluzione 2) sulla 1)
la puoi comprendere per il  fatto che tutte le singole tabelle contengono
meno informazioni (solo quelle strettamente necessarie).
Spero di essere stato chiaro.
Ciao.
--
Simplex2
www.mdenittis.it

 Concordo pienamente.



C'è da valutare però il fatto che così non ti resta lo storico a meno che
non duplichi il record prima di cambiare tipo documento.
Non c'è un modo di procedere prefissato, entrambi i sistemi proposti sono
validi, e ce ne saranno altri ancora. Devi avere ben chiaro quello che
vuoi ottenere alla fine (o che vuole il tuo cliente) per poi progettare di
conseguenza il db.


"Simba883" <

La soluzione piů comoda (e la piů diffusa a livello di gestionali aziendali)
č adottare un'unica tabella per tutti i tipi documento: o meglio due
tabelle, testate e righe.
Perň a livello di programmazione comporta la strutturazione di causali
Documento e magazzino.
Se sei in grado di fare ciň, procedi in tal senso.
Saluti.

 
www.mdenittis.it
Te lo scrivo qua, visto che non hai fornito la mail:
Sul tuo sito ci sono due link morti
Links - Access: 
www.sitocomune.com
, non .it
Links - Database: il link al corso della Prof.ssa Catarci non funziona
Ciao.



assolutamente no ma pensavo di prevedere il caso peggiore che è il ddt che 
ha anche i campi aspetto beni causale ecc..... in caso negli altri documenti 
rimarranno non compilati tali campi. 

 ha scritto nel messaggio 
news:tvIkd.27590$Ni.9...@twister1.libero.it...

Bene grazie a tutti, molto esplicativi credo opterň per la soluzione della 
tabella unica con campo tipo documento e se devo tenere uno storico di un 
ordine allora in fattura importerň le voci del'ordine mantenendo quelle 
del'ordine intatte anzichč cambiare il tipo documento da ordine a fattura
voi che ne pensate?