Per creare un archivio HIGHWAY si utilizza il programma CREA_ARC la cui icona si trova all’interno della finestra di gruppo HIGHWAY
Durante il lavoro con CREA_ARC, la barra del titolo visualizza informazioni con il seguente formato:
Configurazione Archivi - ("nome archivio"- nome tabella corrente).
La necessità di gestire informazioni eterogenee, porta alla costituzione di una base dati articolata, per mezzo della quale sia possibile reperire le informazioni in essa contenute con operazioni semplici ed efficaci nonché averne una visione chiara e comprensibile.
Per comprendere meglio quest’argomento vediamo di chiarire come l’organizzazione di informazioni di tipologia differente possa essere effettuata tramite CREA_ARC.
L’unità elementare in cui possono essere suddivise le informazioni, (termine quanto mai generico che ci mostra come in realtà un’informazione non sia che un insieme di conoscenze) è il singolo dato che potremmo identificare, ad esempio, come il nome o il cognome nell’ambito dell’informazione rappresentata dalla Carta d’Identità.
Il dato verrà rappresentato nella base dati che intendiamo costituire, da un attributo o più semplicemente campo. Ogni attributo ha le caratteristiche più consone ad accogliere il dato che in esso intendiamo immagazzinare.
Accomunare i dati per costituire un’informazione consiste nell’organizzare più attributi in gruppi logicamente correlati, ottenendo da ciò una visione d’insieme che possa conferire a dati disgiunti un senso unitario. Tale organizzazione viene identificata dalle tabelle. Un’insieme di dati organizzati nei diversi attributi di una tabella ed immagazzinato nella base dati viene definito un documento.
Costituendo una o più tabelle composte dagli opportuni attributi si genera una base dati o archivio nella quale informazioni di natura differente troveranno la loro opportuna disposizione nella tabella disegnata a tale scopo e per la quale saranno stati concepiti gli attributi più adatti.
Gli attributi potranno essere presenti in più tabelle e rendere comune il significato di un dato. Il nome di un individuo, ad esempio, sarà tale sia considerando la sua Carte d’Identità che considerando l’Atto di Nascita o il Certificato di Residenza se pure le informazioni indicate siano indubbiamente ben distinte tra loro.
Nell’organizzazione di un archivio sarà indispensabile analizzare tutti i singoli dati per comprendere a pieno il ruolo che essi dovranno assumere sia internamente alla tabella che descrive un’informazione, sia nella visione di più ampio respiro descritta dall’archivio. Quest’analisi ci porterà alla definizione delle caratteristiche peculiari da assegnare agli attributi.
La prima caratteristica da definire per ogni attributo è il nome. Il nome dell’attributo ci permette di identificarlo in tutte le successive fasi di configurazione ed utilizzo della Base Dati. Sfrutteremo tale nome per identificarlo durante la fase della ricerca o valorizzarlo durante la fase di inserimento. Dovremo inoltre definirne la natura in base al valore che esso dovrà contenere, differenziando valori numerici, alfanumerici e date.
Come già detto, il ruolo che un attributo dovrà svolgere
nella base dati richiederà l’impostazione di varie caratteristiche,
delle quali vedremo in seguito il significato e l’uso più opportuno
e funzionale. Vedremo inoltre nel dettaglio il significato ed il comportamento
di ogni comando di CREA_ARC, e come queste operazioni ci
permettano di generare tabelle ed attributi.
Grazie a questo dialogo abbiamo la possibilità di impostare tutte
le caratteristiche necessarie alla corretta configurazione di un attributo.
Alcune di queste caratteristiche saranno proposte dal programma in automatico,
altre saranno proposte in conseguenza all’impostazione di alcune di esse.
Vediamo ora, voce per voce, il significato che ogni caratteristica ha ed
il comportamento che ne deriva.
<spazio> [ ] { } ( ) + ? . !
Inoltre i valori TIPOREC e TABELLA sono riservati.
In generale si suggerisce di non fare uso di caratteri di punteggiatura e di non utilizzare il carattere ‘’’ se non nei casi previsti dalla Condivisione (si veda l’apposita voce).
Il nome che si associa ad un attributo è quello che i moduli di HIGHWAY riconoscono in tutte le loro funzionalità, dalla configurazione di una vista dell’archivio, all’esecuzione di una ricerca, alla preparazione di regole di navigazione o azioni su attributi derivati o esterni, tutte funzionalità di cui parleremo tra breve.
Creando un nuovo attributo il programma assegna allo stesso il primo nome disponibile, composto dal prefisso ATTR e seguito da un numero progressivo basato sul numero di attributi diversi tra loro presenti allo stato attuale nell’archivio. Quando interveniamo modificando il nome di un attributo possiamo, con un procedimento apparentemente uguale, compiere operazioni molto differenti.
Vediamo alcuni esempi. Creando un nuovo attributo denominato ATTR1, accediamo al dialogo mostrato in precedenza per compiere la configurazione desiderata. Se impostiamo nel campo Nome quello di un attributo già definito in un’altra tabella e ci spostiamo ad altra finestra o confermiamo con l’apposito tasto, l’attributo da noi configurato acquisirà tutte le caratteristiche dell’attributo preesistente divenendone una copia nuova nella tabella attuale. Se per contro l’attributo del quale intendiamo modificare la configurazione è preesistente e noi compiamo la modifica del Nome, lo stesso attributo, alla conferma del presente dialogo, cambierà nome nella tabella attuale ma anche in tutte le altre tabella per ereditarietà. Per creare, da un attributo preesistente un nuovo attributo senza influenzare le altre tabelle che lo contenessero si deve fare uso del tasto Nuovo che discuteremo i seguito.
Come precedentemente accennato, un attributo può essere presente in più tabelle, in tal caso, in ogni tabella, esso mantiene le stesse caratteristiche principali quali la natura (numerico, alfanumerico, data) , le modalità di costruzione del vocabolario ecc.
Qualora si impostasse un attributo come Chiave ad esempio, nel
caso l’attributo fosse presente su più tabelle si avrebbe un unico
vocabolario di attributo indipendente dalla tabella. Solo una minoranza
delle impostazioni che possono essere fatte su di un attributo hanno valore
in rispetto della tabella in oggetto, tutte le altre caratteristiche vengono
"ereditate" in tutte le tabelle. In seguito vedremo come si possa agire
nella configurazione di un attributo per intervenire proprio su questa
ereditarietà.
Se un attributo viene definito a lunghezza variabile esso occuperà
su disco per ogni documento una dimensione dipendente dal numero dei caratteri
del rispettivo valore su quel documento ; viceversa un attributo a lunghezza
fissa porterà all’occupazione su disco della stesso numero di caratteri
su tutti i documenti a meno che la lunghezza sia stata definita maggiore
di 20 caratteri nel qual caso l’attributo potrà contenere al massimo
il numero di caratteri dichiarato ma la sua occupazione su disco verrà
trattata come a lunghezza variabile.
I tipi definibili sono :
Il tipo di dato Numerico prevede l’inserimento di qualsiasi carattere numerico nonché lo spazio ed il carattere separatore dei decimali impostato in Windows. Tale carattere viene convertito nel carattere punto internamente al documento e come tale apparirà nel vocabolario di campo.
Il tipo Data prevede l’inserimento di 8 caratteri numerici che esprimano giorno, mese ed anno (di 4 cifre) della data in esame, questa dimensione non è modificabile. La rappresentazione dell’oggetto Data nelle maschere video può altresì variare in base alla configurazione che in esse viene impostata e che viene proposta automaticamente come GG/MM/AAAA. In tal caso, disegnando la finestra che dovrà accogliere questo valore, si dovrà tenere conto dello spazio supplementare occupato dai separatori richiesti, nell’esempio riportato almeno 10 caratteri perché il modulo di interfaccia SFPLUS possa mostrare correttamente in valore. In assenza di spazio sufficiente il valore viene espresso senza le barre separatrici.
L’attributo di tipo Data è peraltro salvato fisicamente
nel formato AAAAMMGG. Ciò al fine di presentare nel vocabolario
di campo le date nel loro naturale ordine cronologico e poter compiere
ricerche ed ordinamenti su insiemi di date uniformemente ordinate.
Altre caratteristiche che vedremo in seguito ci mostreranno come la
creazione dei vocabolari di attributo possa essere sottoposta a particolari
regole.
L’assenza di un valore in tale attributo impedisce il salvataggio del documento, ad eccezione delle fasi di importazione dei documenti da fonte esterna, fase in cui il documento viene ugualmente salvato e viene segnalata su file l’incongruenza dando la possibilità, al termine delle operazioni di importazione, di analizzare il file contenente queste segnalazioni e correggere i documenti irregolari. Sempre in tali fasi, in presenza anche della proprietà di Seriale (si veda più avanti), l’attributo che risultasse vuoto verrebbe riempito d’autorità con il prossimo valore seriale disponibile.
Questo tipo di attributo viene generalmente utilizzato per immagazzinare
valori dai quali dipendano altri attributi o funzionalità associate
all’archivio. Per gli attributi multi istanza (si veda più avanti)
ogni singola istanza deve contenere un valore nell’attributo obbligatorio
perché l’obbligatorietà risulti rispettata, anche una sola
istanza vuota causa una violazione detta "parziale" del vincolo imposto.
Esempio : l’attributo AUTORE di una applicazione di biblioteca potrebbe essere impostato come multiriga nel caso si vogliano unire in modo libero in un unico campo il nome degli autori di un testo. In questo caso il sistema quando presenta il contenuto del campo può effettuare formattazione a seconda delle dimensioni della maschera e quindi eventualmente spezzare le righe in modo arbitrario, ad esempio in corrispondenza di un separatore. Se invece si vuole tenere separato su ogni riga il nome di un autore l’attributo può essere definito multi istanza nel qual caso ogni valore rimane visualizzato su una riga diversa, eventualmente visualizzata anche solo parzialmente se la maschera video non ha sufficiente spazio.
L’attributo multi istanza gode del vantaggio di poter ottenere il vocabolario dell’intero valore di ogni istanza oltre che quello di ogni singolo termine.
Essendo a lunghezza variabile, come nel precedente caso degli attributi multi riga, la voce lunghezza viene disattivata. La voce multi riga, essendo alternativa, viene disattivata.
Qualora definito chiave, un attributo multi istanza è soggetto
a particolare tipo di indicizzazione (si veda la voce multi valore)
.
Se, ad esempio, costituiamo un archivio avente una tabella atta a contenere una rubrica telefonica, potremmo avere per ogni nominativo, elemento che identifica il singolo documento, più attributi multi istanza che contengano più numeri telefonici ai quali fare riferimento per reperire l’individuo in esame, più descrizioni che chiariscano il significato dei recapiti (casa, ufficio, ecc. ecc.) e più indirizzi per i diversi recapiti. Diviene intuitivo come ad un preciso indirizzo corrisponda una unica descrizione del recapito ed un unico numero telefonico e come queste tre informazioni, pur essendo molto differenti per natura, rappresentano una unità informativa congiunta. Ecco quindi che il concetto d’istanza deve essere esteso a gruppo di Istanze per riunire più attributi multi istanza ed avere da essi un’informazione complessa. Un attributo multi istanza può appartenere ad un gruppo ed uno soltanto.
Potendo essere presenti internamente ad una tabella, più insiemi distinti di attributi multi istanza, ovvero più Gruppi di attributi multi istanza, tali gruppi possono essere distinti grazie al valore impostato nel gruppo di appartenenza (si veda la voce corrispondente). Il numero di gruppo associato viene ereditato dall’attributo in esame anche nelle altre tabelle alle quali dovesse appartenere. Questo obbliga gli attributi appartenenti ad un gruppo ed a più tabelle di costituire Gruppi di multi istanza in ogni tabella pur non impedendo, comunque, di costituire su tabelle diverse Gruppi identificati dallo stesso numero che siano composti anche da attributi diversi, ovvero associare solo in certe tabelle ulteriori attributi multi istanza ad un gruppo preesistente.
Il pulsante affiancato alla voce in oggetto ci permette di assegnare al gruppo attuale il prossimo numero di gruppo libero. In mancanza di altra definizione il programma presenta automaticamente il numero 1.
Il modulo di interfaccia SFPLUS, durante le fasi di visualizzazione
dei documenti, provvederà a mostrare la corrispondenza fra le istanze
associate dei diversi attributi appartenenti allo stesso gruppo inserendo
i valori corrispondenti fra una doppia linea punteggiata. Anche in fase
di inserimento e modifica dei documenti avremo la possibilità di
spostarci tra i diversi attributi appartenenti ad un gruppo rispettando
l’istanza attualmente identificata dal cursore, così come potremo
aggiungere o rimuovere istanze in tutto il gruppo operando su un singolo
attributo.
Il loro scopo è infatti la gestione di un vocabolario limitato di valori ricorrenti e potenzialmente noti a priori, da utilizzare come codici che possono essere inseriti rapidamente. L’introduzione di tali valori è particolarmente intuitiva poiché ci permette di impostare solo una porzione del valore desiderato, valore che verrà sostituito dal termine più prossimo presente nell’elenco.
Digitando nella finestra di attributo della maschera video un valore o solo alcune lettere iniziali e spostandosi sulla finestra di attributo successiva o precedente (tasto TAB o SHIFT+TAB) verrà automaticamente inserito nella suddetta finestra il valore corrispondente; in caso di ambiguità verrà presentata una lista ristretta di valori selezionabili.
Esempio:
Supponendo di avere già inserito nel vocabolario controllato di attributo i seguenti valori:
se nella finestra di attributo della maschera video si digita la lettera "f" (assenza di ambiguità) e poi ci si sposta sulla finestra di attributo successiva, verrà automaticamente inserito nella finestra di attributo il valore "francese";
se si digita invece la lettera "i" (ambiguità) e ci si sposta sulla finestra di attributo successiva verrà proposto di scegliere fra i valori "inglese" e "italiano".
E’ consigliabile l'aggiornamento dei termini presenti nel Vocabolario sempre prima dell'inserimento della voce corrente nel documento.
E’ possibile esportare/importare i dizionari controllati su/da un file ASCII per motivi di backup o editing (per maggiori informazioni consultare la parte riguardante SFUTIL).
La manutenzione di questo sistema guidato di consultazione ed inserimento
può risultare a volte un po’ complessa, la tecnologia sulla quale
si basa è infatti sensibile ad eventuali crash imprevisti del sistema
con conseguente possibile perdita della corrispondenza tra codici e valori
; il supporto di questa funzionalità viene mantenuta essenzialmente
per compatibilità con le precedenti versioni dei programmi. La modalità
attualmente suggerita è quella resa disponibile dai Vocabolari
Vincolati, dei quali parleremo nel paragrafo dedicato alla configurazione
d’archivio, e per la configurazione dei quali si veda il manuale operativo
del modulo Thesaurus. Gli attributi vincolati godono degli stessi vantaggi
degli attributi controllati (controllo su un vocabolario limitato) pur
non realizzando codifiche dei valori consentiti e permettendo l’indicizzazione
a livello di ogni singolo termine del valore.
Gli attributi derivati sono alternativi a quelli esterni che tratteremo in seguito. Un attributo, quindi, non può possedere entrambe queste le proprietà.
Il pulsante affiancato alla voce in esame permette di accedere ad un apposito dialogo per la configurazione delle azioni. Tale opzione richiede la presenza del file.ini d’archivio e quindi risulta attiva solo dopo un primo salvataggio della struttura d’archivio.
Per mezzo di questo dialogo, che ci presenta il nome dell’attributo
in esame e della tabella sulla quale stiamo impostando l’azione attuale,
possiamo definire un’azione e l’elenco degli attributi dai quali
essa dipende.
I caratteri consentiti per definire la parte variabile sono i seguenti:
|
|
# | Incremento valori numerici (0 - 9) |
& | Incremento valori alfabetici (A - Z) |
Il valore dell'attributo viene incrementato a partire dal carattere variabile posto più a destra nella maschera, ruotando ciclicamente; al termine di ogni ciclo scatta invece l’incremento del carattere variabile immediatamente alla sua sinistra.
Esempio:
Se una maschera seriale viene così definita:
SERIE_B0
. . .
La lunghezza dell'attributo seriale comprende sia la parte costante che la parte variabile. La lunghezza massima è di 20 caratteri, massima dimensione della maschera seriale.
Un campo Seriale non può anche essere multi istanza o multi riga.
Oltre alla suddetta Maschera Seriale si deve tenere conto del valore assegnato alla voce Ultimo Seriale. Tale valore corrisponde all’ultimo valore che il programma ha assegnato ad un documento per l’attributo in esame, esso viene rettificato ogni volta che un nuovo valore viene assegnato ad un documento è può essere modificato in ogni momento.
Si fa notare che associando alla caratteristica di Seriale quella
di Obbligatorio, il campo viene forzatamente riempito assegnando
il prossimo valore seriale disponibile nelle fasi di Importazione nei casi
in cui il documento importato fosse privo di un valore in questo attributo.
Viene considerata parola una sequenza di caratteri delimitata
da caratteri speciali che appartengono ad un insieme di Separatori,
definibili quando si crea l'attributo. CREA_ARC propone un insieme
di separatori impliciti, che può essere ampliato o ristretto in
base alle specifiche esigenze dell'attributo che si sta definendo.
Separatori: <spazio>,;.:-'?!()/"[] |
Oltre a quelli attualmente elencati, il programma considera come separatori obbligatori i caratteri di riporto a capo in un attributo multi riga o multi istanza nonché le tabulazioni.
Per gli attributi definiti chiave e multi valore, ma non multi riga, che contengano valori composti da più parole, HIGHWAY provvede ad inserire nel vocabolario sia le singole parole sia l'intero valore che rappresenta l’attributo o una sua istanza. Questo valore, indicato per intero nel vocabolario dei termini, è preceduto da uno spazio per semplificare la visualizzazione in ordine alfabetico del contenuto del vocabolario stesso (si veda il manuale di Thesaurus per una più ampia spiegazione di come usufruire delle due tipologie di chiavi). In questo modo si da luogo ad una "doppia indicizzazione", la quale ci permette di compiere ricerche per mezzo dell’uso diretto sia dei singoli termini che dell’intero valore dell’attributo. La consultazione del vocabolario di campo in merito a queste chiavi complete può permetterci di avere una visione immediata delle informazioni più pertinenti per il rapido reperimento dei documenti di nostro interesse (si veda il Manuale Utente di HIGHWAY per la discussione inerente la composizione delle ricerche e l’uso degli operatori logici di ricerca).
Il programma, nell’identificazione dei termini, esclude tutte le parole
contenute in un apposito file di esclusione o stoplist. Quest’ultimo contiene
tutti i termini non significativi quali le congiunzioni, articoli, preposizioni
ecc. Tale file deve essere organizzato in formato ASCII con ogni termine
all’inizio di una nuova riga in ordine alfabetico. Il file di stoplist
proposto è il file 1.STP. Nella casella ‘File di Stoplist’ impostare
il nome del file, che si deve trovare nello stesso direttorio dell’archivio,
senza indicare il percorso e l’estensione.
Questa proprietà viene impostata automaticamente in ogni attributo
da CREA_ARC non appena esso viene creato. Normalmente questa caratteristica
è sempre impostata.
L’unicità globale impone che un attributo non possa assumere in due diversi documenti lo stesso valore. Questo fa sì che il valore impostato in un determinato documento sia un codice univoco di identificazione del documento in esame. È il caso tipico dell’attributo NRECORD che discuteremo in seguito parlando degli attributi speciali.
L’Unicità locale opera, a differenza della precedente, sui soli attributi appartenenti ad una tabella ed impone, anche in questo caso, che il valore espresso in questi attributi non possa essere presente anche in altri documenti della stessa tabella. documenti di altre tabella aventi gli stessi campi egualmente valorizzati non comportano alcuna violazione dell’unicità.
Oltre a quanto detto esiste un’altra importante differenza tra le due diverse tipologie di unicità : L’unicità globale ha efficacia sul valore di un singolo attributo ed esso è vincolante nei confronti di tutti i documenti. L’Unicità locale è invece normalmente efficace in base all’insieme di attributi con tale caratteristica presenti nella tabella attuale. La violazione o meno di tale unicità dipende quindi dall’uguaglianza in due documenti di tutti i valori unici locali e non dall’uguaglianza di due singoli attributi se altri differiscono. In tal caso, anche l’attributo vuoto concorre alla valutazione dell’unicità locale, al pari di qualsiasi valore. Ciò non vale per L’unicità globale ove il valore vuoto viene semplicemente ignorato e nessuna regola di unicità può risultare violata.
Il tentativo di replicare valori univoci provoca un messaggio di errore nel quale viene indicato se l’unicità violata è quella locale o meno. Inoltre viene indicato l’attributo il cui valore causa la violazione dell’unicità. In fase di importazione dei documenti anche in presenza di violazioni di unicità la procedura non si interrompe, indicando queste informazioni nel file Warnings.TXT reperibile nel direttorio configurato per i file temporanei. Al termine delle operazioni verrà presentato un messaggio che ci informa che nel suddetto file sono disponibili le segnalazioni d’errore inerenti. In tal caso la violazione dell’unicità riporterà anche il numero del documento sul quale essa si è verificata indicando se esso è un numero logico (valore del campo NRECORD) oppure fisico (posizione del documento nell’archivio. Si veda il Manuale Utente di HIGHWAY per le indicazioni su come raggiungere un documento a partire dal suo numero fisico mediante il comando Vista - Vai al documento).
Come è facile prevedere la unicità globale e l'unicità
locale si escludono a vicenda : non è possibile impostare sullo
stesso attributo entrambe le caratteristiche mentre non ci sono impedimenti
a configurare in una data tabella più attributi ad unicità
globale, ognuno dei quali subirà controlli e vincoli indipendentemente
dagli altri, così come non ci sono limiti alla configurazione di
attributi ad unicità locale assieme ad altri ad unicità globale
poiché i test che su di essi vengono compiuti non possono risultare
in conflitto tra loro.
Tale attributo deve essere inteso come un mero contenitore che non "possiede" quindi i dati che mostra in sè e quindi non può essere cancellato o modificato se non agendo sui valori che ne determinano il riempimento.
Un attributo "esterno" o "derivato" ottiene il proprio valore mediante una "azione" (tipicamente una ricerca) ad esso associata.
L'attributo Esterno può essere di due tipi: Diretto o su Richiesta. Nel primo caso esso viene immediatamente riempito eseguendo l'azione che lo riguarda, mentre nel secondo viene riempito solo se si esplicita tale modalità.
Un attributo esterno può essere sfruttato in una ampia gamma di applicazioni e può ricoprire il ruolo di alcuni attributi "dedicati" di HIGHWAY (es.: CLASSIF, FILEEXT, DATAEXT)
L'applicazione degli attributi esterni in tali condizioni deve essere subordinata ad una serie di test poiché l'adattabilità di tale attributo sarà diversificata a seconda del ruolo dedicatogli da HIGHWAY e non tutti potrebbero essere efficaci. In linea di massima, comunque, si sconsiglia l'uso di attributi esterni per i campi dedicati.
Facendo click sul bottone prossimo alla casella ‘Esterno’ si ottiene il seguente dialogo che consente di impostare la sintassi dell’azione da eseguire per l’attributo.
Per la sintassi della azione associata all’attributo e l’eventuale dipendenza
da altri attributi consultare "Definizione delle
azioni".
AZIONI <nome campo esterno>.
Le azioni su richiesta sono eseguibili anche in fase di visualizzazione
documenti.
Questo consente di specificare che l’attributo attuale regola il sincronismo
tra il modulo di interfaccia principale SFPLUS ed il modulo di gestione
immagini , nel senso che quest’ultimo ricava dal valore dell’attributo
in questione l’indice delle immagini associate al documento attuale. La
caratteristica Lega ad Eikon è di solito associabile ad un attributo
a chiave univoca globale quale l’attributo speciale NRECORD.
Per quanto riguarda Windows95, SFPLUS non è in grado di determinare in automatico il direttorio di Word per Windows 7, cosa che invece avviene per Windows 3.1 o 3.11.
Per questo motivo SFPLUS chiede, la prima volta, di indicare il direttorio
di AVVIO di Winword. Per poter presentare la richiesta è però
necessario per SFPLUS che Winword sia stato attivato. Questo fa si che
la macro che SFPLUS inserirà nel direttorio di AVVIO non venga letta
immediatamente da Winword. E’ sufficiente chiudere Winword e riaprirlo
perché il collegamento sia operativo permettendo così a Winword
di caricare la macro.
L’impostazione di tali livelli è uno degli strumenti a disposizione dell’utente per regolare gli accessi ad un archivio. Sarà infatti possibile definire utenti con livelli di accesso tali da poter vedere i documenti di un archivio ma non apportare modifiche agli stessi così come si potranno avere utenti con tutte le autorizzazioni necessarie ed utenti ai quali anche la visibilità del documento sarà negata.
Ricordiamo inoltre che l’impostazione dei livelli di variabilità
sui singoli attributi può attivare le inibizioni di cui sopra anche
sono in parte, ovvero solo su un sotto insieme degli attributi che compongono
una tabella. In questo modo, pur garantendo l’accesso ad un documento,
esso potrebbe risultare, un tutto o in parte, non visibile o non modificabile.
Quando l’utente che accede ad un documento non ha sufficiente autorizzazione
per modificare il contenuto di tutti gli attributi, HIGHWAY disabilita
automaticamente tutte le funzionalità che consentono la cancellazione
del documento stesso indipendentemente dalle autorizzazioni alla cancellazione
che saranno discusse nella seguente parte inerente la configurazione d’archivio.
è possibile associare al campo un file contenente una whitelist
(<nome file di stoplist>.WHT), ossia una lista di parole da convertire
in "tutto maiuscolo" . Il file .WHT segue le stesse regole di creazione
dei file di stoplist.
Inizio
|
Fine | |
Grassetto | <B> | </B> |
Corsivo | <I> | </I> |
Giustificazione | <JUSTITY> | </JUSTIFY> |
Centratura | <CENTER> | </CENTER> |
Rimando Ipertestuale | <A HREF="..."> | </A> |
La proprietà HTML è integrativa alla proprietà
editor multi font.
La condivisione totale, che rappresenta la scelta predefinita, prevede che l’attributo sia identico in tutte le tabelle in cui appare.
La condivisione Parziale permette di creare in tabelle differenti attributi con caratteristiche differenti ma equivalenti configurazioni di chiave (potrebbero ad esempio essere uno Multi Istanza e l’altro Mono Riga pur avendo la stessa chiave e lo stesso metodo di indicizzazione).
La condivisione Nessuna permette di creare attributi completamente differenti, anche nella configurazione della chiave.
I nomi ‘simili’ vengono impostati separando in due parti il nome assegnato
con il carattere apice (‘). In questo modo l’attributo TESTO’1 e l’attributo
TESTO’A hanno nome simile. In condivisione parziale, l’estensione rappresentata
dall’apice e da quanto lo segue viene ignorata e resa invisibile all’utente,
nella condivisione Nessuna tutte le componenti del nome rimangono visibili
ed influiscono nell’identificazione dell’attributo stesso.
La creazione di un nuovo archivio comporta la creazione automatica di una tabella iniziale, denominata TABELLA, come appare nella barra del titolo assieme alla segnalazione di archivio ‘senza nome’ per indicare appunto che si tratta di un nuovo archivio. Un solo archivio alla volta può essere gestito tramite CREA_ARC quindi un eventuale archivio precedentemente attivo verrebbe chiuso ed il programma richiede all’utente se intende salvare le eventuali modifiche che ad esso fossero state apportate.
Il nome di tabella generato da CREA_ARC può essere modificato con il comando "Rinomina" del Menu Tabelle.
Un nuovo archivio deve essere salvato con il comando Salva come...
Dopo avere eseguito il comando, appare sulla barra del titolo il nome del database selezionato, seguito dal nome della sua prima tabella.
Non è possibile aprire un archivio con CREA_ARC se questo è attualmente in uso da parte del motore di HIGHWAY, come non è possibile aprire un archivio contemporaneamente in uso da parte di CREA_ARC. Questo perché l’esclusivo utilizzo di un archivio da parte di CREA_ARC ne garantisce l’integrità dei dati. Qualora si intendesse accedere ad un archivio al solo scopo di verificarne le caratteristiche si potrà fare uso del comando Solo Visualizzazione che vedremo più avanti.
Una volta eseguito il comando Apri o il comando Nuovo, diventano disponibili i comandi del menu Edita, per l’elaborazione o modifica della struttura del database. Divengono inoltre operative le voci Salva e Salva come...
Eventuali modifiche dell’archivio vanno confermate con il comando Salva.
L’uso del comando Salva come... ci permette, al contrario, di
creare una nuova copia della struttura dell’archivio. In tale copia la
struttura archivio risulta vuota ovvero priva di documenti ed i valori
soggetti a modifica nel corso dell’utilizzo di un archivio vengono riportati
ai loro valori originari. Per quanto riguarda questi valori, vedremo nel
dettaglio il loro significato più avanti.
N.B. : durante le fasi di modifica delle caratteristiche dell’archivio, il programma, in base alla tipologia di modifiche apportate, ci informa di quale comportamento sia più opportuno in fase di salvataggio e di quali operazioni si svolgeranno in tale sede. Nel caso l'archivio contenga già dei documenti, è consigliabile effettuare un preventivo salvataggio (backup), prima di azionare il comando, in quanto il programma effettua la ristrutturazione dei file componenti l'archivio. La ristrutturazione dei dati non deve essere effettuata qualora il Data Base contenga attributi di tipo OLE2 sulle cui caratteristiche ci soffermeremo più avanti.
L’operazione di ristrutturazione dell’archivio può consistere
in due diverse operazioni. Se le modifiche apportate influenzano i vocabolari
di attributo ma non modificano la struttura della base dati, il programma
provvede a compiere una indicizzazione dei dati presenti nell’archivio
ricostruendo i vocabolari secondo le nuove regole impostate. Al contrario,
avendo modificato sensibilmente la struttura, cioè ad esempio aggiungendo
o togliendo attributi o modificandone la posizione, il programma dovrà
rigenerare una nuova struttura archivio assumendo dalla base dati originaria
i documenti in essa contenuti, scomponendoli in singoli elementi così
come definiti nella struttura di partenza e ricomponendoli infine secondo
le nuove specifiche. Quest’ultima operazione è particolarmente delicata
e richiede opportuno spazio su disco, si suggerisce inoltre di compiere
un salvataggio di sicurezza (backup) dell’archivio prima di procedere con
la sua ristrutturazione. Il programma controlla la presenza di tale spazio
prima di procedere, in caso contrario sarà necessario salvare la
nuova struttura con il comando Salva Come... e procedere, in seguito,
all’esportazione dei dati dalla vecchia struttura ed alla importazione
in quella nuova tramite il modulo SFPLUS.
"Salva come ..." deve essere utilizzato per salvare un database nuovo e può essere usato per salvare uno schema già esistente su un file alternativo. In quest’ultimo caso il comando crea un archivio vuoto anche se l’archivio corrente contiene dei documenti. Non va utilizzato invece per confermare modifiche o variazioni di archivi già creati.
"Salva come ..." crea automaticamente i files aventi il seguente significato:
<nomearchivio>."sts" | struttura e di stato |
<nomearchivio>."pnt" | puntatori e dati a lunghezza fissa |
<nomearchivio>."pad" | dati a lunghezza variabile |
<nomearchivio>."idx" | indice |
<nomearchivio>."vcb" | vocabolario |
<nomearchivio>."ref" | riferimenti |
<nomearchivio>."ini" | profilo |
a cui possono essere aggiunti i file:
<nomearchivio>."ths" | thesaurus |
<nomearchivio>."dsp" | profilo del thesaurus |
<nomearchivio>."dsc" | descrizione termini del thesaurus |
1.stp | file di stoplist |
Attraverso la finestra ‘Stampa attributi Database’ si può scegliere di inviare la stampa direttamente alla stampante collegata, o di inviare le informazioni su file; in tal caso CREA_ARC propone come nome implicito di file il nome del database con estensione ".OUT ".
Qualora venga selezionata la stampa su file il programma richiede se si intende procedere con una stampa semplificata presentando un dialogo come il seguente:
La stampa della struttura archivio eseguita su file riproduce l’aspetto
del dialogo di configurazione degli attributi, che vedremo in seguito,
e per ogni voce disponibile indica se essa è attiva o meno. La stampa
semplificata, più sintetica, indica con brevi codici alfanumerici
quali proprietà siano attive per ogni singolo attributo. Entrambe
le stampe suddividono i diversi attributi per tabella.
![]() |
Scegliere:
|
Il comando Inserisci attributo visualizza l'icona come
segnaposto per gli attributi del database. Il nome proposto per l'attributo
è attr# , dove # rappresenta un numero
intero che si incrementa ad ogni nuovo attributo inserito.
Alcune icone di attributo, una volta configurati gli attributi, visualizzano al loro interno dei simboli che permettono di identificare immediatamente gli attributi per alcune loro proprietà. Tali simboli sono:
![]() |
Chiave (per indicare i campi chiave) |
![]() |
Punto esclamativo (per indicare i campi obbligatori) |
![]() |
Lucchetto (per indicare campi controllati) |
Divieto di sosta (indica l’univocità: verde per la globale, giallo per la locale) |
L’indicizzazione differita, al contrario, richiede una catalogazione
esplicita del database prima di poter utilizzare come termini di interrogazione
i valori inseriti (vedere il capitolo relativo alle funzioni di manutenzione
dell'archivio).
Il parametro continuo, disponibile solo con l’opzione abbandonabile, mantiene la finestra attiva in modalità inserimento fino a che non si esegua un comando che cambi la modalità operativa.
Quando l'inserimento non è definito continuo, alla conferma
di un record la finestra attiva passa alla modalità visualizzazione.
È inoltre possibile stabilire un "Livello" minimo per l'abilitazione alle operazioni di cancellazione sull'archivio.
In altre parole, questi due livelli determinano se e quali utenti siano
autorizzati rispettivamente a modificare e cancellare la struttura dell’archivio.
L'attivazione di questa opzione va effettuata quando si desidera bloccare l'accesso in scrittura sull'archivio in qualunque fase da parte di qualsiasi utente.
L’attributo Read Only può essere associato a qualsiasi tipo di
archivio, anche se già contenente documenti, e può essere
rimosso in qualsiasi momento senza causare scompensi o disallineamenti
degli archivi.
Ogni gruppo di campi vincolati viene separato da un "*"
Per la spiegazione dei Vocabolari Vincolati fare riferimento al manuale
"Thesaurus".
Se l'attributo esiste già il comando non sortisce alcun effetto.
NRECORD è un attributo utilizzato per definire navigazioni di
tipo reticolare. Se omesso, all’atto del salvataggio dell’archivio viene
segnalata la sua mancanza.
Non è possibile modificare le caratteristiche di tali attributi,
ma è possibile includerle in maschere di visualizzazione o in rapporti
di stampa.
Tale attributo è multi istanza. Se la prima istanza è numerica essa indica il livello minimo di accesso al documento: ad esempio se il valore è 170 allora solo gli utenti con livello di accesso maggiore o uguale a 170 potranno visualizzare il documento.
Se il valore è di tipo alfanumerico ed è preceduto dal
punto esso rappresenta una ‘chiave’ necessaria per la visualizzazione del
documento (se non è preceduto dal punto esso rappresenta un nome
utente).
Nell’archivio degli utenti è stato introdotto un attributo di
nome KEYPACK, multi istanza, che consente di specificare per ogni utente
un insieme o ‘mazzo’ di chiavi personalizzate cioè di stringhe necessarie
per la visualizzazione di quei documenti che contengono valori nell’attributo
HW_KEYPACK.
Ad esempio se un documento contiene nell’attributo HW_KEYPACK il valore AM10033 solo gli utenti aventi nell’attributo KEYPACK tale valore potranno accedere al documento.
L’attributo KEYPACK può contenere, su ogni istanza, caratteri di wild card o intervalli di valori.
Esempio:
Il nome di tabella deve essere necessariamente composto da più
di un carattere e non deve superare i 20 caratteri. CREA_ARC impedisce
salvataggi di nomi di tabelle così composti, avvertendo l’utente
con un segnale acustico.
È emesso un messaggio di conferma :
Conferma cancellazione
Tipo documento <nome>
dove nome è il nome della tabella.
Questo menù consente di operare con archivi gestiti da un motore
tipicamente attivo su un sistema remoto con un collegamento di tipo client
server.
Dopo aver dato un nome al nuovo archivio si apre una finestra dove referenziare tutti i dati relativi ad esso.
Nella finestrella Host va indicato l’indirizzo IP del server o il nome simbolico.
Nella finestrella Nome Simbolico, va invece indicato un nome simbolico
con cui il motore conosce l’archivio.
Esempi:
Host: superserv.net.com
Nome Reale: /usr/HIGHWAY/arc/gestio32
Host: superserv
Nome Reale: /usr/HIGHWAY/arc/biblioteca
Host: 192.168.0.25
Nome Reale: f:\HIGHWAY\arc\storico
Sono i classici comandi di Aiuto di programma.