ITWUs Sportskanonen beim Clash of Titans

16. August 2017 Posted by Jan Santüns

Am 16. Juli diesen Jahres kam es zum sogenannten „Clash Of Titans“ – einem Badmintonmatch zwischen mir und Torben.

 

Die Vorgeschichte

Bei einem gemeinsamen Abend auf dem Paderborner Weihnachtsmarkt im vergangenen Jahr kam es zwischen den beiden Kontrahenten in angeheitertem Zustand zu einer hitzigen Diskussion. Das Thema in der Runde war meine nächste Badmintonsaison – ich spiele übrigens seit 12 Jahren Badminton und mittlerweile in der Regionalliga. Torben meinte nun, dass es ja nicht so schwer sein kann, ein wenig Ball über die Schnur zu spielen und dass er ohne Probleme 10 Punkte kriegen würde. So kam die Wette zustande. Auf Rat von Carl – ebenfalls erfahrener Badmintonspieler - wurden die Regeln noch leicht abgeändert. Torben musste in einem der beiden Sätze vier Punkte machen, um die Wette zu gewinnen. Direkt wurde ein Termin im Juli festgelegt, um Torben genug Zeit für die Vorbereitung zu geben.

 

Der große Tag

Der Austragungsort war die Sporthalle in Neuenbeken, welche wir für den Tag nutzen konnten. Zuschauer und Wettkämpfer trafen sich bei Carl, um gemeinsam den kurzen Fußweg zur Halle anzutreten. Schon das Einlaufen wurde durch passende Musik untermalt, um die Stimmung für das Match anzuheizen – ich fühlte mich bei Conquest of Paradise von Vangelis schon ein bisschen wie Henry Maske. Nach kurzem Einschlagen ging es dann los. Carl stellte sich freundlicherweise als Referee zur Verfügung.

Einmal bitte recht ernst!

„Null beide, bitte spielen“ hallte die Stimme des Schiedsrichters durch die Halle, um das Spiel zu eröffnen. Zu Beginn war ich wirklich leicht nervös, da es schon nicht so leicht ist, gegen unerfahrene Gegner keinen eigenen Fehler zu machen - vor allem bei eigener hoher Führung.

Der erste Satz: kein Problem für den Profi

Diese legte sich jedoch relativ schnell als ich merkte, dass Torben deutlich nervöser war. Wirklich lange Ballwechsel gab es im ersten Satz eher selten, sodass ich schnell 11:0 führte und es in die Pause des ersten Satzes ging. Auch in der zweiten Hälfte des Satzes wurde es nicht wirklich spannender. Was soll ich sagen? Torben fand keinen wirklichen Schlagrhythmus und machte viele schnelle Fehler. Ich musste meistens nur einen passenden Aufschlag machen und der Ballwechsel war vorbei. Somit ging der erste Satz mit 21:0 an mich.  

Der zweite Satz: es wird spannend

Im zweiten Satz wurde es schon spannender. Die Ballwechsel wurden ein wenig länger, und Torben fand besser ins Spiel. Zur Pause stand es dann 11:1, sodass Torben nur noch drei Punkte zum Sieg der Wette fehlten.

 

Das Finale - Kein Platz für Freundlichkeiten

Es blieb kein Platz für Freundlichkeiten. Wir beide waren nun sehr konzentriert und gaben alles. Beim Stand von 20:2 gab es dann eine fragwürdige Entscheidung des Referees. Ein Ball an der hinteren Grundlinie wurde „aus“ gegeben, welchen Torben meiner Meinung nach eindeutig berührt hatte. Es sei denn man betrachtet das absichtliche Herausschießen des Balles aus dem Feld nicht als Berührung. Somit stand es also nun 20:3 - Matchball für mich, Möglichkeit zum Wettgewinn für Torben.

Der Matchball: noch einmal volle Konzentration

Nach leicht zu hohem kurzen Aufschlag von Torben konnte ich den Matchball verwandeln und somit das Match für mich entscheiden.

Im Anschluss an das Match nutzten dann viele ITWUler die Möglichkeit, Badminton auszuprobieren oder Volleyball zu spielen. Da der Wettbewerbsgedanke nun nicht mehr im Vordergrund stand, konnten wir alle sehr ausgelassen dem anschließenden Ausklang der Veranstaltung entgegenfiebern.

ITWU ist ganz schön sportlich

 

Stärkung im Hause Goos

Nach der sportlichen Betätigung ging es zurück ins Hause Goos. Hier wurden nun alle abtrainierten Kalorien wieder aufgenommen. Ikuru kochte japanische Gerichte, Yakisoba (Bratnudeln) und Gyoza (Gefüllte Teigtaschen), es wurde gegrillt und kühle Getränke durften natürlich auch nicht fehlen. Da das Kochen der Gerichte sehr lange dauerte, wurde quasi zweimal gegrillt. Im Endeffekt wurde von 15-18 Uhr durchgehend gegessen. So ließ das ITWU-Team den Sonntag entspannt ausklingen.

Am 30. August findet dann der 3. Sparkassen Firmenlauf in Bad Lippspringe statt. Dieses Jahr treten mit Torben, Carl, Katrin und mir sogar vier ITWUler beim 5km Rundkurs an. Wir freuen uns drauf!

Updating RichTextFields on unsaved UIDocuments with LotusScript

11. Dezember 2014 Posted by Jan Santüns

 

Normally, updating RichTextFields in an opened IBM Notes document requires saving, closing and then reopening the document. If you use the RichTextField to attach a file to the document even after doing all this closing and reopening, it is not guaranteed that the attachment is inserted where you want it to be. Another problem that is implicated with this is the necessity to save documents you do not want to save, yet.

Fortunately, there is an undocumented method in LotusScript that enables us to update RichTextFields on unsaved UIDocuments without the need for saving and reopening them.

It's called

NotesUIDocument.ImportItem( tmpDoc As NotesDocument, RichTextItem As NotesRichTextItem)

and it is part of in the NotesUIDocument class.

 

Explanation standard method:

The standard method to embed files or document links etc. into RichTextFields is the use of

NotesRichTextItem.embedObject

 

Example Code:

    Dim ws As New NotesUIWorkspace
    Dim db As NotesDatabase
    Dim doc As NotesDocument
    Dim rtitem As NotesRichTextItem
    
    Set doc = ws.CurrentDocument.Document
    Set rtitem = New NotesRichTextItem(doc, "RichTextField")
    Call rtitem.EmbedObject( EMBED_ATTACHMENT, "", "C:DesktopDocument.docx")

 

Fig. 1: Notes form with buttons for the standard method and our workaround for attaching files in the RichTextField

 

After using the standard method the problems stated above become obvious. When the document is saved and reopened the file is attached at the end of the document, but not in the RichTextField where it should be.

Fig. 2: Result of the standard method EmbedObject of LotusScript

 

Explanation workaround:

Now we will use the ImportItem method.

 

Example Code:

    Dim sess As New NotesSession
    Dim ws As New NotesUIWorkspace
    Dim db As NotesDatabase
    Dim tmpdoc As NotesDocument
    Dim rtItem As NotesRichTextItem
    Dim uiDoc As NotesUIDocument
    
    'uiDoc contains the RichTextField we want to import our file into             
    Set uiDoc = ws.CurrentDocument
    
    'Create a support NotesDocument (tmpDoc)       
    Set db = sess.currentDatabase
    Set tmpdoc = db.CreateDocument
    
    'Create a RichTextItem on the support document to embed the desired file into
    Set rtItem = New NotesRichTextItem(tmpdoc, "RichTextField")
    
    'embed the desired file into the created RichTextItem
    Call rtItem.EmbedObject( EMBED_ATTACHMENT, "", "C:DesktopDocument.docx")
    Call rtItem.update
    
    '!!Using computeWithForm ensures that the attachment is completely embed into the RichTextField before
    'we try to import it into our uiDoc. It works even though we have no form specified!!

    Call tmpdoc.ComputeWithForm(False, False)
    
    'Put Cursor into the RichTextField --> precondition for the file's import
    Call uiDoc.GoToField("RichTextField")
    
    'finally import the desired file into the RichTextField on the uiDoc.
    Call uiDoc.ImportItem(tmpDoc, "RichTextField")

 

Fig. 3: Result of the workaroung method ImportItem

 

As you can see, right after using the workaround button, the file is attached into the RichTextField of our opened document as desired. No saving and reopening needed!

!Please keep in mind that this workaround method is undocumented an could be removed from LotusScript by IBM!
 
I hope this workaround helped you as much as it helped me!
If you have any questions or suggestions do not hesitate to contact us.