Programma facile facile AIUTO

sabato 16 giugno 2012 - 10.19
Tag Elenco Tags  VB.NET  |  Visual Studio 2010

napster86 Profilo | Newbie

Salve a tutti, sto cercando di creare un programmino per la gestione dei clienti.
Ho creato tre tabelle in un database access di nome "Archivio" mentre le tre tabelle sono:

Cliente - Macchina - Manutenzione

La tabella Cliente contiene le seguenti colonne:
Cognome
Nome
Data di nascita
Codice fiscale

La tabella Macchina:
Codice impianto
Matricola
Marca
Modello

La tabella Manutenzione:
Codice Fiscale
Codice Impianto
Data della manutenzione
Note
Pagamento

La macchina è univoca, mentre ogni cliente può avere una o + macchine... Potreste darmi qualche suggerimento? Grazie infinite!!!
Cordiali saluti

StefanoRicci Profilo | Junior Member

hai appena detto tutto... che suggerimento cerchi?
--------------------------------------

IDE: Visual Studio 2008 Professional Edition
IDE: Visual Studio 2010 Professional Edition

napster86 Profilo | Newbie

Ho creato due form: Cliente e Macchina
Su questi due form aggiungo-elimino-salvo i clienti e le macchine nel database access tramite il BindingNavigator. Fin qui tutto bene.
Il problema che sorge è quando vado a fare la form Manutenzione:
come posso farla?

napster86 Profilo | Newbie

In pratica dovrei correlare le tre tabelle: Cliente (codice fiscale) con Manutenzione (codice fiscale) e Macchina (codice impianto) con Manutenzione (codice impianto) per far si che quando faccio la ricerca di un cliente, il programma mi riporti le macchine che ha e le manutenzioni da fare... Non so come fare, sto provando ma non riesco a venirne a capo... :(

napster86 Profilo | Newbie

Nessuno può aiutarmi?? Please!!

StefanoRicci Profilo | Junior Member

Basta che fai la quarta tabella chw leghi i dati delle tre tabelle... come chiave primaria puoi usare i tre campi in questione
--------------------------------------

IDE: Visual Studio 2008 Professional Edition
IDE: Visual Studio 2010 Professional Edition

napster86 Profilo | Newbie

facendo una quarta tabella, in questo caso non avrei bisogno del codice fiscale e del codice impianto nella tabella manutenzione, giusto?

StefanoRicci Profilo | Junior Member

scusa, avevo letto male... da quello che ti serve puoi volendo evitare la quarta tablella comprimendo in questo modo


738x174 11Kb


quella sottolineata è la chiave primaria...
per manutenzione l'idea è di usare una primaria a se stante, in quanto potresti avere, da quello che hai detto, un cliente che abbia due macchine identiche.... se questo non è vero, in quanto ad una macchina corrisponde uno ed un solo cliente, puoi usare come primaria i campi ID_Cliente ed ID_macchina
--------------------------------------

IDE: Visual Studio 2008 Professional Edition
IDE: Visual Studio 2010 Professional Edition

napster86 Profilo | Newbie

ok... ho creato le due form Cliente e Macchina in cui, tramite il bindingnavigator, mi aggiungo-elimino e salvo i clienti e le macchine dal database... Il problema sorge quando devo fare la form Manutenzione... Come mi riprendo l'id cliente e l'id macchina?

StefanoRicci Profilo | Junior Member

quando crei il record della tabella manutenzione... si da per assunto che tu conosci il cliente per cui la fai e la macchina sui cui agisci...

basta che ti fai una query su queste tabelle e rendi questo risulttato selezionabile tramite qualche controllo (tipo menu)...

se invece vuoi che l'associazione macchina-cliente esista anche al di fuori del fatto che ci fai o meno manutenzione devi ristrutturarti così per forza:


679x129 9Kb

--------------------------------------

IDE: Visual Studio 2008 Professional Edition
IDE: Visual Studio 2010 Professional Edition

napster86 Profilo | Newbie

una query tipo questa?

SELECT * FROM Cliente , Macchina
INNER JOIN Manutenzione
ON( Cliente.ID = Manutenzione.ID_Cliente)
ON(Macchina.ID= Manuitenzione.ID_Macchina)
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5