Aktionen
610 ELO-DMS ankoppeln » Historie » Revision 10
« Zurück |
Revision 10/17
(diff)
| Weiter »
[X] Marcus F, 08.10.2018 13:59
ELO¶
Ansatz¶
Algorithmus¶
- #9146: 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.picndoku__fetch__metadata
- #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 wirdTIMESTAMP "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 date
Weitere Funktionen¶
- TDMS.External_DMS__adk(IN VARCHAR) > Adressdaten, IN: Adresskurzname aus PRODAT (adk)
+ Kundennummer > a1_knr
+ Lieferantennummer > a2_knr
+ AdresseName (Für Ordner) > adressename
Von [X] Marcus F vor etwa 6 Jahren aktualisiert · 10 Revisionen