Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: adminnaddel am 19.08.02 - 10:15:50
-
Hallo liebe Gemeinde,
etwas ganz einfaches für euch!:
ich habe 4 Felder in einer Maske
1.= Ersteller
2.= Erstellt am
3.= Geändert durch
4.= Geändert am
zu1 = zB @Name([CN],@UserName)
zu2 = zB @Created
zu3 = ??????????????????????????????????
zu4 = ??????????????????????????????????
und wie kann ich diese Informationen in einer Ansicht präsentieren.
DANKE
Bis bald
-
Hallo adminnaddel,
versuch mal die Formel-@Funktion
zu 3: @Modified + @UserName
zu 4: @Modified
Gruss Dija ;)
-
@adminnaddel:
zu 3) @Modifeid
zu 4)
@If(
@Elements($UpdatedBy) > 1;
@Subset($UpdatedBy;-1);
$UpdatedBy
)
Hinweis:
Die Funktion @Modified funktioniert nur in Spaltenformeln einwandfrei. Wenn sie dagegen in Formeln für ein berechnetes Feld oder in einer Anzeige-Formel verwendet wird, gibt @Modified einen Wert wieder, der für den Zeitpunkt steht, als das Dokument zum vorletzten Mal gespeichert wurde.
Gruß
Andreas
-
Ja, dann danke ich schon mal für die raschen Antworten und ich werde es gleich probieren...Danke
MfG
-
Hi an Euch,
das mit @Modified + @UserName klappt nicht und nur @Modified ist ja ein bisschen ??? weil mir ja dann nur das Datum ausgeworfen wird.
Es ist also immer noch die Frage offen: wie lasse ich mir den Feldwert wiedergeben von demjenigen der mir das Dokument ändert?
-
Ich mache das immer so...
Folgende Formeln in den beiden Feldern:
3. Feld: @If(GeaendertDurch = "";@Name([CN];@UserName);GeaendertDurch)
4. Feld: @If(GeaendertAm = "";@Now;GeaendertAm)
Und ins Querysave der Maske kommt noch das:
FIELD GeaendertDurch:=GeaendertDurch;
FIELD GeaendertAm:=GeaendertAm;
@SetField("GeaendertDurch";@Name([CN];@UserName ));
@SetField("GeaendertAm";@Now)
Hoffe, daß dir das hilft.
-rar
-
Mit der Formel
@If(
@Elements($UpdatedBy) > 1;
@Subset($UpdatedBy;-1);
$UpdatedBy
)
bekommst Du den Namen desjenigen Users, der zuletzt geändert hat.
Habe bei meiner ersten Antwort die Nummerierung vertauscht, @Modified liefert das Datum der letzten Änderung zurück, $UpdatedBy wird automatisch von Notes gesetzt und enthält die Liste alle User, die das Dokument gespeichert haben.
Gruß
Andreas
-
Hi Glombi,
das ist ja schon garnicht schlecht, aber nicht ganz das was ich wollte.
Denn, nun wird in der Spalte der View der Inhalt des Feldes angezeigt....dh der Ersteller eines Docs wird gleich durch $UpdatedBy gesetzt.
Die Spalte sollte aber solange wie nichts am Doc geändert wird, frei bleiben.
Desweiteren wird mir angezeigt CN=Müller/OU=XYZ/O=X
Es wäre toll wenn dieses mit nur mit dem Namen gehen würde.
Vielleicht hast du, oder auch ihr noch eine Lösung parad.
Danke
-
Hi,
die folgende Formel zeigt den Namen an, wenn das Dokument mindestens einmal geändert wurde, denn nur dann ist das Systemfeld $Revisions vorhanden:
_Name :=
@If(
@IsAvailable($Revisions);
@If(
@Elements($UpdatedBy) > 1;
@Subset($UpdatedBy;-1);
$UpdatedBy
);
""
);
@If(_Name != "";@Name([CN];_Name);"")
Wegen der Darstellung von Notes-Namen solltest Du in der Hilfe bzgl. der @Funktion @Name nachsehen.
@name([CN];... ) liefert nur den Common Name, also den Namen ohne OU=, O= und C= zurück.
Gruß
Andreas
-
Hi,
wenn es stimmt das $Revisions & $UpdatedBy automatisch erstellt werden und sie nicht erstellen muss!, klappt die ganze Sache nicht. Es wir noch immer von Anfang an der Name mir gezeigt. Diese Formel funktioniert nicht!
Trotzdem danke
Grüsse
-
Hallo adminnaddel,
ich habe diese Information bei mir wie folgt gelöst:
1. Teilmaske mit Tabelle angelegt zwecks sauberer Ansicht
2. Folgende Felder angelegt
Feld _Author - Berechnet beim anlegen
@Subset(@Name([CN];@Author );1)
Feld _Erstelldatum - Berechnet beim anlegen
@Created
Feld _UpdateBy - Berechnet
@Subset(@Name([CN];$UpdatedBy );-1)
Feld _Updatedatum - Berechnet
@Modified
Somit wird zwar das $UpdateBy befüllt aber beim ersten Speichern des Doks wird kein Eintrag in Feld _UpdateBy eingetragen - erst bei der 2ten Änderung.
Hoffe es hilft weiter.
Gruss
Bubble
-
Danke Bubble,
das war sehr einfach erklärt und hat wunderbar funktioniert! Aber auch an die anderen Dank für die Bemühungen!
Nun kann es weiter bei mir gehen.... 8)
Bis bald
-
Hallo adminnaddel,
habe noch mal das ganze geprüft - also
Feld _Author und Erstelldatum sind "Berechnet"
Feld _UpdateBy und _Updatedatum sind "Berechnet zur Anzeige" und in den Feldeigenschaften der Hide Wenn Eigenschaft kannst Du noch Verbergen wenn "@IsNewDoc" eintragen.
Gruss
Bubble :D
-
hmmm, habe nu mehrfach mit diesen formeln rumgespielt, aber komischerweise werden die felder updateby und updatedatum erst beim zweiten ändern des dokumentes aktualisiert.
und @modified gibt auch immer den falschen wert zurück, nämlich minus 1 tag.
was mache ich falsch ?
-
Hi Tyler,
habs mir nochmal angeschaut und die TM in meine SpielDB eingebaut - fluppt wunderbar.
Das mit 1 Tag minus ??? ??? ???
Und Update - klar ab dem 2ten Öffnen der DB wird dies erst wirksam ( Speichern / F9)
-
hmm, also bei updatedby steht ein anderer mitarbeiter drin. nun ändere ich das dokument und speicher und schliesse es. der name des anderen mitarbeiters bleibt.
wenn ich es allerdings nocheinmal ändere und speichere und schliesse, dann steht mein name drin.
da stimmt doch dann etwas nicht, warum macht er das erst beim 2ten ändern ???
-
So jetzt hab ich mal wieder Zeit.
Also Tyler hab folgendes getestet:
1. Neues Doc angelegt
- Erstellerinfo werden angezeigt
- Updateinfo sind leer
- Nach Speichern sind die Updateinfos in den Felder hinterlegt aber erst durch aktuallisieren (F9) sichtbar.
2. Erstelltes Doc bearbeiten mit anderem Namen
- Erstellerinfo unverändert
- Updateinfo beinhaltet jetzt die Ersteinträge vom Ersteller
- Nach Speichern werden die Updatefelder befüllt und nach aktuallisieren (F9) auch zur Ansicht gebracht
Schau Dir doch mal die Feldinfos entsprechend für das Doc an. So kannst Du schön nachvollziehen bei welcher Aktion sich irgendwelche Feldwerte ändern.
-
hi bubble,
hmmmm, ich verstehe es nicht...ist echt zum verücktwerden.
ich habe alles genauso gemacht wie in deinem ersten posting in diesem thread beschrieben, bis auf punkt 1, den ich nicht verstehe.
aber die felder die du hast, habe ich auch und auch mit denselben formeln.
wie gesagt, der effekt bei mir ist eben der, dass erst nach der 2ten änderung im dokument das feld updateby einen neuen wert in form des namens bekommt.
die erste änderung wird irgendwie ignoriert, zumindest von diesem feld.