Archive for: ‘Dezember 2011’

Statusbericht

31. Dezember 2011 Posted by airwolf89

Tja Leute, nun hat’s mich dahingerafft. Die Sterne hatten Recht. Aber hier in der Hölle gibt es zum Glück auch schon Internet (die Telekom scheint überall zu sein… ) Habe gerade mit dem Boss gesprochen, ich wurde zur ewigen Arbeit mit XPages verdammt, also wirds auch weiterhin noch neue Artikel geben. Auf jeden Fall wünsche ich euch da oben ein frohes neues Jahr, vor allem Gesundheit. Bleibt so wie ihr seid.

 

Grüße aus der Hölle

Matthias


Ankündigung: Anstehendes Ende dieses Blogs…

30. Dezember 2011 Posted by airwolf89

Tja Leute. Ich habe heute mein Horoskop gelesen, und die Sterne lügen nicht.

Das große Postillon Horoskop für 2012

Leider bin ich vom Sternzeichen Löwe, das heißt… naja… ihr könnts ja nachlesen…

War auf jeden Fall schön diesen Blog zu schreiben. Aber vielleicht geht’s ja weiter. Eventuell gibt’s da oben (oder unten, wir werden sehen) ja auch mittlerweile Internetanschluss. Falls ja werde ich euch natürlich berichten was euch irgendwann mal dort erwarten wird. Falls es keinen Internetanschluss gibt…. Macht’s gut, und danke fürs lesen…

Euer Matze


Security: Fernsteuerbare ViewDataSources

30. Dezember 2011 Posted by Sven Hasselbach

Ist bei einer Datenbank die Option “Don’t allow URL open” gesetzt, ist sie nicht mehr im Web erreichbar. Mit den URL-Parametern databaseName und viewName lässt sich in Verbindung mit einer ViewDatasource dieser Schutzmechanismus jedoch aushebeln, und könnte ein Problem darstellen, wenn sich nur auf diese Option verlassen wurde.

Als Beispiel dient hier eine lokales NAB, dass zu Demonstrationszwecken eine offene ACL hat (Default = Manager), bei dem die genannte Option jedoch aktiviert ist:

Öffnet man diese Datenbank im Browser, so erscheint eine Fehlermeldung:

Legt man jedoch eine XPages mit einer ViewDatasource in einer anderen Datenbank an, kann dieser einfache Schutzmechanismus umgangen werden, da die beiden Paramter die in der XPage definierte Quelle überschreiben; dadurch wird eine “Fernsteuerung” der ViewDataSource ermöglicht.

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

   <xp:viewPanel rows="30" var="viewCol">
      <xp:this.data>
         <xp:dominoView var="view1" viewName="" />
      </xp:this.data>
      <xp:viewColumn
         value="#{javascript:viewCol.getUniversalID()}">
     </xp:viewColumn>
   </xp:viewPanel>
   
</xp:view>

Öffnet man folgende XPage, ist die darzustellende Ansicht natürlich leer…

… hängt man allerdings die passenden URL-Parameter an, sieht die gleiche XPage entsprechend anders aus:

Es handelt sich dabei um die beiden Dokumente aus dem persönlichen Addressbuch.

Zwar müssen immer noch Berechtigungen auf die jeweilige Datenbank gegeben sein, damit Daten ausgelesen werden können, dennoch sollte prinzipiell immer ignoreRequestParams=”true” gesetzt sein.

29. Dezember 2011 10:12

29. Dezember 2011 Posted by Stefan Pfeiffer

Nach der Einführung und dem Erfolg des iPads haben wir den Touchscreen als neues Eingabemedium gefeiert. Wir streicheln den Bildschirm den Monitor, eine Revolution in der Bedienung und eine grosse Herausforderung an die Software-Entwickler, die ihre Anwendungen entsprechend anpassen müssen. War's das? Zu kurz gedacht. Die nächste (R)evolution wartet schon. Nach Tastatur, der Computermaus, nun Touch-Bedienung ist Sprachsteuerung der nächste Schritt und die hat mich schon 2011 begleitet.

Im Januar 2011 konnte ich Watson im Jeopardy-Wettbewerb auf der Lotusphere sehen, wie er auch dort die anderen Kandidaten schlug. Die Fragen wurden nicht eingetippt sondern normal erfragt. Und Watson antwortete auch mit leicht blechener Stimme. Im Dezember 2011 holte mich dann Sprachsteuerung wieder ein. Ich musste von meinem alten iPhone 3 umsteigen (Security-Einschränkungen mit meiner Dienst-E-Mail) und wählte ein iPhone 4S. Einer der Gründe für das 4S  war die Sprachsteuerung, die mir insbesondere im Auto Sinn zu machen scheint.

Nun habe ich Siri die vergangenen Wochen ausprobiert und bin doch etwas ernüchtert. Leider können viele Apps noch nicht per Sprache bedient werden und Siri scheitert doch auch manchmal an den SMS-Inhalten, die ich aufsprechen will. Ob es an meinem hessischen Slang oder aber an Fachbegriffen liegt, wird noch herauszufinden sein.

Trotzdem zeigen Siri und Watson meiner nach den Weg. Falk Hedemann erinnert auf t3n an eine der IBM Prognosen von 2008:

Vor drei Jahren prognostizierte IBM, dass wir innerhalb der nächsten fünf Jahre per Sprachsteuerung mit dem Web reden könnten und das Web uns sogar antworten würde.

via t3n.de

Künftig werden wir mehr und mehr unserer Anwendungen auch über Sprache steuern können. Sciene Fiction? R2D2? Raumschiff Enterprise? Ich glaube nicht. Alles nur eine Frage der Zeit. Apple zeigt mit Siri den Weg und Google wird mit Android-basierter Sprachsteuerung folgen. Und es wird nicht nur um Anwendungen für Konsumenten gehen. Sprachsteuerung wird auch vor Unternehmensanwendungen nicht Halt machen.

Wo werden wir Sprache nutzen? Eher nicht im Großraumbüro, wo es doch stören würde. Sicherlich im Auto, wo die Sprachsteuerung auf jeden Fall Sinn macht und ja auch viele Autohersteller an dem Thema arbeiten bzw. es schon in ersten Versionen anbieten. Doch ich denke, es wird daneben noch weitere Einsatzorte und Szenarien vom Home Office über das eigene Büro in der Firma bis zur Nutzung auf Reisen. Und vielleicht - oder besser bestimmt - wird der Zeitpunkt kommen, wo Sprachsteuerung so normal wie Tastatur und Maus sein wird.

Und es muss ja nicht den Weg gehen, den das Siri-Horror-Video "Die Rache der Killer-App" vorzeichnet:

Domino Datasources On-the-Fly (3): ValueBinding & MethodBinding

29. Dezember 2011 Posted by Sven Hasselbach

Das ist der dritte Teil der Serie “Domino Datasources On-the-Fly”. Der zweite Teil findet sich hier.

Will man eine Wertezuweisung berechnen lassen, muss ein ValueBinding erstellt werden. Damit lässt sich dann z.B. der Formname eines DominoDocumentData-Objektes berechnen (zugegebenermaßen ein kleinwenig sinnlos, da man dies im Code sowieso erledigen könnte…).

Hierfür existiert die Methode createValueBinding() der Application-Klasse, mit der ein neues ValueBinding-Objekt instanziert werden kann:

var app = facesContext.getApplication();
var vb = app.createValueBinding("#{javascript:@Text(@Now())}");

Dieses ValueBinding muss dem jeweiligen Datasource-Objekt über die Methode setValueBinding() zugewiesen werden. Als erster Parameter muss der Name der zu setzenden Eigenschaft angegeben werden, dann folgt das jeweilige ValueBinding-Objekt.

var data = new com.ibm.xsp.model.domino.DominoDocumentData();
data.setVar("document1");
data.setValueBinding("formName", vb);
view.addData(data);

Die Fett hervorgehobene Eigenschaft entspricht dem Parameter im XPages Source:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
    <xp:this.data>
        <xp:dominoDocument var="document1"
           formName="#{javascript:@Text(@Now())}" />
    </xp:this.data>
</xp:view>

Allerdings ist diese Zuweisung nicht bei allen Eigenschaften möglich! Bei noch auszuführenden Methoden wie z.B. dem QuerySaveDocument-Event muss stattdessen mit einem MethodBinding-Objekt gearbeitet werden. Wieder findet die Instanzierung über das Application-Objekt statt:

var code = "";
code += "#{javascript:document1.replaceItemValue(\"Test\"";
code += ", @Text(@Now()));}";
var mb = app.createMethodBinding( code, null);

Eine Methode setMethodBinding() existiert jedoch nicht; das MethodBinding-Objekt muss daher über spezielle Methoden dem jeweiligen DataSource-Objektes zugewiesen werden. Die Namensgebung der Methoden ist hierbei jedoch trivial, es muss nur ein “set” vor die jeweilige Methode gestellt werden:

var data = new com.ibm.xsp.model.domino.DominoDocumentData();
data.setVar("document1");
data.setQuerySaveDocument(mb);
view.addData(data);

Hier noch der Source einer vollständigen Beispiel-Implementierung:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

<xp:button value="Create Datasource" id="button1">
   <xp:eventHandler event="onclick" submit="true"
       refreshMode="complete">
       <xp:this.action>
           <![CDATA[#{javascript:
              var app = facesContext.getApplication();
           var data = new com.ibm.xsp.model.domino.DominoDocumentData();

           data.setVar("document1");

           var value = "#{javascript:@Text(@Now())}";
           var vb = app.createValueBinding(value);
           data.setValueBinding("formName", vb);

           var code = "";
           code += "#{javascript:document1.replaceItemValue(\"Test\"";
           code += ", @Text(@Now()));}";
           var mb = app.createMethodBinding( code, null);
           data.setQuerySaveDocument(mb); 

           view.addData(data);
        }]]>
       </xp:this.action>
   </xp:eventHandler>
</xp:button>
<xp:button value="Use Datasource" id="button2">
   <xp:eventHandler event="onclick" submit="true"
     refreshMode="complete">
      <xp:this.action>
         <xp:actionGroup>
            <xp:executeScript>
               <xp:this.script>
                  <![CDATA[#{javascript:
                     document1.setValue("Feld", "ABC");
                  }]]>
               </xp:this.script>
              </xp:executeScript>
           <xp:saveDocument var="document1" />
         </xp:actionGroup>
      </xp:this.action>
   </xp:eventHandler>
</xp:button>
</xp:view>

Tools: Mozilla Aurora 11

28. Dezember 2011 Posted by airwolf89

Mozilla hat mit dem Aurora 11 eine, meiner Meinung nach, sehr schöne Version herausgebracht. Ich bin bisher noch nicht dazu gekommen ihn komplett zu testen, aber eine Funktion ist mir direkt ins Auge gefallen. Im Paket der Web-Developer Tools gibt es im Untersuchen-Werkzeug eine 3D-Funktion. Damit kann man sich seine Seite in 3D anschauen. Alle Elemente werden als Box gestapelt angezeigt. Dadurch kann man sehr intuitiv und einfach bestimmte Konstrukte und Elemente genauer anschauen, ohne sich durch Code durchwühlen zu müssen oder zu hoffen dass man mit der Maus das richtige Element erwischt, was besonders bei stark geschachtelten Konstrukten schwierig und zeitaufwändig sein kann. Natürlich beinhaltet das Paket nicht alle Funktionen die man mit dem Firebug oder den Web Development Tools (das Plugin) hat, aber als Ergänzung definitiv zu empfehlen.

Hier ein Screenshot als erster Eindruck von der Funktion:


Allgemein kann ich diese Version bisher sehr empfehlen, alle Plugins welche ich, privat oder auf der Arbeit, verwende, funktionieren problemlos in der neuen Version. Auch fällt die allgemeine Performance positiv auf. Das ist natürlich nur mein rein subjektiver Eindruck.

Bekommen kann man die Version hier.


Hinweis: Elektronische Lohnsteuerkarte verschoben

27. Dezember 2011 Posted by Roswitha Boldt

Um die Aktualität der zwischenzeitlich von den Gemeinden an die Finanzverwaltung gelieferten Daten zu gewährleisten und unzutreffende Steuerabzüge zu verhindern, hatten die Finanzbehörden im Herbst 2011 alle Arbeitnehmer wie angekündigt schriftlich über ihre beim Bonner Bundeszentralamt für Steuern (BZSt) gespeicherten elektronischen Lohnsteuerabzugsmerkmale informiert. Rechtzeitig vor dem zunächst avisierten Starttermin Anfang 2012 sollte Arbeitnehmern damit Gelegenheit gegeben werden, ihrem zuständigen Finanzamt etwaige gewünschte Änderungen oder Korrekturen mitzuteilen.

 

Dem Vernehmen nach wurden bei der groß angelegten Berichtigungsaktion zahlreiche Fehler in den Datenbeständen entdeckt. Weil sich darüber hinaus noch technische Probleme bei der Umstellung ergaben, hat das Bundesministerium der Finanzen (BMF) den ELStAM-Startzeitpunkt in sprichwörtlich letzter Minute um mindestens ein Jahr auf nun (voraussichtlich) Anfang 2013 verschoben. Die gute Nachricht: Nach dem BMF-Erlass vom 6. Dezember 2011 (Az.: IV C 5 – S 2363/07/0002-03) bleiben die Lohnsteuerkarten 2010 oder von den Finanzämtern bereits ausgestellte Ersatzbescheinigungen mit allen darauf eingetragenen Abzugsmerkmalen wie beispielsweise Steuerklasse, Zahl der Kinderfreibeträge, Freibeträge, Religionszugehörigkeit oder Faktor während des Übergangszeitraums auch ohne einen Antrag des Arbeitnehmers gültig. Seinem Finanzamt hat er lediglich mitzuteilen, wenn veränderte Lebensverhältnisse eine ungünstigere Steuerklasse zur Folge haben oder sich die Zahl der Kinderfreibeträge gegenüber den alten Eintragungen verringert. Im umgekehrten Fall kann der Arbeitnehmer beim Finanzamt entweder eine Korrektur der unzutreffenden Lohnsteuerabzugsmerkmale vornehmen lassen oder seine zu viel einbehaltene Lohnsteuer später mit einer Einkommensteuererklärung zurückzufordern.

 

Ein geringer bürokratischer Aufwand kommt in diesem Jahr dagegen auf Arbeitnehmer zu, die ohne vorhandene Lohnsteuerkarte 2010 oder Ersatzbescheinigung 2011 ein neues oder weiteres Dienstverhältnis eingehen - sie müssen beim Finanzamt zunächst eine Ersatzbescheinigung 2012 auf amtlich vorgeschriebenem Vordruck beantragen.

 

Link für Mitglieder zum Originalartikel und weiteren Themen

 

 

Domino Datasources On-the-Fly (2): DominoDataView

27. Dezember 2011 Posted by Sven Hasselbach

Das ist der zweite Teil der Serie “Domino Datasources On-the-Fly”. Der erste Teil findet sich hier.

Views lassen sich ebenfalls programmatisch erstellen, allerdings muss mindestens der Name der Ansicht angegeben sein (und ausserdem muss die Ansicht existieren):

var data = new com.ibm.xsp.model.domino.DominoViewData();
data.setVar("view1");
data.setViewName("All");
view.addData(data);

Hier eine Beispiel-Implementierung in eine XPage (in der Datenbank muss die Ansicht “All” vorhanden sein) :

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

<xp:button value="Create Datasource" id="button1">
   <xp:eventHandler event="onclick" submit="true"
      refreshMode="partial" refreshId="label1">
      <xp:this.action>
         <![CDATA[#{javascript:
            var data = new com.ibm.xsp.model.domino.DominoViewData();
            data.setVar("view1");
            data.setViewName("All");
            view.addData(data);
         }]]>
      </xp:this.action>
   </xp:eventHandler>
</xp:button>
<xp:label id="label1">
   <xp:this.value><![CDATA[#{javascript:
      try{
         view1.getName();
      }catch(e){e}
    }]]>
    </xp:this.value>
   </xp:label>
</xp:view>

Folgende Eigenschaften können bei einem DominoViewData-Objekt gesetzt werden (Stand 8.5.3):

  • setParentId(String)
  • setSearchList(String)
  • setDatabaseName(String)
  • setVar(String)
  • setSearch(String)
  • setExpandLevel(int)
  • setSearchExactMatch(boolean)
  • setViewName(String)
  • setSortOrder(String)
  • setRequestParamPrefix(String)
  • setSortColumn(String)
  • setKeys(String)
  • setScope(String)
  • setStartKeys(String)
  • setSearchVariants(boolean)
  • setCategoryFilter(String)
  • setSearchMaxDocs(int)
  • setDataCache(String)
  • setKeysExactMatch(String)
  • setIgnoreRequestParams(boolean)
  • setSearchFuzzy(boolean)

Eine vollständige Liste findet sich hier.

Im nächsten Teil werden die Eigenschaften des DominoDataDocument-Objekts vorgestellt.

Das Bild zum Wochenende

23. Dezember 2011 Posted by Manfred Dillmann

Frohe Weihnachten!

Domino Datasources On-the-Fly (1): Basics

23. Dezember 2011 Posted by Sven Hasselbach

Um eine Datasource On-the-Fly mittels SSJS zu erstellen, muss zum Einen ein neues Datasource-Objekt instanziert werden, zum Anderen die neue Datenquelle der XPage bekannt gegeben werden.

Mit dem folgenden Code wird eine neue Document Datasource namens document1 erstellt und dann dem UIViewRoot-Element bekannt gemacht:

var data = new com.ibm.xsp.model.domino.DominoDocumentData();
data.setVar("document1");
view.addData(data);

Direkt nach der Anlage lässt sich die Datenquelle leider noch nicht im Code verwenden, d.h. ein “document1.save()” schlägt an dieser Stelle fehl. Die neue Datasource kann aber in einem anderen Code-Segment wie gewohnt verwendet werden.

Hier eine Beispiel-Implementierung in eine XPage:

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">

<xp:button value="Create Datasource" id="button1">
   <xp:eventHandler event="onclick" submit="true"
      refreshMode="complete">
      <xp:this.action>
         <![CDATA[#{javascript:
            var data = new com.ibm.xsp.model.domino.DominoDocumentData();
            data.setVar("document1");
            data.setFormName("DynData");  
            view.addData(data);
         }]]>
      </xp:this.action>
   </xp:eventHandler>
</xp:button>
<xp:button value="Use Datasource" id="button2">
   <xp:eventHandler event="onclick" submit="true"
     refreshMode="complete">
      <xp:this.action>
         <xp:actionGroup>
            <xp:executeScript>
               <xp:this.script>
                  <![CDATA[#{javascript:
                     document1.setValue("Feld", "ABC");
                  }]]>
               </xp:this.script>
              </xp:executeScript>
           <xp:saveDocument var="document1" />
         </xp:actionGroup>
      </xp:this.action>
   </xp:eventHandler>
</xp:button>
</xp:view>

Die XPage besteht aus zwei Buttons: Mit “Create Datasource” wird eine neue Datasource angelegt, mit “Use Datasource” die neue DocumentDatasource verwendet und gespeichert. Wird der Button “Use Datasource” geklickt, bevor die neue Datasource angelegt wurde, tritt (logischerweise) ein Fehler auf.

Im nächsten Teil geht es um die möglichen Eigenschaften des Domino Document Data- und des Domino View Data-Objektes.

Wie jedes Jahr

22. Dezember 2011 Posted by Alexander Kluge

Verräterische Thread-Ansicht. Deutschland, Land der Ideen. Immerhin ist Jahr und Versandzeitpunkt leicht unterschiedlich ;-)

Lotusphere 2012 Session Datenbank download (genii Software)

22. Dezember 2011 Posted by Noteshexe

Pünktlich zu Weihnachten gibt es die Lotusphere Session Datenbank 2012 von genii Software – Vielen Dank Ein Must Have zur Vorbereitung, Nachbereitung und Wiederfinden der Lotusphere Session und das  nicht nur für Teilnehmer. Die Aktualisierung erfolgt per Replication …

Social Software: IBM, Microsoft und Jive im Vergleich: IBM vorne, bei SharePoint fehlt noch einiges – CIO.de

22. Dezember 2011 Posted by Stefan Pfeiffer

Als Enterprise-Social-Software ist IBM hingegen der Primus mit der Note "sehr gut", Jive folgt mit "gut", und Microsoft kommt mit einer mittelmäßigen Drei daher.
via cio.de

Bewertung:

<a href="../../lotusgermanymarketing/resource/BLOGS_UPLOADED_IMAGES/SocialSoftware_IBM%2CMicrosoftundJiveimVergleich_GesamtbewertungderSocial-Software-Lo%CC%88sungen-CIO.de.jpg%0A" _cke_saved_href="https://collaboration.euluc.com/blogs/lotusgermanymarketing/resource/BLOGS_UPLOADED_IMAGES/SocialSoftware_IBM%2CMicrosoftundJiveimVergleich_GesamtbewertungderSocial-Software-Lo%CC%88sungen-CIO.de.jpg " _djrealurl="https://collaboration.euluc.com/blogs/lotusgermanymarketing/resource/BLOGS_UPLOADED_IMAGES/SocialSoftware_IBM%2CMicrosoftundJiveimVergleich_GesamtbewertungderSocial-Software-Lo%CC%88sungen-CIO.de.jpg " '="" target="_blank"><img src="../../lotusgermanymarketing/resource/BLOGS_UPLOADED_IMAGES/SocialSoftware_IBM%2CMicrosoftundJiveimVergleich_GesamtbewertungderSocial-Software-Lo%CC%88sungen-CIO.de.jpg%0A" _cke_saved_src="https://collaboration.euluc.com/blogs/lotusgermanymarketing/resource/BLOGS_UPLOADED_IMAGES/SocialSoftware_IBM%2CMicrosoftundJiveimVergleich_GesamtbewertungderSocial-Software-Lo%CC%88sungen-CIO.de.jpg " _djrealurl="https://collaboration.euluc.com/blogs/lotusgermanymarketing/resource/BLOGS_UPLOADED_IMAGES/SocialSoftware_IBM%2CMicrosoftundJiveimVergleich_GesamtbewertungderSocial-Software-Lo%CC%88sungen-CIO.de.jpg " style=" display:block; margin: 1em 1em 0pt 0pt; float: left;" alt="Bild"></a> </p>

Mehrere Signaturen und Textbausteine

22. Dezember 2011 Posted by Thomas Bahn

Wenn man keine professionelle Lösung für E-Mail-Signaturen nutzt, die automatisch die Signatur (im Corporate Design) aktualisiert und beim Schreiben neuer E-Mails, Antworten und Weiterleitungen anbietet (z. B. wenn jemand mehrere Positionen im Konzern bekleidet) und einfügt, kann man sich mit einer Symbolleisten-Schaltfläche behelfen. So kann man mit einem Klick eine E-Mail-Signatur einfügen. Man kann außerdem E-Mail-Signaturen für mehrere Sprachen erstellen - oder auch ganz allgemein Textbausteine.
 
A picture named M2


Es bietet sich an, für die zu erstellenden Schaltflächen zunächst eine neue Symbolleiste zu erstellen. Dazu wählt man Datei - Vorgaben... und dort Symbolleiste - Symbolleisten. Über die hervorgehobene Schaltfläche erstellt man eine neue Symbolleiste und gibt ihr einen Namen, z. B. "Signaturen":
 
A picture named M2


Weiter geht es jetzt unter Symbolleiste - Anpassen. Oben wählt man die neu erstellte Symbolleiste aus und erzeugt mit einem Klick auf Neu - Schaltfläche... eine neue Schaltfläche.
 
A picture named M3 


Man kann jetzt einen Namen und einen Hilfetext eingeben und ein Symbol auswählen.
 
A picture named M4


Da es standardmäßig keine Fahnen gibt, importiere ich mit "Neu" einfach ein passendes Bild. Schöne Fahnen gibt es z. B. unter http://www.famfamfam.com/lab/icons/flags/
 
A picture named M5


Die eigentliche E-Mail-Signatur muss man als HTML- oder Text- oder Bild-Datei vorbereitet haben.

Die Formel zum Importieren lautet:
@Command([FileImport]; "HTML-File"; "D:\\Notes\\signatur-tbahn.html")
Statt "HTML File" sind u.a. auch folgende Werte möglich:
  • "ASCII Text"
  • "GIF Image"
  • "JPEG Image"
  • "Network Portable Graphic"
Den dritten Parameter, den Namen der Datei, sollte man am besten mit dem kompletten Pfad angeben (sonst ist er relativ zum Notes-Daten-Verzeichnis). Achtung: Man muss die Rückwärtsstriche (Backslash) "\" jeweils verdoppeln!

Die Computerwoche empfiehlt unser YouAtNotes CRM

22. Dezember 2011 Posted by Julian Buss

Die Computerwoche hat eine Liste der besten Tools für Lotus Notes zusammengestellt und das YouAtNotes CRM ist als einziges CRM dabei. Danke, das freut uns doch! Die besten Lotus Notes Tools bei compu ...