selectline-software / selectline-api

Apache License 2.0
24 stars 5 forks source link

Belegstatus manuell erledigt setzen #398

Open ThorstenPoppe opened 1 week ago

ThorstenPoppe commented 1 week ago

Hallo zusammen,

wir haben in der API der Version 23.2.2 einen Fehler entdeckt. Wir arbeiten hier in einem Beleg mit dem Bearbeitungsstatus und möchten über die API den Beleg auf "manuell erledigt" setzen. Das machen wir über die Route /Documents/{documentKey}/Status mit dem Body {"Value":"3","Name":"CompletedManually"} Die API antwortet mit dem "erfolgreichen" 204 Status, aber in der Wawi ist der Beleg immer noch auf "in Bearbeitung" mit dem Status 5. Wir können den Status auf "Bearbeitung abgeschlossen" setzen, in dem wir als Body {"Value":"0","Name":"EditingCompleted"} schicken, dann kommt ebenfalls ein 204 als Response und in der WaWi ist das auch ersichtlich.

Wir können in der WaWi den Status auf "manuell erledigt" setzen, nur leider über die API nicht.

Ist der Fehler bekannt, gibt es hier evtl. einen Workaround?

MatthiasGuse commented 1 week ago

Hallo Her Poppe,

ich vermute, dass der API der Bearbeitungsstatus des Beleges nicht bekannt ist. Das kann daran liegen, dass man den Status am Beleg aktiviert, ohne sich vorher an der API korrekt abzumelden. Das Bckend läuft dann im Hintergrund weiter und bekommt das nicht mit. Mehrere Möglichkeiten um das zu korrigieren:

Viele Grüße

ThorstenPoppe commented 1 week ago

Guten Morgen Herr Guse,

leider hat das nicht den gewünschten Effekt gehabt. Wir haben uns sowohl an der API abgemeldet, als auch den Backend Manager neu gestartet. Der folgende Befehl wurde dann abgeschickt: PUT https://vds-ew01.viebrock.local:8443/slmobileApi/Documents/4RE24000012/Status mit dem Body {"Value":"3","Name":"CompletedManually"} Als Response kam der Status 204, aber in der WaWi steht der Beleg weiter auf "in Bearbeitung"

Viele Grüße

MatthiasGuse commented 1 week ago

Hallo Herr Poppe,

ich habe mir die Doku nochmal angesehen. Komme grad leider nicht dazu das nachzustellen. Versuchen Sie doch bitte mal nur "Value" ohne "Name" abzuschicken.

Viele Grüße

ThorstenPoppe commented 5 days ago

Hallo Herr Guse,

auch das hat nicht geholfen, ich habe versucht den PUT nur mit {"Value": "3"} versucht. Das Setzen auf "Bearbeitung abgeschlossen" mit {"Value": "0"} funktioniert allerdings. Es scheint nur die manuelle Erledigung nicht zu funktionieren, obwohl ein erfolgreicher Response kommt.

MatthiasGuse commented 23 hours ago

Hallo Herr Poppe,

korrekt ist der Wert ohne Anführungszeichen: {"Value": 3}

Viele Grüße

ThorstenPoppe commented 14 hours ago

Hallo Herr Guse,

da ist die API tatsächlich Fehlertolerant und akzeptiert auch den Wert mit Anführungszeichen. Sprich: auch das hat nicht funktioniert. Ich kann den Belegstatus auf 0 und 5 setzen (Bearbeitung abgeschlossen oder in Bearbeitung), aber nicht auf 3 = manuell erledigt. Haben Sie das selbst einmal ausprobiert?

Viele Grüße