Beiträge von Patrick

    Hallo Norbert


    Ja, es geht um eine ErrorHandling Routine. Ich würde jedoch eher eine dokumentierte Funktion (getThreadInfo) benutzen, anstatt eine undokumentierte (LSI_Info).


    Ausserdem hab ich jetzt kurz geschaut: ein LSI_Info(3) (was das Modul zurückgeben sollte) gibt wie bei getThreadInfo eine Zahl zurück. Respektive habe ich irgendwo gelesen, dass dies ein Hex-Wert sein soll. Nur kann ich auch damit nicht viel anfangen...


    Greets
    Patrick

    Klar werden die Klassen, welche in OO geschrieben werden auch nach Regeln von OO erstellt. Sprich mit Vererbung.


    Es ging mir mehr darum, dass wir jetzt nicht unsere prozeduralen ScriptLibraries ändern in die Klassen-Hirarchie, sondern neue Sachen, welche wir entwicklen mit OO realisieren. Das meinte ich mit "nicht einen ganzen Klassenbaum". Ist vielleicht etwas unglücklich ausgedrückt.


    Wir verstehen uns.


    Cheers
    Patrick

    Ja du hast recht Thomas.


    Aber wenn man dann mit Hannover zB nicht aufs FrontEnd zugreifen kann, macht es eher wieder weniger Sinn.


    Bei uns geht es momentan darum, ob wir mehr in OO mit LotusScript investieren wollen, sprich firmenspezifische Klassen schreiben, oder besser warten und unsere Klassen dann gleich in Java schreiben. Weil momentan haben wir prozedurale Script Libraries.


    Momentan denke ich, dass wir neue Sachen mit OO in LotusScript realiseren, aber nicht einen ganzen Klassenbaum aufstellen, sondern nur partielle Klassen, dort wo wir die neuen Methoden einsetzen. Und dann mit Hannover einen firmenspezifschen Klassenbaum in Java aufbauen.


    Danke für eure Meinungen!

    Was heisst "schlugen fehl"? Bekommst du eine Fehlermeldung, oder was passiert, resp. was passiert nicht?


    Mit dem @Adjust sollte es eigentlich funktionieren.


    Bist du im EditMode des Dokumentes? (Die NotesScript Methode benötigt einen EditMode, vielleicht die @Formula dann auch)
    Kann es etwas mit dem Save des Dokumentes zu tun haben? Vielleicht must du erst saven?


    Greets
    Patrick

    Hmm..naja, dann kommt es aber auf Hannover drauf an. Sprich wenn man mit Hannover auch aufs FrontEnd mit Java zugreifen kann, macht das doch sicher Sinn.
    Erstens aus Performance Gründen (Ein Programm in Java geschrieben ist schneller per Java zugreifbar, als wenn es den Code erst parsen muss). Zweitens kann man Notes Klassen erweitern.


    Oder wird das dann mit NotesScript auch möglich, die Notes Klassen zu erweitern?
    Ich blick da noch nicht ganz durch. :-?


    Weiss jemand, ob es mit Hannover möglich wird aufs FrontEnd zuzugreifen? Theoretisch müsste das doch schon so sein...

    Hallo fr-kenny


    Normalerweise hast du die Schriftart "Default Sans-Serif" eingestellt für das Body-Feld.
    In den Notes-Client Einstellungen kann die Schriftart für die "Default Sans-Serif" Schrift eingestellt werden. (User Preferences -> Default Fonts...). Wenn du dort den Default Sans Serif font änderst hast du auch im Mail-Body dann diese Schrift eingestellt.


    Nachteil: Pro Client (Ev per Policy steuerbar?), und auch alle anderen Datenbanken welche den Default Sans Serif Font gebrauchen sind dann in dieser Schriftart.


    Alternative: Signatur-Schrift anpassen.


    Ich persönlich finde es nicht schlimm, wenn die Signatur in einer anderen Schriftart ist. Schliesslich es ja eine Signatur.


    Gruss
    Patrick

    Hallo zusammen!


    Wer hat Erfahrung in der Entwicklung von Java unter Notes?
    Findet ihr es sinnvoll, im Hinblick auf den Hannover Release, in Java zu investieren, respektive die Entwicklung auf Java umzustellen?


    Ich denke das macht schon Sinn, weil man mit Hannover die Möglichkeit hat, Klassen von Notes selber zu extenden. Performance-mässig müsste man mit Java auch besser dastehen.


    Wäre euch dankbar für Inputs/Anregungen.


    Kennt ihr gute Bücher über Java und Domino? Ich bin auf folgedes gestossen:
    Java unter Lotus Domino
    Know-how für die Anwendungsentwicklung
    Von: Ekert, Thomas
    Verlag: Springer-Verlag
    ISBN: 3-540-22176-X
    z.B. hier: http://www.edv-buchversand.de/…product&id=sp-22176&lng=0


    Kennt das jemand? Ist das zu empfehlen?


    Greets
    Patrick

    Hallo Joerg


    Schau dir mal @Command( [MailComposeMemo] ) an. Das erstellt einfach eine neue E-Mail. Wahrscheinlich nicht was du brauchst.


    Sonst kannst du in deiner Kundendatenbank ein Form machen, das "Memo" heisst. Darauf hast du die Felder SendTo, Subject und Body. Beim Aufruf erstellst du ein neues Dokument mit dem Form Memo, füllst das SendTo mit der MailAdresse ab. Der User kann den Body ausfüllen und auf einen Button "Send" klicken bei welchem du die UI Funktion Send() aufrufst.


    Gruss
    Patrick

    Hallo Thomas


    Danke für deine Antworten. Wie du aus anderen Postings vielleicht noch weisst, bin ich momentan am Umstellen auf OO Programmierung, deshalb war ich mir nicht sicher (und hab auch nicht die Erfahrung) ob das so in Ordnung ist. Auf der anderen Seite hab ich mich natürlich auch daran gestört in der Klasse ein if Alias then einbauen zu müssen.


    Aber du hast wohl recht: eine Ansicht weiss am Besten für was sie geeignet ist. Dann ist es legitim ein Set Property zu machen und halt einen Default zu setzen.


    Danke für die Hilfe!

    Hallo Thomas.


    hmm...ich möchte eigentlich nicht eine neue Unterklasse machen, ich möchte nicht zu tiefe Klassenstrukturen. Die Idee, dies als Property zu setzen find ich auch gut. Aber dann hab ich ja die Logik wieder in den Ansichten, dh verteilt in Klasse und Ansicht. Aber eigentlich ist doch der Sinn, die Logik nur in der Klasse zu haben. Oder hab ich da den Bernd Hort falsch interpretiert?


    Ja, stimmt mit den Parametern hast du recht. Aber ich hab eigentlich etwas anderes gemeint. Wenn z.B. eine Methode dazukommt "Dokumente dürfen nicht gepastet werden", in bestimmten Views, dann müsste ich für diese Methode wieder einen Parameter hinzufügen, beim Konstruktor. Das hab ich eigentlich gemeint.

    Oder du programmierst die Sortierung. Machst einen Agenten wie Thomas geschrieben hat, dann hast du die Dokumente in einer Dok-Collection.
    Dann hast du eine View mit den selben Dokumenten aber in der gewünschten Sortierung (nach Datum). Du weist diese Dokumente einer zweiten Dok-Collection zu, loopst durch diese hindurch, schaust bei jedem Dokument nach, ob es in der ersten Dok-Collection vorkommt, wenn ja mach nichts, ansonsten mach DocCollection.DeleteDocument(doc).

    LN4ever: Macht nichts. Kein Problem. Der Wille zur Hilfe zählt! :)


    @Deragon: Hab den Fehler nun rausgefunden. Script Libraray als einzelne Klasse extrahiert in einer leeren Datenbank. Siehe da, es funktionierte. Also auf die Suche: Hat's was mit den Master-Klassen zu tun? Nein.
    ...fündig wurde ich dann in der View:
    Ich hatte das "Use" im Globals Teil der Ansicht, und die Variable im Declarations Teil auch im Globals, jedoch hatte ich nicht explizit ein "Option Public" hingeschrieben, nur ein "Option Declare". Anscheinend merkt er sich dann die Events nicht beim Ausführen. Das Verhalten ist zwar eigentlch komisch, weil wenn es ja Private für den "Globals" Teil wäre, dann müsste er mir ja beim Kompilieren reklamieren, weil er dann die objView Klasse gar nicht hätte... :-?


    Danke auch für deinen Tipp! Aber das Problem ist dann, wenn ich es als Paramter beim Instanzieren mitgebe, und ich dann die Klasse später erweitere und z.B. noch mehr Parameter hinzufüge, dann müsste ich ja alle Views wieder auf den neuen Parameter anpassen. Meines Wissens gibt es keinen Default-Wert den man einem Paramter geben kann. Im Sinn von einem optionalen Parameter. Oder lieg ich da falsch?

    Auszug aus der Hilfe:
    "This formula returns the value stored in the Status field of the Virus Check document, which is accessed via the In Progress view of the PROJECTS.NSF database stored in the SMITH subdirectory on the RESEARCH server. The information will not be cached, so if this formula is evaluated again during the same Notes session, a new lookup will be performed to ensure that the status retrieved is up to date."


    @DbLookup("":"NoCache";"RESEARCH":"SMITH\\PROJECTS.NSF"; "In Progress";"Virus Check";"Status")
    "


    :D

    taurec: der programmatische Name muss nicht mit $ beginnen, es geht auch ohne.


    hadez16: du kannst den @SetViewInfo nur auf Kategorien anwenden! Lies mal die Hilfe:


    "In Standard Outline views, filters a view to display only documents from a specified category. In Calendar views, filters a view to display only document that contain a specified string in a specified column."


    "...filtert eine Ansicht um nur Dokumente einer angegebenen Kategorie anzuzeigen..."


    Also müsstest du deine View umstellen, mach eine erste Kategorie mit dem Status, nach welcher du dann filtern kannst und die zweite Kategorie ist dann das Datum. Wenn du den Filter gesetzt hast, dann siehst du auch die erste Kategorie-Spalte nicht mehr.