Das klappt soweit auch.
Aber die Tabelle "Buchungen" ist eine Untertabelle von einer Tabelle "Konten". Mir fehlt die Möglichkeit, eine feste Zuweisung eines Kontos vorzunehmen. Wie kann ich das "Konto" einer Buchung ansprechen?
7 Antworten
-
Hallo, ich nehme an, die beiden Postings gehören zusammen ...
Also, wenn 'Buchungen' eine Untertabelle von 'Konten' ist, dann hat sie automatisch auch ein Verknüpfungsfeld namens 'Konten' (sofern der Name nicht manuell geändert wurde). Dieses Verknüpfungsfeld ließe sich innerhalb des im anderen Thread angegebenen Skriptes wie folgt ansprechen:
[...]
newRecord.(Konten := ???)
[...]
Das Problem sind die Fragezeichen. Sprich: Woher kommt die ID des Konto-Datensatzes, dem die Buchung zugeordnet werden soll? Ist auch die Tabelle 'Mietermanagement' mit dem betreffenden Konto verknüpft? Dann könnte man den Konto-Datensatz über die Variable 'myID' ermitteln und zuordnen:
[...]
newRecord.(Konten := myID.Konten)
[...]
Sollte die ID des betreffenden Kontos nicht in der Tabelle 'Mietermanagement' gespeichert sein, dann müsste man eine andere inhaltliche Verbindung zu 'Konten' finden, anhand derer man die betreffende ID über ein select ermitteln könnte.
-
Ja, die Postings gehören zusammen. Vielen Dank schon einmal für die promte Rückmeldung. Die Fragezeichen sind genau mein Problem. Die Tabelle "Konten" ist auch eine Untertabelle von "Kontengruppen". Der Datensatz "Konten" hat ein Feld "Konto-ID", die eine Zahl darstellt. Dies Konten-ID wollte ich direkt ansprechen mit newRecord.(Konten.Kontengruppe := Konto-ID=21005).
Versuche deine Infos zu verarbeiten. MEld mich noch einmal. -
Ja, die Postings gehören zusammen. Vielen Dank schon einmal für die promte Rückmeldung. Die Fragezeichen sind genau mein Problem. Die Tabelle "Konten" ist auch eine Untertabelle von "Kontengruppen". Der Datensatz "Konten" hat ein Feld "Konto-ID", die eine Zahl darstellt. Dies Konten-ID wollte ich direkt ansprechen mit newRecord.(Konten.Kontengruppe := Konto-ID=21005).
Versuche deine Infos zu verarbeiten. MEld mich noch einmal. -
Okay, wenn man die betreffende Konto-ID hat, dann kann man den entsprechenden Datensatz per 'select' ermitteln (Zeile 2), in eine Variable schreiben und diese dann zur Zuordnung verwenden (Zeile 4):
let myID := this;
let myKonto := first(select Konten where 'Konto-ID' = 21005);
let newRecord := (create Buchungen);
newRecord.(Konten := myKonto);
newRecord.(Mietermanagement := myID);
newRecord.(Buchungsdatum := myID.Wertstellung);
newRecord.(Gesamtbetrag := myID.Grundmiete);
newRecord.(Buchungstext := myID.Verwendungszweck);
myID.(Wertstellung := null);
myID.(Grundmiete := null);
myID.(Verwendungszweck := null)
-
Das ist klasse! Es funktioniert. Tausend Dank :)). Es gibt noch ein weiteres Eingabefeld in der Tabelle Mietermangement,
newRecord.(Gesamtbetrag := myID.Umlage); Diese Umlage soll auf eine andere Konto-ID gebucht werden. Am besten mit dem gleichen Button(Code). Geht das?
-
Na ja, da jede Buchung mit einem bestimmten Konto verknüpft ist, müsste man einen weiteren Buchungsdatensatz erzeugen, der dann mit dem anderen Konto verknüpft wird. Ob das sachlich sinnvoll ist, kann ich jetzt nicht beurteilen, aber rein technisch sähe das genauso aus wie bei der ersten Buchung. Man könnte das Script also wie folgt ergänzen (vorhandene Code-Zeilen gekürzt):
[...]
newRecord.(Buchungstext := myID.Verwendungszweck);let myKonto2 := first(select Konten where 'Konto-ID' = 99999);
let newRecord2 := (create Buchungen);
newRecord2.(Konten := myKonto2);
newRecord2.(Gesamtbetrag := myID.Umlage)
[...]
myID.(Wertstellung := null);
[...]Das Ergebnis wären zwei neue Datensätze in der Tabelle 'Buchungen', einer mit der 'Grundmiete', einer mit der 'Umlage' als Gesamtbetrag.
-
Wieder eine Punktlandung! Nochmals vielen Dank. Für meinen derzeitigen Kenntnisstand stellt dies eine sehr sinnvolle "Splittbuchung" für die Trennung der Gesamtmiete in Grundmiete und Umlagen dar. Somit kann ich nun schön weiter basteln.
Content aside
- vor 4 JahrenZuletzt aktiv
- 7Antworten
- 436Ansichten