4.3.3.2.2.2. Additional Task: Move to Dynamic Folder

Wenn Sie dynamisch erzeugte Ordner verwenden möchten, benötigen Sie den "TC_HookService_MoveToNewFolder".

  1. Öffnen Sie PARTadmin und filtern Sie nach "MoveToNewFolder".

  2. Aktivieren Sie die Zusatzaufgabe (Additional Task) und setzen Sie die gewünschten Werte für "TC_HookService_MoveToNewFolder_DESTINATION_FOLDER" und "TC_HookService_MoveToNewFolder_Flags".

    ifnxteamcenter.cfg

    [CreationOptions] 
    PdmOnCheckin_04.EXECUTE=_TC_HOOK_SERVICE.moveToNewFolder 
    TC_HookService_MoveToNewFolder_DESTINATION_FOLDER=?"Home/DaBe/"+_Format_0
    ("<PREFIXLIST(/)>").value() + "/" + _FORMAT_0("<ATTR(NN)>").value() 
    TC_HookService_MoveToNewFolder_Flags=13 

    TC_HookService_MoveToNewFolder_Flags wird als <bitfield> angegeben. 13 = 1+4+8

    #:HELP; The parameter <Bitfield> for moveToNewFolder: 
    #       1: create not existing folders? 
    #       2: use Item owner as source folder user? 
    #          (TC_HookService_MoveToNewFolder_SourceFol  der_User will be ignored) 
    #       4: use Item owner as destination folder user? 
    #          (TC_HookService_MoveToNewFolder_DestinationFolder_User will be ignored) 
    #       8: get sorce folder(s) from Item? 
    #          (TC_HookService_MoveToNewFolder_SOURCE_FOLDER will be ignored) 

    Beispiele:

    13 verwendet die Optionen 1, 4, 8.

    12 verwendet die Optionen 4, 8.

    5 verwendet die Optionen 1 und 4.

    usw.

  3. Führen Sie einen neuen Export durch.

    -> Das Item wird in den konfigurierten Ordner verschoben.

4.3.3.2.2.2.1. Problemlösung: Problem beim Speichern des Dokuments bei Verwendung von TC_HOOK_SERVICE.moveToNewFolder
  • Problem:

    Beim Versuch, ein Dokument mit TC_HOOK_SERVICE.moveToNewFolder zu verschieben, erscheint eine Fehlermeldung.[62]

  • Ursache: Es handelt sich um ein Workflow-Problem. IfProeTeamcenter speichert das Item zunächst in dem Ordner, der im Konfigurationsschlüssel TC_TmpFolder angegeben ist; standardmäßig ist das der Newstuff-Ordner des aktuellen Benutzers. Dort befindet sich das Item zu diesem Zeitpunkt.

    Der Schlüssel TC_TargetFolder wird in EndCheckinTransaction angewendet (das Item wird verschoben), und zwar nach Checkin1 (PdmOnCheckin_XX). Im vorliegenden Fall wird mit aktivem MoveToNewFolder-HookService in PdmOnCheckin_01 versucht, das Teil von TC_HOOKSERVICE_MOVETONEWFOLDER_SOURCE_FOLDER=Home/QA/GOHR/CREO nach TC_HOOKSERVICE_MOVETONEWFOLDER_DESTINATION_FOLDER=Home/QA/3DFindIT zu verschieben. Das kann nicht funktionieren, da sich das Item noch im TC_TmpFolder befindet (in diesem Fall Newstuff).

    Normalerweise ist MoveToNewFolder nicht erforderlich, da IfProeTeamcenter die Dateien in EndCheckinTransaction verschiebt.

  • Lösung:

    Wenn Sie die Teile jedoch in einen Ordner verschieben möchten, der nicht dem aktuellen Benutzer gehört, oder es einen anderen triftigen Grund gibt, das integrierte Verschieben nicht zu verwenden, tragen Sie den Wert von TC_TmpFolder im Schlüssel TC_HOOKSERVICE_MOVETONEWFOLDER_SOURCE_FOLDER ein und setzen TC_TargetFolder nicht.