|
Archivmanager |
Registerkarte |
Volltext-Recherche |
|
Volltext-Lizenz (914) |
Ja/Nein |
Lizenzspa „Volltextrecherche“ |
|
Archivtext-Einträge |
Anzahl der Einträge der Relation „Archivtext“ |
Informatorisch |
|
Archivtext-Index |
Name des Volltext-Index |
Informatorisch, Standard: „ArchivTextIndex“
Der Name ist auch in der JVar 2014, „JVAR_ARCHIV_VOLLTEXT_NAME“ verfügbar |
|
Aktualisierungsfunktion |
Name der Aktualisierungsfunktion |
Standard: „volltextrecherche_progress“ Hinweis: Hier bei dieser Datenbank-Funktion geht es lediglich darum den nächsten Kandidaten für die Erzeugung des Archivtextes anzugeben! Die eigentliche Volltext-Index-Aktualisierung erfolgt immer durch A.eins-Programmcode bzw. durch interne Sybase-Routinen.
|
|
Letzte Aktualisierung |
Zeitstempel der letzten System-Volltext-Index-Aktualisierung |
|
|
Volltext-Index-Einträge |
Anzahl der in den Volltext-Index einfließenden Dokumente |
|
Die Aktualisierungsfunktion ermittelt die nächsten zu verarbeitenden Kandidaten für die Aufbereitung des Archivtextes. Die von A.eins ausgelieferte Funktion kann privatisiert werden um auf besondere Umstände reagieren zu können.
Auslieferung : volltextrecherche_progress
---<summary>Liefert eine vorgebbare maximal-Anzahl zu verarbeitender Formulararchiv-Einträge</summary>
---<returns>Key Formulararchiv und einem Problem-Status, dieser ist ungleich 0 wenn ein Problem aufgetreten ist.
---</returns>
---<param name="in_anzahl"></param>
---<param name="in_zeitschranke"></param>
CREATE PROCEDURE volltextrecherche_progress( IN in_anzahl INTEGER DEFAULT 1 , IN in_zeitschranke INTEGER DEFAULT 1 )
RESULT
(
fa_id INTEGER,
fa_mndnr INTEGER,
problem INTEGER
)
BEGIN
DECLARE DC_HOUR INTEGER;
SET DC_HOUR = DATEPART( HOUR , NOW() );
IF ( DC_HOUR < 5 OR DC_HOUR > 19 ) OR ( in_zeitschranke != 1 ) THEN
IF ( NOT EXISTS( select * FROM amic_status_relation( 'archiv' ) WHERE status IN ( 0 , 1 ) ) ) THEN
SELECT -1 AS fa_ID , -1 AS fa_mndnr , 1 AS problem;
ELSE
BEGIN
DECLARE LOCAL TEMPORARY TABLE TMP_DATEN
(
fa_id INTEGER ,
fa_mndnr INTEGER ,
problem INTEGER
) ON COMMIT PRESERVE ROWS;
INSERT INTO TMP_DATEN( fa_id , fa_mndnr , problem )
SELECT TOP in_anzahl
fa.fa_id , fa.fa_mndnr , 0 FROM formulararchiv fa
JOIN amic_mime am ON ( am.am_code = fa.fa_mime AND am.am_archivvolltext = 1 AND ISNULL( fa.fa_progintern , 0 ) != -2 )
LEFT OUTER JOIN archivtext at ON ( at.archiv_guid = fa.fa_guid )
LEFT OUTER JOIN archivtextbad atb ON ( atb.archiv_guid = fa.fa_guid )
WHERE at.archiv_guid IS NULL
AND atb.archiv_guid IS NULL
AND fa.fa_guid IS NOT NULL;
SELECT fa_id , fa_mndnr , problem FROM TMP_DATEN
END
END IF
END IF
EXCEPTION
WHEN OTHERS THEN
BEGIN
CALL amic_exception( ERRORMSG() || '\n' || TRACEBACK() , SQLCODE , SQLSTATE , 'volltextrecherche_progress' , -30000 );
END;
SELECT -1 AS fa_id , -1 AS fa_mndnr , 1 AS problem;
END