Campi EXTRA

I campi EXTRA

JOLLY consente la creazione diretta da parte dell'utente di campi aggiuntivi personalizzati per ciascuna delle seguenti tabelle:
bullet

archivio articoli

bullet

piano dei conti

bullet

bolle /ordini /fatture (documento)

bullet

bolle/ ordini/ fatture (righe)

bullet

commesse

bullet

impianti

bullet

allegati

bullet

distinta base archivio articoli (distinta_base_articoli)

bullet

distinta base documenti (bolle_sottoarticoli)

Questa possibilità consente di risolvere in modo semplice, efficace ed economico la necessità di avere a disposizione dei campi per immagazzinare dati di interesse specifico per il singolo utente, senza intervenire sul codice del programma.

 

NB: tutto quanto segue è destinato a personale tecnicamente competente.

Per ogni campo extra è possibile specificare una consistente serie di opzioni, tra le quali le seguenti sono particolarmente importanti e/o utili:
bullet

Tipi di campo

bullet

Validazione dei campi extra

bullet

Valore default

bullet

Valori predefiniti

bullet

Diritti di visualizzazione e modifica del campo - per tipo di allegato

bullet

Diritti di visualizzazione e modifica del campo - per operatore

bullet

Foreign keys

bullet

Campi extra 'speciali'

TIPI DI CAMPO
I tipi di campo extra sono i seguenti:
bullet

CHAR: elemento di testo; può essere specificata la dimensione;

bullet

INTEGER: numero intero (4 bytes, valori compresi tra –2147483648 e +2147483647);

bullet

DOUBLE: numero decimale (con la virgola; 8 bytes, valori compresi tra  5x10^–324 e 1.7 x 10^308); 

bullet

BOOLEAN (detto anche manicheo): valore VERO/FALSO;

bullet

DATE: data

INFORMAZIONI SUL GRADO DI NECESSITA' DI COMPILAZIONE DEL CAMPO
E' possibile indicare, per ogni campo, se la sua compilazione è:
bullet

NECESSARIA: JOLLY non procederà al salvataggio del documento fino a che non sarà stato inserito un valore valido per il campo; il campo sarà mostrato colorato in ROSSO;

bullet

CONSIGLIATA: se l'operatore non inserisce un valore valido JOLLY consente il salvataggio del documento ma emette un messaggio di avvertimento; il campo sarà mostrato colorato in VERDE;

bullet

FACOLTATIVA: la compilazione del campo è totalmente facoltativa; nessun messaggio viene mostrato anche in caso di mancata compilazione del campo.

VALORE DEFAULT
Il valore specificato nella apposita casella sarà assegnato al campo in caso di creazione di nuovi records. Saranno eseguite le seguenti sostituzioni:
bullet

%O nome dell'operatore che sta eseguendo l'operazione

bullet

%W nome della postazione (computer) da cui l'operazione viene eseguita

bullet

%D data odierna

bullet

%SQL=espressione SQL
bullet

l'opzione deve essere indicata ad inizio riga;

bullet

l'istruzione SQL viene eseguita all'interno di una transazione creata appositamente, che è distinta dalla transazione che racchiude la creazione del documento cui il campo extra appartiene e che viene committata subito dopo l'esecuzione dell'istruzione.

bullet

esempi di istruzioni SQL:
bullet

%SQL=select dateformat(now(), 'YYYY-MM-DD')

bullet

%SQL=select get_primary_key('idx')

bullet

%SQL=select AA_extra_str_XXX_default from archivio_articoli WHERE AA_str_codice = '%PKC'

bullet

Se il formato del campo è una data, il formato default utilizzato è quello italiano standard: gg/mm/aaaa

bullet

%PKC primary key per la tabella da cui vengono copiati i valori; è tipicamente utilizzato all'interno di espressioni %SQL.
Il valore default di campo che contengono la macro %PKC viene ricalcolato ogni volta che si modifica il valore del campo di collegamento tra la tabella che contiene il campo extra e la tabella di riferimento indicata nel prospetto sottostante.
ESEMPIO: supponiamo che sulla tabella bolle_articoli (righe di documenti) esista il campo extra BA_extra_str_XXX il cui valore default è:

%SQL=select AA_extra_str_XXX_default from archivio_articoli
where AA_str_codice = '%PKC'

Il valore di tale campo extra viene assegnato in fase di creazione di ogni record della table bolle_articoli. Inoltre viene ricalcolato ad ogni modifica del valore del campo BA_str_articolo (che è il campo che collega bolle_articoli ad archivio_articoli).

i campi extra della tabella

possono fare riferimento alla PK della tabella

archivio articoli
(archivio_articoli)

tipo di articolo

piano dei conti
(pconti)

tipo di conto

documenti (bolle/ordini/fatture)
(bolle.PCO_str_conto)

piano dei conti

righe di documenti
(bolle_articoli.BA_str_articolo)

archivio articoli

commesse

piano dei conti

impianti
(impianti_header.IH_str_conto)

piano dei conti

allegati

la tabella dell'oggetto a cui l'allegato è direttamente collegato (documenti, articoli, piano dei conti, ...)
(vedi Nota Bene)

distinta base archivio articoli
(distinta_base_articoli.DBA_str_materiale)

archivio articoli

distinta base documenti
(bolle_sottoarticoli)

distinta base archivio articoli
(vedi Nota Bene)

NB: poiché i records della tabella allegati possono essere collegati ad oggetti differenti (esempio: conto, documento, articolo, impianto, commessa, ...) è opportuno utilizzare istruzioni %SQL e %PKC solo su allegati il cui uso sia ristretto al tipo di oggetto per il quale tali istruzioni sono concepite (ad esempio: tipi di allegato utilizzabili solo per articoli, solo per documenti, solo per conti, eccetera).

NB: i campi extra della table distinta base documenti (bolle_sottoarticoli) hanno un comportamento anomalo:
bullet

durante la creazione (inserimento di un nuovo articolo nella table bolle_articoli e conseguente caricamento della distinta base dell'articolo caricato) possono essere inizializzati con espressioni SQL che fanno riferimento ai corrispondenti records della tabella distinta_base_articoli da cui vengono copiati;

bullet

se modificati successivamente alla creazione (oppure creati all'interno della distinta base del documento per aggiunta di nuovo componente di distinta base) il programma non esegue più la generazione dei valori attraverso la valutazione dell'eventuale espressione SQL perché la tabella a cui sarebbe possibile far riferimento è cambiata (non è più la distinta_base_articoli ma è la archivio_articoli) e dovrebbe essere conseguentemente modificata anche l'espressione SQL.

Questa anomalia non sembra essere particolarmente rilevante per due motivi:

  1. non è frequente la modifica della distinta base all'interno del documento

  2. nei casi in cui sia necessario modificare la distinta base di un documento, in generale si desidera modificare il comportamento della distinta base con informazioni che non sono standard e che per questo motivo tipicamente non sono registrate da nessuna parte.

VALORI PREDEFINITI
E' possibile definire un insieme di valori predefiniti per il campo. Tali valori possono essere fissi (ovvero: un elenco di valori ammessi) oppure determinati dinamicamente attraverso un'istruzione SQL. In quest'ultimo caso la sintassi utilizzabile può fare uso dei simboli validi per l' espressione che genera i valori default (ad eccezione ovviamente della clausola %SQL, che non è ammessa perché sempre implicita).
ATTENZIONE: per evitare di rallentare l'apertura delle finestre è consigliabile non utilizzare comandi SQL eccessivamente pesanti.

DIRITTI DI VISUALIZZAZIONE E MODIFICA DEL CAMPO - PER TIPO DI RECORD
Poiché vi sono campi extra che devono essere visualizzati e gestiti solo in determinate circostanze (ad esempio: se un campo extra serve per riportare la valutazione dei fornitori, tale campo deve comparire solo sulle schede dei conti fornitore e non comparire su quelle dei clienti) Jolly prevede la possibilità di legare la presenza del campo extra in funzione di:

tipo campo extra gestione legata a
conti tipo di conto
articoli tipo di articolo
impianti tipo di impianto
commesse ---
allegati tipo di allegato
distinta base articoli ---
distinta base documenti ---

Per i campi che in una certa situazione non vengono gestiti è possibile indicare il valore default da assegnare al campo.

DIRITTI DI VISUALIZZAZIONE E MODIFICA DEL CAMPO - PER OPERATORE
Jolly consente inoltre di limitare la visibilità e la modificabilità di ogni campo in funzione dei diritti dell'operatore che accede al documento. I livelli di permesso sono quattro: TUTTI/ OPERATORE ISO BASE/ RESPONSABILE ISO, AMMINISTRATORE DI JOLLY.

FOREIGN KEYS
E' possibile stabilire dei vincoli di integrità referenziale tra un campo extra e una qualsiasi tabella di Jolly.
L'uso di questa funzione deve essere valutata con estrema attenzione perché potenzialmente pericolosa. 

CAMPI EXTRA 'SPECIALI'
Vi sono alcune funzioni speciali che JOLLY, per evitare di appesantire inutilmente il codice del programma standard, gestisce attraverso specifici campi extra. Per attivare tali funzioni è necessario creare ed utilizzare i campi extra indicati. E' caldamente consigliato non modificare il nome SQL dei campi extra speciali. Le funzioni speciali attivabili sono le seguenti:
tabella numero di campo nome funzione
archivio articoli 87 AA_str_descrizione_aggiuntiva descrizione aggiuntiva per l'articolo; il campo viene caricato sul corrispondente campo dei documenti (BA_str_descrizione_aggiuntiva, che non è un campo extra)
archivio articoli 88 AA_bo_need_serial_number indica se l'articolo utilizza/richiede il serial number
archivio articoli 89 AA_str_documento contiene il nome di un file il cui contenuto viene visualizzato ogni volta che l'articolo viene caricato su un documento
archivio articoli 91 AA_bo_usa_descrizione_lunga valore booleano (vero/falso) che indica se quando si carica l'articolo in un documento si desidera utilizzare la descrizione corta oppure quella estesa; se non definito, viene utilizzato il valore generale del programma (definito nelle opzioni generali)
archivio articoli 92 AA_bo_usa_descrizione_lunga_CLI come il campo 91, ma con valore specifico per i clienti
archivio articoli 93 AA_bo_usa_descrizione_lunga_FOR come il campo 91, ma con valore specifico per i fornitori
archivio articoli 94 AA_str_message quando si carica l'articolo su un documento il programma emette il messaggio specificato
archivio articoli 95 AA_str_codice_badge contiene il codice di collegamento con il lettore di badge
archivio articoli 96 AA_bo_riepiloga_footer gli articoli dotati di questo flag vengono riepilogati automaticamente a piè documento
archivio articoli 97 livello di ispezione AQL livello di ispezione da utilizzarsi come default per i controlli in modalità AQL
archivio articoli 98 valore AQL valore AQL da utilizzarsi come default per i controlli in modalità AQL
archivio articoli 99 AA_bo_collaudo_100 l'articolo deve essere collaudato (al 100%)
bolle_articoli 31 BA_extra_str_causa_guasto contiene la causa del guasto nei casi in cui questo valore sia previsto dal documento
bolle_articoli 90 BA_str_serial_number campo utilizzato per contenere il serial number dell'articolo
bolle_articoli 91 BA_extra_str_progetto_ele  usato per i documenti di lavorazione ELE; contiene il riferimento del progetto cui la lavorazione è associata
bolle_articoli 92 BA_extra_str_esecutore  usato per i documenti di lavorazione ELE; contiene l'operatore che esegue la lavorazione
pconti 97 severità verifiche AQL grado di severità da utilizzarsi come default per i controlli in modalità AQL
pconti 91 PCO_lo_conto_contabilita contiene il riferimento del conto ad un eventuale piano dei conti esterno (tipicamente: un programma di contabilità esterno)

Pagina base del manuale di JOLLY

aggiornato il 23/01/2010

home

scrivimi, se ti va