Du gibst hoffentlich nicht wirklich LOAD UPDALL db.nsf -R -C ein???
Oder LOAD FIXUP db.nsf ???
*Der macht nur witze, gell??
Beiträge von dnotes
-
-
Also, das erscheint mir doch ziemlich umfassend....das, was Dir noch fehlt. Kann man bestimmt hier nicht in ein paar Worte fassen.
Hier gibt´s aber Freelancer, die wuerden bei Deiner Firma vorbei kommen, auch fuer Schulungen ( mich eingeschlossen)
Denk mal drueber nach. Man kann bestimmt vieles im Selbststudium erreichen, aber hin und wieder ist es einfach leichter und zeitersparend, wenn amn ein paar Dinge anschaulich erklaert bekommt. -
Also, ein wenig Nachhilfe.
Du kannst Dir einen Weg merken. Was macht man zuerst? Man starte Note, dann oeffnet man eine Datenbank, geht in eine Ansicht und waehlt ein Dokument.
InSript sieht das so aus.
Session, database, view, document. (Hierarchie)
Der Begriff source taucht dann schon in einer Maske z.B. auf. Da biste dann aber auch schon in einem Dokument und hast dann mit Source schon das Dokuemnten-objekt im Zugriff.
Also, je nachdem, wo Du Dich befindest, gibt´s unterschiedliche Wege oder Abkuerzungen.
Auf ein Feld zugreifen dann, wenn Du das Dokumenten - Objekt erzeugt hast.
Enfachste Methode: Wert holen....doc.Feldname(0)
Felder sind immer Arrays..ausgenommen RichText Felder. Deswegen, auch wenn nur ein WErt drin steht die (0).
Bei Feldernmit einem $ am Anfang geht diese Schreibweise nicht. doc.$Ref leifert einen Fehler.
Da muss man dann doc.getItemValue("$Ref") benutzen.
Setzen von Feldwerten. einfachste Methode:
doc.Feldname = "Wert"
doc.Feldname(0) liefert hier auch einen Fehler
Dafuer, um mehrere Werte zu uebergeben, muesste man ein Array erzeugen, belegen und dieses Array dem Feld zuweisen.
Im Geoeffneten Dokuemnt gibt es dann noch Methoden wie Notesuidocument.fieldgettext und fieldsettext um Felder UIdoc zu belegen.Auf jeden Fall muss das Dokument, wenn ueber die Documenten-methoden veraendert, gespeichert werden.
also, nach dem Setzen der Feldwerte immer ein doc.save true,trueSo, erstmal was zum probieren
*Sonderfaelle so gut wie nicht beachtet -
Eigenschaft des Feldes. Aber dann wird er nur so dargestellt, nicht abgespeichert in diesem Format - falls der WErt in einer Ansicht benoetigt wird in dem Format. Dafuer, glaube ich, muesste man die einzelnen Komponenten zusammen basteln. Da gibt´s dann Funktionen wie @Year, @Date usw....
-
Versuch doch mla, die Nachricht nach lokal zu replizieren und dort zu oeffnen.
-
Eine Loesung fuer das Aufhaengen an den Ohren??
Greifst Du ueber Netzwerk oder ISDN auf die Nachricht zu??
-
Ein berechnetes Feld mit der Formel @Today oder @ Now haetten das auch gekonnt.
-
Damit wir nicht laenger aneinander vorbei reden..wo haste den @Command denn eingebaut?? *Ich hatte ja nur eine Vermutung
-
wenn Du das Ganze in einem agent laufen lassen willst, dann stelle den Agenten auf run once...@commands erlaubt..oder so aehnlich und den Suchtyp lass leer
-
verstecktes Dokument waere auch mal was..*gg
Nein nein, verborgenes oder verstecktes Feld -
Jetzt weisste also, dass integerwerte nur bis 32... gehen! Und nun?? Moechteste auch 40.000 als integer haben oder wie muss ich die Frage verstehen??
-
OnChange ist nur fuer JavaScript aktiv und somit auch nur im Web einsetzbar. (Die JavaScript - Moeglichkeiten des Notes - Client sind arg beschraenkt).
@MailSend ist doch eine gute Wahl fuer deinen Fall..ebenso wie Notesdocuemnt.send.
Das nur das ganze Dokument verschickt wird.....was auch sonst???
Aber welches Dokument verschickt wird kannst Du festlegen. (Muss ja nicht das Uidocument sein)
Problem waere nur..wie bekommt man raus, ob sich der Feldinhalt geaendert hat??
Hierfuer kann man sich ein verborgenens Dokument erstellen - bei NichtRichtText - Feldern und beim Oeffnen des Doks den Feldinhalt des zu beobachten Feldes einlesen.
Beim Speichern wird dann ueberprueft, ob die Feldinhalte noch identisch sind oder es Unterschiede gibt. -
Wenn es aus sicherheitstechnischen Gruenden nicht noetig ist, die Dokumente zu verbergen sondern lediglich der Optik o.aehnliches, dann koennte man den Button im Navigator, der den User in die Ansicht der in Erfassung stehenden Dokumente bringt, auch mit einer einfachen Formel "lahmlegen"
z.B.
@If (@IsNotMember("[KEYWORDS]";@UserRoles);
@Return(@Prompt([OK];"STOP";"You are not authorized to use this funktion."));
@Command([OpenNavigator];"Keywords";"0"));@All
Hier habe ich einen eigenen Navigator - Keywords -, zu dem nur jemand Zugang hat, dem die Rolle KEYWORDS zugordnet wurde.
Dann kann man sich den ganzen Schmus mit Leserfelder sparen.
(Autorenfelder sollten aber dennoch sein) -
Ach so, Du oeffnest dafuer extra eine Maske:
Da habe ich auf die Schnelle nur dieses hier:
Call uidoc.fieldappendText("Body","Titel:" & Chr(10) & "ISBN")....usw..*uidoc ist Dein neu erstelltes Dokument
-
Das geht am einfachsten mit LS. Allerdings muss man dafuer in den Dokumenten ein Feld erzeugen, das den Feldinhalt von dem Datumsfeld formatiert.
Also so in etwa: -
Die Zeilen zum Oeffnen der DB erscheinen mir unsinnig.
Wenn ich ein Datenbankobjekt erzeuge und die Datenbank existiert, dann ist die DB open. (mit Dim dbSCC As New notesdatabase("BOEDOM1","ide\security\SecComCh.nsf")Wenn sie danach nicht open ist, wird auch ein db.open sie nicht oeffnen, soweit ich weiss.
Man koennte hoechstens abbrechen, wenn db.isopen fasle liefern wuerde, damit keine Fehlermeldung bei
Set viewSCC = dbSCC.getview("User\Host name")
aufkommt. -
Ich hatte sowas mal mit einer dialogbox gemacht, um den Grund fuer - in diesem Fall - Ablehnung eingeben zu koennen.
Das sieht dann etwa so aus:flag = ws.DialogBox("reason",True,True)
In der Maske reason gibt es dann ein Feld mit Namen z.B. Reason ( ist aber nicht zwingend der Name)Set m_doc = db.createdocument
abss = Evaluate({@name([cn];@username)})
m_doc.SaveMessageOnSend = False
Dim rtitem As notesrichtextitem
Set rtitem = New NotesRichTextItem( m_Doc, "Body" )
m_doc.subject = abss(0) & " has denied the " & doc.strategy_kind(0) & " strategy " & |"| & doc.strategy(0) & |"|
recipient = doc.responsible(0)
Call rtitem.appendtext(doc.reas(0))
Call rtitem.addnewline(2)
m = "der Empfaenger
m_doc.send False,mSo, nun musste nur noch die Maske Reason oder wie auch immer erstellen, ein Feld in eine Tabelle einfuegen und etwas abaendern
-
Ein anderes Dok kannste mit Script ueber die Eigenschaft Dialogbox der Notesuiworkspace - Klasse machen
-
Wenn Du die design-Hilfe auch in Deutsch hast und sie Dir lokal ins dementsprechende Verzeichnis kopierst..dann geht´s
-
Unter Delivery options....prevent copying