| Ads
by DomBible |
Sample Applications
R5 Database-Manager
MailFixer
MailFooter
Sample code for developerWorks Domino 6 Open Source projects
Personal Address Book with Outlook View
Telephony Integration with Lotus Instant Messaging and Web Conferencing (Sametime)
Customizing IBM Team Workplace (QuickPlace)
Lotus Notes & Domino Estimation Model
User Password Management
Timesheets and Hour Tracking for Projects
Business domain-driven Java class hierarchies for Domino
Web Personal Journal
Website Application 2.0
@Functions in LotusScript
Web-based Date Picker
eGovernment: Rapid Response Management
Financial Services: Private Wealth Management
CCard - Credit Card Validation - @Formula
Leave Manager
Internet Password change
Using Agents to Display a View on the Web
eSignature Management System
Meeting Room Reservations
Discussion application
Project Tracking
Working Days
Resource Management System
JavaScript datepicker
WebSearch
Vacation and Business Travel Requests
ArraySort
R5 Database Manager -The R5 Database Manager was created to manage Notes databases in small to enterprise-wide domains using LotusScript and the Lotus C API to set most ACL, database, and replication and advanced replication settings on R5 databases. It can create and delete replicas on other servers when required. It's also possible to add all replicas of a selected database to your desktop.
Its code has been built/expanded from the various LotusScipt/Lotus C API contributions over the years in the forums by many authors, such as Normunds Kalnberzins and Rod Whitely as well as the dbdesign stuff by Damien Katz (and expanded dbdesign by Josh Jore).
Basic Functions are:
Set ACL, database, and replication and advanced replication settings of a single database
Set consistent ACL, database, and replication and advanced replication settings on all replicas of a database (selected servers can be excluded if required)
Create replicas with consistent ACL, database, and replication and advanced replication settings
Delete replicas except source (database profiled)
Create Replica Server/Username to -Any Server-, -Any Server- to -Any Server-, and Replica Server/Username to advanced replication notes if they don't exist when the Create/Update action is used
Enable/disable any of the ACL, database, and replication and advanced replication settings from processing
Maintain a log of actions performed
Add all database icon replicas to your workspace desktop (selected servers can be excluded if required)
Use System Profile to specify whether or not advanced options are shown and to specify a default list of excluded servers
MailFixer -MailFixer is an add-in to a Domino server that monitors every outgoing mail message on the server and that checks the email address of the sender to ensure the correct one is listed in the Person document in the Domino Directory (names.nsf).
There is a known problem in Notes:
If the user email address in the Person document is XX@YY.com and if the email address in the location document (on the user's client) is AA@BB.com, then the Internet user who receives an email sees the email address listed in the location document: AA@BB.com. The email address that the Internet user should see is XX@YY.com.
MailFixer solves that problem by comparing the email address that exists in the email document that the user has sent with the email address listed in the Person document.
The MailFixer application is an NSF file that monitors every outgoing mail message on the server. You can install MailFixer on a hub server to monitor messages that leave your organization's domain. The mail address of the user is not imported when the document does not leave your organization's domain. You can install MailFixer on servers that route mail both to internal users and to Internet users.
Before using MailFixer, sign the database (MailFixer.nsf) with a user ID that has permission to run unrestricted agents.
MailFooter -Some organizations need to add their own "warning" message to emails sent to Internet users. The MailFooter application is a DLL file that lets you append a text message to each email sent outside of your domain. All you need to do is add two files to your Domino file system:
The add-in DLL file
Text file that contain the message in Unicode format
Sign the current database (MailFooter.nsf) with a user ID that has permission to run unrestricted agents.
Sample code for developerWorks Domino 6 Open Source projects" -This is the sample code for the developerWorks:Lotus article "Open Standards, Open Source, and Domino 6: Using Domino 6 Open Source projects
Personal Address Book with Outlook View -This is an updated Notes 6 Personal Address Book with a custom Outlook style view
Lotusphere 2004 : ID410 - Telephony Integration with Lotus Instant Messaging and Web Conferencing (Sametime) -Lotusphere 2004 : ID410 - Telephony Integration with Lotus Instant Messaging and Web Conferencing (Sametime)
Lotusphere 2004 : AD108 - Customizing IBM Team Workplace (QuickPlace) -Lotusphere 2004 : AD108 - Customizing IBM Team Workplace (QuickPlace)
Lotus Notes & Domino Estimation Model -Attached is a working model, tailor-made for estimating the size and effort (cost) for Lotus Notes and Domino applications.
Users of this estimation model are required to have thorough understanding of all Lotus Notes and Domino design elements.
Lastly, as with all estimation models, this one gives just a framework for estimation. The accuracy of the estimated figure depends on the experience and expertise of the person carrying out the estimations.
User Password Management 2.1 -This is a tool for Domino administrators, aimed to improve the security of the system. It gently forces users to change their passwords on a regular basis and in accordance with consistent password requirements.
Timesheets and Hour Tracking for Projects -Tool for consultants who need to keep track of the number of hours they have worked for various clients and/or projects.
Business domain-driven Java class hierarchies for Domino -The attached zip file contains a sample database and JAVA files to accompany the developerWorks: Lotus article, ""Business domain-driven Java class hierarchies for Domino.""
Follow these steps to set up the sample files.
Web Personal Journal -Fully customizable, user self-managed Web-based journal publishing application. I built this because similar solutions all make use of agents which really kill server performance. This application makes innovative use of the Profile form function to eliminate the need for agents.
Website Application 2.0 -Website Application is a somewhat simple implementation of a Web site stored in a Lotus Notes database. It does have some usable features, such as configurable common header and footer, and other configurable items. It is an application that demands a bit of manual work to put together a Web site. This is something I like because it also gives me more control over how the Web site is rendered. This application is delivered in the form of a Lotus Notes template that can be used to create new Website Application 2.0 databases.
I created Website Application to learn about designing databases for the Web and to have an application for my own Web site. Being a technician, I like the semi-manual work of this application, but also the freedom to make it do almost whatever I want it to do. There are undoubtedly lots of ways to improve this application, and there are probably just as many things I did in it that could be made a lot better.
@ Functions in LotusScript -As a developer you are often confronted with challenges in Lotus Script that are easily solved using @Functions. Why not converting these particular @Functions to Lotus Script?
This database provides you with some examples of how to convert @Functions into Lotus Script. This should give you the basic idea as to how you could do this.
Ever needed a @DbLookup or @DBColumn in Lotus Script? Similar routines (using e.g. the NotesDocumentCollection) in Lotusscript can solve this today. But have you ever thought of the performance of your application?
How about a @ReplaceSubstring, @ProperCase function?
A new Approach - Web-based Date Picker -This is a new approach to a web-based date picker. As of the moment, only works in IE, I will have a NS version ready as soon as I can blow up a NS event bubble inside my head.
The difference of this date picker is that it can display company sponsored holidays. So your users will not have any reasons to set a meeting on thanksgiving. :-)
QuickPlace 3 PlaceType -- eGovernment: Rapid Response Management -This sample PlaceType, ""eGovernment: Rapid Response Management"" as demonstrated at Lotusphere Orlando 2003 and as described below, was developed in cooperation with a Lotus Business Partner for FREE distribution. The purpose of this PlaceType is provide the QuickPlace development community with a high-quality, fully-functional, sample application built using QuickPlace customization techniques. This Place Type can be used as-is, further customized, or used as a resource when developing another QuickPlace application(s).
eGovernment: Rapid Response Management
The Rapid Response Management PlaceType is a Web-based collaborative team workplace that is configured to support the Incident Command System (ICS). It provides an organizational structure or framework for coordinating decision-making to fit each specific rapid response plan to address anticipated problems. Rapid Response team leaders can easily customize the look and features in QuickPlace -- and deploy it quickly in response to specific local or national level emergency incident. People and organizations requiring assistance can immediately access all information and standardized procedures to be used at routine as well as critical incidents and communicate in real time with emergency response personnel and facilities. This PlaceType contains:
 Incident Command Structure
 News & Alerts
 Request For Help
 Disaster Assistance information
 Donations
 Pre-Disaster/Contingency Plan
 Status Report
Support
This PlaceType is an unsupported sample. In the spirit of open software distribution, developers working with this PlaceType are encourage to help each other by reporting enhancement via the QuickPlace forum. Product bugs -- as distinct from bugs in this PlaceType template -- should be reported, as usual, to Lotus Support.
System Requirements
Please read the QuickPlace 3.0 release notes for information on bugs or limitation of specific system configurations.
Server Requirements
This PlaceType can be used on a QuickPlace 3.0 server.
Client/Browser Requirements
This PlaceType is intended for use with the supported browser for QuickPlace 3.0 on supported Microsoft Windows client operating systems. This PlaceType has not been tested on Macintosh client operating systems.
QuickPlace 3 PlaceType -- Financial Services: Private Wealth Management -This sample PlaceType, ""Financial Services: Private Wealth Management"" as demonstrated at Lotusphere Orlando 2003 and as described below, was developed in cooperation with a Lotus Business Partner for FREE distribution. The purpose of this PlaceType is provide the QuickPlace development community with a high-quality, fully-functional, sample application built using QuickPlace customization techniques. This Place Type can be used as-is, further customized, or used as a resource when developing another QuickPlace application(s).
Financial Services: Private Wealth Management
The Private Wealth Management PlaceType provides the strategic tools for financial companies to attract and retain affluent customers and to develop a strong relationship with these highly desirable customers. Lotus technology allows brokers, dealers and transfer agents to comply with SEC Rule 17a-4 and the NASD order 3010. These regulations require the serialized archiving of all electronic messages including flexible indexing and extraction. Find out how Private Wealth Management PlaceType can help you deliver better and more p o-active services based on thorough knowledge of your customer base. By efficiently identifying your best customers and targeting cross-marketing opportunities, financial institutions can increase profitability and customer satisfaction. Your customers will greatly benefit from a personalized, convenient, pro-active service that helps them achieve their own financial goals.
Support
This PlaceType is an unsupported sample. In the spirit of open software distribution, developers working with this PlaceType are encourage to help each other by reporting enhancement via the QuickPlace forum. Product bugs -- as distinct from bugs in this PlaceType template -- should be reported, as usual, to Lotus Support.
System Requirements
Please read the QuickPlace 3.0 release notes for information on bugs or limitation of specific system configurations.
Server Requirements
This PlaceType can be used on a QuickPlace 3.0 server.
Client/Browser Requirements
This PlaceType is intended for use with the supported browser for QuickPlace 3.0 on supported Microsoft Windows client operating systems. This PlaceType has not been tested on Macintosh client operating systems.
CCard - Credit Card Validation - @Formula -At Formula to check the validity of a credit card number.
I've seen the LUHN algorithm in LotusScript, JavaScript, ASP, VBScript, etc., but had yet to find a strictly @Function version, so I created my own.
This formula will check the validity of American Express, Discover Card, Master Card, and Visa card numbers in accordance with the LUHN formula (a.k.a. mod 10 algorithm).
Additional cards may be added, as long as the cards' prefixs' are known, and are identical in length. (i.e., cannot use Diner's Club/Carte Blanche, which has specified card-prefixs' of 36, 38, and 300-305).
Leave Manager -This application simplifies the work of calculating number of working days
Internet Password change utility v1.1 -Internet Password Change application helps users in changing their Internet Password.
This application is 'web browser only' application and is IE and Netscape browser complaint.
The application gets the new password as input from the user and updates the Internet Password in his person document in the address book.
Open the database in notes client or browser to access the sample JavaScript code for using the application.
Use this version when ""Use more secure Internet Passwords"" option is enabled in the Domino Directory Profile. If the option is not enabled then using the previous version is advisable.
Using Agents to Display a View on the Web -This zip file contains an NSF called WebAgentViews that contains a working example of a Web Agent serving a view to a web user using HTML/CSS and JS. The agent accepts a parm string passed to it in the URL and will, if required, display a single category (and all its subcategories and docs) based on the value passed.
eSignature Management System -This application was designed to meet specific requirements found in the FDA's Electronic Signature and Electronic Records regulation (21 CFR Part 11). The specific eSig components used as the basis for the design are listed in the 'Using' document along with a brief description of the method used to meet the requirement.
This application has not been audited by the FDA. Please view this application as an attempt to build a compliant eSig system. Feedback from downloaders is appreciated as are suggestions for improvement or obvious holes in the logic of the design model.
The application is written in R4.6x using both @Language and LS. The management system tracks user eSig attempts and responds to multiple sequential failures. The code used to generate the eSig is copied from this database to the database containing records to be signed.
Meeting Room Reservations -This database allows Lotus Notes users to submit Meeting Room Reservation Requests for approval. The form validates the input and will then route it to an approver.
Once either approved or cancelled, the requestor is notified of the decision via email with a document link. If approved, entry will be displayed in the Calendar View.
User Requests
Users can create Request from within their mail database and depending on whether the administrator has allowed, to create from either the Create menu and/or the Inbox Action bar.
Once a user creates a request through their Mail file and clicks the 'Submit Request' Action button or uses the Create, Room Reservation Request from the menu, the document is first validated for field entry and then is mailed to the database. Reception is informed by mail, with a document link that a request has been deposited into the database.
Cancellation of Request
Reception can either follow the document link or open the database and check the 'Pending' view for requests. Reception have the opportunity to check the calendar view for entries and can open a 'Pending' document to either Approve or Cancel the request. If the Request is cancelled a dialog is displayed so that comments / reason why can be entered. The chairman and administrator/manager are informed by mail of the Cancellation with a document link.
Approval of Request
As above. However, the entry is first checked to see if the rooms time slot is available, if so, a notification message is displayed saying that the room is available and asks if they want to continue with the save. If Yes, the request becomes Approved and entered into the Calendar. Mail with a document link is sent to the chairman and possibly the administrator/manager informing them of the Approval with a document link. If the room being requested for is unavailable, a message is displayed to that fact. Reception can either edit the document so that a convenient slot is becomes available or Cancel the request.
Creating Requests from within the database
Reception can Create Room Reservations from directly within the database if required, i.e. a user phones the request through instead of requesting through their mail file. The above options are still available.
Department administrators/managers can also Create, Approve and Cancel their own requests and create requests on behalf of others. E.g. a directors PA could be made an administrator so that she/he could create a request for the director as chairman of the meeting. Once again, all validation and availability checks are made as normal, any relevant parties i.e. reception, chairman and administrator/manager are informed by mail with document links.
Discussion application -This discussion application is a full-featured application that demonstrates the power and capabilities of the Domino JSP Tag Library.
Project Tracking -I created this database to assist me in tracking my current projects. Its pretty functional but it does remain a work in progress. I am continuously tweaking (fixing my mistakes) it.
I am not a Notes guru and there maybe many instances where there's a better way to code some of the function I added but the database is functional.
Working Days -Calculate the number of working days between two dates and exclude holidays and weekends.
The attached file will enable you to work out the number of working days between two given dates. You can the either enter the holiday periods between these dates in the Hols field or hard code them in the Default Value.
Pressing the F9 refresh key will then calculate the number of working days also excluding weekends.
To enhance the form you could have date pickers rather than physically entering the dates
Resource Management System -This is a web-enabled resource manager similar to the Resource Reservations template that comes with R5.
JavaScript datepicker -The Date picker consists of the files:
datepickerIE.js and propertiesIE.js.
the datepickerIE.js contains the actual code for the date picker. The propertiesIE.js contains the different properties that you can set for the date picker. eg. font-size, colors, date format, names of months, days etc.
It is possible to have more than one date picker on the same html-page. Just copy the propertiesIE.js to another file and modify the object name in the file to a unique name.
The images included in the .zip file is a mix of home made images and the cal_icon.gif from the /icons directory in the domino data directory.
There is some documentation in the propertiesIE.js file, which should make it very easy to change the date picker to your need.
WebSearch -100% Java applet...enables ability to search multiple websites in one fell swoop. Also has built in site scrolling, as URL's are dynamically being stored inside a vector as the session progresses. Allows for direct launch as well. This is built for my company and will auto-launch our website when you launch the WebSearch.html file. You will need to modify the source code to reflect your personalization. The WebSearch1.html file is for browsers which do not support the swing components...it provides automatic routing to the Sun website for the necessary updates. Simply unzip the file and double click the html file...it's ready to go. I am using it within a frameset in notes as a means by which to create a fully functional Notes web browser. The autolaunch of our website is, in that case, pointed to the lower frame of the set, and all subsequent URL changes are done within that frame as well, simulating the performance of, say, IE. You have to tweak it to perform as you want it to for your environment..
so you have to know Java.
Account Manager -This is the first incarnation of my account manager. It is usuable in this state, and basically allows for the creation of accounts, deals and profiles, as well as contacts, tasks, a journal, meetings, and other things. I am
putting this out there for anyone who is interested, especially those who would like to contribute, make it better, and share it. Things that need work are the calendar, the interface, and the views"
Vacation and Business Travel Requests -This database is designed to be used by corporate employees to submit and review requests for vacations and/or business travel. Submitted forms are forwarded to a manager for an approval. When a form is processed, a notification email message will be sent to the requester. If approved, requests will appear on the calendar and requester will be able to populate his/her personal Notes calendar with approved vacation/business travel. In an event where request is declined, manager is prompted to put in comments as to why the request is being declined. This database also calculates total number of vacation days taken for each employee. It does not count weekends or corporate holidays, when total is calculated! (There is an admin doc in this database, where Admins specify corporate holidays for each year.)
ArraySort -Uses a shell sort algorithm to quickly sort an array. The code is in the Sort Test agent. The sub is ArraySort(). The code is shown below, but the agent also has code to demonstrate the routines use, test the routine, as well as compare it to a bubble sort. The speed difference is astounding.
|
| |