0

E-Rechnung funktioniert im Browser aber nicht in der Mac-App

Hallo,

Ich weiß, die E-Rechnung wird hier gerade heiß diskutiert und es fällt mir schwer zwischen dem ganzen technischen eine Antwort zu finden.

Ich habe das Template in meine Public-Cloud implementiert. Ich habe schon gelesen, dass es lokal wohl nicht funktioniert.

Wenn ich Ninox im Browser öffne, funktioniert auch soweit alles. Wenn ich die gleiche Datenbank aber in der Mac-App öffne, bekomme ich beim Import der Rechnung die Fehlermeldung:

Not supportet on client side

 

 

App ist auf dem neusten Stand.

Ist das Problem bekannt?

Liebe Grüße, Daniel

7 Antworten

null
    • UweG
    • vor 10 Tagen
    • Gemeldet - anzeigen

    Zum einen funktioniert die E-Rechnung erst mit der CloudVersion 3.14, da dort erst das notwendige PDf A3 Format als Auswahl eingerichtet wurde.
    Die aktuelle Ninox App-Version ist die v3.13.6. und da ist es noch nicht implementiert.

    Zum Anderen werden in der Ninox App Button Scripte immer local ausgeführt (Client side).
    Und eine lokale Ausführung wird wohl nicht ohne Scriptanpassung laufen.
    Wenn Scriptteile serverseitig ausgeführt werden sollen, muss man dies auch im Script annoncieren mit do as server oder do as transaction.

    Dennoch wird man wohl auf eine der nächsten App-Versionen warten müssen für eine korrekte Ausführung und kommt momentan nicht an die Browsernutzung vorbei, wenn man die E-Rechnung über die Mustanganbindung erstellen möchte.

      • Daniel_B
      • vor 9 Tagen
      • Gemeldet - anzeigen

       Vielen Dank für deine Antwort. Dann warte ich.

      • pma_mgmt
      • vor 5 Tagen
      • Gemeldet - anzeigen

      der Import einer Rechnung lässt sich durchführen wenn man ein Do as Server rund um die mustang Befehle macht. Nur der Druck geht noch nicht 

      • Daniel_B
      • vor 5 Tagen
      • Gemeldet - anzeigen

       

      So habe ich es geändert:

      let response := do as server
                      sendCommand("Mustang", path, body, [file])
                  end;
      

      Leider ohne Erfolg

      • pma_mgmt
      • vor 5 Tagen
      • Gemeldet - anzeigen

       sollte so eigentlich funktionieren. Wenn du es hinter einem Trigger nach Änderung des Feldes hast, dann kann es daran liegen, dass die Datei zwar im Feld, aber noch nicht auf den Server synchronisiert ist, deshalb dort noch nicht vorhanden ist und deshalb von dort aus noch nicht an Mustang gesendet werden kann. Versuch das mal über einen Button auszuführen. 

    • KURT (Korrektur- und Rückmeldetool)
    • Sebastian.5
    • vor 4 Tagen
    • Gemeldet - anzeigen

    Die Version 3.14.2 ist nun für Mac und iOS verfügbar :)

    • UweG
    • vor 4 Tagen
    • Gemeldet - anzeigen

    Wie oben bereits beschrieben, kann der Mustang-Zugriff nur serverseitig ausgeführt werden.
    Die Benutzung von 'do as server' an den entsprechenden Scriptstellen ist hier notwendig.

    Zum einlesen der e-Rechnung aus der App heraus empfiehlt es sich ein waitForSync() zu benutzen um das Triggerscript zu nutzen. Damit wird erst die Synchronisierung abgewartet, bis das Script ausgeführt wird.
    Wenn man es noch gerätespezifisch anpassen muss, kann man die Funktion ninoxApp() mit einbeziehen.

    Nachfolgend werden die geänderten Scriptpassagen angezeigt.

    Ich habe das Einlesescript bei mir wie folgt angepasst:
    if waitForSync() then
       let me := this;
       .........
       let response := do as server
                        sendCommand("Mustang", path, body, [file])
                    end;
       .........
       let responseExtract := do as server
                            sendCommand("Mustang", path2, body, [file])
                        end;
       ...........
       let responseXMLHTML := do as server
                            sendCommand("Mustang", path3, body, [myxml])
                        end;
       ............
    end

    Der Validierungsbutton muss auch entsprechend angepasst werden:
    .......
    let responseValidation := do as server
                sendCommand("Mustang", path4, body, [myfile])
            end;
    ........

    Zum Erstellen der Rechnung besteht das Problen neben der Serverausführung momentan darin, dass das notwendige PDF A3 Format nicht aus der Templateeinstellung übernommen wird.
    Da muss das Script auch angepasst werden, damit aus der Ninox-App heraus die e-Rechnung erstellt werden kann.
    Meine Scriptanpassungen sehen hier wie folgt aus:
    .........
    let datacarbone := {
                    _options: {
                        pdfVersion: 3
                    },
    .......
    let pdfA3 := do as server
                    importFile(this, printAndSaveRecord(this, myTemplate, datacarbone), "carbone.pdf")
                end;
    .........
    let responseZF := do as server
                    sendCommand("Mustang", pathZF, body, [file(this, "carbone.pdf")])
                end;
    ..........
    do as server
                removeFile(this, "carbone.pdf")
            end;
    ..........

    Mit diesen Scriptanpassungen ist das Erstellen und Einlesen von E-Rechnungen mit den Ninox Apps für Mac, iPad, iPhone nach meinen Tests möglich, wenn eine Internetverbindung in diesem Moment besteht.

    Mit der Android App gibt es scheinbar noch andere Probleme, die trotz der Scriptanpassungen bei mir ein Erstellen und Einlesen verhindern.