• RE: Create URL to docuement via Workflow

    Hi Michael,

    yes, the workflow offers a system variable called Document URL WF_DOC_URL. This variable returns the URL to the document in the workflow, which looks like this:
    https://any.docuware.cloud/DocuWare/Platform/WebClient/a80557d9-6870-4702-af8a-406e863e8dbd/Integration?p=V&fc=ae156510-ffa8-48b1-a3ec-baec3180669c&did=1629

    The URL is structured as follows:
    https://<Organization Domain>/DocuWare/Platform/WebClient/<Organization GUID>/Integration?p=V&fc=<File Cabinet GUID>&did=<Document ID>


    Alternatively you can also create URLs "manually" by using hard-coded parts and variables in a workflow (arithmetic) expression:
    • Organization Domain WF_ORG_DOMAIN,
    • Organization GUID, WF_ORG_GUID,
    • File Cabinet GUID WF_FC_GUID and
    • Document ID DW_DOCID

    Find more information about URL Integrations here: URL Integration | DocuWare SDK Documentation


    Viele Grüße / With best regards,

    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH
  • RE: Can we use Workflow Clipping with Docuware API

    Hi Thomas,

    yes it is possible. Select the endpoint:

    PUT /FileCabinets/{TrayId/FileCabinetId}/ Operations/ProcessDocumentAction?docId={DocId}

    Then in the HTTP Body use following body:
    {
      "DocumentAction": "Append",
      "DocumentActionParameters": {
        "$type": "AppendActionParameters",
        "RemoveSourceDocuments": false,
        "DocumentsInFront": [],
        "DocumentsAtBack": [
          {
            "SourceCabinetId": "ae156510-ffa8-48b1-a3ec-baec3180669c",
            "Documents": [
              123456
            ]
          }
        ]
      }
    }

    This will append (clip) the document with ID 123456 from file cabinet ae156510-ffa8-48b1-a3ec-baec3180669c, to the target document document, specified in the URL (route and query). 

    If you want to append the document before the target document, move the information from the "DocumentsAtBack" to the "DocumentsInFront" parameter. To append multiple documents, specify the DocIDs delimited by a comma, e.g.: 123456,123457

    You'll find this information also in our Knowledge Center (docuware.com)


    Viele Grüße / With best regards,
    --
    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH
  • RE: Externe können Web-Formular nur ausfüllen, wenn sie eine personenbezogene ID eingeben

    Hallo, 

    evtl. könnte man anhand von RegEx, im Code nach einem schwer zu erkennendem Muster suchen, zum Beispiel:

    Muster: 3 Großbuchstaben, 3 Ziffern, 3 Großbuchstaben
    RegEx: (\w+)?[A-Z]{3}\d{3}[A-Z]{3}(\w+)?

    Gültige IDs:
    • PQR456ZXY123MNL789XYZPQR5J
    • GI765DEF432XYZ098JKL321MNO
    • 654VWXY987ABC123RST0TSPQRG
    Ungültige IDs:
    • X9Y8Z7W6V5U4T3S2R1Q0EF398V
    • L1K2J3H4G5F6D7C8B9A02FBGH3
    • D7H3C2F4J9K1B5A8G6L0E2I13R

    Viele Grüße / With best regards,

    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH
  • RE: Indexfeld "Tabelle" als String-Kette in neues Indexfeld "Textfeld" kopieren

    Hallo Oliver,

    mittels dem Ausdruck KeywordAsString() kann man die Inhalte von Text-Spaltes zusammenfügen.

    Beispiel:
    KeywordAsString(DW_ABGRENZUNGEN[ABGRE_ART])

    Ergebnis:
    Grundsteuer,Niederschlagswasser,Entwässerung,Entwässerung


    Grundsätzlich kann man anhand dem Index den Wert einer Spalte für die jeweilige Zeile herausziehen.
    Dabei ist der Index für die Zeile 1 (0), für Zeile 2 (1), etc.
     
    Beispiel:
    DW_ABGRENZUNGEN[ABGRE_ART](0)&" - "&DW_ABGRENZUNGEN[ABGRE_BETRAG](0)

    Ergebnis:
    Grundsteuer - 245,12


    Kombiniert mit einem Loop, der den Index hochzählt (z.B. globale Variable GV_Index) kann man so die Werte pro Zeile zusammenfügen:
    DW_TEXT&DW_ABGRENZUNGEN[ABGRE_ART](GV_Index)&" - "&DW_ABGRENZUNGEN[ABGRE_BETRAG](GV_Index)&"|"

    Ergebnis:
    Grundsteuer - 245,12|Niederschlagswasser - 123,00|Entwässerung - 425,33|Entwässerung - 123,65|


    Um aus dem Loop auszusteigen, vergleicht man am besten in einer Bedingung ob der verarbeitete Index gleich der Anzahl der Zeilen ist.
    Mit dem Ausdruck Count() kann man die Anzahl der Zeilen ermitteln. Davon zieht man 1 ab, da der Index bei 0 und nicht 1 startet:
    GV_Index = Count(DW_ABGRENZUNGEN[ABGRE_ART])-1


    Viele Grüße / With best regards,
    --
    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH
  • RE: nächst höhere ID ermitteln

    Einfach folgendes Query bei der WHERE Klausel eintragen:
    DW_DWDOCID = (SELECT MIN(DW_DWDOCID) FROM [DOKUMENTE] WHERE DW_ART = 'Zeiterfassung' AND DW_MITARBEITER = 'GV_Mitarbeiter' AND DW_DWDOCID > 'GV_DocIDAktuell')

    [DOKUMENTE] muss entsprechend mit dem Namen der Archiv-Haupttabelle angepasst werden.
  • RE: nächst höhere ID ermitteln

    Vielen Dank für das Feedback und die Lösung!
    Bzgl. der vorherigen Frage: Ein Sub-Select wie von mir beschrieben, ist im Workflow Designer für die WHERE Klausel möglich.

    Viele Grüße / With best regards,
    --
    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH
  • RE: nächst höhere ID ermitteln

    Hallo Oliver,

    um die nächst höhere DOCID zu erhalten würde ich ein Subquery in Verbindung mit der SQL Funktion MIN() nutzen.

    WHERE Klausel:
    DW_DWDOCID = (SELECT MIN(DW_DWDOCID) FROM [DOKUMENTE] WHERE DW_ART = 'Zeiterfassung' AND DW_MITARBEITER = 'GV_Mitarbeiter' AND DW_DWDOCID > 'GV_DocIDAktuell')

    Durch MIN() erhält man die kleinste DWDOCID der Abfrage. Diese sollte entsprechend die nächst höhere sein.
    [DOKUMENTE] muss entsprechend mit dem Namen der Archiv-Haupttabelle angepasst werden.


    Viele Grüße / With best regards,
    --
    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH
  • RE: Get array from rest webservice in workflow designer

    Hi Mayra,

    in the Data Assign tab, try to manually replace the index by an asterisk "*", like this:
    $.approversList[*].username


    Viele Grüße / With best regards,
    --
    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH
  • RE: IIS home page redirection

    Hi Carlos,

    I have found that what you want is not possible with the Redirect module. You need to use the URL rewrite module in IIS.
    If it is not available, you have to first download and install it from here: https://www.iis.net/downloads/microsoft/url-rewrite

    Afterwards, use this code in your wwwroot web.config to redirect the requests:
     
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <rewrite>
                <rules>
                    <rule name="Redirect to DocuWare" stopProcessing="true">
                        <match url="^DocuWare$|^DocuWare/(.*)$" negate="true" />
                        <action type="Redirect" url="/DocuWare" />
                    </rule>
                </rules>
            </rewrite>
        </system.webServer>
    </configuration>
    
    It uses the regular expression ^DocuWare$|^DocuWare/(.*)$ to check the URL.
    All requests that do not match this expression will be redirected to /DocuWare


    Viele Grüße / With best regards,

    --
    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH
  • RE: IIS home page redirection

    Hi Carlos,

    try:
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
        <system.webServer>
            <httpRedirect enabled="true" destination="/DocuWare" exactDestination="true" childOnly="true" />
        </system.webServer>
    </configuration>
    
    This will redirect https://example/12345 to https://example/DocuWare


    Viele Grüße / With best regards,

    --
    Gerardo Lisanti
    Team Leader Product Management  |  DocuWare GmbH