Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 33
  1. #1

    Passaggio dati da una maschera a un altra con access

    Ciao a tutti in un database access ho preparato 2 maschere che hanno come origine record 2 tabelle: AnagraficaClienti e Appuntamenti (le maschere sono nominate come le tabelle da cui prendono origine)

    Una volta compilata una scheda in Anagrafica vorrei che tramite un pulsante "NuovoAppuntamento" venga aperta la maschera Appuntamenti con il nome della persona già compilato, è possibile fare una cosa del genere?

    Il nome della persona in angrafica è una casella di testo, mentre nella maschera Appuntamenti è una casella combinata

  2. #2
    per farsi si può fare, basta un forms!appuntamenti![metti_il_nome_del_campo] = forms!AnagraficaClienti![metti_il_nome_del_campo]

    mi sembra però che ci sia qualcosa di sbagliato nella logica del db. nella tabella appuntamenti memorizzi solo la pk del record della tabella anagraficaclienti o no?

    nel caso non sarebbe più semplice usare una sottomaschera?
    Il numero di pecorelle scannate dai pastori è di gran lunga superiore al numero di pecorelle mangiate dai lupi. Per cui, se qualcuno si proponesse di essere il vostro pastore per salvarvi dai lupi, pensateci bene.

  3. #3
    Ciao borgodiavalon nella maschera appuntamenti riporto "Referente" e "NomeDitta" presi dalla tabella Anagrafica e risultano come casella combinata (controlli associati alla tabella Anagrafica)

    Se posso inserisco le immagini delle relazioni e della maschera

    Vorrei non inserire la maschera Appuntamenti come sottomaschera perchè nella maschera AnagraficaClienti ho messo 2 maschere basate su query per il riepilogo di appuntamenti e interventi con la possibilità di cliccare sui "record di riepilogo" per aprire le rispettive maschere in modifica record

    relazioni:


    Maschera AnagraficaClienti:


    Ho provato seguendo il tuo consiglio, non viene segnalato alcun errore ma non vengono compilati i 2 campi in automatico nella maschera Appuntamenti

    (Ho inserito i dati in valore predefinito della casella combinata)

  4. #4
    Ho provato a fare così:

    Nell' origine riga di un campo che vorrei fosse riportato nella maschera Appuntamenti ho modificato la query della casella combinata associata alla tabella Appuntamenti in questo modo:

    codice:
     
    SELECT [AnagraficaClienti].[ID], [AnagraficaClienti].[NomeDitta] FROM AnagraficaClienti WHERE [AnagraficaClienti].[NomeDitta]=[Forms]![AnagraficaClienti]![NomeDitta] ORDER BY [NomeDitta];
    Aggiungendo in pratica la condizione where riferita al campo che si trova nella maschera attiva AnagraficaClienti

    Facendo così mi ritrovo la casella combinata non compilata da subito, ma con un unica voce in elenco

    Sarà corretto?

  5. #5
    allora mi sembra non corretto riportare entrambi i dati nella tabella appuntamenti in quanto il dato lo puoi poi ricavare dalla tabella anagrafica, sarebbe meglio portare solo l'id della tabella anagrafica come chiave esterna nella tabella appuntamenti.

    poi nella maschera appuntamenti crei 3 campi normali (diciamo per esempio txt_id_anagrafica txt_ditta txt_referente (di cui txt_id_anagrafica non so dirti se associato o meno perchè non so come e quando salvi i dati))

    come origine controllo di txt_ditta:
    =DLookUp("nomeditta";"[anagraficaclienti]";"[id]=" & [txt_id_anagrafica])

    come origine controllo di txt_referente:
    =DLookUp("referente";"[anagraficaclienti]";"[id]=" & [txt_id_anagrafica])

    sul pulsante nuovo appuntamento nell'evento click inserisci:
    forms!appuntamenti!txt_id_anagrafica= forms!AnagraficaClienti![metti_il_nome_del_campo(che dovrà essere quello dove risiede l'id della tabella anagrafica)]
    Il numero di pecorelle scannate dai pastori è di gran lunga superiore al numero di pecorelle mangiate dai lupi. Per cui, se qualcuno si proponesse di essere il vostro pastore per salvarvi dai lupi, pensateci bene.

  6. #6
    Grazie tante per il consiglio adesso lo provo subito

  7. #7
    Per il salvataggio dei record ho inserito il pulsante salva che su click sposta avanti di un record e poi di nuovo indietro, visto che il pulsante salva che si può creare col wizard non funziona praticamente quasi mai (almeno per me)

  8. #8
    quibdi hai i vari campi associati ai campi della tabella. suppongo che la maschera appuntamenti la apri in dataentry per avere tutti i campi vuoti pronti per l'inserimento dei dati.
    Il numero di pecorelle scannate dai pastori è di gran lunga superiore al numero di pecorelle mangiate dai lupi. Per cui, se qualcuno si proponesse di essere il vostro pastore per salvarvi dai lupi, pensateci bene.

  9. #9
    Inizialmente all' apertura si posizionava su nuovo record, poi ho tolto questa opzione perchè qualsiasi cosa impostassi all' apertura stava tutto vuoto

    Ho eseguito la modifica che mi hai consigliato:

    come origine controllo di txt_ditta:
    =DLookUp("NomeDitta";"[AnagraficaClienti]";"[ID]=" & [ID])

    come origine controllo di txt_referente:
    =DLookUp("Referente";"[AnagraficaClienti]";"[ID]=" & [ID])


    txt_id_anagrafica txt_ditta non l' ho ancora messo nella maschera appuntamenti

    Nel pulsante che sta nella maschera anagrafica ho messo
    codice:
    Private Sub NewAppuntamento_Click()
    On Error GoTo NewAppuntamento_Click_Err
    
    Forms!Appuntamenti!ID = Forms!AnagraficaClienti![Referente]
    
    NewAppuntamento_Click_Exit:
        Exit Sub
    
    NewAppuntamento_Click_Err:
        MsgBox Error$
        Resume NewAppuntamento_Click_Exit
    
    End Sub
    Adesso succede così:

    Aprendo la maschera anagrafica mi saltano fuori i popup stile query che mi chiedono nomeditta e referente
    cliccando su ok per continuare si apre la maschera anagrafica
    cliccando sul pulsante nuovo appuntamento altro messaggio con scritto che non si trova la maschera appuntamenti

    Ho modificato pure la tabella appuntamenti, richiamando solo l' id dell' anagrafica che ha preso il nome di ID1


    Forse dovrei scrivere così:

    Forms!Appuntamenti!ID1 = Forms!AnagraficaClienti![ID]

    Anche perchè come ho scritto prima starei cercando un uguaglianza tra un numero e del testo


    I pop up stile query erano dovuti alla presenza della sottomaschera riepilogo appuntamenti, che ovviamente avendo modificato la tabella và aggiornata e sono spariti quindi i pop up

    Resta però il messaggio quando clicco su nuovo appuntamento che non si trova la maschera appuntamenti

  10. #10
    dai uno sguardo a questo esempio
    Il numero di pecorelle scannate dai pastori è di gran lunga superiore al numero di pecorelle mangiate dai lupi. Per cui, se qualcuno si proponesse di essere il vostro pastore per salvarvi dai lupi, pensateci bene.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.