Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: my head am 07.10.03 - 15:43:02
-
hallo!
kann ich per formelsprache überprüfen ob es ein doc einer anderen maske mit bestimmten inhalt schon gibt?
danke...
-
Die Maske spielt dabei absolut gar keine Rolle.
Wenn Du eine Ansicht hast, die alle Dokumente sortiert darstellt nach dem für Dich interessanten Kriterium (Feld), solltest Du per @dbLookup eine solche Überprüfung durchführen können:
- Wenn es ein neues Dokument ist, darf @dbLookup kein Resultat zurückgeben
- Wenn es ein bereits gespeichertes Dokument ist, darf @dbLookup nur ein Resultat bringen.
"NoCache" sollte man bei derartigen Überprüfungen nicht einsetzen, auch wenn das die Performance tangiert.
Das nur mal so als erste Gedanken, bis wir näheres zu deinem Problem von Dir erfahren.
HTH,
Bernhard
-
Gerade eben in einem anderen Thread aufgetaucht, NoCache muss in dieser Situation gesetzt werden.
Bernhard: das war der zweite Thread, den Du suchen wolltest .....
-
Once again: DANKE, Semeaphoros ! Ich bin selbst noch nicht dazu gekommen, diesen Thread zu suchen.
'tschuldigung für die Konfusion - offenbar gibt es solche Tage ...
Bernhard
-
No Problem, Du revanchierst Dich bei meinem nächsten solchen Problem .... !
-
Na sowieso !
Und gut, daß Du den Schrott gleich entdeckt hast - wäre ja peinlich, wenn jemand mit einem "Profi"tip 'rumhantiert und gleich auf die Nase fällt ...
Jedenfalls hast Du damit nicht nur "Notes getragen", sondern auch das Forum hochgehalten (was immer das dann auf griechisch heissen würde ;-)
Farvel,
Bernhard
-
Na, also doch, jetzt hast Du den Semeaphoros, den Notesträger auch noch "veröffentlicht".
Der Forumsträger wäre entsprechend der Agoraphoros.
(gr. agora <=> lat. forum <=> deutsch: Markt, wobei man das nicht mit einem reinen Handelsmarkt, wie wir das deutsch Wort normalerweise verstehen, gleichsetzen darf ....)
Danke fürs Kompliment :-)
-
Na, also doch, jetzt hast Du den Semeaphoros, den Notesträger auch noch "veröffentlicht".
Ich war's nicht, ich war's nicht, ich war's nicht, ich war's nicht ...
Das hätt' doch keiner gemerkt ;-)
Vi ses,
Bernhard
-
Neinnein, Du warst es nicht, ich werde es auch nieeeee wieder behaupten .......... ;-)
-
hab den @dblookup verwendet bekomm, aber die fehlermeldung:
"Eintrag im Index nicht gefunden, oder der Index ist für die Ansicht nicht aufgebaut"
hab schon mit den Einstellungen herumgespielt... aber immer der gleiche Fehler...
im moment hab ich die Einstellungen:
Index aktualisiern: automatisch nach 1. Verwendung
Index verwerfen: nie
-
Mögliche Ursachen:
Tippfehler im Viewnamen (Anführungszeichen vergessen?)
Die erste Kollonne des Views zeigt was anderes, als man erwartet (View mal ansehen, im Designer die Daten abrufen oder im Client öffnen)
Man hat den falschen Suchwert erwischt
Erste Kolonne des Views ist nicht sortiert
... etwa das, was mir so spontan als Möglichkeiten einfällt.
-
Oder der gesuchte Wert ist wirklich nicht da (darauf soll ja auch überprüft werden). Findet Dein dbLookup prinzipiell nichts - dann erst Fehlerursache prüfen. Wenn das dann klappt, mit @Error auf den Fall "Dokument existiert nicht" reagieren.
HTH,
Bernhard
-
FIELD ds:=ds;
@SetField(ds;@DbLookup( Klasse : "NoCache" ; "" ; "bank";"Commerzbank";"bank") );
müsste das nicht funktionieren Datensatz mit Commerzbank ist vorhanden...
Fehlermeldung: "Der in @Set defienierte Variablenname muss vor dem Gebrauch deklariert werden. Um ihn zu deklarieren setzen sie FIELD Feldname:=Feldname oben in ihre Formel ein,"
-
FIELD ds:=ds;
@SetField(ds;@DbLookup( Klasse : "NoCache" ; "" ; "bank";"Commerzbank";"bank") );
syntaktisch falsch, da bei @SetField die zu setzende Variable/Feld in "" gesetzt werden muß.
Auch so recht komisch, machs doch so:
Field ds:=@DbLookup(Klasse : "NoCache" ; "" ; "bank";"Commerzbank";"bank");
und noch besser zum Fehlerabfangen, denn wenn dblookup nix findet, dann käme "Eintrag im Index nicht gefunden":
_wert := @dblookup (""; server : db; view; was; spalte);
field Ziel:=@If (@iserror (_wert);"nix gefunden";_wert);