2 wählbare Relationen aus einem Datenfeld in Base möglich?

Hallo,

ich benutze Papyrus Base seit etlichen Jahren bei mir in der Firma um Adressen, Artikel und (in Kombination daraus) Aufträge zu verwalten. Die Datenbank besteht aus ca. 30000 Datensätzen in 13 Tabellen, die teilweise über Relationen miteinander verlinkt sind. Im Laufe der Zeit kommen immer mal neue Funktionen/Tabellen hinzu, um die Arbeit mit der Datenbank bequemer und umfangreicher zu machen.

Die Auftragsverwaltung läuft folgendermaßen: In der Tabelle „Verkaufsaufträge“ werden die nötigen Daten aus den Tabellen „Adressen“ und „Artikel“ zu Aufträgen relational zusammen geführt. Da die Tabelle „Verkaufsaufträge“ die maximale Feldzahl benötigt, werden die nötigen Daten der abgeschlossenen Aufträge per Relation in die Tabelle „Offene Posten“ übernommen, um die Zahlung meiner Kundschaft zu überprüfen und zu vermerken.

So weit, so gut!

Bei mir gibt es aber einen zweiten Strang, nämlich die Tabelle „Vermietaufträge“ auch hier werden die nötigen Daten aus den Tabellen „Adressen“ und „Vermietartikel“ zu Aufträgen relational zusammen geführt. Auch hier möchte ich die nötigen Daten der abgeschlossenen Aufträge per Relation in die Tabelle „Offene Posten“ übergeben.

Und das ist mein Problem: die Relationen in „Offene Posten“ zeigen in die Tabelle „Verkaufsaufträge“. Gibt es eine Möglichkeit diese Relationen wahlweise auf „Verkaufsaufträge“, oder auf „Vermietaufträge“ zeigen zu lassen.

Ich wäre dankbar für jeden Tipp, der Möglichkeiten aufzeigt. Vielleicht hat ja jemand eine Idee für einen Umweg, oder einen anderen Trick parat.

Das man das in den Feldeigenschaften umschalten könnte ist klar, aber jedesmal in die Feldeigenschaften wechseln ist nicht im Sinne des Erfinders, da tippe ich die nötigen Daten lieber per Hand ein. Aber genau das möchte ich mir in Zukunft ersparen :slight_smile:

Aw: 2 wählbare Relationen aus einem Datenfeld in Base möglich?

Man kann eine Tabelle anlegen mit Offene Posten Kauf (Felder a-e) und Offene Posten Miete (Felder f-j) (also doppelt so viele Felder wie die Tabelle Offene Posten letztlich braucht) mit den entsprechenden Relationen. Und in einer Tabelle Offene Posten Kauf und Miete (Felder a-e) werden die Daten aus der Zwischentabelle mit Relation mit erweiterter Formel geholt, die abfragt, ob die Felder a-e oder f-j belegt sind. Es reicht ja, wenn jeweils ein Feld abgefragt wird, das im Fall der Belegung immer belegt wird. Z. B.: IF Feld a THEN Relation-Kauf->Feld a ELSE Relation-Miete->Feld a.

Offene_Posten.zip (9.45 KB)

Aw: 2 wählbare Relationen aus einem Datenfeld in Base möglich?

Danke für diese Idee. Das funktioniert ganz gut.

Gibt es eine Möglichkeit, bei Auslösen eines Reports, oder bei Füllen eines Datenfeldes, automatisch einen neuen Datensatz in einer anderen Tabelle der Datenbank anzulegen und mit einer Relation zu Füllen?

Idee:

Ich erstelle per Report, in der Tabelle „Verkaufsaufträge“, eine Rechnung. Dieser Report erstellt einen neuen Datensatz in „OffenePosten_Zwischentabelle“ und erstellt eine Relation auf den gerade benutzten Datensatz, so dass der neu erstellte Datensatz automatisch gefüllt wird.

Ich bräuchte dann nur noch, per Hand, die Datensätze in die End-Tabelle „Offene Posten“ einzusammeln.

Aw: 2 wählbare Relationen aus einem Datenfeld in Base möglich?

Soweit ich weiß, nicht …