The Lotus Code Cookbook - Ulrich Krause
Tipps, Tipps, Tipps ... Die Session behandelt kein zentrales Thema. In loser Folge werden Tipps und Tricks aus allen Bereichen der Programmierung in Lotus Notes / Domino vorgestellt. @Formula, LotusScript, Java, JavaScript, LS2CApi.
Zielgruppe sind Alle, die sich mit Applikationsentwicklung beschäftigen. Anfänger und "alte Hasen"; es ist für jeden etwas dabei.
MES102 - Verse on Premises 2.0 Best PracticesDylan Redfield
In July 2020 Verse on Premises 2.0 was released, delivering a slew of new features. And when V12 of Notes and Domino ships, iNotes will be officially deprecated in favor of VoP. Join me to learn about the functionality that VoP 2.0 brings. Additionally, learn about deployment and administrative best practices to ensure your VoP offering meets your user’s needs.
Domino Tech School - Upgrading to Notes/Domino V10: Best PracticesChristoph Adler
Are you looking to deploy Domino V10 but don’t know where to start? Upgrade servers or clients first? Should I upgrade the ODS? If you have questions like these, this session is for you. Get a complete understanding of the process to upgrade to Domino V10, and learn from best practices and tips from the field.
IBM Connect 2014 BP103: Ready, Aim, Fire: Mastering the Latest in the Adminis...Benedek Menesi
This session has been presented in the Best Practices track at the IBM Connect conference in Orlando, FL, USA, January 2014.
--
Being armed with the newest set of weapons is crucial for not being left behind when it comes to efficiently administering your servers. The number of new features added to recent IBM releases is staggering, yet workload time constraints cause us to stick to our old ways of doing things despite the opportunity to increase our effectiveness and thereby efficiency. In this in-depth, problem/solution formatted session we’ll discuss some of the latest and greatest features for administering IBM Domino, IBM iNotes and IBM Traveler through customer examples and real world scenarios. We’ll share best practices that allowed us to successfully solve architecture challenges in critical areas such as security, mail routing, replication, web/mobile capabilities and more.
From A to Z-itrix: Setting up the most stable and fastest HCL Notes client on...panagenda
Recording: https://pan.news/enmcs2e2
Abstract: Notes on Citrix. You wanted it to make life so much easier for you and your end-users. Turns out, your life’s not as easy as you hoped. The way forward is full of pitfalls. Correctly configuring and installing the client is only the first hurdle. The bad user experience from having to run Notes from a data directory on a network drive is the next. Slow client start times and a laggy UI appear to be the price you have to pay.
But don’t despair! You’ll shortly have a grip on all those issues!
In this webinar, we will walk you through all the steps you need to install and configure the perfect Notes client on Citrix. Installation command lines, NotesShareClasses, jvm.properties/rcp-install.properties, stub-notes.ini, config-file, and more – all covered in detail. You’ll see how you can use MarvelClient Roaming to vastly improve start times and UI performance in all areas. Imagine having the benefits of centralized installation with everything on network drives combined with the performance of a locally installed client!
At the end of this session, you’ll have in your hands the definitive recipe for Notes on Citrix success. What are you waiting for? It’s time you and your end-users started living the good life.
Course 102: Lecture 20: Networking In Linux (Basic Concepts) Ahmed El-Arabawy
This lecture addresses the basic concepts of Networking and the associated commands in Linux. It describes MAC Addressed, IP Addresses, Subnets, Routing, Private Addressing and NATing, ARP protocol, and DNS
Video for this lecture on youtube:
http://www.youtube.com/watch?v=IZ5Pz2t-pTI
Check the other Lectures and courses in
http://Linux4EnbeddedSystems.com
or Follow our Facebook Group at
- Facebook: @LinuxforEmbeddedSystems
Lecturer Profile:
- https://www.linkedin.com/in/ahmedelarabawy
MES102 - Verse on Premises 2.0 Best PracticesDylan Redfield
In July 2020 Verse on Premises 2.0 was released, delivering a slew of new features. And when V12 of Notes and Domino ships, iNotes will be officially deprecated in favor of VoP. Join me to learn about the functionality that VoP 2.0 brings. Additionally, learn about deployment and administrative best practices to ensure your VoP offering meets your user’s needs.
Domino Tech School - Upgrading to Notes/Domino V10: Best PracticesChristoph Adler
Are you looking to deploy Domino V10 but don’t know where to start? Upgrade servers or clients first? Should I upgrade the ODS? If you have questions like these, this session is for you. Get a complete understanding of the process to upgrade to Domino V10, and learn from best practices and tips from the field.
IBM Connect 2014 BP103: Ready, Aim, Fire: Mastering the Latest in the Adminis...Benedek Menesi
This session has been presented in the Best Practices track at the IBM Connect conference in Orlando, FL, USA, January 2014.
--
Being armed with the newest set of weapons is crucial for not being left behind when it comes to efficiently administering your servers. The number of new features added to recent IBM releases is staggering, yet workload time constraints cause us to stick to our old ways of doing things despite the opportunity to increase our effectiveness and thereby efficiency. In this in-depth, problem/solution formatted session we’ll discuss some of the latest and greatest features for administering IBM Domino, IBM iNotes and IBM Traveler through customer examples and real world scenarios. We’ll share best practices that allowed us to successfully solve architecture challenges in critical areas such as security, mail routing, replication, web/mobile capabilities and more.
From A to Z-itrix: Setting up the most stable and fastest HCL Notes client on...panagenda
Recording: https://pan.news/enmcs2e2
Abstract: Notes on Citrix. You wanted it to make life so much easier for you and your end-users. Turns out, your life’s not as easy as you hoped. The way forward is full of pitfalls. Correctly configuring and installing the client is only the first hurdle. The bad user experience from having to run Notes from a data directory on a network drive is the next. Slow client start times and a laggy UI appear to be the price you have to pay.
But don’t despair! You’ll shortly have a grip on all those issues!
In this webinar, we will walk you through all the steps you need to install and configure the perfect Notes client on Citrix. Installation command lines, NotesShareClasses, jvm.properties/rcp-install.properties, stub-notes.ini, config-file, and more – all covered in detail. You’ll see how you can use MarvelClient Roaming to vastly improve start times and UI performance in all areas. Imagine having the benefits of centralized installation with everything on network drives combined with the performance of a locally installed client!
At the end of this session, you’ll have in your hands the definitive recipe for Notes on Citrix success. What are you waiting for? It’s time you and your end-users started living the good life.
Course 102: Lecture 20: Networking In Linux (Basic Concepts) Ahmed El-Arabawy
This lecture addresses the basic concepts of Networking and the associated commands in Linux. It describes MAC Addressed, IP Addresses, Subnets, Routing, Private Addressing and NATing, ARP protocol, and DNS
Video for this lecture on youtube:
http://www.youtube.com/watch?v=IZ5Pz2t-pTI
Check the other Lectures and courses in
http://Linux4EnbeddedSystems.com
or Follow our Facebook Group at
- Facebook: @LinuxforEmbeddedSystems
Lecturer Profile:
- https://www.linkedin.com/in/ahmedelarabawy
APACHE TOREE: A JUPYTER KERNEL FOR SPARK by Marius van NiekerkSpark Summit
Many data scientists are already making heavy usage of the Jupyter ecosystem for analyzing data using interactive notebooks.
Apache Toree (incubating) is a Jupyter kernel designed to act as a gateway to Spark by enabling users Spark from standard Jupyter notebooks. This allows users to easily integrate Spark into their existing Jupyter deployments, This allows users to easily move between languages and contexts without needing to switch to a different set of tools.
Apache Toree is designed expressly for interactive work. It supports interpreters in Scala, Python, and R.
In this talk, I will cover the design of Toree, how it interacts with the Jupyter ecosystem and various ways in which users can extend the functionality of Apache Toree via a powerful plugin system.
Fast. Dangerous. Always in control.
Learn the dirty secrets of the Notes Client and how you can turn them into golden features that will make you shine. You will leave the workshop equipped with new knowledge for your next Notes Client deployment and/or optimization project. You will be able to get better Notes client performance and stability by using less of the system resources, like CPU, Memory and File I/O – just because of the right tailor-made configuration of the Notes client for your very own system requirements. Get geared up for your next Notes V11 deployment with the best-practice tips to get Notes Clients deployed, configured, maintained and ‘finally’ loved by your users.
Don’t forget, IBM Notes V11 is not far away from being released.
The Ultimate Administrator’s Guide to HCL Nomad Webpanagenda
Webinar Recording: https://www.panagenda.com/webinars/the-ultimate-administrators-guide-to-hcl-nomad-web/
HCL Nomad Web is THE talk around the watercooler. More and more companies are looking into supplementing or outright replacing their Notes clients with this new browser based HCL solution. But doing so is a daunting prospect, given the many new technologies in play. To help you out, we went and collected everything you need to know in one place. Getting HCL Nomad Web up and running – start to finish, with live demos – only here!
Join HCL Ambassador Christoph Adler in this unmissable event for HCL administrators. Everything you see here you can put to good use immediately, as all tools are available with your HCL CCB license or are even free to use. Whether you already are using it, have just decided to start your HCL Nomad journey, or only want to see what it would mean to go down this path: if you don’t want to be left in the past, you must not miss this webinar!
What you will learn
- Understanding requirements, benefits, and limitations of HCL Nomad Web
- Installing HCL Nomad Web on the server (with or without HCL SafeLinx)
- Performing initial setup for end-users while preserving the workspace from their Notes clients
- Dealing with virtual infrastructures such as Citrix, VMWare, TS, and VDI
- Operating, optimizing, and troubleshooting on servers and clients
Course 102: Lecture 25: Devices and Device Drivers Ahmed El-Arabawy
This lecture discusses the concept of Linux device Drivers and Kernel Loadable Modules in general. It shows how to handle them such as loading/unloading ,and querying for their info. It also discusses the role of device files and how it binds to device drivers in the Linux Kernel
Video for this lecture on youtube:
http://www.youtube.com/watch?v=5qhgMyPyvVE
Check the other Lectures and courses in
http://Linux4EnbeddedSystems.com
or Follow our Facebook Group at
- Facebook: @LinuxforEmbeddedSystems
Lecturer Profile:
Ahmed ElArabawy
- https://www.linkedin.com/in/ahmedelarabawy
Users and groups are used on GNU/Linux for access control that is, to control access to the system's files, directories, and peripherals. Linux offers relatively simple/coarse access control mechanisms by default.
Unix , Linux Commands
Unix, which is not an acronym, was developed by some of the members of the Multics team at the bell labs starting in the late 1960's by many of the same people who helped create the C programming language.
Presentation from Engage 2022 in Bruges
From day to day administration to advanced configuration from automated maintenance to running the best multi client mail server on the market, from advanced security to data access.
On the Viability of CAPTCHAs for Use in Telephony Systems: A Usability Field ...IIIT Hyderabad
Telephony systems are imperative for information exchange offering low cost services and direct reach to million of customers. They have not only benefited users but have also provided a convenient medium for spammers. Voice spam is often encountered on telephony, such as in the form of an automated telemarketing call asking to call a number to win million of dollars. A large percentage of voice spam is generated through automated systems which introduces the classical challenge of distinguishing machines from humans on the telephony. CAPTCHA is a conventional solution used for distinguishing humans and machines, and audio-based CAPTCHAs have been proposed as a solution to curb voice spam. In this paper, we conduct a field study with 90 participants in order to answer two primary research questions: how much inconvenience does CAPTCHA cause to users, and how different features of the CAPTCHA, e.g., duration and size influence usability of CAPTCHA on telephony. Our results suggest that currently proposed CAPTCHAs are far from usable. We provide certain guidelines that may help improve existing CAPTCHAs for use in telephony systems.
APACHE TOREE: A JUPYTER KERNEL FOR SPARK by Marius van NiekerkSpark Summit
Many data scientists are already making heavy usage of the Jupyter ecosystem for analyzing data using interactive notebooks.
Apache Toree (incubating) is a Jupyter kernel designed to act as a gateway to Spark by enabling users Spark from standard Jupyter notebooks. This allows users to easily integrate Spark into their existing Jupyter deployments, This allows users to easily move between languages and contexts without needing to switch to a different set of tools.
Apache Toree is designed expressly for interactive work. It supports interpreters in Scala, Python, and R.
In this talk, I will cover the design of Toree, how it interacts with the Jupyter ecosystem and various ways in which users can extend the functionality of Apache Toree via a powerful plugin system.
Fast. Dangerous. Always in control.
Learn the dirty secrets of the Notes Client and how you can turn them into golden features that will make you shine. You will leave the workshop equipped with new knowledge for your next Notes Client deployment and/or optimization project. You will be able to get better Notes client performance and stability by using less of the system resources, like CPU, Memory and File I/O – just because of the right tailor-made configuration of the Notes client for your very own system requirements. Get geared up for your next Notes V11 deployment with the best-practice tips to get Notes Clients deployed, configured, maintained and ‘finally’ loved by your users.
Don’t forget, IBM Notes V11 is not far away from being released.
The Ultimate Administrator’s Guide to HCL Nomad Webpanagenda
Webinar Recording: https://www.panagenda.com/webinars/the-ultimate-administrators-guide-to-hcl-nomad-web/
HCL Nomad Web is THE talk around the watercooler. More and more companies are looking into supplementing or outright replacing their Notes clients with this new browser based HCL solution. But doing so is a daunting prospect, given the many new technologies in play. To help you out, we went and collected everything you need to know in one place. Getting HCL Nomad Web up and running – start to finish, with live demos – only here!
Join HCL Ambassador Christoph Adler in this unmissable event for HCL administrators. Everything you see here you can put to good use immediately, as all tools are available with your HCL CCB license or are even free to use. Whether you already are using it, have just decided to start your HCL Nomad journey, or only want to see what it would mean to go down this path: if you don’t want to be left in the past, you must not miss this webinar!
What you will learn
- Understanding requirements, benefits, and limitations of HCL Nomad Web
- Installing HCL Nomad Web on the server (with or without HCL SafeLinx)
- Performing initial setup for end-users while preserving the workspace from their Notes clients
- Dealing with virtual infrastructures such as Citrix, VMWare, TS, and VDI
- Operating, optimizing, and troubleshooting on servers and clients
Course 102: Lecture 25: Devices and Device Drivers Ahmed El-Arabawy
This lecture discusses the concept of Linux device Drivers and Kernel Loadable Modules in general. It shows how to handle them such as loading/unloading ,and querying for their info. It also discusses the role of device files and how it binds to device drivers in the Linux Kernel
Video for this lecture on youtube:
http://www.youtube.com/watch?v=5qhgMyPyvVE
Check the other Lectures and courses in
http://Linux4EnbeddedSystems.com
or Follow our Facebook Group at
- Facebook: @LinuxforEmbeddedSystems
Lecturer Profile:
Ahmed ElArabawy
- https://www.linkedin.com/in/ahmedelarabawy
Users and groups are used on GNU/Linux for access control that is, to control access to the system's files, directories, and peripherals. Linux offers relatively simple/coarse access control mechanisms by default.
Unix , Linux Commands
Unix, which is not an acronym, was developed by some of the members of the Multics team at the bell labs starting in the late 1960's by many of the same people who helped create the C programming language.
Presentation from Engage 2022 in Bruges
From day to day administration to advanced configuration from automated maintenance to running the best multi client mail server on the market, from advanced security to data access.
On the Viability of CAPTCHAs for Use in Telephony Systems: A Usability Field ...IIIT Hyderabad
Telephony systems are imperative for information exchange offering low cost services and direct reach to million of customers. They have not only benefited users but have also provided a convenient medium for spammers. Voice spam is often encountered on telephony, such as in the form of an automated telemarketing call asking to call a number to win million of dollars. A large percentage of voice spam is generated through automated systems which introduces the classical challenge of distinguishing machines from humans on the telephony. CAPTCHA is a conventional solution used for distinguishing humans and machines, and audio-based CAPTCHAs have been proposed as a solution to curb voice spam. In this paper, we conduct a field study with 90 participants in order to answer two primary research questions: how much inconvenience does CAPTCHA cause to users, and how different features of the CAPTCHA, e.g., duration and size influence usability of CAPTCHA on telephony. Our results suggest that currently proposed CAPTCHAs are far from usable. We provide certain guidelines that may help improve existing CAPTCHAs for use in telephony systems.
La Municipalidad de San Salvador de Jujuy asumiendo el rol que ocupa dentro de la sociedad, brinda a través del Programa de Maternaje dependiente de la Dirección de Paridad de Género diferentes actividades por la Semana Mundial de la Lactancia Materna, con el fin de promover y apoyar una practica saludable como la de amamantar.
Business Goals My aaS - Anton Weiss, Otomato - DevOpsDays Tel Aviv 2016DevOpsDays Tel Aviv
Many preachers of DevOps focus on how it helps businesses win (or survive). I'd argue it's not a strong enough motivation for most of us. Screw business goals - engineers just want to be creative!
In loser Folge werden Tipps und Tricks aus allen Bereichen der Programmierung in Lotus Notes/Domino vorgestellt. @Formula, LotusScript, XPages, LS2CApi.
Wie konfiguriere ich den Domino Designer?
Welche kostenlosen Tools können mir meine Arbeit erleichtern?
Warum ist es wichtig, richtig zu "dimmen"?
Richtext kann mit LotusScript im Backend nicht in Richtext eingefügt werden. Oder etwa doch? @Transform / @Sort. Was kann man denn damit machen?
8.5.3, was gibt es Neues im Bereich @Formula / LotusScript.
Zielgruppe sind alle, die sich mit Applikationsentwicklung beschäftigen. Anfänger und "alte Hasen"; es ist für jeden etwas dabei.
Kenntnisse: Grundlagen der Entwicklung in Lotus Notes/Domino
Wer die gleiche Aktion zwanzig Mal hintereinander fast identisch ausführt, mag als fleißig gelten. Mit „faul“ sind die Entwickler gemeint, die ab der zweiten Wiederholung innehalten und darüber nachdenken, wie sich die nächsten achtzehn Wiederholungen vermeiden oder zumindest effizienter durchführen lassen.
In solchen Situationen hat es sich bewährt, erstmal herauszufinden, wie man Dinge mit weniger Stress, weniger Energie und weniger Zeitaufwand lösen kann. Der Autor beispielsweise ist zu faul, etwas doppelt zu tun, sondern verbringt seine Entwicklungszeit lieber kreativ.
Vor allem ab Version 4 bietet SQL Developer jede Menge Möglichkeiten, die helfen, effizienter mit dem Tool umzugehen. Faule Entwickler nutzen diese.
Migration auf die OBIEE: In seinem Vortrag berichtet Till Sander (OPITZ CONSULTING) über die Migration des Discoverers auf die Oracle BI Suite Enterprise Edition (OBIEE).
Michael Sebel zeigt wie man ein Blog – oder ein Blog eines Kunden – mit Shortcodes, Filtern, Actions, Widgets, Themes und Theme Features sowie eigenen Admin-Menüstrukturen, Backends, Page Templates und ein bisschen Ajax individualisieren kann.
Code Beispiele Download:
http://static.blog.blogwerk.com/files/wp-development.zip
Taugt AngularJS wirklich was? Erfahrungsbericht und AusblickPhilipp Burgmer
Slides for my presentation at WebTechCon/IPC 2014.
Visit us at http://www.thecodecampus.de
Folien zu meinem Vortrag bei der WebTechCon/IPC 2014.
AngularJS verspricht, die Entwicklung moderner Single-Page-Webanwendungen radikal zu vereinfachen. Doch kann dieses Versprechen auch bei Anwendungen, die über eine Demoanwendung (To-do-App) hinausgehen, gehalten werden? In diesem Vortrag zeigen wir die Stärken und Schwächen von AngularJS anhand unserer Erfahrungen aus mehreren Projekten und unserer Schulungen. Wie meistert man den Einstieg? Was sind die Gefahren, und wie minimiert man sie? Ist AngularJS bereit für den Einsatz in großen Anwendungen? Wir geben Antworten. Zusätzlich geben wir einen Ausblick auf AngularJS 2.0, wie die bekannten Schwächen dort behoben werden sollen und was an Neuerungen zu erwarten ist.
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET CoreGregor Biswanger
Das Dokumentieren einer API wird oft als mühsame, aber wesentliche Aufgabe angesehen. Mit OpenAPI / Swagger können wir eine API-Dokumentation angenehm einfach in ASP.NET Core integrieren. Gregor Biswanger zeigt, wie eine API-Dokumentation mit einer Benutzeroberfläche hinzugefügt wird, mit der wir die API testen können.
Als Nächstes erfahren wir, wie wir Attribute und Konventionen verwenden, um die generierte OpenAPI-Spezifikation zu verbessern. Abschließend wird gezeigt, wie wir mit der Authentifizierung, Versionierung und Anpassung der Benutzeroberfläche umgehen.
http://www.opitz-consulting.com/go/3-4-11
Größere Oracle Forms Applikationen sind nicht denkbar ohne den Einsatz von Frameworks. Im einfachsten Fall sind es ein paar selbst geschriebene Libraries, die man in seiner Applikation nutzt. Auf der anderen Seite des Spektrums steht der Einsatz von PL/SQL- und Objekt-Libraries, Referenztemplates und Datenbank-API’s. Entwicklungs-Handbücher, z.B. für einen Style Guide, Namenskonventionen oder eine Versionierungsdokumentation, sollten ebenfalls nicht fehlen.
In seinem Vortrag bei der DOAG Konferenz 2014 beschrieb unser Forms Experte Gerd Volberg, wie man alle diese Teile eines Frameworks selbst konzipieren kann, worauf man achten sollte und wie man ggf. ein neues Framework in eine bestehende Forms Landschaft integrieren kann. Source-Code-Beispiele illustrierten dabei jeden einzelnen Bereich und wurden zusammen mit der Vortragsdokumentation auf der offiziellen Konferenz-Website veröffentlicht.
--
Über uns:
Als führender Projektspezialist für ganzheitliche IT-Lösungen tragen wir zur Wertsteigerung der Organisationen unserer Kunden bei und bringen IT und Business in Einklang. Mit OPITZ CONSULTING als zuverlässigem Partner können sich unsere Kunden auf ihr Kerngeschäft konzentrieren und ihre Wettbewerbsvorteile nachhaltig absichern und ausbauen.
Über unsere IT-Beratung: http://www.opitz-consulting.com/go/3-8-10
Unser Leistungsangebot: http://www.opitz-consulting.com/go/3-8-874
Karriere bei OPITZ CONSULTING: http://www.opitz-consulting.com/go/3-8-5
What is new in Notes & Domino Deleopment V10.xUlrich Krause
Slides for my siession at DNUG46 in Essen, Germany. 04.-05-MAY-2019.
The session was all about the new classes added in V10.x of Notes/Domino. FP2 changes are included.
The only constant in software development is CHANGE. Every piece of software that has been developed and shipped to a customer will be changed numerous times during it's life cycle. Depending on how well the code is designed, it is more or less easy to implement changes. MVC, which is an acronym for Model - View - Controller is no new concept. In fact this design paradigm was created by Xerox in the 80's, and it is becoming THE recommended model for designing frameworks - especially on the web. The session will give an overview of design pattern in general and MVC in particular. We will show, how to use the MVC design paradigm in an XPages application and demonstrate, how easy it is to implement changes. Need to read/write your data from/to an XML file instead of using a Notes View. MVC makes software maintenance easy as 1-2-3
Dr. Strangelove, or how I learned to love plugin developmentUlrich Krause
Building a plugin for the Notes client is hard and you need to be a rocket scientist to write a simple menu extension. This is exactly, what I thought, when I first heard of plugin development. In this session, you will learn, how to setup an Eclipse environment, connect it to your Notes Client for debugging and testing, and finally deploy your plugin to your users. Become familiar with the basics, and you will no longer be scared.
La vita nella corsia di sorpasso; A tutta velocità, XPages!Ulrich Krause
Using XPages out of the box lets you build good looking and well performing applications. However, as XPage applications become bigger and more complex, performance can become an issue and, if it comes to scalability and speed optimization, there are a couple of things to take into consideration. Learn how to use partial refresh and partial execution mode and how to monitor its execution using a JSF LifeCycle monitor to avoid multiple re-calculation of controls. We will show tools that can allow you to profile your code, readily available from OpenNTF, along with a demonstration of how to use them to improve the speed of your code. Still writing SSJS and encounter a significant slow down when using Script Libraries? See, how you can improve the speed of your application using JAVA instead of JS, JSON and even @formulas.
Relatore per la sessione:
Ulrich Krause
Life In The FastLane: Full Speed XPagesUlrich Krause
Using XPages out of the box lets you build good looking and well performing applications. However, as XPage applications become bigger and more complex, performance can become an issue and, if it comes to scalability and speed optimization, there are a couple of things to take into consideration.
Learn how to use partial refresh and partial execution mode and how to monitor its execution using a JSF LifeCycle monitor to avoid multiple re-calculation of controls. We will show tools that can allow you to profile your code, readily available from OpenNTF, along with a demonstration of how to use them to improve the speed of your code.
Still writing SSJS and encounter a significant slow down when using Script Libraries? See, how you can improve the speed of your application using JAVA instead of JS, JSON and even @formulas.
Seit Version 8.5.x ist es mit der XPages-Technologie einfach möglich, Applikationen unter Lotus Notes/Domino „wirklich“ webfähig zu machen.
Wie aber fange ich an? An einem praktischen Beispiel werden die Grundlagen der XPages-Entwicklung erklärt.
Zielgruppe: Alle, die einen Einstieg in das Thema suchen
Kenntnisse: Es sind keine speziellen Vorkenntnisse nötig.
Wer sich mit XPages-Entwicklung beschäftigt, wird über Kurz oder Lang auch auf OpenNTF und die eXtension Library stoßen.
Was ist die eXtension Library und wie kann ich die Erweiterungen in meiner Entwicklungsumgebung nutzen?
Wie können mir die zahlreichen Custom Controls auf OpenNTF helfen, den Entwicklungsaufwand zu reduzieren?
Seit Juli 2011 gibt es die Möglichkeit, aus XPages heraus auf relationale Datenbanken zuzugreifen. Was wird dazu benötigt und wie sieht der Zugriff in der Praxis aus?
Zielgruppe: Teilnehmer mit Grundlagenkenntnissen in der XPages-Entwicklung
Kenntnisse: Grundlagenkenntnisse in der XPages-Entwicklung
Vortrag zur Entwicklung von Applikationen mit XPages. Der Vortrag wurde am 18.05.2011 im Rahmen des Arbeitskreises Anwendungsentwicklung auf der DNUG 2011 in Bonn gehalten.
When Plato Left The Cave - A brief history of Lotus NotesUlrich Krause
Jump back in time to 1974. In a Harvard dormitory, Bill Gates, future cofounder of Microsoft, is goofing off playing poker and pinball. Over in India, Steve Jobs, future cofounder of Apple, has shaved his head and is wandering around seeking enlightenment. Out in Hawaii, Steve Case, future cofounder and head of AOL Time Warner, is busy writing album reviews for his Honolulu high school newspaper. While these future billionaire CEOs of Internet-industry behemoths are busy enjoying their last teenage years, at a university town in Illinois the 'Net' has already arrived. Indeed: it's in full swing!
In the following years the germ cell of Lotus Notes began to grow and to evolve to the world's leading groupware application.
Follow the timeline from the past to present in the history of Lotus Notes / Domino.
When Plato Left The Cave - A brief history of Lotus Notes
The Lotus Code Cookbook
1. The Lotus Code Cookbook Ulrich Krause EntwicklerCamp, 21. – 23.02.2011, Gelsenkirchen, Deutschland
2. Agenda Allgemeines Optionen des Designers Tools @Formeln LotusScript Bearbeitung von Richtext ( C-Api / LS2CAPI ) Javascript (Frameworks) XPages
3. Warum sollten wir @Formeln verwenden? Alle Sprachen verwenden die gleichen Kernfunktionen Bei gleicher Funktionalität sind Formeln IMMER performanter Formeln sind Performance optimiert Lesenswert: Damien Katz, http://damienkatz.net/2005/01/formula-engine-rewrite.html
4. Option Declare WichtigsteCodezeile in LotusScript Option Declare “zwingt” zumDeklarierenallerVariablen und erspart das Beseitigen von schwerauffindbarenFehlern AlleFehlersind runtime Fehler
6. Option Declare Der wichtigste Grund, warum wir „Option Declare“ verwenden MÜSSEN, ist …
7. Option Declare Every time you don‘t use „Option Declare“, God will kill a kitten !!
8. Option Base Sets the default lower bound for array subscripts to 0 or 1
9. Dim Statement Erstellt eine Referenz zu einem Objekt, ohne das Objekt zu erstellen Achtung: Dim i, j, k As Integer Dim i As Integer, j As Integer, k As Integer
10. Dim Statement und Performance Ausführungszeiten messen mit Getthreadinfo Wird z.B. ein Integerwert in einem Variant gespeichert, so muss Notes intern eine Typumwandlung vornehmen. Das kostet Zeit !! DEMO: DIM - Zeitschleife
12. GetNextDocument vs. GetNthDocument 113.610 Dokumente 4 Testläufe / Methode Tabelle zeigt die Durchschnittswerte DEMO - GetNextDocument vs. GetNthDocument
13. Script / Comment Templates Einheitlicher Aufbau von Codesegmenten
14. Fonts / Colors Individuelle Einstellungen für bessere Lesbarkeit
16. Sessionempfehlung Anita DungerEinführung in die neue Designer-Umgebung ( Hands On, Dienstag 9:00 – 10:30 ) Julian BussVersionskontrolle mit dem Domino Designer( direkt im Anschluss an diese Session )
17. Soft-Coded Field Names One of the worst traps in LotusScript is using hard-coded field names. LotusScript makes it simple to hard code field names, because of its support for extended attributes of the NotesDocument class. The LotusScript documentation even describes this as a feature, though you should avoid it like the plague.
18. Logging Kein Code ist absolut fehlerfrei! Auch wenn momentan keine Fehler erkennbar sind, werden Fehler auftauchen. Fehler erkennen, die von Usern nicht immer gemeldet werden. Es gibt Tools, die ein aussagekräftiges Logging mit nur wenigen Codezeilen ermöglichen. Julian Robichaux: OpenLog http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=OpenLog
22. LotusScript.doc Erstellt eine Dokumentationvon LotusScript in einer Datenbank. Syntax wieJavadoc LotusScript.doc API http://blog.lsdoc.org/ LSDoc Support to DDE http://blog.mindoo.com/web/blog.nsf/dx/22.07.2010223240KLES4H.htm?opendocument&comments, Karsten Lehmann
23. Hide Design In kommerziellen Anwendungen Template „Hide Design“ Problem: keine Anpassungen von Ansichten durch den Anwender Besser ist es daher, nur Teile der Anwendung zu verbergen. In der Regel enthalten Script Bibliotheken den schützenswerten Code. %Include „xyz.lss“
24. Hide Design Der lesbare Quelltext befindet sich im item $ScriptLib
25. Hide Design kann Den Text im item $ScriptLib kann man löschen oder durch ein freundliches „Hello“ ersetzen. Nach dem Speichern ist der Quelltext nicht mehr sichtbar.
26. NotesView.AutoUpdate = false Performancegewinn, da die Ansicht nicht kontinuierlich aktualisiert wird. Zu den technischen Hintergründen; Bob Balaban, http://bobzblog.com/tuxedoguy.nsf/dx/geek-o-terica-10-autoupdating-in-views http://www-10.lotus.com/ldd/ddwiki.nsf/dx/View.AutoUpdate_ Bei der Verwendung von NotesViewNavigator können Fehler auftreten, wenn AutoUpdate = true („Entry not found in Index“) Andre Guirard, http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/autoupdate-false
27. @WhichFolders Neu ab 8.5.1 Nur in Ansichtsspalten zu verwenden Option „Maintainfolderunreadinformation“ muß aktiviert sein Option „ Don'tmaintainUnreadmarks“ darf nicht aktiviert sein“
28. @WhichFolders in LotusScript I db.FolderReferencesEnabled = True $FolderInfo und $FolderRefInfo Ansichten können aus der Mailschablone kopiert werden Demo: @WhichFolders in LS I
29. @WhichFolders in LotusScript II CreateViewNavFrom Keine zusätzlichen Designelemente erforderlich Aber langsam bei einer großen Ordneranzahl Demo: @WhichFolders in LS II
30. @Command( [DiscoverFolders];title) Wie @WhichFolders mit zusätzlichen Möglichkeiten, um die Ordnereigenschaften eines Dokuments zu ändern. Uncheck „Don‘tmaintainunreadmarks“
31. @Transform Seit Version 6 Entspricht LotusScriptstatementForAll x in Liste Führt eine Formel für jedes Element der Liste aus. @Transform(list ; variableName ; formula ) Rückgabewert ist die durch die Formel modifizierte Liste Kann in Ansichtenspalten verwendet werden
34. @Nothing Seit Version 6 Lt. Designer Hilfe nur mit @Transform zu verwendbar ( „not valid in othercontext“ ) Funktioniert aber z.B auch in View Selection
35. @Sort Sortiert eine Liste [ACCENTSENSITIVE] [ACCENTINSENSITIVE] [ASCENDING] [CASESENSITIVE] [CASEINSENSITIVE] [CUSTOMSORT] [DESCENDING] [PITCHSENSITIVE] [PITCHINSENSITiVE] Dies lässt sich auch kombinieren [ASCENDING]:[CASESENSITIVE]
38. @Now + [NoCache] [SERVERTIME] ermöglicht die Abfrage von @Now für einen Server oder eine Liste von Servern. Problem: Änderung der Systemzeit @Now fragt die Zeit beim ersten Aufruf ab und cached diesen Wert. Bei weiteren Aufrufen wird nur die Zeit seit dem ersten Aufruf zum Wert im Cache addiert. [NOCACHE] umgeht dieses Problem Nicht dokumentiert; noch nicht
39. Get the current location name @LocationGetInfo @LocationGetInfo([HomeServer]) @LocationGetInfo([InternetMailAddress]) @LocationGetInfo([NamePreference]) @LocationGetInfo([BookmarksFilename]) @LocationGetInfo([SametimeServer]) @LocationGetInfo([UNID]) http://www.thenorth.com/apblog4.nsf/0/60C5A5C6540A2D648525719F0012BDED
40. Get the current location name @LocationGetInfo([FullName]) @LocationGetInfo([AbbreviatedName]) Damit erhalten wir Zugriff auf JEDES beliebige Feld in der aktuellen Arbeitsumgebung
41. @GetMachineInfo (8.5.3) New @Function to support MachineSpecificPolicy Settings asof Notes / Domino 8.5.3
42. @GetMachineInfo vs. @Environment @GetMachineInfo([EnvVariable];"Location"); Liefert den gewünschten Wert für alle Variablen in der notes.ini zurück Egal ob mit „$“ oder ohne Kann keine Werte setzen @Environment(„Location“) Liefert nur Variablen mit „$“ zurück ($DDM_SERVER) Kann auch Werte in der notes.ini setzen
45. @BusinessDays Ermittelt die Anzahl von Werktagen in einem Datumsbereich Bestimmte Tage können als Werktage ausgeschlossen werden Ebenso lassen sich Feiertage als Werktage ausschließen Beispiel: Der Wert eines Items soll auf einen Wert @Today + 3 Tage gesetzt werden. Dabei sollen die Wochenenden und bestimmte Datumswerte nicht als Werktage gelten. @BusinessDays wird in XPages nicht unterstützt
47. @DbLookup + [FailSilent] Keine Fehlermeldung, wenn keine Entsprechung in der Ansicht gefunden wird @DbLookup(""; ""; "All"; Source; 2;[FailSilent])
48. [ReturnDocumentUniqueID] Gibt die DocumentUNID eines @DBLookup Ergebnisses zurück @DbLookup(""; ""; "All"; “test”; 1; [FailSilent]:[ReturnDocumentUniqueID]); Macht eine zusätzlicheAnsichtmit einer Spaltenformel@Text(@DocumentUniqueID) überflüssig
49. @ConfigFile Wo ist die notes.ini? @Prompt([OK];“notes.ini path“;@configfile) Notes.ini bearbeiten @Command([Execute];"notepad"; @configfile)
50. Programmatic Use Wozu ist die Eigenschaft „Programmatic Use“ da? Keine Redundanz komplizierterSpaltenformeln. Das Ergebnis einer Berechnung kann in einer anderen Spalte verwendet werden Andre Guirard http://www-10.lotus.com/ldd/ddwiki.nsf/dx/colprognames.htm
51. Permutation Comparison In HideFormulas Element nicht anzeigen, wenn User nicht mindestens eine der Rollen hat. @IsNotMember("[GloAdmin]"; @UserRoles) & @IsNotMember("[GloEditor]"; @UserRoles) Läßt sich kürzen auf: @IsNotMember("[GloAdmin]" : "[GloEditor]"; @UserRoles) Noch kürzer !("[GloAdmin]" : "[GloEditor]" *= @UserRoles)
52. Get Rules From Users Mailfile User mögen Regeln, aber nicht unsere. User erstellen Regel, viele, sehr viele Regeln. Aber welche Regeln haben die User denn erstellt? http://www.eknori.de/2007-02-13/get-rules-from-users-mailfile/
54. Mail Rules Extended Der Client speichert die Regeln im Kalenderprofil Auf dem Server werden die Regeln in “mailrule” Dokumenten gespeichert
55. Mail Rules Extended Mehr Möglichkeiten bei der Regelerstellung Erfordert Änderung an names.nsf Kein grosser Aufwand beim Upgrade
56. Tweak Auto-Populated Groups EinfacheErweiterung in names.nsf Create a new subform Create a new field on the subform ( SelectionCriteria, Text, Editable ) Give it the name Custom and an alias starting with $AutoPopulate followed by a number of your choice ( i.e. 9999) Save the subform http://www.eknori.de/2008-06-10/tweak-the-auto-populated-groups-feature-in-domino-85/
57. How to get rid of $UpdatedBy? Unter Umständen sollen die Bearbeiter eines Dokuments nicht sichtbar sein.
59. Custom Administration Process Fehlende Funktionen hinzufügen Z.B. : User aus Gruppe entfernen Verlagerung administrativer Aufgaben in den Servicedesk NotesAdministrationProcessclass Seit Release 6 AddGroupMembersmethod aber keine RemoveGroupMembersmethod
62. Custom Administration Process admin4.nsf anpassen ( Ansichten ) Neue Ansicht erstellen oder Spalte „Action“ anpassen
63. Zip and Unzip Verwendung von ZIP/UNZIP mitLotusScript Kostenlos http://www.vcode.no/vcode.nsf/downloads/VCZIPSUP
64. Auto-Zip Mail Attachments Anhänge werden beim Versenden automatisch gepackt Genaue Beschreibung der Anpassungen im Lotus Notes & Domino Wiki http://www-10.lotus.com/ldd/dominowiki.nsf/page.xsp?documentId=7963EB58BAD528FB852577AE0062A72A&action=openDocument&mode=original
65. XLS ohne Excel erstellen Reports sollen auf einem Server erstellt werden, auf dem kein Excel installiert ist. ( Linux ) http://jxls.sourceforge.net/index.html Support for Excel 2007 OOXML (.xlsx) fileformat
67. Lotus SymphonyToolkit %Include"symphonylsx.lss„ OpenNTF.org Contacts Experience http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=OpenNTF.org%20Contacts%20Experience MailMerge Letter Export Contacts Symphony MS Office
68. Wurde das Dokument gelesen? doc.GetRead([username]) Ab Release 8.5 Gibt „true“ zurück, wenn das Dokument vom aktuellen User gelesen wurde Wird ein Username angegeben, wird der Lesestatus dieses Users zurückgegeben
69. @Midas Lookups Ben Langhinrichs ( geniisoftware ) Auslesen von Daten aus RichText Syntax wie @DBColumn und @DBLookup Free download: http://www.geniisoft.com/showcase.nsf/MidasLookups
73. Arbeiten mit RichText C/C++ API oder LS2CAPI NormundsKalbernzin LotusScript to Lotus C API Programming Guide ( ls2capi.com ) Lee Powell LotusScriptor'sPlain Simple Guide to the Lotus Notes C++ API Download : http://www.eknori.de/downloads/capibook.pdf EthannCastell Gettingstartedwith the C-API Controlrichtextcontentwithprecisionusing the C-API The View, 09 / 11 , 2007
74. Einordnung der C-API Lotus Script Visual Basic (COM) JAVA JNI Notes Object Interface (NOI) C++ API Notes Core ( C API ) Betriebssystem
75. Ist RichText Item leer? LS2CAPI to the rescue! Leeres RTI besitzt nur einen CDRecord von Typ Text
76. Header / Footer Erstellen / Ändern Anwendungseigenschaften ( global ) Dokumenteneigenschaften Keine Möglichkeit über @Formel oder LotusScript
77. Header / Footer Informationen sind in RichText item gespeichert
79. Inline Images Auf Inline Images kann nicht über die embedded objects Eigenschaft zugegriffen werden Inline Images werden z.B. nicht bei DAOS berücksichtigt. Es gibt keine Methoden, um Inline Images mit LotusScript so umzuwandeln, daß sie als Anhang im Dokument gespeichert werden.
81. Inline Images Andre Guirard http://www.openntf.org/internal/home.nsf/project.xsp?action=openDocument&name=LotusScript%20Gold%20Collection
82. Inline Images rtLib: framework of LotusScript classes to work with Notes Rich Text on 32-bit versions of Domino on AIX, Solaris (SPARC), Linux, MacOS, OS X (currently PowerPC only) and Windows. NormundsKalnberzins http://www.rtlib.com/
83. ReplaceInline Image Bilder, die aus der Zwischenablage in ein Dokument eingefügt werden, werden bei DAOS nicht berücksichtigt. Methoden zum Umwandeln in ein Attachment gibt es in Lotus Notes nicht. Funktion muss folgende Voraussetzungen erfüllen Umwandeln des inline image in ein Attachment Ersetzen des inline image durch das Attachment Beibehalten der Position
86. Insert RichtextintoRichtext notesRichTextRange.FindAndReplace( target$ , replacement$ , [ options& ] ) Damit lässt sich aber nur Text innerhalb von RichText finden und ersetzen Für das Einfügen eines kompletten RichText Items oder Teile davon an eine definierte Stelle in einem anderen RichText Item gibt es keine Methode.
89. JW Player - Mediaplayer JW Player: Ein paar Zeilen Code für einen Mediaplayer für Flash und HTML5 support Skins, Plugins und Playlists http://www.longtailvideo.com/players/
91. jQuery freie, umfangreiche JavaScript-Klassenbibliothek, welche komfortable Funktionen zur DOM-Manipulation und -Navigation zur Verfügung stellt http://www.reizkraft.com/content/die-43-sch%C3%B6nsten-jquery-plugins-f%C3%BCr-webdesign Animatedgifcreatedwith http://picasion.com/
92. UIZE – JavaScript Framework „You Eyes“ OpenSource, MIT oder GNU GPL Unterstützung von … Widgets, Ajax, DOM, Templates … Mobile Devices http://www.uize.com/
94. Xpages und @Formula Nur 97 der 274 @Formeln können in SSJS verwendet werden http://www-10.lotus.com/ldd/ddwiki.nsf/dx/List_of_Formula_Not_Supported_In_XPages Michael Gollmick hat ein paar Formeln umgesetzt @WebDBName http://blog.gollmick.de/mgoblog.nsf/40f2c735481f54dd80256d650047636c/0687660450ad65bdc125754a008357ce?OpenDocument @URLEncode, @URLDecode http://blog.gollmick.de/mgoblog.nsf/dx/some-more-Functions-for-XPages-URLEncode-URLDecode.htm