PDA

View Full Version : Creare database con ACCESS 2007 (help me)


radeon_snorky
02-09-2010, 10:04
salve a tutti!
un piccolo preambolo:
vorrei realizzare una applicazione che mi semplifichi la gestione e modifica delle pratiche del mio ufficio.
al momento ho una anagrafica clienti (non sono proprio clienti, ve lo spiego dopo) in excel e vorrei "costruire" un db per poi realizzarci sopra il programma utilizzando vb.net2008 express edition (con i consigli del buon vecchio MarcoGG e degli altri...)
veniamo alla struttura del db, scusatemi fin d'ora se non sarò preciso e non userò le terminologie corrette... ma son proprio agli inizi!

le pratiche devono contenere i seguenti dati:

il numero (numero/anno)
i riferimenti anagrafici
il numero di preventivo (se c'è)
il link della cartella sul fileserver dove risiedono tutti i dati riferiti alla pratica
la data di inizio pratica
il tipo di procedura
i documenti necessari (una lista di documenti)
la data di avviso (necessaria se voglio implementare un sistema di avviso scadenza in vb)
note varie (testo semplice che descrive la pratica e tutti i vari step via via aggiunti)
la data di fine pratica (con avviso che posso farmi pagare........)

i riferimenti anagrafici sono una serie di dati di vario genere che identificano il "cliente" che in realtà è formato dalle seguenti voci:

committente
proprietà
capo area
comune
indirizzo
codice del "punto di vendita fisico" (a volte non c'è ma le grosse ditte ce l'hanno)
nome e cognome
telefono

il tipo di procedura è essenzialmente un boolean che identifica se la pratica viene gestita da un unico ufficio (comunale) o se i documenti seguenti vengono gestiti singolarmente (conoscete il suap?)
i "documenti necessari" sono una serie di voci che identificano delle "procedure burocratiche" come autorizzazioni edilizie e mille altre cose, esempio:

DIA
PDC
AUT COMMERCIO
AUT SCARICHI
AUT VVF
AUT AUSL
DOGANE
RINNOVI
PUBBLICITÀ
PASSI CARRAI
...



spero abbiate capito come deve essere strutturato il db...

chi mi da una mano? ho a disposizione access 2007... e tanta voglia di arrivarci in fondo!

GRAZIE

Raffaele53
02-09-2010, 12:55
Creare un DB è "facile e difficile", bisogna sapere l'uso che dovrai fare.
Ex una tabella è già un DB, ma se la devi collegare ad un'altre tabelle bisogna collegarlo a monte (pertanto è importante ragionare sulla struttura del DB).
Non si riesce a farlo fisicamente sul forum, suggerisco un conoscente che lo faccia insieme a te. Come minimo vedo tre tabelle, senza contare query e maschere (le tabelle sono il male minore).

Ex Per iniziare a scrivere una tabella (access\home\visualizza),comincerei col mettere un ID_Cliente = contatore

Passiamo alla voce "committente" (presumo sarà solo testo) e subito bisogna decidere se sarà indiccizzato con dulicati ammessi oppure senza. Se si opta per una strada o l'altra, un domani potrai/non potrai fare ricerche/collegate su questo "CAMPO"
•proprietà penso (testo) ma non capisco
•capo area (testo) ma non capisco
•comune (testo)
•indirizzo (testo, ma allora prevedi anche il CAAP e Regione)
•codice (sarà numerico indiccizzato o no)
Per le voci nome e cognome (forse è meglio separarli)
Per telefono (Forse è meglio prevedere anche FAX e Cellulare) in CAMPI numerici differenti"

Ps Per tutti i CAMPI indicizzati la cella non potrà mai essere Vuota. Se risulta vuota darà errore del record
Pps. Vedendo questa tabella mi viene da dire che l'unico CAMPO che dovrebbe avere la chiave e proprio la voce "committente" oppure "Codice".
Già qui c'è una altra scelta da fare. Qual'è il CAMPO obbligatorio ma sempre differente per ogni Cliente?

radeon_snorky
02-09-2010, 14:41
provo a realizzare qualcosa e poi posto il risultato con una immagine, ok?
in due parole:
si tratta di pratiche legate alle attività di grosse ditte nazionali, il committente o la proprietà sono semplici nomi di ditte (a volte combaciano, mentre altre volte la proprietà non cambia ma cambia il committente che in definitiva è "quello che caccia i soldi...")
i campi che verranno usati come ricerca saranno:
"punto di vendita fisico"
"comune"
"proprietà"
"preventivo"
"data"
"numero pratica"
per identificare il punto di vendita fisico mi bastano COMUNE e INDIRIZZO (quest'ultimo formato da eventuale località o frazione (cap), via e civico)
tanto è il dato meno significativo e quello meno standard (manca il cap, civico barrato, con chilometrica, ecc)
per nome e cognome basta un campo solo (poi lo collegherò in un secondo tempo con una tabella-anagrafica, quando ne avrò i dati...) mi serve per identificare la persona/ditta che gestisce direttamente il "punto di vendita fisico"
il capo area è "chi firma i documenti" divisi in macro zone (nord-est, nord-ovest, centro, sud) e siccome capita che cambiano nel giro di 6/12 mesi ho bisogno di tener traccia del nominativo...

incasinato le idee?

radeon_snorky
03-09-2010, 09:20
son partito da dati in excel, li ho passati in access e adesso sono qui:

https://lh6.googleusercontent.com/3kRRD9s0DoJ7xf8FAC0dBxXygYEe54_sXRgwi0sA26BygEI4dLNtm12J0RIYnZuPegO8cfEn5eBf7yPs44lLvtiMtQ=s512

come procedo? è tutto corretto?

Raffaele53
03-09-2010, 15:20
E tutto corretto.... io non lo sò, sei tu che dovresti saperlo.
Il fatto che hai importato dati da excel non significa assolutamente nulla, per il semplice motivo che se i dati di una certa colonna erano in formato numerico, adesso lo sono anche su access e viceversa (di certo mentre svilupperai il DB ti accorgerai che per fare determinati passaggi (forse dovrai convertirlo in testo, pertanto se gli cambi il CAMPO DA NUMERICO IN TESTO, la tabella sarà da buttare ).

Hai creato la tabella PVFS, dove riunusci IDgestore + IDzona + PVF? Anche se non capisco il motivo e PVF (non so cosa si riferisce e comunque non lo vedo nella tabella Pratiche1

Poi queste tabelle saranno sicuramente con la chiave indicizzata sul ID, ma non è detto che per forza deva essere ID, valutando i CAMPI molto meglio farrlo diventare al GESTORE, oppure il capo AREA le chiavi indicizzate

Come scritto non pretendere di fare un DB tramite forum.

Ci sarebbero 1000 domande da rispondere.....
La cosa migliore è una chiaccherata con uno capace, dove gli dichiari quali sono i dati in tuo possesso e cosa vuoi ottenere in seguito dal DB.
Casomai ad una specifica domanda potro rispondere se sono all'altezza.
Un saluto

Nota, Io farei tabelle\query e maschera( se occorono) con solo 1/2 record inseriti, DA qui verificherei che il DB sia corretto e alla fine immetterei i dati da excel.

Ps. ultimamente ho fatto un DB raccolta funghi, ci ho ragionato sopra e alla fine ho deciso di fare 4 tabelle.
1 solo ora, minuti e secondi (esigenze dl DB per inquadrammi meglio la LUNA)
2 solo i giorni nei prossimi 50 anni
3 tutte i nomi e fasi della luna
4 tabella di raccolta, fra tante celle c'era una cella che doveva dirmi come sara la fase lunare 1l 1/8/2040 alle ore 15.00. Per riuscire a troavarla ho dovuto creare le prime tre tabelle
Pps. Naturalmente pensavo all'inizio di poterlo fare con una/due tabelle.

radeon_snorky
23-05-2011, 09:34
riprendo la discussione e ringrazio Raffaele53 per le risposte
il fatto è che è passato parecchio tempo e ho avuto tutt'altro da fare...
però in compenso ho un file mdb creato da un amico che dovrebbe rispondere al 99% le mie necessità...
come posso postarlo sul forum in modo che si capisca? una immagine da access è da escludere (avevo la trial, ora è scaduta)
se lo apro da vb.net va bene lo stesso? chi si offre volontario ad aiutarmi? :D

emmedi
23-05-2011, 10:11
Puoi caricarlo su un sito di file hosting e postare qui il link.

radeon_snorky
24-05-2011, 15:40
Puoi caricarlo su un sito di file hosting e postare qui il link.
grazie ma non è per postare l'mdb... quanto per mostrare a video le tabelle e le relazioni...

ho fatto uno screen da un access funzionante:
http://www.hwupgrade.it/forum/attachment.php?attachmentid=80328&stc=1&d=1306247778

ora vorrei discutere con voi su come è strutturato questo db e se è funzionale a ciò che vorrei ottenere (considerate che ho spiegato *male* la struttura ad un mio amico che lui ha cercato di saltarci fuori al meglio)

Raffaele53
24-05-2011, 20:15
Ultimamente sono preso...,e non sò se riuscirò a seguirti.

grazie ma non è per postare l'mdb...
Un semplice "screen" non Ci/Ti può essere d'aiuto.

quanto per mostrare a video le tabelle e le relazioni...
Premesso che adesso ci sono i collegamenti, non è ancora sufficente per ragionarci sopra........
Come già suggerito, elimina/ricrea lo stesso database con solo due/righe e casomai modifica nomi/societa/indirizzo in modo che non si possa risalire ai titolari.
Adesso devi spostare il DATABASE con domande dirette sulle cose che non riesci a fare/ottenere.......... Forse, forse qualcuno Ti risponde.