Newsgroup: it.comp.appl.access
Titolo: Assegnare un lavoro a diversi operai

Vorrei Fare un archivio di clienti e ad ogni cliente  assegnare un archivio
di lavori che gli ho eseguito.Ad ogni  nuovo lavoro però ci devo assegnare
un numero x di operai da un altro archivio di operai.Come dovrei creare le
tabelle?
   TAB Clienti
   TAB Operai
   TAB Lavori
  Ad ogni lavoro l'utente dovrà asseganre il nome degli operai che ci hanno
lavorato.E deve poter interrogare il database per sapere quanti e quali
lavori ha fatto un certo operaio alla fine del mese.
grazie mille.

 ha scritto nel messaggio
news:SR0v6.91282$lj4.2...@news6.giganews.com...


 wrote in message
iEkv6.22129$dJ6.1...@news.infostrada.it...


 ha scritto nel messaggio
news:SR0v6.91282$lj4.2...@news6.giganews.com...

Io ho fatto così:
Tabelle: Clienti; Lavori; DettaglioLavori;Operai;Qualifiche
Clienti:
IDCliente
Cognome
Nome
.......
Lavori:
IDLavoro
IDCliente
InizioLavoro
FineLavoro
StatoLavoro
Pagamento
......
DettaglioLavori:
IDLavoro
IDOperaio
Orelavorate
...........
Operai
IDOperaio
IDQualifica
Cognome
Nome
.......
Qualifiche:
IDQualifica
Descrizione
Metti le tabelle in relazione uno a molti e poi crea le maschere: Clienti;
Operai;Mansioni; Lavori con sottomaschera DettaglioLavori( i nomi delle
maschere corrispondono all'origine dati); Se intendi utilizzare alla
chiamata la maschera "Lavori" puoi inserire sul controllo IDCliente una
routine che ti permette di aprire la maschera "Clienti" ed inserirci i dati
del nuovo cliente;dovrebbe funzionare

 ha scritto nel messaggio
news:SR0v6.91282$lj4.2...@news6.giganews.com...

OK per la tabella TABClienti che potrebbe avere una struttura simile a
questa:
IDCliente                Contatore e chiave primaria
RagioneSociale       Testo
ecc. ecc.
OK anche per la tabella TABLavori che potrebbe avere una struttura simile a
questa:
IDLavoro                Contatore e chiave primaria
IDCliente                Numerico
DescrLavoro           Testo
DataInizio                Data/ora
DataFine                 Data/ora
ecc. ecc.
Queste due tabelle debbono essere messe in relazione uno-a-molti tramite i
campi IDCliente; infatti un cliente ha più lavori. Per questa relazione
definisciti anche l'integrità referenziale con l'opzione "Elimina record
corellati a catena".
OK anche per TABOperai che avrà una struttura simile a questa:
IDOperaio                Contatore e chiave primaria
Nome                        Testo
ecc. ecc.
Poichè un operaio partecipa a più lavori ed un lavoro è fatto da più operai,
la relazione tra TABLavori e TABOperai è del tipo molti-a-molti; in Access
una relazione molti-a-molti tra due tabelle si crea tramite una terza
tabella che sarà in relazione uno-a-molti con ambedue le altre due tabelle.
Devi pertanto crearti un'altra tabella; chiamala TABOpeLav e dalle una
struttura simile a questa:
IDOpeLav                Contatore e chiave primaria
IDLavoro                  Numerico
IDOperaio                Numerico
Data1                        Data/ora
QtàOre                    Data/ora oppure Numerico
Creati una relazione uno-a-molti tra TABOpeLav e TABLavori tramite i campi
IDLavoro e una relazione uno-a-molti tra TABOpeLAv e TABOperai tramite i
campi IDOperaio. Per ambedue le relazioni creati l'integrità referenziale.
Arrivati a questo punto, vediamo come aggiornare le quattro tabelle.
Creati una maschera con la quale aggiornare TABClienti.
Creati una maschera per aggiornare TABOperai.
Ora pensiamo ad inserire i dati delle lavorazioni.
Creati una maschera con visualizzazione a Maschera singola e che ha come
origine record TABLavori: chiamala MaskLavori.
In MaskLavori inserisci anche una casella combinata associata al campo
IDCliente di TABLavori; come origine riga di questa combo indica una query
che è basata su TABClienti; con questa casella combinata sceglierai il
cliente cui appartiene il lavoro.
In MaskLavori DEVI inserire un controllo sottomaschera che conterrà una
maschera a Maschere continue che chiamerai MaskOpeLav.
MaskOpeLav deve avere come origine record la tabella TABOpeLav; dovrà
contenere anche una casella combinata associata al campo IDOperaio di
TABOpeLav; come origine riga di questa combo indica una query che è basata
su TABOperai; con questa casella combinata sceglierai il nome di uno degli
operai che ha partecipato al lavoro.
Avendo così creato ed aggiornato le tue tabelle, per sapere a fine mese
quali lavori ha fatto un determinato operaio, creati una query di selezione
parametrica basata su TABOpeLav in join con TABLavori.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

JEUNESSE COME INVERTIRE IL PROCESSO DI INVECCHIAMENTO
Buonasera vorrei presentarle l'azienda per cui lavoro che ha avviato un anno dopo aver vinto il nobel per il progetto nel 2009 commercializzando l'idea nel 2010 ......
il Dr. Nathan Newman:
Creatore della linea LUMINESCE™ ( UN LIFTING AD EFFETTO IMMEDIATO 100% NATURALE con proprietà di recupero completo cellulare al di sopra di qualsiasi prodotto sul mercato )
•Specializzato in Chirurgia Estetica Avanzata, Dermatologia & Laser,Terapie Con Cellule Staminali adulte, dirige la propria Clinica aBeverly Hills, CA. puoi trovare molte notizie su di lui su Google.
• Autore di molti studi e articoli scientifici pubblicati su prestigiose riviste.Presenta regolarmente in TV e alla radio programmi sugli ultimi progressi nella chirurgia estetica.
 
vi esorto a dare un occhiata al link qui sotto dove troverà una brevissima spiegazione a video
http://backoffice.jeunesseglobal.com.
..ideo/?m=823430
 
OPPURE SE FOSSE GIA INTENZIONATA A VEDERE PREZZI E PRODOTTO LO POTRA TROVARE DIRETTAMENTE QUI PRESSO QUESTO SITO :
http://www.diamondstars.jeunesseglobal.com/
 
 
Jeunesse Global vi offre la possibilità di diventare un suo collaboratore e fare soldi E NON POCHI !!!
Per ulteriori domande sono a vostra disposizione. Nella speranza che tu diventi un cliente o meglio ancora un collaboratore, ti porgo i miei più distinti saluti.
 
 
Sir. Anthony Dominic
Cell +39-393-333-988-7
Skype : dominicvr