Home Forum Nuclos Konfiguration Sonstiges REST layout bzw. bo_meta

Ansicht von 15 Beiträgen - 1 bis 15 (von insgesamt 15)
  • Autor
    Beiträge
  • #7791
    Jan Smiesko
    Teilnehmer

    Hallo,

    könnten Sie bitte im Response zum layout bei den Feld-Komponenten (Referenz) mitgeben, ob es sich um ein LOV oder um eine Combobox handelt. Wenn innerhalb des Layouts Tabs verwendet werden, werden auch diese Koordinaten nicht mitgeteilt.
    Korr: TabbedPane ist im Response enthalten.

    Bei der Abfrage der bo_meta-Informationen finde ich nicht, ob eine Suchmaske benötigt wird bzw. ob gleich mit der Listansicht geöffnet werden soll.

    Sind diese Attribute geplant?

    FG
    Jan

    #7803
    Jan Smiesko
    Teilnehmer

    Hallo,

    Ergänzend zum vorigen Beitrag:

    [strike]Wenn auf ein Layout mit TabbedPane zugegriffen wird kommt ein Fehler (auch bei Nuclos WebClient):
    [/strike]
    GET http://localhost/nuclosb/rest/meta/layout/yxWCR2MWZ3rooCKufssC 500 (Internal Server Error)

    Lag am User-Fehler im Layout!

    FG
    Jan

    #7804
    Jan Smiesko
    Teilnehmer

    Zusammenfassung gewünschter/offener Attribute im REST-Api:

    – Field (type: „Reference“) ist LOV oder Combobox?

    – In bo_meta Abfrage fehlt die Info, ob Suchmaske
    erforderlich ist und ob mit Listansicht gestartet
    werden soll?

    – Gibt es bei Abfrage der Abhängigkeiten die Möglichkeit
    Parameter mitzugeben? wie
    „&fields=all&gettotal=true&offset=0″
    Hat bei mir nicht funktioniert. Bei der Antwort sollten
    alle Felder dabei sein und nicht nur die
    Listdarstellung.
    z.B. bei Ajax auf: rest/bo/9a83qA5EUVsISHlm00z2/40000325/dependence/YPHf7zaGL3vl2ny2XGp1“

    FG
    Jan

    #7838
    Oliver Brausch
    Teilnehmer

    Hallo,

    kurz zu den Fragen:

    – LOV und Combobox ist prinzipiell das Gleiche, nur eine unterschiedliche Darstellung/Funktion im alten Rich-Client. Dort steht schon länger das Zusammenlegen der beiden an. Für die REST-API und den Webclient (momenten der wichtigste Verwender der REST-API) wird es definiv nur eine Interpretation geben.

    – Ja, die Information Suchmaske/Listenansicht fehlt (noch), weil der Webclient moment noch keine Suchmaske hat und es nicht geplant ist. Jedoch könnte man diese Information durchaus mit in das bo_meta aufnehmen.

    – Die Suchparameter wie fields/search/offset sind noch bei den Dependents nicht unterstützt, ist aber in jeden Fall ein recht wichtiges TODO, d.h. das wird kommen.

    #7840
    Jan Smiesko
    Teilnehmer

    Hallo,

    danke für die Informationen!

    – Aus meiner Sicht bietet sich LOV-Control bei sehr vielen Daten an, während die Combobox bei wenigen Auswahlmöglichkeiten bzw. als Live-Search für einfache Suchbedingungen verwendet wird. Mir ist nicht ganz klar, wie Sie die Unterschiede bzw. Vorteile von LOV in einer Combobox (im Desktop-Client) vereinen wollen. Haben Sie dazu nähere Angaben, wie Sie das im Desktop-Client lösen werden?

    Würde mich freuen, wenn Sie die Punkte 2. und 3. implementieren und gegebenen Falls dies im Forum Posten oder in der Wiki erwähnen.

    Werde mir bei meinen experimentellen Versuchen betreffend WebClient bei den Dependents vorübergehend mit einem zusätzlich Request behelfen, um beim Layout die SUBFORMS einzubinden. Ich nehme an, dass der Aufbau des Json-Requests mit jenem der „list_href“ mit „&fields=all“ entsprechen wird.

    FG
    Jan

    #7848
    Oliver Brausch
    Teilnehmer

    [quote=“js-mw“ post=6844]Mir ist nicht ganz klar, wie Sie die Unterschiede bzw. Vorteile von LOV in einer Combobox (im Desktop-Client) vereinen wollen. Haben Sie dazu nähere Angaben, wie Sie das im Desktop-Client lösen werden?
    [/quote]

    Es ist schon im Desktop-Client von mir gelöst. Die LOV bieten im Layout-Editor die Möglichkeit an, LOV- und Combobox-Funktionien auszuwählen. (siehe Screenshot).

    Was fehlt ist ein komplettes Abschalten der ursprünglichen Combobox, wobei unklar ist, ob und wann das kommt.

    #7849
    Jan Smiesko
    Teilnehmer

    Das würde aber bedeuten, dass im der REST-Api dann bei einem Referenzfeld mitgegeben werden müsste, ob im Layout LOV-Button, Dropdown-Button oder beide ausgewählt wurden?

    #7854
    Jan Smiesko
    Teilnehmer

    Hallo,

    mir ist folgender Fehler bei einem Request aufgefallen:

    http://localhost/nuclosb/rest/bo/oaruX2NcrT3EmUUge2aQ?chunksize=25&fields=all&gettotal=true&offset=0&search=&sort=

    Es werden zwar alle Felder (UIDs) angeführt, aber manche haben einen Wert „null“, obwohl in der Detailansicht (und in der DB) die Werte vorhanden sind.

    Beim BO (Test) – wo der Fehler auftritt – wurden laufend Felder hinzugefügt. Es existiert auch ein Feld „Text“, das nicht angezeigt wird. Ich vermute, das ist ein gewünschtes Verhalten.

    Habe das Feld „Text“ versuchsweise an die letzte Stelle verschoben, hat nichts gebracht.

    FG
    Jan

    Attachments:
    #7905
    Jan Smiesko
    Teilnehmer

    Hallo,

    ich bin gerade dabei Daten über REST zurück zu schreiben, konkret geht es um ein UPDATE eines Satzes:

    PUT ../rest/bo/9a83qA5EUVsISHlm00z2/40000454

    Sende als Request Payload mit:
    {„DT_RowId“:40000454,“_flag“:“update“,“bo_values“:{„gO2r4XJINzDHZi3XzP00″:“Test123″,“WlB7BOdIap3JYh1IMqZm“:“2014-09-11″}}

    erhalte zurück: 400 (Bad Request)

    Anders als der Nuclos WebClient sende ich nur die geänderten Felder an den Server. Es sollen in der Änderungshistorie (falls eingeschaltet) nur jene Felder, die geändert wurden protokolliert werden.

    Warum „DT_RowId“:40000454 benötigt wird ist mir nicht klar, da dieser Wert bereits in der URL mitgegeben wird. Auch das „_flag“ „update“ ist im PUT ersichtlich.

    Mache ich etwas falsch, oder gibt es demnächst eine abgeänderte API für UPDATE von DB-Sätzen?

    FG
    Jan

    #7920
    Jochen Schäfer
    Teilnehmer

    Hallo,

    das Vorgehen ist prinzipiell richtig, es müssen nicht alle Felder gesendet werden. Auch „DT_RowId“ wird vom REST-Service nicht erwartet, sondern nur vom Web-Client verwendet.

    Eine Möglichkeit um den REST-Aufruf zu Debuggen, wäre den Update-Vorgang im Webclient im Chrome-Browser durchzuführen. Im Tab „Network“ sollten Sie dann den zugehörige PUT-Request sehen. Mit rechtem Mausklick > „Copy as cURL“ haben Sie ein curl-Kommando in der Zwischenablage, dass Sie direkt in der Konsole in Linux/Unix/Mac (unter Windows müssten Sie das curl-Programm erst installieren) ausführen können.
    Den Aufruf können Sie dann so anpassen, dass Sie die nicht benötigten Felder entfernen.

    Viele Grüße
    Jochen Schäfer

    #7926
    Jan Smiesko
    Teilnehmer

    Hallo,

    ich habe es mit dem Chrome Client versucht und UPDATE und INSERT funktionieren nun. Was mir aufgefallen ist, dass es beim UPDATE drei Redundanzen (bei INSERT zwei) gibt.

    Request 40000310

    Request Payload
    {„bo_id“:update„,“bo_values“:{…}}

    Derzeit sind die redundanten JSON-Parameter erforderlich, damit das UPDATE funktioniert.

    Als Parameter wird vom WebClient neben anderen auch noch ein langer Image-Parameter mitgegeben. Wozu dient dieser?

    FG
    Jan

    #7942
    Jochen Schäfer
    Teilnehmer

    Hallo,

    da haben Sie Recht, die Informationen sind redundant und sollten nicht erforderlich sein.
    Das dies so ist, ist zum einen dem Umstand geschuldet, dass sich der REST-Service noch im Umbau befindet (in früheren Versionen waren diese Informationen direkt im Request Payload), zum anderen wird vom Webclient derzeit das komplette JSON-Objekt an den REST-Service gesendet, deshalb auch der Image-Parameter, der zwar gesendet, aber vom REST-Service nicht ausgewertet wird.

    Für den weiteren Umbau werden wir dies aber berücksichtigen.

    Vielen Dank
    Jochen Schäfer

    #7979
    Jan Smiesko
    Teilnehmer

    Hallo,

    – Die Suchparameter wie fields/search/offset sind noch bei den Dependents nicht unterstützt, ist aber in jeden Fall ein recht wichtiges TODO, d.h. das wird kommen.

    Ich wollte wegen dieser Funktionalität nachfragen, weil ein Request der Dependencies mit fields=all noch nicht alle Felder liefert (aktuelle Version 4.3.1) (siehe Screenshots).

    Vorteilhaft wäre wenn das Ergebnis des Request jenem von
    „rest/bo_metas/oaruX2NcrT3EmUUge2aQ/bos?chunksize=25&fields=all&gettotal=true&offset=0&search=&sort=“ entspricht.

    FG
    Jan

    #8007
    Jochen Schäfer
    Teilnehmer

    Hallo,

    die Funktionalität ist bisher leider noch nicht umgesetzt.
    Ich habe dazu ein Ticket erstellt:
    http://support.nuclos.de/browse/NUCLOS-3840

    Viele Grüße
    Jochen Schäfer

    #8437
    Jan Smiesko
    Teilnehmer

    Hallo,

    möchte wegen der Funktionalität nachfrage, weil Ticket noch offen ist.

    FG
    Jan

Ansicht von 15 Beiträgen - 1 bis 15 (von insgesamt 15)