Collegamento maschere

di il
14 risposte

Collegamento maschere

Buongiorno a tutti,
anticipo che sono nuovo del settore e per urgenza lavorativa sto creando un database clienti per poterlo utilizza nella mia attività. In questo momento sto riscontrando un problema di collegamento delle maschere, mi spiego meglio.
Ho creato una maschera "Home" dove riporto una tabella con i dati principali del cliente e la mia intenzione è tramite il pulsante di comando "Apri maschere" di aprire la mia 2° maschere "Scheda clienti" (dove all'interno c'è la situazione dettagliata del cliente). Ho inserito il campo id "non visibile" su entrambe le maschere ma non riesco a fare in modo di poterle collegare fra di loro.

Mi riuscite a dare qualche consiglio?

Grazie

14 Risposte

  • Re: Collegamento maschere

    2 maschere non si possono collegare se non impostando una delle 2 sub dell'altra ma non mi pare questo il caso.
    La cosa + semplice è aprire tramite vba la seconda form passandogli il valore dell'id di riferimento come filtro
  • Re: Collegamento maschere

    Non è una questione di collegamento tra 2 maschere. Basta semplicemente utilizzare il pulsante per aprire la seconda maschera diciamo "di dettaglio" del cliente sfruttando la proprietà openargs:
    https://docs.microsoft.com/en-us/office/vba/api/access.form.openargs
  • Re: Collegamento maschere

    Ma che OpenArgs.... coem detto s Muttley si sfrutta la WHERE CONDITION parametro di OpenForm.

    Cerchiamo di semplificare le cose rendendole funzionali.
  • Re: Collegamento maschere

    Ragazzi siete gentilissimi per i consigli dati,
    purtroppo per inesperienza sotto i vostri consigli non sono riuscito a seguire le indicazione date.

    Presumo che il collegamento al di là delle maschere non funzioni proprio a partire dalle tabelle.
    Le due tabelle hanno gli stessi campi, fondamentalmente cambia solo il nome della tabella perché le ho fatte separatamente, ma anche facendo una relazione non riesco a farle combaciare.

    Penso proprio che mi servirà una guida sempliece ma efficace per potermi chiarire le idee?

    Avete dei consigli?

    Grazie ancora
  • Re: Collegamento maschere

    giuse91 ha scritto:


    Ragazzi siete gentilissimi per i consigli dati,
    purtroppo per inesperienza sotto i vostri consigli non sono riuscito a seguire le indicazione date.

    Presumo che il collegamento al di là delle maschere non funzioni proprio a partire dalle tabelle.
    Le due tabelle hanno gli stessi campi, fondamentalmente cambia solo il nome della tabella perché le ho fatte separatamente, ma anche facendo una relazione non riesco a farle combaciare.

    Penso proprio che mi servirà una guida sempliece ma efficace per potermi chiarire le idee?

    Avete dei consigli?

    Grazie ancora
    da quello che ho capito da questo tuo ultimo messaggio temo ci sia un grave problema di struttura...
    fammi capire... hai una tabella cliente (C1) che ha solo alcuni campi ed un'altra sempre per cliente (C2) con gli stessi + altri?!?!
    dimmi di no, dimmi che ho capito male
  • Re: Collegamento maschere

    Non hai capito molto male!!!!
    La mia tabella principale (Home) a nome cliente, data di nascita, operatore di chi gestisce il cliente e la data di contatto, mentre la seconda tabella ha gli stessi identici campi ma avevo pensato di costruirli esclusivamente per poi inserire all'interno della maschera tutti i dettagli anagrafici, reddituali e operativi del cliente. A mia discolpa è la primissima volta che mi cimento. ahahahah
  • Re: Collegamento maschere

    Ok per la WHERE CONDITION. Scusa Alex ma perchè non usare openargs? Quale complicazione c'è?
  • Re: Collegamento maschere

    giuse91 ha scritto:


    Non hai capito molto male!!!!
    La mia tabella principale (Home) a nome cliente, data di nascita, operatore di chi gestisce il cliente e la data di contatto, mentre la seconda tabella ha gli stessi identici campi ma avevo pensato di costruirli esclusivamente per poi inserire all'interno della maschera tutti i dettagli anagrafici, reddituali e operativi del cliente. A mia discolpa è la primissima volta che mi cimento. ahahahah
    allora se ho capito bene (come temevo) ... no no no!
    rifare
    Sei alle prime armi, ok, quindi non sarai andato molto avanti nel tuo progetto giusto?
    Ti consiglio di ripartire da 0 e strutturare bene le (LA?) tabella.
    Facciamo così, spiega di cosa "parla" il programma che vuoi creare.
    Gestione clienti e relativi contratti? e questi sono gestiti da vari operatori? uno per contratto?
    Supponiamo quest'ultimo caso, allora devi avere:
    1) tabella anagrafica dei clienti (es: T_CLIENTI con PK id_cliente o cf_cliente o piva_cliente ma ti suggerisco la prima) con TUTTI i dati anagrafici del cliente aggiornati all'ultima situazione
    2) tabella anagrafica degli operatori (es: T_OPERATORI con PK id_operatore o cf_operatore) con tutti i dati anagrafici degli operatori
    3) tabella contratti (es: T_CONTRATTI con PK id_contratto) in cui riporti i dati del contratto e sicuramente id_cliente e id_operatore e molto probabilmente almeno qualche campo del cliente che potrebbe cambiare nel tempo ma che deve rimanere come storico del contratto.

    Tornando quindi al tuo "problema" non dovresti quindi far riferimento a 2 tabelle per cliente ma ad una sola e rimane valido il metodo che ti ho suggerito al precedente mio post
  • Re: Collegamento maschere

    eddy1973 ha scritto:


    Ok per la WHERE CONDITION. Scusa Alex ma perchè non usare openargs? Quale complicazione c'è?
    sei costretto a scrivere codice che esegua il filtro all'open in base al parametro quando puoi farlo nativamente passando il criterio come filtro, sulle prestazioni non mi sbilancio invece, almeno per maschere associate mi sembra meglio, no?
    Discorso diverso se hai una form caricata a runtime (es da adodb)
  • Re: Collegamento maschere

    eddy1973 ha scritto:


    Ok per la WHERE CONDITION. Scusa Alex ma perchè non usare openargs? Quale complicazione c'è?
    Perché la WHERE CONDITION è fatta proprio per questo, senza complicazioni.
    Usare openargs richiede più codice ma alla fine vai sempre a modificare la proprietà FILTER... quindi è una azione inutile, di conseguenza tecnicamente sconveniente.

    Poi come dico sempre si può complicare tantissimo la cosa... ma ragionando si capisce che meno c'è e tecnicamente meglio è...
  • Re: Collegamento maschere

    Ok, ci provo a spiegarlo.
    Il database mi servirà per registrare i profili dei clienti.
    Di conseguenza il mio obbiettivo è creare 1 maschera dove avere i record di tutti i clienti con al massimo un tasto di ricerca se voglio selezionare un cliente specifico, nella tabella della prima maschera metterei, Cognome - Nome - Data di nascita - Operatore (questo mi servirà solo per capire chi ha gestito quel profilo, ma non necessito di avere una scheda operatore, al massimo successivamente creerò delle query se desidero vedere chi ha gestito solo quell'operatore) - Data di contatto e al fianco di ogni record inserire un comando per aprire la maschera per la scheda cliente.
    La seconda maschera (scheda cliente) deve essere quella dove visualizzo il profilo del singolo cliente da poter gestire.
    A essere onesto, so di non avere la competenza, ma io come logica penso di fare tutto in modo semplice. Diciamo che leggere quello che mi avete scritto voi con i codici di programmazione mi ha messo solo in difficoltà anche se sono andato a informarmi.

    I vostri messaggi li ho letti solo adesso, ma ieri sera ho riprovato da 0 creando solo una unica tabella, risultato rimango sempre in difficoltà perché vorrei aprire la seconda maschera per quel preciso record che creo ma non funge.

    Ragazzi comunque a parte la difficoltà devo dire che mi sta incuriosendo questo mondo
  • Re: Collegamento maschere

    Io dovessi gestire come dici tu avrei una maschera continua con tutti i record dei clienti (pochi campi) e nell'intestazione maschera (o piè, come preferisci) inserirei il/i filtro/i.
    al click sul pulsante o campo o quello che vuoi (a me piace un pulsante trasparente in primo piano a coprire tutto il corpo con campi bloccati) metti il codice
    DoCmd.OpenForm "form_cliente", , , "id_cliente=" & Me!id_cliente
    tu cos'hai provato?
  • Re: Collegamento maschere

    Io come secondo tentativo ho provato a combinare tutto con una unica tabella, ma all'arrivo del collegamento tra le maschere provo a mettere la WHERE CONDITION e non funge nulla. C'è un video su youtube che spiega precisamente l'operazione che voglio fare io ma purtroppo non riesco a farla. Bha
  • Re: Collegamento maschere

    giuse91 ha scritto:


    Io come secondo tentativo ho provato a combinare tutto con una unica tabella, ma all'arrivo del collegamento tra le maschere provo a mettere la WHERE CONDITION e non funge nulla. C'è un video su youtube che spiega precisamente l'operazione che voglio fare io ma purtroppo non riesco a farla. Bha
    però capisci che sia impossibile darti una mano se non posti una riga di codice e dici solo "non funge" ?!
Devi accedere o registrarti per scrivere nel forum
14 risposte