Tutti gli archivi configurati con l'opzione Indicizzazione differita richiedono l'uso di Sfutil poiché non catalogano automaticamente i documenti.
Per eseguire il programma SFutil aprire il gruppo
HIGHWAY da Program Manager e fare doppio "Click" su
La barra del titolo visualizza informazioni con il seguente formato:
SFutil ['nome archivio'] ,
dove nome archivio è sostituito con il nome dell'archivio aperto, senza estensione e con il path del DOS completo.
Comando | Menù | Tastiera |
Apri DataBase | File | Alt+F+A |
Dopo avere eseguito il comando, apparirà sulla barra del titolo il nome del database selezionato.
Comando | Menù | Tastiera |
Uscita | File | Alt+F+U |
Comando | Menù | Tastiera |
Statistiche | DataBase | Ctrl+S |
La finestra di dialogo mostra:
Comando | Menù | Tastiera |
Compattamento Archivio | DataBase | ALT+D+A |
Quando vengono cancellati dei documenti, lo spazio che essi occupano su disco non viene recuperato, poiché la cancellazione è di tipo logico. Ciò permette di rintracciare i record cancellati
Il compattamento effettuata la cancellazione fisica dei documenti rendendoli irrecuperabili per sempre.
L'operazione non può essere interrotta e a seconda
del numero di documenti inseriti, può richiedere tempi non brevi.
Terminata la fase di ottimizzazione della base dei dati,
il programma propone anche con l'ottimizzazione degli indici:
Comando | Menù | Tastiera |
Compattamento Vocabolario | DataBase | ALT+D+V |
Comando | Menù | Tastiera |
Controllo | Vocabolario | Alt+V+U |
Alla fine del controllo, se non sono stati rilevati errori, SFPLUS crea un file di nome <nome database>.TOT contenente alcune statistiche quali:
Comando | Menù | Tastiera |
Esportazione Attributi controllati | Vocabolario | Alt+V+E |
Con questo comando si trasferisce su file la lista dei valori di ciascun attributo controllato presente nel database. Questa lista viene salvata sul file <nome database>.TAB, nella directory in cui risiedono gli archivi. Tale file contiene, per ogni attributo controllato, la lista dei valori disposti per riga, preceduta dal nome di attributo nella forma '; nome'.
; nome attributo
valore1
valore2
. . .
valoren
; nome attributo
valore1
. . .
valoren
Il file <nome database>.TAB viene sovrascritto
ad ogni export di attributi controllati; quindi se si intende utilizzare
il contenuto di una esportazione, per consultazione o per reimportare in
un database, è necessario rinominare il file.
Comando | Menù | Tastiera |
Importazione attributi controllati | Vocabolario | Alt+V+I |
Salvataggio attributi controllati
Comando | Menù | Tastiera |
Salvataggio attributi controllati | Vocabolario | Alt+V+S |
Tale file <nome database>.DAC viene sovrascritto
ad ogni export di attributi controllati; quindi se si intende utilizzare
il contenuto di una esportazione, per consultazione o per reimportare in
un database, è necessario rinominare il file.
Recupero attributi controllati
Comando | Menù | Tastiera |
Recupero attributi controllati | Vocabolario | Alt+V+R |
Comando | Menù | Tastiera |
Cancellazione | Vocabolario | Alt+V+L |
Prima di procedere alla cancellazione viene emesso un
messaggio per la conferma dell'operazione.
Scegliere OK per confermare la cancellazione, Annulla per tornare alla finestra principale.
Se si è scelto di procedere con la cancellazione
del vocabolario, una nuova finestra richiede quale comportamento tenere
nei riguardi dei valori controllati privi di riferimento.
Premere Si per cancellare i valori controllati privi di riferimento, No per mantenere i valori , Annulla per tornare alla finestra principale. Normalmente i valori controllati privi di riferimento vengono mantenuti.
Comando | Menù | Tastiera |
Catalogazione | Vocabolario | F8 |
Come già detto in precedenza tutti gli archivi non configurati con Indicizzazione automatica devono procedere all'indicizzazione off-line.
Se l'operazione ha esito positivo, viene visualizzato il tempo occorso per portare a termine la suddetta operazione.
Viceversa, se l'operazione non ha avuto esito positivo, si consiglia di effettuare una cancellazione del vocabolario ed un nuovo tentativo di catalogazione completa variando, eventualmente, alcuni parametri di allocazione della memoria, così come specificato nel file SFPLUS.INI (vedi sfplus.ini).
Comando | Menù | Tastiera |
Esporta | Relazioni | Alt+R+E |
Tale file risulta utile al fine di poter usufruire di un salvataggio delle chiavi di relazione indipendentemente dalla posizione che il documento assumerà nell'archivio dopo azioni modificanti come Riconfigurazioni, Compattamenti e Importazione documenti da fonte remota.
La sintassi dell'esportazione e dell'importazione logica dei documenti è strutturata come segue:
<NDoc1>~<TipoRelazione>~<NTabellaDoc2>~<Ndoc2>
TipoRelazione può essere:
"1" per le relazioni di SALITA
"2" per le relazioni di DISCESA
NTabellaDoc2 deve essere espresso in base 0 (ovvero partendo da 1 per indicare la prima tabella che nell'archivio è 0).
Comando | Menù | Tastiera |
Importa | Relazioni | Alt+R+I |
Comando | Menù | Tastiera |
Cancella | Relazioni | Alt+R+C |
Comando | Menù | Tastiera |
Cancella | Relazioni | Alt+R+R |
Comando | Menù | Tastiera |
Rigenera | Titoli | Alt+T+R |
Tale procedimento richiede che vengano generati una prima volta i titoli del documento dell'archivio Off - Line tramite la voce "Rigenera".
Per escludere tale funzionalità occorre cancellare nel direttorio dell'archivio i files:
COMANDO | MENÙ | TASTIERA |
Importa | File | Alt+F+I |
In questa versione di Sfplus, vengono supportati i seguenti formati:
TABELLA: nome tabella |
attributo1: valore attributo 1 |
. . . |
ATTRIBUTOn: valore attributo n |
\254\254\254\254\254\254\254\254\254 |
TABELLA è un nome di attributo speciale di SFplus, e il nome di tabella il valore che esso assume.
Segue una lista degli altri attributi, ognuno dei quali comincia su una nuova riga formata da un nome di attributo, che deve corrispondere al nome di un attributo del database di SFplus che ospiterà i dati importati, seguito dal testo corrispondente al attributo; il nome di attributo e il contenuto del attributo sono separati dal carattere di due punti (:) seguito da un carattere di spazio.
Nel caso in cui il valore di un attributo sia composto da più righe occorre allineare le righe successive alla prima a partire da colonna due.
Esempio:
....
TESTO: Questa è la storia
di uno di noi
anche lui nato
....
Un attributo può essere ripetuto più volte all'interno di un documento, questa possibilità è particolarmente utile nel caso di attributi di gruppo.
Esempio:
....
INVENTARIO: 1001
COLLOCAZ: A100
DATA_ING: 10/02/1992
INVENT: 7865
....
INVENTARIO: 1101
COLLOCAZ:
DATA_ING: 14/02/1992
L'importazione per i campi data può avvenire indipendentemente da formato 'aaaammgg' oppure da formato 'ggmmaa' .
Ciascun documento è separato dal successivo da una riga che contiene una serie di 9 caratteri di valore ascii 254 decimale (0FE esadecimale).
Se il formato del file ASCII non è corretto SFplus abortirà l'importazione.
Se durante la fase di importazione vengono invece verificate violazioni di una condizione di unicità o altri errori, SFPLUS segnala tale evenienza in un file di nome WARNINGS situato nel direttorio SFPLUS all'interno del direttorio di Windows.
Nel formato ISO2709 gli attributi sono identificati da numeri, per associare tali numeri con attributi Highway si deve inserire la sezione [ISO2709] nel file <nomearchivio>. INI. All'interno di tale sezione si devono indicare tutte le associazioni fra numeri e attributi, tenendo presente che i numeri devono essere espressi in cifre.
Il contenuto dei campi in formato ISO potrebbe aver riferimenti a sottocampi, identificati da un ^<lettera>. In tal caso Sfplus provvede a importare ogni singolo sottocampo in campi di nome uguale rispetto a quello inserito nell'INI seguito dalla lettera successiva al "^". In caso di assenza di tale campo, viene inserito in una nuova istanza dell'INI.
Scegliendo il formato "da spool di stampa", viene proposta una nuova finestra entro la quale inserire il nome del file di configurazione dell'importazione.
Le regole da seguire per l'importazione "da spool di stampa" sono le seguenti:
[Info]
RecLen=<lunghezza della riga (esclusi i CRLF)>
Tabella=<nome tabella di appartenenza>
MarkerRiga=<colonna>,<lunghezza>
questa voce è opzionale e può essere
utilizzata qualora i file da importare abbiano un identificativo di numero
di righe da avanzare prima della attuale.
FineDoc=<riga>,<colonna>,<lunghezza>,<stringa
di fine documento>
Attributi=<numero degli attributi da importare>
per un buon funzionamento della fase di import, occorre
indicare gli attributi da importare nell'ordine in cui appaiono sul file
di spool e non in ordine sparso.
<progressivo di attributo da importare>=
<nome attributo>,<riga>,<colonna>,<larghezza>[,<riga
finale>]
dove <riga finale> è opzionale ed è
necessario solo se l'attributo è contenuto su più righe del
file da importare.
Il file di definizione deve contenere le seguenti parole chiave:
[format]
RecLen=<lunghezza record max>
dove per <lunghezza record max> si intende la lunghezza massima del record di import
Tabella=<inizio_id>,<stringa_id>,<inizio_nome>,<fine_nome>
dove :
inizio_id significa colonna in cui si trova l'indicatore di inizio tabella
stringa_id significa stringa identificante l'inizio tabella
inizio_nome significa colonna in cui inizia il nome della tabella può essere un numero o una stringa(*)
fine_nome significa colonna in cui finisce il nome della tabella : può essere un numero o una stringa(*)
FineDoc=<inizio_id>,<stringa_id>
inizio_id significa colonna in cui si trova l'indicatore di fine documento
stringa_id significa stringa identificante la fine del documento
N.B.: FineDoc non va specificato nel caso in cui non esista un indicatore di fine documento, cioè nel caso in cui la fine del documento corrente è segnalata dall'inizio di una nuova tabella.
MarkerRiga=<inizio_nome>,<fine_nome>,<inizio_valore>,
<fine_valore>
inizio_nome significa colonna in cui inizia il nome del campo : può essere un numero o una stringa(*)
fine_nome significa colonna in cui finisce il nome del campo : può essere un numero o una stringa(*)
inizio_valore significa colonna in cui inizia il valore del campo : può essere un numero o una stringa(*)
fine_valore significa colonna in cui finisce il valore del campo : può essere un numero o una stringa(*)
ContinuaRiga=<inizio>,<stringa_id>,<inizio_valore>,<fine_valore>
inizio_id significa colonna in cui si trova l'indicatore di continuazione di riga
stringa_id significa stringa identificante la continuazione di riga
inizio_valore significa colonna in cui inizia il valore del campo : può essere un numero o una stringa(*)
fine_valore significa colonna in cui finisce il valore del campo : può essere un numero o una stringa(*)
Per tutti questi valori, nel caso in cui si specifica una stringa, valgono le seguenti regole:
Per un file di descrizione contenente:
MarkerRiga="@",":","#",80
nel caso di una riga di input così formattata:
@INDIRIZZO: #P.zza della Repubblica
il programma estrarrà 'INDIRIZZO' come nome campo e 'P.zza della Repubblica' come valore da attribuire al campo INDIRIZZO.
La stringa può contenere anche più di un carattere (vale sempre la regola n.2)
Esempi:
MarkerRiga=1,":","VALORE:",80
MarkerRiga="CAMPO:",".",20,";"
FORMATTAZIONE
Nessun attributo | il contenuto degli attributi non viene formattato |
Completa | il contenuto di ogni attributo viene adeguato alla dimensione della finestra corrispondente |
Parziale | il contenuto di ogni attributo selezionato viene adeguato alla dimensione della finestra corrispondente |
Nessuno | in caso di violazione della condizione di unicità (si sta importando un record già presente nella base di dati) il record già presente nella base di dati non viene aggiornato |
Parziale | effettua un aggiornamento di tipo parziale: in caso di violazione della condizione di unicità (si sta importando un record già presente nella base di dati) il record già presente nella base di dati viene aggiornato "parzialmente" e cioè viene aggiornato solo sugli attributi che vengono importati |
Completo | effettua un aggiornamento di tipo completo: in caso di violazione della condizione di unicità (si sta importando un record già presente nella base di dati) il record già presente nella base di dati viene aggiornato "completamente" e cioè viene aggiornato su tutti gli attributi; |
Reindicizzazione Finale | se abilitato specifica che alla fine dell'importazione verrà effettuata la reindicizzazione dell'archivio (e quindi non solo dei dati aggiornati ma di tutti i dati presenti) |
Disabilita Conversione Ansi | se abilitato specifica che il testo del file da importare è in formato ANSI e quindi non necessita della conversione |
Importa Relazioni | oltre al testo vengono importate, se presenti, anche tutte le relazioni presenti |
Indicizzazione Automatica | alla fine della fase di importazione dei documenti viene effettuata un'indicizzazione automatica |
Salta i primi documenti | Tale comando permette di non importare i primi documenti del file. il Numero di documenti da non importare va stabilito nella relativa finestrella |
Campi indentati | viene mantenuta l'indentazione dei campi |
Cancella files importati | provvede, alla fine dell'import, a cancellare i file importati |
[import]
AttivaSegnalazioniSuFile=<nome file di log>
la segnalazione su file di log sarà attivata solo se presente questa voce.
WarningIniziale=<messaggio>
dove <messaggio> indica la stringa da scaricare su file all'inizio della procedura di import.
WarningFinale=<messaggio>
dove <messaggio> indica la stringa da scaricare su file al termine della procedura di import.
[ImportInAccodamento]
<nome tabella>=<messaggio>
dove <messaggio> indica la stringa da scaricare su file di log per ogni documento accodato alla banca dati.
[ImportInAggiornamento]
<nome tabella>=<messaggio>
dove <messaggio> indica la stringa da scaricare su file di log per ogni documento aggiornato in banca dati.
In ogni <messaggio> è possibile inserire riferimenti a:
ora di sistema: $ORA$
totale documenti in banca dati: $TOTALEDOC$
totale documenti importati in accodamento: $TOTACCODATI$
totale documenti importati in aggiornamento: $TOTAGGIORNATI$
Esempio di configurazione di file di log:
[import]
AttivaSegnalazioniSuFile=c:\tmp\hslog.txt
WarningIniziale=Import iniziato in data $DATA$ - $ORA$ - Documenti presenti = $TOTALEDOC$
WarningConclusivo=Import terminato in data $DATA$ - $ORA$ - Accodati = $TOTACCODATI$ - Aggiornati = $TOTAGGIORNATI$
[ImportInAccodamento]
COMPLETO=Accodato il documento con NRECORD = [NRECORD] e NOMINATIVO = [NOMINAT]
PROTOCOLLO=Accodato il documento con NRECORD = [NRECORD] e NOMINATIVO = [NOMINAT]
[ImportInAggiornamento]
COMPLETO=Aggiornato il documento con NRECORD = [NRECORD] e NOMINATIVO = [NOMINAT]
PROTOCOLLO=Aggiornato il documento con NRECORD = [NRECORD] e NOMINATIVO = [NOMINAT]
COMANDO | MENÙ | TASTIERA |
Esporta | File | Alt+F+E |
In questa versione di SFplus è supportato soltanto il formato ASCII (estensione di default "*.TXT") contenente dati organizzati nel modo descritto di seguito:
TABELLA: nome tabella |
attributo1: valore attributo 1 |
. . . |
ATTRIBUTOn: valore attributo n |
\254\254\254\254\254\254\254\254\254 |
All'atto dell'esportazione viene presentato il seguente
dialogo:
Tipo Esportazione
Da Selezione | vengono esportati solo i documenti relativi alla selezione attuale |
Documento attuale | viene esportato solo il documento della selezione corrente |
Da ... a | specifica il range di documenti (in ordine di inserimento) da esportare |
Esporta Relazioni | Abilita o disabilita l'esportazione delle relazioni relative ai documenti da esportare. Quest'ultima richiesta è visibile esclusivamente se nell'archivio esiste almeno una relazione fra i documenti da esportare |
Se tale file esiste viene proposto il seguente dialogo:
Scegliere "Si" per sovrascrivere il file; "No" per andare in accodamento al file esistente; "Annulla" per annullare l'operazione.
COMANDO | MENÙ | TASTIERA |
Import da remoto | File | Alt+F+R |
Nella finestra di dialogo è possibile scegliere se procedere all'indicizzazione immediata , se controllare gli attributi vincolati e in tal caso è anche possibile autorizzare il programma ad inserire i valori vincolati assenti.
Nella finestra in basso va inserito il nome del file da importare facendo attenzione ad indicare il percorso così come identificato dal server.
COMANDO | MENÙ | TASTIERA |
Export da remoto | File | Alt+F+R |
Nella finestra di dialogo è possibile scegliere se procedere all'export di dati precedentemente selezionati o piuttosto esportare un range di documenti.
Nella finestra in basso va inserito il nome del file di export facendo attenzione ad indicare il percorso così come identificato dal server.