Come rendere un campo editabile se le condizioni sono soddisfatte

Permessi Richiesti

Questa sezione richiede il permesso Application Designer dal tuo amministratore di Dominio.

Consulta Quali sono i compiti di Design? per saperne di più riguardo ai permessi per lavorare con il Design Mode e altri strumenti.

Impara come inserire una Formula per rendere la cella di un campo editabile quando le condizioni della formula sono soddisfatte.

Note

La procedura è la stessa sia per le tabelle di Master che di Dettaglio.

Per le tabelle di Dettaglio, trovi la stessa interfaccia andando in Details > [tabella di Dettaglio desiderata] > Configure.

L'azione conduce all'interfaccia che si comporta come quella della tabella di Master nel sotto-pannello Master.

Per maggiori informazioni sui Dettagli (Details), consulta Come collegare una tabella con ulteriori informazioni a una riga: Dettagli.

  1. In Design Mode, vai alla tabella che vuoi modificare.

    Per la tabella di Master, puoi trovare le impostazioni tabella sotto il sotto-pannello Master. Il sotto-pannello Master è il primo pannello che si apre in modo predefinito quando accedi al Design Mode.

    Per le tabelle di Dettaglio (Details), devi andare nel sotto-pannello Details. Scegli una delle tabelle di Dettaglio e clicca su Configure.

  2. Nelle impostazioni della tabella, cliccare sulla tab Restrictions. Trovi le tab nell'angolo in alto a destra delle impostazioni della tabella.

  3. Cliccare sul pulsante Cell Editability Restriction in corrispondenza del campo da restringere. Trovi il pulsante Cell Editability Restriction sotto la colonna Restrictions. L'azione apre il Formula Editor.

    Example

    L'applicazione Warehouse Orders gestisce gli ordini da un magazzino. Ciascuna riga della tabella di Master è un ordine pizzato da un cliente.

    Order Status traccia lo stato di un ordine registrando l'Id dello stato dallo Storage contente i nomi degli stati (e.g. "Placed", "Waiting for Payment", "In Preparation" e così via). Un'applicazione dedicata permette di registrare i differenti stati di Order Status.

    Ciascun pacco spedito con gli articoli ha un suo codice di tracciamento. Gli utenti devono registrarlo nel campo Tracking Number.

    Gli utenti dovrebbero inserire il codice di tracciamento se e solo se l'order status è "Shipping from Warehouse" oppure "Completed" e il campo Order Shipment Date (i.e. la data di spedizione) ha una data.

    La soluzione qui è impiegare una restrizione di editabilità (Cell Editability Restriction) per le celle del campo Tracking Number.

    Il Designer va alle impostazioni della tabella di Master in Design Mode. Clicca sulla tab Restrictions, dopodiché sul pulsante Cell Editability Restriction in corrispondenza del campo Tracking Number

    Il Designer inserisce la formula seguente:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     /*
     La formula controlla:
    
     - se lo stato dell'ordine è "Shipping from the Warehouse" o (OR) "Completed.
     - Se la data di spedizione dell'ordine sia registrata.
    
     Se entrambe (=AND()) le condizioni sono vere, permette di modificare il campo Tracking Number.
    
     La funzione =EQ() controlla se due valori siano uguali.
     OrderStatusId è il campo Numerico che registra l'Id dello stato dell'ordine.
     $CURRENTSTORAGE.OrderStatusId è la variabile di sistema che si riferisce al valore di OrderStatusId.
     "5" è l'Id dello stato dell'ordine "Shipping from the Warehouse".
     "6" è l'Id dello stato dell'ordine "Completed".
    
     La funzione =ISNOTNULL() controlla se la cella di un campo non sia vuota. 
     In questo caso, =ISNOTNULL() controlla se il campo $CURRENTSTORAGE.OrderShipmentDate è vuoto o meno.
     $CURRENTSTORAGE.OrderShipmentDate è una variabile di sistema che si riferisce al valore del campo OrderShipmentDate.
    
     La funzione =OR() accetta come parametri un qualsiasi numero di formule.
     =OR() verifica che almeno uno dei parametri sia soddisfatto.
    
     La funzione =AND() accetta come parametri quante formule si desidera.
     =AND() verifica che tutti i parametri siano soddisfatti.
     Solo in questo caso gli utenti possono modificare il campo.
     */
    
     =AND(
          =OR(
                =EQ($CURRENTSTORAGE.OrderStatusId; 5);
                =EQ($CURRENTSTORAGE.OrderStatusId; 6)
         );
         =ISNOTNULL($CURRENTSTORAGE.OrderShipmentDate)
    )
    

    Il Designer conferma e salva i cambiamenti in Design Mode.

    Ora, l'applicazione abilita l'editabilità per Tracking Number se e solo se:

    • lo stato dell'ordine è "Shipping from the Warehouse" o "Completed".
    • l'utente ha registrato la data di spedizione dell'ordine.

  4. Cliccare sul pulsante Save per salvare la restrizione di editabilità di cella (Cell Editability Restriction). Puoi trovare il pulsante Save nell'angolo in alto a sinistra del Design Mode.

Success

L'applicazione sbloccherà una cella per inserire i dati se e solo se le condizioni della formula sono soddisfatte.