Recentemente è stata migliorata la nuova gestione oggetti (effettuata tramite costruttore A36), cogliamo quindi l’occasione per descriverne in dettaglio le funzionalità.

Breve descrizione

Il nuovo costruttore A36 consente di gestire i dati di un oggetto in modo semplice e facilmente configurabile.
La gestione avviene attraverso un input panel o una matrice, adattandosi al device utilizzato (al meglio delle proprie possibilità).

Tramite questo nuovo componente è possibile raggruppare in un’unica interfaccia vari dati eterogenei di un oggetto (dati propri, parametri, note, ecc.).

Oltre a scegliere quali dati mostrare in questa interfaccia, posso anche decidere “come” mostrarli. E’ infatti possibile applicare il layout che si preferisce.

E’ un strumento basato fondamentalmente su 3 componenti:

  • interfaccia grafica: il vero e proprio costruttore A36
  • driver oggetto: API £K89
  • attributi dell’oggetto: API £OAV

Alcuni esempi

Senza avere pretesa di completezza, per comprendere al meglio le funzionalità e le potenzialità dello strumento, vediamone alcuni esempi.

Inserimento ticket

In una sola schermata sono gestiti campi del file, parametri, note e upload allegati:

Inoltre vediamo come la versione mobile sia profondamente diversa (per adattarsi al meglio alle caratteristiche di quel device):

 Modifica account

In questo esempio vediamo come un’opportuna configurazione del layout consente di organizzare i dati al meglio. Vediamo infatti i campi organizzati su più tab, ognuno dei quali è suddiviso in sezioni.

 Modifica struttura tabella

In questo caso vediamo un esempio di modificabilità in matrice:

Come si costruisce?

Costruire una schermata di gestione di un oggetto tramite A36 significa sicuramente definire i campi da gestire. Opzionalmente è possibile impostare controlli aggiuntivi rispetto a quelli previsti a standard.

La definizione dei campi avviene tramite la creazione di uno script di layout in cui è possibile elencare i campi, indicandone il posizionamento (con una sintassi analoga a quella delle sezioni di scheda), il componente grafico con cui deve essere visualizzato, l’eventuale ricerca condizionale e disegnando quindi la schermata da visualizzare.

L’impostazione degli eventuali controlli aggiuntivi avviene tramite la creazione di un programma di exit (di cui esiste il prototipo).
Nella exit è possibile aggiungere controlli da eseguire prima o dopo i controlli standard, così come verificare autorizzazioni specifiche. Viene inoltre chiamata prima e dopo l’esecuzione della scrittura/aggiornamento/cancellazione.

L’associazione tra un oggetto, un layout e un programma di exit è impostata tramite uno script del file SCP_A36 (per le impostazioni standard) o SCP_A36PER (per le personalizzazioni).

Lo script ha il nome del tipo oggetto (tranne alcune eccezioni per le quali fare riferimento alla documentazione).

E’ importante notare che negli script SCP_A36 e SCP_A36PPER è possibile aggiungere dei condizionamenti specifici. Posso quindi dire che una certa configurazione (layout / exit / ecc.) debba valere solo per una determinata condizione. Ad esempio solo per le commesse chiuse, o solo per uno specifico device.

Ad esempio vediamo due casi in cui si vogliono differenziare i layout sulla base di un OAV (I/05):

::VAR Cod=”£CMC00″ Txt=”Commesse” Cnz=”&CO.I/05 = C00″ TipFlt=”LAY” CodFlt=”CMC00″ PgmExi=”B£K89_CMA”
::VAR Cod=”£CMC00″ Txt=”Commesse” Cnz=”&CO.I/05 = M00″ TipFlt=”LAY” CodFlt=”CMM00″ PgmExi=”B£K89_CMA”

In quest’altro invece vediamo una diversificazione in base al device:

::VAR Cod=”003″ Txt=”Generico per Phone” TipFlt=”LAY” CodFlt=”AR_003″ Cnz=”&CO.DEV = P”
::VAR Cod=”002″ Txt=”Generico per Loocup” Cnz=”&CO.DEV = C” TipFlt=”LAY” CodFlt=”AR_002″
::VAR Cod=”004″ Txt=”Generico per Tablet” TipFlt=”LAY” CodFlt=”AR_004″ Cnz=”&CO.DEV = T”
::VAR Cod=”005″ Txt=”Generico per Web” Cnz=”&CO.DEV = W” TipFlt=”LAY” CodFlt=”AR_005″

Scheda di test / esempi

E’ stata sviluppata una scheda di esempio che raggruppa vari esempi e anche una sezione in cui testare gli A36 configurati sul sistema.

La scheda è visibile nella scheda del costruttore A36, nel tab “Scheda esempi A36”. E possibile richiamarla direttamente con il comando SCH LOA36_ES.
In questa scheda si trovano varie sezioni di esempio e varie schede di test.

Le schede di esempio contengono esempi con codici cablati, quindi sono difficilmente utilizzabili al di fuori dell’ambiente di sviluppo del laboratorio Sme.UP.

Le sezioni di test invece sono utilizzabili presso qualunque installazione e consentono di testare tutti gli A36 configurati sul sistema.
Sulla sinistra è presente un Input Panel in cui è possibile configurare il richiamo di un A36 (i campi essenziali sono Tipo/Parametro/Codice e azione) e sulla destra si vedrà l’A36 corrispondente.

Senza entrare nel merito del significato dei vari campi, è possibile testare il passaggio di tutti i parametri di input dell’A36.

Set&Play

Ogni A36 presenta in alto a destra (solo per utenti con User Level almeno 01) un pulsante () per il richiamo di una scheda di analisi dell’A36 in questione.

Le informazioni presenti sono utili alla comprensione del funzionamento dell’A36. Tale scheda è suddivisa in varie sezioni.

Parametri

Sono presenti tutti i dati con cui è stata lanciata la funzione dell’A36, più tutti i parametri che sono stati reperiti in automatico attraverso l’elaborazione dell’SCP_A36. In particolare da questa scheda si può subito verificare qual è l’istruzione dell’SCP_A36 (o dell’SCP_A36PER) che è stata presa in considerazione, nonché quale Layout si sta applicando.

Struttura

Permette di analizzare le caratteristiche di tutti i campi impiegati per l’elaborazione dell’oggetto.

Quindi, per un determinato campo, posso vedere tutte le sue proprietà: nome, descrizione, OAV, oggetto, lunghezza, obbligatorietà, visibilità e molte altre…

Quando parlo di campi, non intendo solo i campi presenti nell’input panel ma tutti quelli che l’A36 tiene in considerazione (attributi, campi di work, ecc.)

Per maggior comodità, cliccando sul singolo campo si possono vedere in basso le varie proprietà disposte in verticale.

Altre sezioni

Nella scheda di Set&Play sono poi presenti anche altre sezioni di uso meno frequente:

  • Dati: permette di analizzare i valori degli attributi impiegati per l’elaborazione
  • Messaggi d’errore: permette di analizzare l’eventuale elenco di errori al momento pendenti
  • Campi disponibili: si vedono tutti gli attributi disponibili per un oggetto (usati o meno nell’elaborazione) con le relative caratteristiche grafiche
  • Gestione SCP_A36: permette di analizzare e gestire le condizioni previste negli script SCP_A36 ed SCP_A36PER.
  • Gestione SCP_LAY: permette di analizzare e gestire il layout impiegato nell’elaborazione
  • Memoria scheda: viene mostrato il contenuto del file di work utilizzato dall’A36 per quella particolare elaborazione. Il file di work contiene tutta la memoria necessaria allo svolgimento dell’elaborazione.
  • Memoria totale: viene mostrato il contenuto del file di work per il job. In questo modo si vedono anche le altre eventuali elaborazioni in corso nella sessione.

Altri Pulsanti

Oltre al pulsante di Set&Play visto precedentemente, ci sono altri pulsanti interessanti da illustrare.

Undo

Cliccando sul pulsante Undo () vengono annullate le ultime variazioni effettuate e convalidate premendo invio, una alla volta. Una volta salvato (cliccando su Conferma) non è più possibile annullare le modifiche precedenti.

Dati statistici

Cliccando sul pulsante Dati statistici () vengono visualizzate le informazioni relative all’utente e alla data ora di inserimento e modifica dell’oggetto.

Attivazione

Distinguiamo il caso in cui si voglia modificare il comportamento dell’A36 su un oggetto standard  dal caso in cui vogliamo attivarlo su un oggetto personale.

Oggetti standard

In alcuni casi è possibile voler modificare il comportamento dell’A36 su un oggetto standard. Ad esempio potrei voler cambiare il layout di modifica di un articolo, oppure rendere obbligatorio un campo specifico di un altro oggetto.

Per fare questo è sufficiente agire sullo script SCP_A36PER.
Come detto precedentemente, attraverso questi script è possibile condizionare l’output (modificare appunto, ad esempio, il layout utilizzato) e/o aggiungere un programma di controllo specifico.

Oggetti personali

Se si vuole attivare l’A36 su un oggetto creato presso il cliente, è necessario eseguire alcuni passi aggiuntivi rispetto alle solite procedure di creazione dell’oggetto “ufo”.

Nella documentazione specifica si trovano tutti i dettagli, in estrema sintesi sarà necessario:

  • creare un programma di controllo specifico (B£K89_xx)
  • creare il relativo script SCP_A36PER
  • creare i layout necessari
  • implementare modifiche a £K04, exit B£GES e script B£GES0_U

Per quali oggetti è rilasciato il supporto tramite A36?

Attualmente non tutti gli oggetti sono gestibili tramite A36.

Man mano che il laboratorio di sviluppo rilascerà il supporto per altri oggetti, la copertura diverrà sempre più completa.

Per sapere quali sono gli oggetti gestibili con A36 nella propria installazione, è possibile consultare una scheda apposita. Tale scheda si chiama “Situazione K89 Rilasciati” ed è raggiungibile nella scheda di esempio.

Gli oggetti presenti in questa scheda sono tutti utilizzabili tramite A36. E’ possibile anche vedere il dettaglio di cosa è stato rilasciato (programma specifico di K89, Layout generico o specifico per device, ecc.).

Ulteriori informazioni

In questo articolo non abbiamo parlato di alcune cose importanti in merito ad A36 e K89.

Non abbiamo parlato di flussi, ma ovviamente sono gestiti.

Non abbiamo parlato della visualizzazione dei soli campi in errore (l’A36 è dinamico e quindi può plasmarsi a varie esigenze, come appunto quella di mostrare i soli campi in errore).

Non abbiamo parlato di oggetto controllo (che rappresenta il singolo controllo su un oggetto e il suo esito) e della possibilità di eseguire controlli di massa sugli oggetti.

Non ne ho parlato in questo articolo perché altrimenti non avevo più argomenti per il prossimo… Stay tuned.