FileArchive mapping.ini

Aus IMPS
Zur Navigation springen Zur Suche springen
 ; Make sure you configured "RootDir", "CheckLockfile", "Delete_Linked_Uploadfile_Dir", "Function", "EXCLUDEDFILEEXTENSION" and "IdxFileExtension" in the system.ini Import section like described in the FileArchive documentation!
 
 [GLOBAL]
 OBJECTID              = Return %_TMP_DocID%
 OBJECTKIND            = Return %_TMP_DocType%
 OBJECTTYPE            = Return "S"
 
 [SYSTEMFIELDS]
 ; Generiert einen eindeutigen Hashwert aus der Datei um Doppelanlagen in Corsa zu vermeiden
 _TMP_Unique           = ::sha2::sha256 -hex -filename %ORGFILENAME%
 _TMP_DocType          = CheckDefinition "ALGE"
 
 _TMP_DocID            = WebserviceCall ::CreateObject::DocumentByQuery %_TMP_DOCTYPE% *DUMMY* [list [list qrtReference dUnique qcAnd qoEqual %_TMP_UNIQUE%]] {} [list [list dUnique %_TMP_UNIQUE%]]
 _TMP_ObjectCreated    = Return "$::mapping::objectCreated"
 
 ; Verwendet den ersten Unterordner als eindeutigen Kundennamen für die Organisation in Corsa. Existiert diese nicht so wird die Organisation angelegt.
 _TMP_CUSTOMER         = lindex [regexp -inline {D:/NETZLAUFWERK/([^/]+?)/} %ORGFILENAME%] 1
 _TMP_ORGAID           = WebserviceCall ::CreateObject::OrganisationByQuery ORGA *DUMMY* [list [list qrtDbField Naam qcAnd qoEqual %_TMP_CUSTOMER%]] [list [list ext_rela.naam1 %_TMP_CUSTOMER%]] [list [list oWfAkten Ja]]
 
 poststuk.soort_ext    = Return "I"
 ws-ps_ob.object_type  = Return "E"
 poststuk.relatie_id   = Return %_TMP_ORGAID%
 ws-ps_ob.object_id    = Return %_TMP_ORGAID%
 
 ; Basierend auf dem zweiten Unterordner wird der Dokumenttyp in Corsa festgelegt.
 _TMP_FOLDER           = lindex [regexp -inline {D:/NETZLAUFWERK/[^/]+?/([^/]+?)/} %ORGFILENAME%] 1
 _TMP_DocType          = string map {Allgemein "ALGE" Sonstiges "ALGE" Schäden "ALGE" Verträge "VERT"} %_TMP_FOLDER%
 
 ; Der Dateiname wird ohne Endung für den Dokumenteninhalt verwendet.
 _TMP_FILENAME         = lindex [regexp -inline {.*/(.*)\.} %ORGFILENAME%] 1
 poststuk.inhoud1      = Return %_TMP_FILENAME%
 poststuk.onderwerp    = Return %_TMP_FILENAME%
 
 ; Die Originaldatei wird nach erfolgreichem registrieren gelöscht und es verbleibt der Link mit dem gleichen Dateinamen zur MyCorsa NxT Registrierung.
 _TMP_PATH             = lindex [regexp -inline {(.*)/.*\.} %ORGFILENAME%] 1
 _TMP_URL              = Return "http://CORSA-2016/scripts/wsisa.dll/WService=ws_test/stdw/viewobject.html?
 object_type=S&object_id=%_TMP_DocID%"
 _TMP_CREATENXTLINK    = ::twapi::write_url_shortcut "%_TMP_PATH%/%_TMP_FILENAME%.url" %_TMP_URL%
 
 [REFERENCEFIELDS]
 dQUelle               = Return "ImportService"
 dVersion              = Return "0.1"
 
 [LINKS]
 ; Zur Strukturierung wurden in Corsa Aktentypen mit manueller Nummerierung erstellt. Die Akten-ID wird aus einem Präfix und der Organisations-ID generiert und verknüpft.
 LINKOBJECTTYPE        = Return D
 LINKOBJECTIDS         = if {%_TMP_DocType% eq "VERT"} {Return "VE%_TMP_ORGAID%"}
 
 [UPLOAD]
 NAT                   = ErrorIfNotExists %ORGFILENAME%
 NATVERSION            = WebserviceCall NextVersion S %_TMP_DocID%
 
 [ERROR]
 CMD                   = if {%_TMP_ObjectCreated%} {WebserviceCall Direct DeleteObject "%OBJECTTYPE%" "%_TMP_DocID%"}

System.ini

[FileArchive]
 Name                          = FileArchive
 Active                        = 1
 UseJobService                 = 1
 Priority                      = 33
 SourceDir                     = ../../data/ready4import/FileArchive
 ErrorDir                      = ../../data/error/FileArchive
 RootDir                       = D:/FOLDERSTRUCTURE
 CheckLockfile                 = 1
 Delete_Linked_Uploadfile_Dir  = 0
 Function                      = ::FileArchive::GetData $counter
 EXCLUDEDFILEEXTENSION         = url
  
 IdxFileExtension              = idx
 RecordSep                     = format %c 253
 ColSep                        = format %c 255
 ValueSep                      = format %c 254
 MappingFile                   = ./mapping/FileArchive.ini