• Gedanken zur Verarbeitung von E-Rechnungen mit DocuWare (Routing und Validierung)

    Hallo zusammen,

    pünktlich zum Jahresendspurt machen wir uns gerade tiefer Gedanken zum idealen Prozess der Verarbeitung von eingehenden E-Rechnungen. Im Forum scheint das Thema E-Rechnung nicht existent zu sein (Verwunderung). Die verfügbaren Informationen seitens DocuWare zum Thema E-Rechnung auf Prozessebene scheinen sich nur auf allgemeine Marketing-Informationen zu beschränken. Zu mindestens unter einem Blog-Post (Connect to Outlook - E-Rechnung) ist ja eine lebendige Diskussion entstanden (etwas was hier im Forum selten geschieht).

    Mache ich mal einen Versuch ;)

    Für uns stellen sich zum Thema E-Rechnung und DocuWare derzeit die zwei folgende Fragen:

    1. Routing nach Format

    Rechnungen gehen bei uns per E-Mail oder auf dem Postweg ein. Den Postweg lassen wir nun mal außen vor. Bei eingehenden Rechnungen per E-Mail kann ich von unseren Mitarbeitern nicht erwarten, dass Sie eine E-Rechnung im ZUGFeRD Format von einer unstrukturierten PDF-Rechnung unterscheiden können. XRechnung ist erkennbar - zu mindestens ist es eine XML - ob es wirklich eine XRechnung ist steht wieder auf einem anderen Blatt.

    Unsere Mitarbeiter sollen den Anhang einfach nur in einem per IMPORT überwachten Ordner ablegen. Der Anhang soll nicht geöffnet und weiter untersucht werden - Phishing sagt Hallo!

    Nun erwarte ich, dass ich per Import-Konfiguration eine dynamische Entscheidung für die richtige Import Konfiguration anwenden kann (Konfiguration wie unter Verarbeitung festgelegt automatisch auswählen aktiviert). Hierzu erachte ich es als erforderlich, dass unter Verarbeitung der Bereich Identifizieren Zugriff auf die XML Metadaten besitzt. Die Metadaten stehen aber nur im Bereich Indexieren zur Verfügung. Eventuell kommt hier noch etwas seitens DocuWare wie im Blog Post erwähnt wurde.

    Wir benötigen eine Importkonfiguration für ZUGFeRD, XRechnung und unstrukturierte PDF-Rechnungen. Letztere gehen in den Intelligent Indexing Briefkorb und dann nach Bearbeitung durch den Benutzer in den Freigabe-Workflow. Die beiden E-Rechnungsformate werden über die Metadaten im Import indexiert und gehen dann direkt ins Archiv und dort in den Freigabe-Workflow.

    Wie löst Ihr dies? Erwarte ich zu viel?


    2. Validierung von E-Rechnungen

    Wird es seitens DocuWare eine Lösung zur Validierung der E-Rechnungen nach EN 16931 geben - ist hier etwas in Planung? Wir überlegen, auch unter Berücksichtigung der Probleme mit Punkt 1, einen eigenen Validierungsservice mittels PHP vor DocuWare zu schalten, welcher den Ablageordner der eingehenden Dateien per E-Mail überwacht und jede Datei hinsichtlich ZUGFeRD, XRechnung oder PDF-Rechnung bewertet und dann in einen von vier Ordner ablegt zur weiteren Verarbeitung durch DocuWare IMPORT. Je einen Ordner für die drei Rechnungsformate und einen für Dokumente die nicht validiert werden konnten bzw. nicht EN 16931 entsprechen. 

    Eine interessante PHP Library findet sich unter: https://github.com/horstoeko/zugferd
    Alternativ überlegen wir den Embedded Service von https://www.portinvoice.com/ davor zuschalten.

    Wie plant Ihr Eure E-Rechnungen zu validieren und zu routen? Welche Probleme und Fragen im Zusammenhang mit DocuWare beschäftigen Euch?

    LG Thomas
  • Intelligent Index Frage für die Profis

    Hallo zusammen,

    wir experimentieren gerade mit Intelligent Indexing vorgeschaltet vor unseren seit Jahren im Einsatz befindlichen Rechnungsprüfung Workflow. Unsere DocuWare Version ist aktuell 7.6.

    Für unseren Workflow benötigen wir aufgrund der angebundenen Übergabe an die Buchhaltung die Unterscheidung, ob es sich bei einem Dokument um eine Rechnung oder Gutschrift handelt.

    In der Zuordnung der Dialogfelder verwenden wir hierfür das Intelligent Indexing Feld ART DES DOKUMENTES. 

    Über die Intelligent Indexing Einstellungen können wir die Namen der Dokumententypen an unsere Bezeichnungen anpassen. Aus Rechnung (eingehend) wird in unserem Fall somit nur Rechnung. 

    Nun die Frage an die Profis ...

    Wo finde ich den Dokumententyp GUTSCHRIFT? Offenbar existiert dieser Dokumententyp nicht. Ist Gutschrift Teil des vorgegebenen Dokumententyps Rechnung (eingehend)? Wie lerne ich Intelligent Indexing nun erfolgreich an den Dokumententyp zu erkennen? Ich kann ja schlecht auf die Bezeichnung Rechnungskorrektur, Storno oder Gutschrifts-Nummer (kommt alles bei unseren Lieferanten vor) klicken und dann manuell Gutschrift in das Feld beim Anlernen im Ablagedialog schreiben ... zu mindestens bezweifle ich, dass DocuWare davon lernt.

    Gerne Eure Erfahrung.

    LG Thomas
  • verknüpfte Dokumente - Eintrag am Quelldokument nur Anzeigen wenn Zieldokumente vorhanden

    Hallo zusammen,

    der Betreff umschreibt unsere gesuchte Anforderung ganz gut.

    Wir setzen verknüpfte Dokumente an vielen Stellen / Archiven ein. Wir schränken die Anzeige einer Dokumentenverknüpfung bereits nach bestimmten Ergebnislisten und nur für bestimmte Dokumente mit definierten Werten in deren Indexfeldern ein.

    Hierdurch werden Dokumentenverknüpfungen nur angezeigt wo auch theoretisch sinnvoll. 

    Was ich aber vermisse ist, dass der Eintrag zur Anzeige einer Dokumentenverknüpfung am Quelldokument auch angezeigt wird wenn die Ergebnismenge der Zieldokumente NULL ist. 

    Wir haben Konstellationen in denen eine gewisse Dokumentenverknüpfung nur in etwa 5% der Quelldokumente existiert und es ist einfach verlorene Zeit wenn ich erst im neuen Tab / Register der Dokumentenverknüpfung sehe, dass in diesem Fall kein Zieldokument existiert.

    Können Dokumentenverknüpfungen am Quelldokument ausgeblendet werden wenn die Ergebnismenge NULL ist?

    Klar, es müsste im Zuge des Kontextklicks oder bereits bei, Laden der Quell-Ergebnisliste die Results der aktiven Dokumentenverknüpfungen abgefragt werden ... um dann Dokumentenverknüpfungen ohne Ergebnis auszublenden.

    Habe ich etwas in DW übersehen und existiert diese Funktion? Vermisst noch wer diese Funktion?

    LG Thomas
  • RE: Webservice Bestätigung von UstId

    Hallo Herr Nalmpantis,

    wir haben dies bei uns über eine externe Programmierung gelöst auf Basis von PHP. Mit Docuware kann ich mir derzeit keine funktionale Lösung ohne WebService Einsatz vorstellen.

    Kundendaten wie Name, Ort und USTID aus dem zu prüfenden Dokument entnehmen und an einen WebService innerhalb des DW Workflows übergeben. Per C# Verbindung zum SOAP von EVATR aufbauen. Per C# das Ergebnis auswerten und eine Entscheidung treffen, ob die erweiterte USTID-Prüfung für Sie valide ist (die ganzen Rückgabewerte sind ja gut online dokumentiert). Das Ergebnis als RESULT des DocuWare WebService in den Indexdaten ablegen. 

    Und nun das XML Result  von EVATR als PDF ausgeben inkl. Verweis auf das Dokument / den Vorgang der zur Prüfung führte. Dies dann per IMPORT automatisiert wieder ins Archiv zu Ihrem Vorgang importieren.

    Mit PHP kein Problem mit C# sicherlich auch nicht ... nur nicht meine Sprache.

    Ich hoffe dieser grobe Gedankengang hilft Ihnen.

    LG Thomas
  • RE: Sicherheitshinweis: DocuWare und log4J2 Sicherheitslücke [DW-2021-0001.1]

    Hallo Herr Wieland,

    laut BSI Veröffentlichung CSW-Nr. 2021-549032-1432, Version 1.4 (https://www.bsi.bund.de/SharedDocs/Cybersicherheitswarnungen/DE/2021/2021-549032-10F2.pdf) sind unter bestimmten Voraussetzungen auch die Versionen 1.x betroffen.

    Im Gegenzug ist die allgemein empfohlene Maßnahme des Setzens der Umgebungsvariable LOG4J_FORMAT_MSG_NO_LOOKUPS erst ab den Versionen 2.10 funktional.

    Da beide Punkte aus der BSI Meldung somit für mein Verständnis dem DocuWare Security Advisory zu widersprechen scheinen, würde ich mich um eine Klarstellung seitens DocuWare in Bezug auf OnPrem Systeme mit SOLR freuen.

    Hier die Textstellen aus der BSI Veröffentlichung:

    Entgegen der anderslautenden ursprünglichen Annahme ist Berichten zufolge die Programmbibliothek auch in den Versionen 1.x verwundbar. In diesen Fällen sei die Verwundbarkeit jedoch nur über eine schadhafte Programmkonfiguration ausnutzbar, sodass eine Ausnutzung weit weniger wahrscheinlich erscheint.

    Alternativ kann auch die Umgebungsvariable LOG4J_FORMAT_MSG_NO_LOOKUPS auf true gesetzt werden. Diese beiden Mitigationsmaßnahmen funktionieren erst ab Log4J Version 2.10.


    LG Thomas Hayder
  • RE: ORDER BY führt zu Syntaxfehler

    Wir haben uns nun für einen Workaround per WebService entschieden. Rechnungsnummer (hernach suchen wir in unserem zu sortierenden SQL VIew) vom Workflow an den WebService übergeben. Der WebService macht die SQL Abfrage inkl. ORDER BY und gibt uns den gewünschten Wert zurück. In unserem Fall die E-Mail Adresse aus dem ERP System an welche wir gleich die Rechnung senden werden.

    Hier der WebService Code falls wer Interesse hat ... ist bestimmt nicht C# HighLevel ... aber er löst an dieser Stelle das Problem im WF der ORDER BY Thematik.


    <%@ WebService Language="C#" Class="WebServiceEBBAkteMailOrderBy" %>

    using System;
    using System.Text;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Diagnostics;
    using System.Web;
    using System.Web.Services;
    using System.Data.SqlClient;

    [WebService(Namespace = "https://FQDN_DES_SERVERS_AUF_DEM_DER_WEBSERVICE_LÄUFT/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    public class WebServiceEBBAkteMailOrderBy : System.Web.Services.WebService 
    {
        public WebServiceEBBAkteMailOrderBy()
        {
            
        }

        [WebMethod]
        public string getmailaddress(ref string rechnungsnummer)
        {
            string mailadresse = "";
            
            using (SqlConnection connection = new SqlConnection("Data Source=SERVERNAME\\INSTANZNAME;Initial Catalog=DATENBANK;User ID=BENUTZERNAME;Password=KENNWORT"))
            using (SqlCommand cmd = new SqlCommand("SELECT TOP(1) EMail FROM TABELLE_AUS_DER_IHR_DIE_ABFRAGE_MACHT WHERE RechNr = '"+rechnungsnummer+"' ORDER BY Bereich DESC, Typ DESC, Standard DESC", connection))
            {
                connection.Open();
                using (SqlDataReader reader = cmd.ExecuteReader())
                {
                    if (reader.HasRows)
                    {
                        while (reader.Read())
                        {
                            mailadresse = reader.GetString(reader.GetOrdinal("EMail"));
                        }
                    }
                }
                connection.Close();
            }
            return mailadresse;
        }    
    }

     
  • RE: ORDER BY führt zu Syntaxfehler

    Rückmeldung DocuWare Support am 22.09.2021:

    "...  leider wird ORDER BY nicht im Workflow Designer unterstützt ..."
     
  • RE: ORDER BY führt zu Syntaxfehler

    Hallo zusammen,

    gleiches Problem in DW 7.3. Würde mich ebenfalls für die Lösung interessieren.

    LG Thomas
  • RE: Stempel in einem Archiv nur für Dokumente mit gewissen Indexwerten

    Hallo zusammen, Hallo Herr Hellmann,

    wir haben die Idee des möglichen Bezugs zwischen Ergebnisliste - Indexdialog - Validierung-Webservice und den Indexwertänderungen durch einen Stempel gestern getestet und müssen leider wie vermutet bestätigen, dass die Indexwert-Änderung durch einen Stempel sich nicht für den im aktuellen Indexdialog hinterlegten Validierung-Webservice interessiert.

    Schade eigentlich - hierdurch hätten wir die Verwendung von Stempel spezifisch für Dokumente steuern können und gleichzeitig den Usern eine direkte Rückmeldung in der GUI geben können.

    @DocuWare Team: ich bin mir bewusst dass es die User-Voice gibt 😉 und dort existieren auch etliche Einträge die sich in der einen oder anderen Ausprägung genau mit diesen Einschränkungen der Stempel beschäftigen - ich würde mich über eine Rückmeldung hier seitens DocuWare freuen wie Ihr diese Einschränkungen bewertet. Auch gerne auf die im Eröffnungspost angesprochen individuellen Aktionen im Kopfbereich der Ergebnisliste oder auch im Kontextmenü eines Dokuments, welche erlauben Aktionen an Dokumenten durchzuführen über Indexwert Änderungen.

    Es mag für Stempel-Liebhaber eine super Hilfestellung sein den Weg von der analogen in die digitale Welt zu meistern in dem man Aktionen mit Stempel durchführt / einleitet. Ich habe aber immer wieder Probleme meinen Usern zu erklären: "Nein, eine Aktion wie das Dokument in den Workflow X zu übergeben kannst Du nur machen in dem Du einen Stempel hier drauf machst 🤨". Dokument markieren, Kontextmenü EBB Aktionen anwählen - erweitert sich und dort stehen dann Aktionen (in Wahrheit Stempel ohne Stempel - nur Indexwertänderung) zur Verfügung (wie etwa 'Dokument für Export markieren', 'Dokument in Postausgang übergeben', 'Dokument an Kunde per E-Mail senden (mit WF und Automatismus)', 'Dokument in WF X' ...). Ich denke man versteht mein Ansinnen.

    Natürlich sind all diese Aktionen am besten wie auch die verknüpften Dokumente nur bei definierten Dokumenten mit der Eigenschaft X usw. verfügbar. 

    Final dann auch mit der Möglichkeit je Aktion (Stempel) den Indexdialog auszuwählen der bei Indexwertänderung verwendet wird und hier hinterlegen wir dann den Validierung-Webservice.

    Alle Probleme gelöst- die Welt könnte so schön sein 😆

    LG Thomas Hayder
  • RE: Volltextsuche - Anzeige der gefunden Vorkommen ineffizient

    Hallo Herr Getz,

    vielen Dank für Ihren Hinweis und den Shortcut - dem ist nichts hinzuzufügen - manchmal liegt das Offensichtliche so nah 😊 (und ich sehe es nicht 😑).

    LG Thomas Hayder