Grundlegende Verständnisfrage

Hallo zusammen,
ich bin jetzt schon einige Zeit am Basteln und komme einfach nicht dahinter, wie ich eine grundlegende Funktionalität darstellen kann, die ich von anderen Lösungen wie z.B. Sage für ganz normal halte.
Das Ziel ist, (zB) eine Kundenliste und darunter verschiedene Formularelemente zu haben, die nach Selektion eines Kunden mit dessen Details gefüllt werden.

Bisher sehe ich aber meistens nur Beispiele, bei denen über Links direkt in einen anderen Doctype gesprungen wird. So fühlt es sich so an, als ob man immer nur von einem einzelnen Datensatz zu einem anderen springt. Ich vermisse also Listen mit darunter liegenden Detailansichten.

Geht das überhaupt oder habe ich hier eine falsche Herangehensweise?

Vielen Dank für eure Mühe.

Hallo @alex2024,

genau die Darstellung, die du beschreibst, gibt es nicht und lässt sich auch nicht einfach umsetzen. Es gibt aber zwei Funktionen, die in diese Richtung gehen:

  1. Bulk Edit: mehrere Einträge in der Liste auswählen und rechts oben auf „Aktionen“ > „Bearbeiten” klicken. So kann man zum Beispiel 100 Artikel auf ein Mal deaktivieren.
  2. Report Builder: die Zellen im Berichtsbaukasten sind editierbar. Ich kann mir also zum Beispiel die Spalten Kundenname und Gebiet auswählen und dann übersichtlich die ganze Liste bearbeiten.

Edit: hinsichtlich der nachfolgenden Antworten würde mich auch interessieren, wer von uns deine Frage richtig verstanden hat. :smile:

Ich glaube die Frage bezieht sich auf Fetched Fields. Also dass Felder aus einem anderen Stammdatemsatz herangezogen werden.

Dazu gibt es im Form Builder bei (fast) allen Feldtypen eine Option.

Du möchstest vmtl. die “fetch” Funktion verwenden, um nach Auswahl eines Kunden in einem Formularfeld (eines DocTypes) weitere Formularfelder des DocTypes anhand des Datenbestands aus dem Kunden-Stammdatenbestand zu füllen (und dann von da aus weitere Funktionen zu triggern).

ERPNext ist voll von dieser Art von Funktionalität und Workflow-Sequenzierung.

Danke erst einmal für die Antworten.
Zur Veranschaulichung habe ich einen Screenshot aus einer Sage-Warenwirtschaft angehängt.
Ich hatte zum Beispiel die Idee, ein neues Formular anzulegen, dass eine Liste der Kunden anzeigt. Darunter dann eine Untertabelle mit verschiedenen Kundenbezogenen Eigenschaften. Adresse, Status oder andere Sachen…
Das klappte aber in meinem ersten Versuch wegen der Problematik Child/Parent-Tabelle nicht…
Ich habe aber das Gefühl, dass mir nur ein Teil des erpnext-Konzepts noch nicht ganz klar ist… Das muss doch irgendwie gehen… Oder wie seht ihr das?

Naja, wie ist denn der Workflow?

Wenn man den gesuchten Namen weiß, dann kann man ihn in einer Liste durch Eingabe des Namens ins Suchfeld über der Liste schnell finden.
Wenn man hier in der Liste blättert, dann sind es auch einige Klicks bzw. Mausroller. Dann kann man auch in der Listenansicht eines DocTypes suchen und blättern und dann über einen Link in die Detailansicht.

Ein bisschen anders ist das vielleicht, wenn man viele Einträge nacheinander um irgendwas ergänzen will oder eine Eigenschaft in vielen Records prüfen muss o.ä.

Da oben steht ja Datensatz 0 von 360. Das hat man nicht mal eben schnell durchgeblättert/-gescrollt, wenn immer nur ein Dutzend zu sehen sind.
In DocTypes Liste hat man max. 500 auf einer HTML-Seite.

Und danach kommt die Frage, ob die zusätzlichen Klicks die meiste Zeit verbrauchen oder das Scrollen, das Suchen – oder eben letztlich die eigentliche Bearbeitung der Datensätze.

Augenzucker und “Übersicht”, die letztlich keinen Zeit- oder sonstigen Effizienzvorteil bringen, ergeben dann auch kein besseres ROI.

Kann auch sein, dass es eine Frage der “Snappyness” ist, wie sich das anfühlt (nicht zu verwechseln mit realer Effizienz).

Es besteht auch die Möglichkeit, einige Bedienoberflächen mit anderen Frameworks (Vue, React) an so eine Installation ranzubauen (@buildwithhussain hat da ein paar Videos zu solchen Sachen), aber das ist natürlich etwas mehr Aufwand, wie es ja auch schon Raffael oben andeutete.

Wenn man es mit JS auf einer eigenen “Page” (Seite im Backend) macht, kann man vielleicht auch besonders snappige Listenansichten zur Auswahl generieren und dann die Daten von der DB holen. Das ginge auch ohne Vue oder React, nur ein paar Zeilen JS.