• RE: Checking for specific words in a variable

    I'm assuming You're referring to a global variable withing a workflow.

    You can use VBAs InStr-Function to do this.
    If the name of Your variable is GV_text, you can check if it contains the substring "Approval" in a condition activity with:
    InStr(GV_text, "Approval") <> 0

    See here for the InStr's specification:


  • RE: Ist es möglich Mehrfachauswahllisten zum Indizieren in einem Workflow zu nutzen?

    Wo kommen denn die Daten für die Auswahlliste her? 

    Sie können ja eine Vielzahl von Datenquellen in der Administration (On Premise) oder über den Local Database Connector (Cloud) anbinden.
    Vielleicht können Sie Ihre Datenquelle auf diesem Weg einbinden, dann zum einen die gewünschte Auswahlliste als "extern" aus dieser Datenquelle anlegen und gleichzeitig im WF-Designer darauf zugreifen.
  • RE: Ist es möglich Mehrfachauswahllisten zum Indizieren in einem Workflow zu nutzen?

    Sofern es sich um eine mehrspaltige Auswahlliste handelt, die über eine Datenbankverbindung hergestellt worden ist, kann die gleiche Datenquelle im Workflow Designer in einer "Daten zuweisen" Aktivität mit Eintragstyp = "lokale Datenverbindung" verwendet werden. 
    Wurde die Auswahlliste über eine Dateiverbindung hergestellt, geht das aus meiner Sicht nicht.

  • RE: externe Auswahlliste - Fehler: Kein Zugriff auf Daten der Auswahlliste

    Hallo Steffen Harder, 

    Könnte es sein dass hier ein Problem mit den DatenTYPEN vorliegt? Ist eventuell das Feld im Dialog ein Textfeld, aber die Datenquelle der Auswahlliste stellt numerische Werte zur Verfügung?
  • RE: (Using Platform Services) Can a document be downloaded WITH its stamps included?

    A somewhat aged thread, but I had the same problem and would like to give my solution:

    Your client application needs to have an information about what localisation You want to have whenever You're retrieving data through the API. Per default it probable assumes english culture and language.

    This is an information You can supply when You create Yuur ServiceConnection object.
    The various static methods to do that accept an optional attribute 'httpClienHandler' of type HttpMessageHandler.

    You can new up an HttpMessageHandler and then call the "add"-method on it's CookieContainer to add an object of type Cookie. The overloaded constructor of a cookie object can accept two String objects for the Culture information and language, as well as some other stuff that you will have available anyway like the domain.

    As long as Your ServiceConnection is alove it will then be scoped with those localisation information which amongst othe things will mean that the automatic dates in workflow task stamps will be localised accordingly.

    Here's a snippet to get You started:

    Uri uri = new Uri($"{Settings.DwBaseUrl}/docuware/platform");
    HttpClientHandler handler = new HttpClientHandler();
    handler.CookieContainer.Add(new Cookie("DWFormatCulture", settings.DWFormatCulture, "/", uri.Host)); 
    handler.CookieContainer.Add(new Cookie("DWLanguage", settings.DWLanguage, "/", uri.Host));
    connection = ServiceConnection.Create(uri, username(), password(), httpClientHandler: handler, userAgent: userAgent);
  • RE: Workdays Only

    There might be a clever VBA Function You can use in an arithmetic expression in Workflows.

    A simple, purely imperative solution could be:

    Create a loop in a workflow, where you iterate from your "from"-Date to your "to"-Date in DateInterval.Day intervals with the DateAdd Function.
    In every iteration check, if your current date is a Workday with the Weekday-Function. Increment a counter variable if it a weekday, otherwise don't.

    Beware that there is a safeguard in workflows, that prevents exceeding the number of executions of a workflow activity within a certain amount of time (I believe the threshold is 50?). You shoud find KBA-posts on that. If you have to deal with large numbers of loop iterations, have the workflow wait after a certain number of loops.
  • RE: Pass Windows Authentication IIS

    For Firefox, see this KBA:

    For Chrome and Edge, I'm sure there is a similar article, but I cannot find it.
    If I recall correcty, You use the old "Internet Options" dialog o windows (Security tab) to add whatever address the client is supposed to use to reach the docuware server to "local intranet".
  • RE: using DateAdd in workflow trigger conditions

    You can only use the DateAdd function where arithmetic expressions are allowed. Of the top of my head, I'd say that is the variable assignment activity and the condition activity.

    When You are using the 'is (where-clause)' operator in the rule editors, you have to offer something that the rule editor can translate to SQL.
    There is a way to do some date arithmetic using 'CURRENTDATE()' here. This seems to take an integer as parameter for a number of days to add/subtract.
    So, for Your situation, You could try CURRENTDATE(-9).

    Disclaimer: I have only used this when I created lists in the web configuration, never in a workflow trigger, so test this carefully, please.

    It would be great if someone from the DocuWare team could elaborate on this. Are there other function-like expressions besides CURRENTDATE()? Can we do more than add or subtract days?

  • RE: Intelligent Indexing issue

    There is a nice list of the used ports listed in this Knowledge Base article:

    However, Intelligent Indexing works over http/https, so use Your preferred tools to check layers 2/3 for connections to the url of the Intelligent Indexing Service, which you can find in the intelligent indexing module of the web configuration.

    It might well be a DNS issue, so You may want to verify the the URL can be properly resolved.
  • RE: use to c# API to download page of a document

    In DocuWare, there is the notion of a document's 'sections'. A document can have multiple sections clipped together, which can be of different file types. Each section can in turn be presented as having multiple pages in the document viewer. 
    The API allows downloading the whole document as well as the individual sections.

    If what you need is really the first page (of the the first, possibly the only section) of a document, then you are already limiting yourself to certain filetypes, because not every filetype is displayed as 'consisting of several pages that you can thumb through'.
    For instance, what if your document is a zip file. The document viewer will show this as a section with one page, and this page shows an auto-generated inventory-list of the files within the zip file. 

    This is basically why what You need isn't possible. 
    DocuWare must be able to handle any type of file You throw at it as a document that You can safely store in an archive, but that will always include filetypes where it's impossible to determine what 'the first page' is, or even display it in the document viewer.

    If You're dealing with pdf documents/sections mainly, you could download the first section of a document and then use a pdf library to get the first page of that pdf file. Maybe take a look at 'pdfium' (no affiliation).
    When you're downloading files, note the Enum 'FileDownloadType', which You can set to 'FileDownloadType.PDF' to open this up to 
    the many file types that can be converted to pdf in a meaningful manner like docx, eml, etc...