Progetto access

venerdì 26 maggio 2006 - 11.16

lapiski Profilo | Newbie

Ciao a tutti, vi spiego il mio problema

Allora devo fare un database per una grossa casa farmaceutica, il database deve contenere una lista clienti, ogni cliente deve essere collegato ad una serie di farmaci

il database serve perchè poi l'azienda deve essere in grado che scegliendo un determinato farmaco gli venga fuori tutta la lista dei clienti che comprano quel farmaco

Avete qualche consiglio da darmi in che modo posso crearlo

Grazie infinite ho solo 2 settimane per farlo, ma nn mi viene in mente come farlo



Alessandro

Dampyr Profilo | Junior Member

Lo devi per forza fare in access?

Quanti clienti possono essere inseriti?
quanti farmaci ci possono essere?

Cmq per cominciare devi avere una lista dei campi che ti interessa "memorizzare" sia per l'entità Clienti che per quella Farmaci.

Poi ti crei le tue belle tabelline (in access c'è il wizard che ti da una mano se ti interessa) con i tuoi campi

Poi imposti la relazione tra le due tabelle.

Presumo che la relazione sia molti a molti (1 cliente può avere molti farmaci e un farmaco può avere molti clienti).
In questo caso devi farti un'altra tabella che contenga i vari "legami" tra clienti e prodotti.

Non so se sono stato chiarissimo...
... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

Si posso scegliere tra access o excel

Non ho capito bene la terza tabella come la devo fare...io per ora ho creato la tabella clienti e quella prodotti, ma non so come relazionarli, anche io penso che sia molti a molti, ma quali campi devo relazionare?

grazie
Alessandro

Dampyr Profilo | Junior Member

Per una relazione molti a molti, il modo più semplice è quello di inserire una tabella nella quale tenere il riferimento delle associazioni grazie alle chiavi primarie delle tabelle in relazione...



Ad esempio:

Tabella CLIENTI ha come chiave primaria il campo CODICE_CLIENTE
Tabella PRODOTTI ha come chiave primaria il campo CODICE_PRODOTTO

La tabella per l'associazione tra clienti e prodotti avra come campi CODICE_CLIENTE e CODICE_PRODOTTO, che saranno entrambi chiave primaria (per creare l'effetto di unicità della chiave).
In questo modo puoi associare ad un cliente più prodotti creando più record nella tabella, con lo stesso valore nel campo CODICE_CLIENTE e valori diversi nel campo CODICE_PRODOTTO.

Ho paura di non essere stato chiarissimo, ti allego uno schema ER veloce...


661x294 28Kb



Ciao e buon lavoro
... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

Ok allora ci sono quasi una sola domanda la relazione tra le tre tabelle come? uno a molti e molti ad uno, poi cosi la provo e vediamo come va

Ciao e grazie davvero
Alessandro

Dampyr Profilo | Junior Member

>Ok allora ci sono quasi una sola domanda la relazione tra le
>tre tabelle come? uno a molti e molti ad uno, poi cosi la provo
>e vediamo come va

Si, è uno a molti sia tra CLIENTI e relazioni che tra PRODOTTI e relazioni

>Ciao e grazie davvero
>Alessandro

De nada, spero solo di essere stato abbastanza chiaro
Se la risp ti è andata bene basta solo che chiudi il post accettando la risposta

Ciao e buon lavoro
... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

Riapro il post, chiedendoti un altra cosa, se io voglio che aprendo una query mi domandi che prodotto scegliere, in modo che dopo ho solo i clienti di quel prodotto, come posso fare? spero di aver spiegato bene il problema.

Cmq il resto lo fatto è funziona alla perfezione

Alessandro

Dampyr Profilo | Junior Member

Devi anche creare una applicazione in VBA per caso?

... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

A dire il vero nn saprei dove mettere mano, ma imparo in fretta, in caso se viene piu carino possiamo provare, non so tu cosa mi consigli?

Se pensi che possa servire allego il file cosi vedi a l'abborto che ho fatto fino adesso

Ciiapo
Alessandro

Dampyr Profilo | Junior Member

Per venire più carino sicuramente...
Devi solo vedere se è una cosa che deve usare una persona "che sa" o un utente che proprio non sa nulla di pc...
Se hai tempo, direi che un piccolo programmino in VBA ci starebbe...
La casa farmaceutica deve avere anche la possibilità di inserire dati all'interno della tabelle o chiama te ogni volta?
Se deve fare anche questo direi che un programma in VBA è necessario per evitare l'inserimento di dati cazzoni nelle tabelle...
Il problema sorge se non sai nulla di VB, perchè e vero che i wizard di papà Microsoft fanno miracoli, ma non proprio tutto!
Posta pure qll che hai fatto, gli daò un'occhio sicuramente, appena ho un paio di minuti liberi!
Ciao e buon lavoro!

... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

Allora, in teoria dovrebbero poi usarlo da soli, e penso anche inserire e modificare dati.
Lo scopo principale del database è: se c'è un problema in un determinato farmaco X loro tramite questo database devono selzionare il farmaco, gli appare la lista di tutti i clienti che usano questo farmaco, e in teoria se ci si riesce, tramite che ne so stampa unione, stampare tutte le lettere con le varie intestazioni dei clienti per spedire una lettera a tutti i clienti che hanno quel farmaco

Mamma mia che confusione...io ti allego il file che ho creato fino ad adesso

Dampyr Profilo | Junior Member

Direi che per una cosa del genere, almeno almeno una maschera per l'inserimento e una per la modifica dei dati glieli devi creare, e ti direi che dopo, ormai che ci sei, gli metti anche quella di ricerca dei clienti in base al prodotto e se poi vuoi fare lo sborone, ci metti anche una procedura che ti invia in automatico delle mail o, come dicevi, con lo stampa unione, ti prepara già le lettere intestate agli interessati...
Tu sai però le tue conoscenze di VB, il VBA è molto simile al VB 6 ...
Se devi partire da zero, è fattibilissimo, ma ti ci vorrà un po' per imparare e realizzare qualcosa che non si pianta al primo problema.


... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

Ma il file allegato c'era?
Le mie conoscenze sono 0 sai qualche link che puo aiutarmi, penso che sia importante la maschera della ricerca dei clienti per prodotto ed deve esserci per forza il discorso della stampa

Dampyr Profilo | Junior Member

>Ma il file allegato c'era?

No, non c'era nulla!

>Le mie conoscenze sono 0 sai qualche link che puo aiutarmi, penso
>che sia importante la maschera della ricerca dei clienti per
>prodotto ed deve esserci per forza il discorso della stampa

Ti conviene prendere un buon libro di access, a casa ne ho uno che ho preso qnd ero all'università, e cominciare da li...
Anzi ti dirò di più, se ti interessa il discorso della programmazione ti conviene iniziare già da un linguaggio come VB.net...
Ti trovi qualche tutorial o libro e puoi iniziare tranquillamente...
quando torno a casa ri aggiungo i riferimenti al libro che ho a casa, l'ho trovato molto semplice!
Ciao ciao!
... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

Non penso di avere il tempo per farlo tra una settimana ho finito il tempo a disposizione per il lavoro provo a inserire di nuovo il file

Dampyr Profilo | Junior Member

Scusami ma sono stato assente per alcuni giorni
Allora,ho dato un'occhio al file e mi sembra che la logica sia corretta.
Per un utilizzo da parte di un utente medio necessita di una interfaccia grafica che faciliti l'uso e la visualizzazione.
Basterebbe una maschera che selezionato il cliente visualizzi i prodotti correlati (e viceversa) visualizzando dei campi descrittivi e non solo i campi ID, che andrebbero per buona norma nascosti all'utente!
Se avessi un po' di tempo ti farei una veloce maschera di esempio ma proprio sono incasinatissimo.
E credo che tu nn abbia più tempo poi...
In caso fammi sapere!
Ciao!
... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

Io volevo sostituire ad i codici il nome dei clienti e dei prodotti ma nn ci sono riuscito, per il tempo non so io lavor fino a martedi poi scade il contratto

Alessandro

P.S. questo è la versione aggiornata del database

Dampyr Profilo | Junior Member

Le tabelle sotto vanno bene.
Ora è il loro utilizzo da modificare.
Una pagina di home andava bene, nella quale servono dei pulsati, uno per inserire un nuovo cliente, uno per inserire un nuovo prodotto, e uno per la ricerca.
Tutti e tre devono portare a maschere diverse nelle quali inserire i valori per i rispettivi campi, e in più aggiungere le relazioni.
Purtroppo questo (per quanto ne so io) non si può fare con le sotto tabelle come hai fatto tu, ma ti devi costruire una maschera di interfaccia con i campi text box nei quali immettere i valori che poi verrano salvati nel db...
Spiegarlo dall'inizio per filo e per segno è decisamente un casino, perchè dovrei spiegarti come si fa costruzione di un programma completo.
Hai un po' di tempo ancora, prendi un tutorial in internet su come si programma in VBA e seguilo nella costruzione di maschere legate al db.
Sicuramente per un controllo come quello che devi fare, i wizard di mamma microsoft non sono più sufficienti.
Cmq come ti dicevo, hai ancora un po' di tempo, più che sufficiente per imbastire qualcosa di funzionale.
Ciao!
... cerca di essere il giocatore di scacchi, non il pezzo sulla scacchiera...

lapiski Profilo | Newbie

Una domandina veloce...se voglio impostare che quando apro una query lui mi chieda per cosa la devo fare girare...cerco di spiegarmi meglio, io apro la query prodotti clienti, lui mi chiede per quale idprodotto voglio filtrarla e mi da solo i risultati di quel prodotto...spero di essermi spiegato

Grazie...
per quando riguarda vba penso di nn farcela a impararlo troppo poco tempo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5