Отправляет email-рассылки с помощью сервиса Sendsay

Бюллетень "Lotus Notes CodeStore"

  Все выпуски  

LO48053: NTRAVELER CRASH ON OSLOCKOBJECT


Рассылку ведет: Программист на Lotus NotesLotus CoderВыпуск No 293 от 2010-02-05
рассылка о программировании на Lotus Notes/Domino
Обсуждения на форумах, блогах. Примеры программного кода на LotusScript,@formula, Java

рассылка:выпускархивлентаблогсайт

Бюллетень "Lotus Notes CodeStore" Выпуск 13 от 21.04.2008

comp.soft.prog.lotuscodesrore

CodeStore. Примеры кодов

Еще примеры:
Больше кодов на сайтах:

Форумы.Свежи темы и обсуждения

Интересные темы:
Список форумов:

Tips. Советы

In Notes 8.5.1, it's easier to change text color in e-mails (or other Notes documents), with a new toolbar icon! Just select the text you'd like to change, and then click the text color icon in the
Jens Bruntts has released a new app for Android that saves your "stuff" as small notes on the Android for later import into Notes as ToDos. He provides a 3-minute video to show how it works.

Read | Permalink
David Leedy has posted a podcast of the information from his SpeedGeeking session at Lotusphere. The podcast runs about 10 minutes.

Read | Permalink


NEW!!! NOTES AND DOMINO 8.5 UPDATE COURSES FOR DEVELOPERS AND ADMINSTRATORS
Try a free course at www.tlcc.com/dompower85.

Keith Brooks' customer is upgrading, finally, from Domino 5.0.9a. It seems to have been a walk down memory lane for Keith as he rediscovers the changes since 2000.

Read | Permalink

As Notes/Domino developers we're used to being able to display icons in Views fairly easily. You just tick a box on the column properties and make sure the column value equals a number, which ties to the icon you want to show.

image

Not sure why I bored you with that bit. You all knew that already, didn't you.

Flex Alternative

How do we do implement a column icon in Flex though? Using a custom column renderer, that's how.

First thing to do is create a new custom Component. I created a file in Flex Builder at /src/net/codestore/flex/ColumnIconRenderer.mxml. The content of the file is below:

<?xml version="1.0" encoding="utf-8"?>
<mx:Box xmlns:mx="http://www.adobe.com/2006/mxml" verticalAlign="middle" horizontalAlign="center"> <mx:Script> <![CDATA[ import net.codestore.flex.IconLibrary; [Bindable] private var _columnName:String; public function set columnName(colName:String):void{ _columnName = colName; } override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void { super.updateDisplayList(unscaledWidth, unscaledHeight); var tmp:Class = IconLibrary[data[_columnName].toString().toUpperCase()+'_ICON']; if (tmp is Class){ img.visible=true; img.source = tmp; } else { //Icon doesn't exist in library img.visible = false; } } ]]> </mx:Script> <mx:Image id="img" />
</mx:Box>

The component is nothing more than a Box with an Image in the middle of it. We use the (very useful) method updateDisplayList which (as I understand it) gets called each time Flex renders or refreshes the display. In this method we look for an icon resource that matches the name specified in the column to which the renderer is tied. If the IconLibrary (more on that tomorrow) doesn't contain the icon specified we just hide the image.

Here's an example of the XML I'm sending to the Contact Manager database to use an Icon Column:

 image

Notice the parts I've highlighted. I've defined a column called "Attachments" to go at the end of the view, which is of type "icon" and is tied to the <file_icon> node of each document. For any document that has an attachment the value will be paper_clip and the result looks like this:

image

The only other part to this is that you need to apply this new custom column renderer to the column of the grid. To do this, in the ActionScript that loads the XML and creates all the columns there's the following bit of code:

if (column.hasOwnProperty("@type") && column.@type=="icon"){ var iconRenderer:ClassFactory = new ClassFactory(net.codestore.flex.ColumnIconRenderer); iconRenderer.properties = { columnName: column.valueOf() }; col.itemRenderer = iconRenderer; col.width=20; col.resizable=false;
}

In this bit of code the column object represents the <column> node I mentioned above, where type="icon". Notice that we're passing column.valueOf() to the columnName property of the renderer. The valueOf() the column node will be "file_icon" in this case and tells the renderer which child node to get its value from for each document.

All we need to do then is set the column's width and make it fixed. Hey, presto. It works.

It goes without saying, you're not limited to one type of icon per column or one icon column per view. You can have as many columns showing as many different icons as you choose -- just like in Notes! The beauty of this componentized, server-based XML approach being that it's all controlled from within your NSF and doesn't involve re-compiling any Flash SWFs.

Click here to post a response

Use this LotusScript agent in a Lotus Notes mail-in database to move new mail to a specified folder.


Admin 2010 and Lotus Developer 2010 are coming to Boston, May 12-14. This year's presentations will include information on upgrading to 8.x, DAOS, XPages, and more. Sign up by February 19 to save $300.

Read | Permalink

John Head says IBM has now posted Lotus Symphony 3 Beta 2 for download. He provides links to the download and a toolkit if you want to test it out.

Read | Permalink
Marc Champoux says you don't need Install Shield Tuner with this upgrade, it's ready to go right out of the box. He provides links to a PDF with the step-by-step process, the FixPack, and a couple of his previous articles to help you update your clients.

Read | Permalink
Keith Brooks is tired of hearing how Domino is a bandwidth hog. He gives a list of seven items, things he's seen at various sites, you might want to check.

Read | Permalink


POWER TOOLS 6.0 IS A SET OF 90 ADMINISTRATIVE UTILITIES FOR LOTUS NOTES & DOMINO
Power Tools simplifies management of the Notes/Domino environment by automating routine tasks. Power Tools can manage or monitor mail files, groups, ACLs, agents, LOG.NSF, templates and more.

Download a trial version from helpsoft.com.

To include an icon in a Flex component you can simply embed it like below:

<mx:LinkButton label="Button with an Icon" icon="@Embed('../images/anicon.png')" />

While this works, it can get messy and cumbersome maintaining the set of icon files. Especially if you change your folder structure and all embedded images break. Not only that but if you embed the same icon in more than one place it takes up extra space (or so I believe) as each instance of the image is stored separately in the SWF.

A better idea is to have an icon library. This an idea I've adapted from this one. Once you get used to using a "library" there's no going back.

Here's the folder structure for the Contact Manager app. Notice the folder structure for the net/codestore/flex package, which contains all the reusable custom components I've come up with, such as the View, SearchField and FileManager.

Within this "codestore" package is a resources folder, which contains an icons folder, which, in turn, contains the silk folder with all 700+ Silk icons from FamFamFam.

image

Then there's the IconLibrary.as file, which looks a bit like this:

package net.codestore.flex
{ Bindable public class IconLibrary {  Embed (source="resources/icons/silk/disk.png")] public static const SAVE_ICON:Class; [Embed (source="resources/icons/silk/bullet_disk.png")] public static const SAVE_SMALL_ICON:Class; [Embed (source="resources/icons/silk/cross.png")] public static const CROSS_ICON:Class; [Embed (source="resources/icons/silk/exclamation.png")] public static const ERROR_ICON:Class; [Embed (source="resources/icons/silk/error.png")] public static const WARNING_ICON:Class; [Embed (source="resources/icons/silk/information.png")] public static const INFO_ICON:Class; }
}

What this gives us a quick and easy way to get to just the Silk icons we want. The LinkButton from above would now look like this:

<mx:LinkButton label="Button with an Icon" icon="{IconLibrary.CROSS_ICON}" />

No need to remember if they're there or what they're called as Flex provides us with type-ahead on the IconLibrary class. If the icon you're after isn't in the library you just add a new entry for it in the IconLibrary.as file. It's then available across the whole app.

Taking it Further

You're not limited to the Silk icons, of course. Remember the attachment manager component I talked about? Notice how each file has an associated icon:

To do this I added a set of icons to a "filetypes" folder you can see above -- one for each of the common files types. In the library code I then added a method called getIconForFileName() which looks a bit like this:

public static function getIconForFileType(type:String):Class{ var icon:Class; type = type.toUpperCase(); if (type=="DOC" || type=="DOCX"){ icon = IconLibrary.FILE_DOC_ICON; } else if (type=="XLS" || type=="XLSX" ){ icon = IconLibrary.FILE_XLS_ICON; } else { icon = IconLibrary.FILE_DEFAULT_ICON; } return icon; }  public static function getIconForFileName(fileName:String):Class{ var tmp:Array = fileName.split("."); return getIconForFileType(tmp[tmp.length-1);
}

The Repeater that displays attachments on the form then has an easy way of getting an icon to show for the tile it represents.

You could take it even further than this if needed. I know I probably will.

Don't leave home without your IconLibrary!

Click here to post a response

Еще советы:
Смотри советы на сайтах:

Блоги. Что обсуждают и пишут

Author: Vlad Sh
Tags: design element library @formula
Idea:
It would be nice to have the sections of code that are protected from user, and simultaneously noncompiled and nonhided by hiding design. This would realize the reuse of code for the @-formulas. For example use these sections of code in:
  • Actions / Shared Actions (including in the hide formulas!);
  • Agents;
  • Columns / Shared Columns;
  • Fields / Shared Fields;
  • Computed Text;
  • formulas to insert the subform and so on - in any place where you can use @ formulas
 
In addition it would implement custom @-function (this is a long-standing pain developers)! To implement this idea, just need 2 things:
  1. New element of design. 
  2. New @-formula, which can receive the code segment by the name of the element of design. Calculate the result could be using the @Eval. The new @-formula should work from Evaluate for use in Lotus Script. 

Author: Vlad Sh
Tags: design element library @formula
Idea:
It would be nice to have the sections of code that are protected from user, and simultaneously noncompiled and nonhided by hiding design. This would realize the reuse of code for the @-formulas. For example use these sections of code in:
 
  • Actions / Shared Actions (including in the hide formulas!);
  • Agents;
  • Columns / Shared Columns;
  • Fields / Shared Fields;
  • Computed Text;
  • formulas to insert the subform and so on - in any place where you can use @ formulas
 

In addition it would implement custom @-function (this is a long-standing pain developers)! To implement this idea, just need 2 things:
 
  1. New element of design. 
  2. New @-formula, which can receive the code segment by the name of the element of design. Calculate the result could be using the @Eval. The new @-formula should work from Evaluate for use in Lotus Script. 

Author: Doctor API
Tags: outlook notes drag and drop
Idea:
In order to make it easier to exchange message and to smooth migration, Notes should support outlook messages and the same on the reverse.

Author: Ortwin Riske
Tags: Connections Files
Idea:
Please make it possible to upload multiple Files to Lotus Connections in one Time.
Including: 
 
  • Taging
  • Add to Collections

That would be great.

Author: Sean Burgess
Tags: moderation ideajam
Idea:
There needs to be a way for IdeaSpace moderators to be able to moderate comments as well as ideas from the web UI.  Just a simple graphic that will allow offensive/inappropriate comments to be removed from the view is all that is necessary.  I have attached a mock up of what it could look like, not that I have actually implemented it. *wink wink*

Author: Vlad Sh
Tags: hotlist
Idea:
Watched and subconsciously realized that something is wrong with our selection of "What's Hot"... Hot topics frozen :-)
I propose to form this set similar to the forums, that is, if the idea of adding comment or voted for it, then pick it up at the top!
IMHO, this is the easiest and best way to formation of hot ideas - good ideas will sometimes climb up, and people, who do not often come to the site, can see them and voted. Then they will see really important for us and priorities.
 

Author: Bruce Lill
Tags: rules
Idea:
Domino processes the rules recursively so there is a chance of rules working againest each other. With that and the chance of mis-spelling or things just not working right.
 
It would be nice to be able to enter a url and have domino tell us what website docs/rules ect. apply to it.
 
Even if you could turn on logging for it so you could see how the server is prooessing the url.
 

Akira Sudoh has contributed a sample for mail retention customization for IBM Lotus iNotes. Mail Retention is one of the common mailbox customization. This sample code demonstrates how you can create the dialogbox that allows mailbox owners to mark ...
Author: Stuart McIntyre
Tags: notes client autosave applications
Idea:
Auto-save of mail messages is easy to enable in recent versions of the Notes client - it's in user preferences.
 
Howver, it's not just mail messages that would benefit from auto-saving during editing - blog posts, wiki entries, application forms and so on are all at risk should the Notes client crash, hang or the machine itself lose power etc.
 
As far as I am aware, auto-save can be turned on within the Designer client by altering the form properties (correct me if I'm wrong, developers), but this is beyong 99% of users and most admins too.
 
So, can I suggest that auto-saving of new entries/comments etc is made possible by default in all bundled templates (including DominoBlog), and then it is enabled/disabled from Application Properties or Advanced Propoerties?
 
Thanks, Stuart

Author: Stuart McIntyre
Tags: notes client replicate refresh smarticon tool
Idea:
Since R8, the Mail view has had a nifty refresh icon, that is clever enough to know to kick off a replication process if a local replica is being used.
 
However, that tool seems to only be available in the Mail db.
 
I'd like it to be available in every database/application - and to be intelligent as to whether a simple refresh or replication is required.  It would be relevant to 90% of the DBs I access - particularly blogs, forums, wikis etc.
 
What do you think?

Author: Bob Balfe
Tags: spell check email
Idea:
The behavior is, once you do a spell check, save the email as draft and go back to that email later you should not have to re-check the words you already have signed off on.

Author: Craig Wiseman
Tags: express cluster licensing
Idea:
Domino Express licenses are a very nifty way to get & deploy N/D for smaller customers.
 
BUT if you want to do something very simple, like have a backup server at a DR site that's 'hot' and  ready, you enter a pretty complicated licensing situation.
 
Domino clustering is (honestly) one of the best selling points, esp when compared to the "business partner revenue cow" that is Exchange clustering.
 
For small, single server shops, we should make this very easy - even if there's a charge to upgrade the Express license to allow two-server clustering.
 

Еще записи:
Интересные блоги специалистов:

Статьи и Документация

Domino server keeps crashing on nTraveler task, always same stack.
-A Possible Domino Server Crash Can Occur When A Large Amount Of Results Are Returned After Performing A Full Text Index Search
Title: Can an administrator import holidays on behalf of users?
It is possible to install Notes/Expeditor/Eclipse plug-ins while the Notes Client is running through DCommands using the rcplauncher executable?
This document updates the IBM recommendations for the preferred method to convert a mail file to support DAOS
Creating a Meeting or Reminder using an Italian Notes client and template on an English Domino server do not trigger alarms.
When using the "Show Calendars" option to import another user calendar into the existing calendar, All Day Events appear as standard calendar appointments if they are created under certain circumstances.
Также почитатай:
Найти документацию можно на сайтах:

В избранное