0

PDF versand über n8n

Hallo alle zusammen und alles Gute in Neuen Jahr

Ich stehe auf dem Schlauch was dass versenden von PDFs über n8n betrifft.

Seit 01.01.2024 funktioniert nicht mehr und ich habe nach langen rumprobieren keine Idee mehr was das sein könnte.

Folgende abläufe habe ich durchgeführt:

1. Ein Datensatz mit PDF von 2023 - versand geht glatt durch

2. Ein Datensatz mit PDF von 2024 - versand geht nicht. n8n HTTP Node meldet Fehler 404: The resource you are requesting could not be found

3. Ein Datensatz ohne PDF von 2024 - versand geht glatt durch, halt ohne PDF

Hatt jemand eine Idee was das sein könnte? n8n scheint richtig zu funktionieren

Ich habe es auch mit unterschiedlichen PDFs versucht, aber ohne Erfolg

Bin dankbar für jeder Anregung

Gruß Richard

11 Antworten

null
    • Developer by Smartplanung
    • smartplanung
    • vor 3 Monaten
    • Gemeldet - anzeigen

    Die PDF hat vermutlich das Datum im Dateinamen mit drin? Ggf. passt da die Zusammensetzung für das Jahr nicht?

    • Ryszard_Paluch
    • vor 3 Monaten
    • Gemeldet - anzeigen

    Hallo Patrick

    Datenemen lautet z.B. "ZAM240101_mercedes.pdf" und spielt keine rolle. Auch mit anderen PDFs und anderen Dateinamen geht nicht. Auch mit anderen Dateitypen wie "*.png" geht nicht

      • Developer by Smartplanung
      • smartplanung
      • vor 3 Monaten
      • Gemeldet - anzeigen

       das ist halt die Frage. Die 24 scheint ja für das aktuelle Jahr zu stehen. In n8n rufst Du die PDF in Ninox ab oder übergibst Du sie direkt im http-Call?

      In meinen Flows gebe ich in den Calls (Ninox --> n8n) Team, Database, Dateinamen, usw. mit und baue mir dann die URL zusammen, um die Datei per http-Node von Ninox abzurufen.

      Die http-Node die bei Dir den Fehler verursacht ist vermutlich da, um die Datei von Ninox zu erhalten? Was steht denn in den Pfaden der Node (unter Execution)? Wenn Du den beschriebenen 404 Fehler erhältst, passt eigentlich die URL nicht. Entweder die URL selbst oder ein enthaltener Query der falsch ist, etc.

      Ich tippe nach wie vor auf den Dateinamen.

      Für alles weitere müsste man genauer erfahren, wie der Flow aufgebaut ist, wie dieser aufgerufen wird und wie die Datei nach n8n gelangen soll. Quasi einmal vom Start des Flows bis zur HTTP-Node, welche den Fehler wirft.

      Solche Fehler tauchen meiner eigenen Erfahrung nach oft auf, wenn man bestimmte Informationen "hard coded" bzw. statisch hinterlegt hat und im späteren Verlauf nicht dynamisch macht. Da funktioniert allein bei einem Datenbank-Backup schon nichts mehr, wenn die IDs dafür nicht dynamisch mitgegeben werden.

    • Ryszard_Paluch
    • vor 3 Monaten
    • Gemeldet - anzeigen

    Hallo Patrick

     

    Bei Ninox seht das so aus:

    if Zgoda = true then
        'Wysyłka maila trwa' := true;
        let me := this;
        let myHook := "http://89.22.212.147:20039/webhook-test/XXXXXXXXXXXXXXXXXXXX";
        let myBody := {
                recordId: number(me.Nr),
                teamID: teamId(),
                databaseID: databaseId(),
                tableID: tableId(me),
                mySubject: me.'Temat Maila',
                myText: me.'Treść Maila',
                myAtt: last(split(text(PDF), "/")),
                myTo: me.'Adres Mailowy BC',
                myCC: me.'Adres Mailowy CC',
                myDate: format(today(), "YYYY-MM-DD")
            };
        let myHeaders := {
                'Content-Type': "application/json"
            };
        let response := do as server
                http("POST", myHook, myHeaders, myBody)
            end;
        void;
        Zgoda := false
    else
        void
    end
    

    Und bei n8n so aus:

      • Developer by Smartplanung
      • smartplanung
      • vor 3 Monaten
      • Gemeldet - anzeigen

       ok im http() Body gibst Du den Dateinamen wohl mit (myAtt). Wie sieht denn die Expression deiner HTTP-Node aus, wenn der Fehler erscheint? Ich müsste einmal Expression und einmal Result sehen. Ein Screenshot als Beispiel (hab gerade nichts anderes hier).

      Am besten einmal wenn es funktioniert (2023-PDFs) und einmal wenn der Fehler erscheint (2024)

    • Ryszard_Paluch
    • vor 3 Monaten
    • Gemeldet - anzeigen

    Anbei die Screenshots

    Das is OK-2023

    NOK-2024

    Error 404

      • Developer by Smartplanung
      • smartplanung
      • vor 3 Monaten
      • Gemeldet - anzeigen

       das ist strange. Hast Du mal versucht die URL in Postman einzugeben? Das grenzt vielleicht den Fehler etwas ein.

    • Ryszard_Paluch
    • vor 3 Monaten
    • Gemeldet - anzeigen

    Jetzt habe ich es über die Web App zu machen von Firfox aus und das funktioniert.

    Ich arbeite aber normaleweise auf den Mac und mit der Mac Ninox Database App weil hier die Handhabung mit PDFs einfache ist.

    Wie das zu verstehen ist weis ich nicht

      • Developer by Smartplanung
      • smartplanung
      • vor 3 Monaten
      • Gemeldet - anzeigen

       das ist auch strange 🙈

      Also ich kann Dir von hier aus nur sagen, wie ich vorgehen würde. Zunächst würde ich den JSON-String im n8n-Webhook auseinandernehmen und schauen, ob da irgendwas anders ist. Denn wenn es wirklich an der App liegen sollte, ist der einzige Unterschied ja nur der http-Call nach n8n. n8n selbst greift immer auf die URL zu, die es angegeben bekommt. Daher sollte es grundsätzlich nicht an n8n liegen.

      Ich könnte mir vorstellen, dass vielleicht falsche Parameter in den Call gepackt werden. Daher am besten 1:1 abgleichen, ob die Record-ID zu dem File passt. Sind die databaseIds, TeamIds, TableIds korrekt...

      Und damit wäre ich auch wieder bei Postman und würde da versuchen eine PDF aus 2024 von Ninox zu bekommen. Angefangen beim kopieren der URL aus dem Result der HTTP-Node, bis hin zur händischen Zusammensetzung der URL, bis das klappt. Oft hat man dabei dann den Unterschied gefunden.

      Ich habe auch schon oft Erfahrungen mit Leerzeichen gemacht, die man nur schwer sehen kann. Vielleicht ist da irgendwo der Wurm drin. Aber mich wundert, dass die URLs bei 2023 und 2024 nahezu gleich sind, bis auf die RecordId und den Filemamen. Daher macht es schon fast keinen Sinn auf Leerzeichen zu tippen.

      Da könnte ich mir sonst noch vorstellen, dass die Funktionen der App anders funktionieren wie im Browser. Aber Probleme bei der split() Funktion sind mir bisher nicht bekannt und Zeit-/Datumsprobleme zwischen Ninox und n8n-Server würde ich auch erstmal ausschließen.

      • Ryszard_Paluch
      • vor 3 Monaten
      • Gemeldet - anzeigen

      Hallo Patrick

      Ich werde mir das dem nächst anschauen. Melde mich noch.

      Vielen Dank für Deine Unterstützung

      Gruß

    • Ryszard_Paluch
    • vor 3 Monaten
    • Gemeldet - anzeigen

    Update:

    Nach dem ein Test auf einen anderen Rechner gemacht wurde, und dort alles funktionierte so wie es sein sollte, wurde auf dem problematischen Rechner Ninox neu Aufgesetzt und hier funktioniert jetzt auch. Scheint ein Problem mit Ninox in Verbindung mit Mac OS gegeben haben

    Gruß Richard

Content aside

  • vor 3 MonatenZuletzt aktiv
  • 11Antworten
  • 39Ansichten
  • 2 Folge bereits