Formattazione condizionale su un campo con condizione applicata in un'

di il
10 risposte

Formattazione condizionale su un campo con condizione applicata in un'

Buongiorno, ho una maschera A su cui è presente un pulsante che apre la maschera B. Su B sono presenti due caselle di testo Non associate che riportano due valori numerici chiamati C e D. Nella maschera A c'è una casella di testo non associata detta E che dovrebbe colorarsi in base ad una condizione applicata ai campi C e D, ovvero: se C è maggiore o uguale a D, E diventa verde, se C è minore di D, E diventa rosso. Sul campo E ho applicato la Formattazione condizionale con questa regola: 

Maschere![MascheraB]![CampoC]>=Maschere![MascheraB]![CampoD] allora E diventa verde
Maschere![MascheraB]![CampoC]<Maschere![MascheraB]![CampoD] allora E diventa rosso.


In pratica il campo che deve colorarsi si trova in una maschera diversa da quella dove devono avverarsi le condizioni. Ho provato ad inserire tutto sulla stessa maschera e funziona, quindi ovviamente il problema è far comunicare le due maschere. Può influire il modo in cui sono collegate le due maschere? ovvero il pulsante che apre la maschera B aziona una macro di apertura maschera con la condizione che gli ID siano uguali. Qualcuno può indicarmi dove sbaglio? Grazie

10 Risposte

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    Ma questa cosa la fai per prova o ha un sensto tecnico…?

    Ora se il Controllo in A, ha una F.C. dipendente da B  eB è ancora chiusa.. non è una bella idea quella che applichi…

    In ogni caso credo serva fare un Recalc o un Refresh della Maschera A dopo che hai aperto la maschera B, ma se la B è aperta in modalità DIALOG ovviamente non funziona, fintanto che non chiudi la B.

    Insomma quello che fai è quanto meno anomalo, non tecnicamente idoneo, partendo dalla necessità di usare controlli non associati, sarebbe più opportuno che nella F.C. del Controllo in A, ci fosse una Funzione, che dichiari Public e che al suo interno abbia la valutazione della maschera se aperta o meno e che restituisca un valore a prescindere tale da far funzionare la F.C. in modo più tecnico.

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    Riprendo…

    Need input data:

    1. La pseudo-popup come la chiudi?
    2. Hai possibilità di riportare il result del form alla chiusura in base ai dati da riportare? Tipo yes a>b no a=b abort a<b
    3. Una variabile globale intera valore 1, 2, 3 a seconda dei casi?
    4. Una tabella di comodo dove inserisci i campi a e b per poi leggerne i valori nella form A?
  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    Innazitutto grazie Alex. Questo rettangolino colorato mi permette un riscontro immediato di ciò che accade nei controlli C e D dove ci sono dei prezzi, senza bisogno di aprire la maschera B dove loro si trovano, cioè io dalla maschera A in base al colore del rettangolino so se il mio prezzo va bene (rettangolino verde) oppure no (rettangolino rosso). Pensi che esista un metodo migliore, ovvero più tecnico per ottenere quel risultato. Se invece va bene potresti darmi qualche indicazioni in più per applicare il metodo che hai suggerito visto che non ho la più pallida idea di come agire? Grazie comunque per l'attenzione.

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    Grazie anche a te Andrea. Purtroppo non capisco praticamente niente di quello che dici.  Nel messaggio di risposta che ho dato ad Alex spiego qual è il risultato che voglio ottenere, quindi chiedo anche a te se la soluzione che ho pensato è valida oppure se ce ne sono di migliori, più tecniche. Grazie ancora

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    15/05/2024 - faoineag ha scritto:


    Grazie anche a te Andrea. Purtroppo non capisco praticamente niente di quello che dici.  Nel messaggio di risposta che ho dato ad Alex spiego qual è il risultato che voglio ottenere, quindi chiedo anche a te se la soluzione che ho pensato è valida oppure se ce ne sono di migliori, più tecniche. Grazie ancora

    Adesso sono io a non capire… se sono prezzi perché aprire un popup? Supposto che i dati li prendi da una tabella articoli, avrai un prezzo di acquisto memorizzato. Se a vista ti viene difficoltoso capire se 1,1 è minore di 1,2… beh, puoi fare un calcolo e colorare il prezzo vendita direttamente.

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    15/05/2024 - sihsandrea ha scritto:


    15/05/2024 - faoineag ha scritto:


    Grazie anche a te Andrea. Purtroppo non capisco praticamente niente di quello che dici.  Nel messaggio di risposta che ho dato ad Alex spiego qual è il risultato che voglio ottenere, quindi chiedo anche a te se la soluzione che ho pensato è valida oppure se ce ne sono di migliori, più tecniche. Grazie ancora

    Adesso sono io a non capire… se sono prezzi perché aprire un popup? Supposto che i dati li prendi da una tabella articoli, avrai un prezzo di acquisto memorizzato. Se a vista ti viene difficoltoso capire se 1,1 è minore di 1,2… beh, puoi fare un calcolo e colorare il prezzo vendita direttamente.

    Il campo C è un campo calcolato che restituisce il valore minimo dei prezzi concorrenti, il campo D è il mio prezzo. Questo nella maschera B. Se il campo C è uguale o minore a D il rettangolino presente sulla maschera A si colora di verde, se invece il campo C è maggiore di D, il rettangolino si colora di rosso

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    15/05/2024 - faoineag ha scritto:


    Il campo C è un campo calcolato che restituisce il valore minimo dei prezzi concorrenti

    Come lo ricavi? Fai una ricerca su internet segnando su un pezzo di carta i prezzi dei concorrenti? O magari su una tabella….

    15/05/2024 - faoineag ha scritto:


    il campo D è il mio prezzo.

    Lo memorizzi da qualche parte?

    Se min(concorrenza) -mioprezzo<0 allora rosso altrimenti verde

     tutto questo senza dover digitare nulla e senza aprire un popup.

    A che serve aprire una maschera B?

    Sostanzialmente questa è la risposta (domanda) che ti ha fatto alex.

    Io ti avevo chiesto dati per capire la logica che stai usando, azzardando ipotesi e probabili soluzioni.

    Nulla vieta di aprire e chiudere maschere per colorare un edit, ma…

    Tornando alla risposta di alex…

    15/05/2024 - @Alex ha scritto:


    sarebbe più opportuno che nella F.C. del Controllo in A, ci fosse una Funzione, che dichiari Public e che al suo interno abbia la valutazione della maschera se aperta o meno e che restituisca un valore a prescindere tale da far funzionare la F.C. in modo più tecnico.

    In altri termini, non puoi considerare le.due cose senza un comune denominatore o un cordone ombelicale, che sia la funzione, che sia una variabile globale che viene settata dalla maschera B, che sia una tabella del database che è disponibile nella maschera A tramite sql (si citava un refresh o requery).

    Tra queste, ho citato altri possibili modi di passare informazioni tra maschere… tipo il result alla chiusura

    Se concorrenza=mioprezzo result 1 altrimenti result 2

    Al ritorno sulla maschera A se resul1 allora colore giallo altrimenti lilla…

    Ribadisco, comunque, che non hai bisogno della maschera B se non per caricare i prezzi concorrenza e basta (il tuo prezzo lo modifichi in anagrafica articolo)

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    15/05/2024 - faoineag ha scritto:


    Su B sono presenti due caselle di testo Non associate che riportano due valori numerici chiamati C e D.

    Forse ho capito male.

    Ma: Se le caselle di testo non sono associate, come fanno, all'apertura della maschera, a riportare dei valori numerici?
    O meglio, come fanno a riportare i valori esatti relativi al record che stai visualizzando nella maschera A?

    Comunque, o dalla maschera A fai un lookup cercando il valore nella tabella correllata alla maschera B, fai i dovuti calcoli e colori la relativa casella della maschera A, oppure, nella maschera A, nella fonte dati crei una query che ricavi anche i valori della maschera B e li usi per la formattazione condizionale.
    Però i dati della maschera B devono essere salvati da qualche parte, altrimenti avrai sempre valore null.

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    Il campo C è un campo calcolato che restituisce il valore minimo dei prezzi concorrenti, il campo D è il mio prezzo. Questo nella maschera B. Se il campo C è uguale o minore a D il rettangolino presente sulla maschera A si colora di verde, se invece il campo C è maggiore di D, il rettangolino si colora di rosso

    A mio avviso stai sbagliando approccio e mi pareva di averlo già espresso.

    Parti dal presupposto che i dati NON sono nelle maschere ma nelle Tabelle, sicchè a maggior ragione stai lavorando con Controlli NON ASSOCIATI, devi evitare riferimenti inutili con le Maschere…

    Se i dati da correlare alla Maschera principale devono avere il Legame del campo chiave puoi usare le funzioni di aggregazione sui domini, quindi puoi usare DLookup/DMax/Dmin passando a queste funzioni il CRITERIO.

    La F.C. può tranquillamente a questo punto fare il suo lavoro senza che tu debba aprire la maschera esterna…

  • Re: Formattazione condizionale su un campo con condizione applicata in un'

    Vi ringrazio tutti, devo ragionarci sopra, probabilmente dovrò smontare il mio procedimento alla luce dei vostri suggerimenti

Devi accedere o registrarti per scrivere nel forum
10 risposte