Aktionen
ELO¶
- Inhaltsverzeichnis
- ELO
Ablauf¶
- PRODAT: Dokument Druck -> Dokument hat keine pd_external_dms_id-> Erscheint im Elo ViewTDMS.External_DMS__get_Documents-> wird angenommen -> Elo Tool schreibt ID zurück (siehe Abschnitt 'Einlesetool seitens Elo')
- PRODAT: Dokument oder Schlagwort wird geändert -> erscheint über Flag "Änderung" (pd_external_dms_updatedpd_external_dms_changed) in View -> Elo Tool schreibt Übernahme zurück mit Aktualisierungsdatum
- Administration: PRODAT Systemprogramme > Einstellungen DMS > Dokumenttypen Feld dt_external_dms_dokutypeenthält den Namen des Dokumenttypen- Dokumente mit Inhalt für dt_external_dms_dokutypewerden für externes DMS abrufbar durch ViewTDMS.External_DMS__get_Documents
 
- Dokumente mit Inhalt für 
Algorithmus¶
- Eingangs- und Ausgangsrechung > Anbindung ELO und Ablauf
- #9153: ELO: PRODAT-DMS Strukturerweiterungen: Externe DMS Id, Spalte(n) für Änderungsstatus
	- #9154: ELO: Abfrage / Funktion: gib mir alle geänderten PRODAT-Dokumente + Schlagworte TDMS.External_DMS__get_Documents
- dt_external_dms_dokutypeODER- pd_external_dms_idmuss angegeben sein
 
- #9154: ELO: Abfrage / Funktion: gib mir alle geänderten PRODAT-Dokumente + Schlagworte 
- #9491: ELO: Zusatzinformationen zum Dokument tdms.picndoku__fetch__metadata: Out Adresskurzname, Auftrags-Nr/Bestell-Nr
- #9155: ELO: Funktion, welche die ELO-ID an PRODAT zurückgibt
- #9164: ELO: Funktion, welche die Änderungsübernahme in PRODAT zurückschreibt
Funktionen und Bsp-Aufrufe¶
#9145
- SELECT * FROM TDMS.External_DMS__get_Documents WHERE is_updated_or_new;
 + Ansatz: bei Änderung von Schlagwort oder am Dokument wird- TIMESTAMP "pd_external_dms_updated"gesetzt
 + alle neuen oder geänderten Dokumente
 + Änderung von Schlagwort, Änderung
 +- (pd_external_dms_updated IS NOT NULL OR pd_external_dms_id IS NULL) AS is_updated_or_new
- TDMS.External_DMS__get_Keywords(pd_id)
- TDMS.External_DMS__set_ID(pd_id, external_id)
 + ELO-ID an PRODAT DMS
 + Achtung,TDMS.External_DMS__reset_Updated(pd_id)muß aufgerufen werden, wenn vollständig (zB Keyowrds noch übernommen)
- TDMS.External_DMS__reset_Updated(pd_id)
 +TIMESTAMP "pd_external_dms_updated"wird zurückgesetzt (NULL)
Achtung: Zugriff des ELO nur über DMS-User "ELO".
Mindestens TDMS.External_DMS__set_ID und TDMS.External_DMS__reset_Updated müssen mit DMS-User ausgeführt werden.
SELECT -- Beispielaufruf
 *
FROM 
 TDMS.external_dms__get_documents JOIN LATERAL tdms.picndoku__fetch__metadata(pd_id) ON true
                                  JOIN LATERAL tdms.external_dms__adk(picndoku__fetch__metadata->>'adkrz') ON true
WHERE is_updated_or_new  
SELECT * FROM TDMS.External_DMS__get_Documents;                -- "geänderte" Dokumente auslesen ...
SELECT * FROM TDMS.External_DMS__get_Documents WHERE is_updated_or_new;
SELECT * FROM TDMS.External_DMS__get_Documents WHERE is_updated_or_new AND pd_external_dms_id IS NOT NULL;
SELECT * FROM TDMS.External_DMS__get_Documents WHERE pd_external_dms_id = "external_id";
SELECT TDMS.External_DMS__set_ID(pd_id, "external_id");        -- externe ID speichern
SELECT TDMS.External_DMS__reset_Updated(pd_id);                -- Änderungsstatus zurücksetzen
SELECT * FROM TDMS.External_DMS__get_Keywords(pd_id);          -- Schlüsselworte auslesen
SELECT TDMS.External_DMS__get_RemoteFilename(pd_id, True);     -- "internen" Dateinamen auslesen (siehe auch TDMS.External_DMS__get_Documents pd_dmsremotefile)
--TDMS.External_DMS__get_Documents
  pd_external_dms_id,                    -- document ID in external DMS
  pd_external_dms_updated,               -- last changed at
  pd_external_dms_changed,               -- what has changed (file, annotation, recinfo, keyword)
  is_updated_or_new,                     -- .
  is_linked,                             -- document is linked
  pd_dmsremotefile,                      -- internal file name
  pd_revision_id,                        -- revision (related documents with the same ID)
  pd_revision_count,                     -- count of revisions
  pd_revision_pos,                       -- position in revisions
  pd_revision_pdids,                     -- list of all pd_id of this revision
  pd_deletable,                          -- hidden / deleted (e.g. older revision)
  pd_dmscomment,                         -- has comment/stamp/annotaions on file
  pd_id,                                 -- document ID in PRODAT
  pd_path,                               -- caption
  pd_txt,                                -- comment
  pd_doktype,                            -- document type (classification)
  pd_external_doktype,                   -- different from pd_doktype if document type changed, but file has not been moved yet
  pd_tablename, pd_dbrid, pd_dokident,   -- owner
  pd_source,                             -- file origin (print, scan, file, camera, bi, image, ...)
  pd_date,                               -- date of printing or import
  pd_modified                            -- modified dateWeitere Funktionen¶
- TDMS.External_DMS__adk(IN VARCHAR) > Adressdaten, IN: Adresskurzname aus PRODAT (adk)
 + Kundennummer > a1_knr
 + Lieferantennummer > a2_knr
 + AdresseName (Für Ordner) > adressename
Einlesetool seitens Elo¶
Das Dienstprogramm "" liest permanent die Schnittstelle aus und überträgt die Daten ins ELO.
- Die Anwendung läuft auf:
- Log-Dateien sind zu finden unter:
- Die Konfiguration (IP des Servers) ist angegeben in der Config-File / über die Startparameter:
- Die Anwendung wird neu gestartet, indem:
Von [X] Marcus F vor fast 4 Jahren aktualisiert · 17 Revisionen