Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: redspawn am 28.04.05 - 14:06:23
-
Hi zusammen,
folgendes Problem:
ich hab eine Urlaubsdatenbank mit einer Maske, die für die jeweilige Person für das komplette Jahr monatsweise den Urlaub berechnet. Die Monatsnamen stehen als Liste in einem Textfeld, der Wert für den Urlaub in einem zweiten und wird beim Anlegen über ein komplexes Script berechnet, so mit Zugriff auf die jeweiligen Urlaubsanträge etc.
Jetzt sollte ich in einer Ansicht für jede Person den aktuellen Resturlaub am Monatsende anzeigen, hab aber in dem Dokument eben nur ein Feld in dem der absolute Resturlaub am Jahresende steht und ein Feld in dem per Mehrfachwert nach Zeilen getrennt der jeweilige Resturlaub am Monatsende steht.
Gibt es ne Möglichkeit in einer Ansicht irgendwie auf einen speziellen Wert in dem Mehrfachdingsbums zuzugreifen? Die Monatszahl 01,02,03... bekomm ich ja ohne Probleme!!!
Wenn es etwas wirr erklärt war, bin ich natürlich jederzeit bereit es nochmal zu versuchen ;D
Gruß Peter
-
Versuch's mal mit "meinFeldname(x)", wobei x für eine Zahl steht.
-
beziehst du das jetzt auf ein zusätzliches Feld in der Maske oder in der Ansicht???
-
t'schuldigung, geht nicht in Ansichten :'(
-
also bleibt mir wahrscheinlich nur der Ausweg über ein zusätzliches Feld in der Maske?!?
-
Eventuell mit @subset....
-
.. und das Feld muss ins Dokument, nicht unbedingt in die Maske. Das zusätzliche Feld ist eine durchaus gängige Lösung für diese Aufgabenstellung
-
alles klar, dann mach ich mich mal an die arbeit und wenn ich wirklich nicht weiter kommen sollte, dann wärm ich den thread nochmal auf...
So long
Peter
-
So jetzt hab ich mal einen kleinen Agenten geschrieben mit folgendem Code:
_mehrfachwert := VacTotalRestMonths1;
_aktuellerMonat := @Month(@Today);
_ResturlaubMonatsende := @Word(_mehrfachwert;",";_aktuellerMonat);
FIELD ResturlaubMonatsende := _ResturlaubMonatsende;
SELECT @All
der Agent wird ausgeführt nur bekomme ich anstatt dem korrekten Wert nur die Kommas aus dem Mehrfachwert zurückgeliefert?!? Was könnte nicht ganz stimmen?
Also nochmal Danke schon im Voraus!!!
Gruß Peter
-
Mehrfachwerte ("Listen") enthalten keine Kommata - zumindest nicht als Trennwerte zwischen den Elementen. Dies ist ein reines Verfahren der Anzeige.
Weiterhin: Ist Deine Resturlaubsliste überhaupt vom Typ Text ? Das sollte doch vernünftigerweise eine Zahlenliste sein. Dann musst Du mit @Subset arbeiten (verschachtelt - erst alle bis zum Monat auslesen, dann mit dem Parameter -1 den letzten Wert herausziehen).
HTH,
Bernhard
-
OK, mal schaun:
das ist der Code mit dem das Feld per LS gefüllt wird. Dort will ich nix ändern, da es zu einer sehr komplexen LS-Klasse gehört. Aber in der Not... Mal schaun, also hier der Code:
Dim NewMonths(11) As String
For i = 0 To 11
NewMonths(i) = newperson.VacTotalClaim1(0)
Next
Call newperson.replaceitemvalue("VacTotalRestMonths1",NewMonths)
Angezeigt wird das Feld VacTotalRestMonths1 in einer Ansicht getrennt mit Komata. Jetzt bin ich halt am rätseln wie ich da drauf zugreifen kann. Kurzer Kommentar ob @subset oder per @word würde mir mal für den Anfang reichen.
Ausführlichere Beschreibungen werden natürlich auch aktzeptiert ;)
-
Ausführlichere Beschreibungen werden natürlich auch aktzeptiert
Die gibt's kostenlos in der Designer-Hilfe... ;D
-
Jepp, bin ich auch schon wie wild am Suchen...
trotzdem weiß ich jetzt noch nicht, wie das Array im Dokument gespeichert wird bzw welches Trennzeichen verwendet wird, falls es keine Liste sein sollte...
aber vielleicht finde ich ja in der Hilfe noch was...
Wenn es trotzdem noch ein Hinweis aus dem wissenden Volk gibt, bin ich dankbar...
-
Okay, es ist eine Textliste. Aber auch hierfür kann @Subset verwendet werden. Alternativ eine Kombination von @Implode und dann @Word - das Implode-Trennzeichen muss dann auch für Word verwendet werden (logisch).
Bernhard
-
Geil, die Kombi aus @Implode und @Word klappt!!!
Danke Bernhard!!!
Gruß Peter