<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
 xmlns:admin="http://webns.net/mvcb/"
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:content="http://purl.org/rss/1.0/modules/content/"
 xmlns:wfw="http://wellformedweb.org/CommentAPI/">
<channel>
<title>Best Practice Makes Perfect</title>
<description>A collaboration with Domino developers about how to do it and how to get it right in Domino</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/</link>
<language>en-us</language>
<lastBuildDate>Wed, 15 May 2013 12:10:57 -0500</lastBuildDate>
<item>
<title>Beware &lt;script&gt; in XPages</title>
<pubDate>Wed, 15 May 2013 12:10:57 -0500</pubDate>
<description>
<![CDATA[ 
I may be stating the obvious, but I wasn't the only one on my team caught out by this, so I thought I'd best mention it. I recently discovered the hard way that there's a problem with using elements ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/beware-script-in-xpages</link>
<category>XPages</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/beware-script-in-xpages?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/beware-script-in-xpages</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">I may be stating the obvious, but I wasn't the only one on my team caught out by this, so I thought I'd best mention it.</font><font size=3> </font> <p><font size=2 face="sans-serif">I recently discovered the hard way that there's a problem with using < script > elements in XPages. Always use < xp:scriptBlock > instead. Why, you ask? Either seems to work fine!</font><font size=3> </font> <p><font size=2 face="sans-serif">The problem comes up if your application is translated. The code that decides what parts of your page are translatable doesn't know anything about the < script > element, so your JavaScript code is marked as a localizable string. It's very rarely the case that you would actually want that translated. Using < xp:scriptBlock > is a best practice that avoids trouble down the road, even if you're only working in one language <em>now</em>.</font><font size=3> </font> <p><font size=2 face="sans-serif">BTW if you're thinking the translators will be smart enough to recognize source code when they see it and leave it alone, (1) not a good thing to count on, and (2) the other-language property files will mess up the functionality even before translation starts, because they tag the to-be-translated strings with, e.g. "&#91;zh_TW" at the beginning, which won't still be executable code.</font><font size=3> </font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/beware-script-in-xpages</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/beware-script-in-xpages?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Working the system to get bugs fixed</title>
<pubDate>Mon, 13 May 2013 09:23:11 -0500</pubDate>
<description>
<![CDATA[ 
An issue recently came to my attention that (based on my informal poll) has been a thorn in the side for Domino administrators for quite a while. I've been trying to figure out how it is that it's nev ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/how-long-standing-problems-in-notesdomino-stay-around-so-long</link>
<category>Bugs/Releases</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/how-long-standing-problems-in-notesdomino-stay-around-so-long?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/how-long-standing-problems-in-notesdomino-stay-around-so-long</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">An issue recently came to my attention that (based on my informal poll) has been a thorn in the side for Domino administrators for quite a while. I've been trying to figure out how it is that it's never been fixed.</font><font size=3> </font> <p><font size=2 face="sans-serif">I'm referring to the fact that end users, when they create or rename a folder, are allowed to use various characters that have special meanings in design element names -- backslash, vertical bar, underscore, forward slash (which causes problems in mobile) and enclosing the name in parens (which makes the folder hidden in the UI). It's a nuisance for administrators, because recovering the "corrupted" folders is hard to do without writing code. </font> <p><font size=2 face="sans-serif">For a long time, we didn't have a bug report for this -- I finally wrote one, SPR # AGUD8USQ68. We didn't have a bug report because nobody ever called it in to Support. We have a system for prioritizing bugs. Recent regressions are at the top of the list. Problems that have been in the product for one release or more, are a distinctly lower priority, <strong>unless someone complains about them</strong>. By which I don't mean bitching about it in IdeaJam or even asking about it at IBM Connect. The most effective way to boost the priority of an issue, is to call IBM Support and open a PMR. An SPR with one customer report is approximately 100 times more likely to be addressed than one with no reports (especially because the SPR with no reports generally doesn't even exist). An issue with two reports is twice as likely to be addressed as an issue with only one. Reports from development count for approximately nothing. It's all about the customers and partners.</font><font size=3> </font> <p><font size=2 face="sans-serif">So when a business partner wrote to me recently to complain about this issue, I told him if he really wanted it fixed, he should call it in to support. I personally would love to see a lot of these annoying issues given priority, but people generally only call in to Support when they're blocked -- not when merely annoyed and inconvenienced. &nbsp;So we now have one (1) report about this issue. That's almost certainly not enough to get it fixed in a quarterly release, though it <em>might </em>get into the next major release.</font><font size=3> </font> <p><font size=2 face="sans-serif">So, if there are issues on your personal list, things about the Notes client, the mail template, or Domino that are an occasional problem, that you feel might be damaging end-user confidence in the products, impairing productivity, or just generally causing annoyance, and you want the annoyance to stop, then call IBM Support and open a PMR. And then call your Domino buddies and encourage them to do the same.</font><font size=3> </font> <p><font size=2 face="sans-serif"><strong>EDIT: </strong>You can also </font><a href="http://ideajam.net/IdeaJam/P/ij.nsf/0/37184C79494F3EBB80257B25003B8302?OpenDocument?open&amp;login=1"><font size=2 color=blue face="sans-serif">weigh in on this specific issue on IdeaJam</font></a><font size=2 face="sans-serif">. Thanks, Mathieu Pape, for posting this.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/how-long-standing-problems-in-notesdomino-stay-around-so-long</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/how-long-standing-problems-in-notesdomino-stay-around-so-long?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Delete empty folders, take 2</title>
<pubDate>Wed, 10 Apr 2013 09:36:59 -0500</pubDate>
<description>
<![CDATA[ 
I while back I wrote a post containing code to clean up empty folders from user mail files. Yesterday, someone pointed out to me that it doesn't take into account the fact that folders that contain su ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/delete-empty-folders-take-2</link>
<category>LotusScript</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/delete-empty-folders-take-2?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/delete-empty-folders-take-2</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">I while back I wrote a post containing code to <a href="http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/clean-up-empty-folders" title="clean-up-empty-folders"/>clean up empty folders</a> from user mail files. Yesterday, someone pointed out to me that it doesn't take into account the fact that folders that contain subfolders can be technically empty, in the sense of containing no documents, but we don't want to delete them if they have subfolders which are non-empty -- or if they have subfolders we don't also want to delete. So I came up with a new version of the code that deals with those situations.</font> <p><font size=2 face="sans-serif">As background, there actually is no such thing as a folder that contains another folder. Folders can contain documents. The apparent containment of folders in folders comes from the way the mail application's navigation pane organizes its outline. Folders whose names contain a backslash are displayed as subfolders in the outline, so for instance "Customers\Yoyodyne" appears in the UI as follows:</font> <p><img  alt="Image:Delete empty folders, take 2" border="0" src="http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/delete-empty-folders-take-2/content/M2?OpenElement" /> <p><font size=2 face="sans-serif">It's not necessary for there to even be a folder named "Customers" for the subfolder to exist and be displayed in this way. From the end user's perspective, though, this is a detail we would like to hide. So the goal for this tool is to act as if folders contained other folders, even though this is not technically the case.</font> <p><font size=2 face="sans-serif">So the behavior reflected by the code attached below is:</font> <ul> <li><font size=2 face="sans-serif">We'll show the user a list of empty folders and let them select which ones to delete.</font> </li><li><font size=2 face="sans-serif">A folder is considered empty if it contains no documents and all its subfolders (if any) are also empty.</font> </li><li><font size=2 face="sans-serif">The list of empty folders will not include any subfolder if its parent is also listed. So in the above example, if Customers contains no documents and Customers\Yoyodyne is also empty, we would only list Customers as a candidate for deletion.</font> </li><li><font size=2 face="sans-serif">Selecting a parent folder for deletion also deletes its subfolders (same as if a folder is deleted from the mail navigator).</font></li></ul>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/delete-empty-folders-take-2</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/delete-empty-folders-take-2?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>&#64;IsNotesBrowserPlugin </title>
<pubDate>Tue, 19 Mar 2013 14:17:15 -0500</pubDate>
<description>
<![CDATA[ 
In case it makes a difference for your application, here's how to tell whether you're running in the Notes browser plugin. So far, the only difference that's mattered to me is that the &#91;FileExit&# ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/isnotesbrowserplugin</link>
<category>Bugs/Releases</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/isnotesbrowserplugin?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/isnotesbrowserplugin</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">In case it makes a difference for your application, here's how to tell whether you're running in the Notes browser plugin. So far, the only difference that's mattered to me is that the &#91;FileExit&#93; command doesn't work in NBP, causing an error dialog if you try it.</font> <p><tt><font size=1 color=#00a000><strong><div class="code">%REM</strong></font></tt><tt><font size=3> </font></tt><tt><font size=1 color=#00a000><strong><br />  &nbsp; &nbsp; &nbsp; &nbsp;Function IsNotesBrowserPlugin</strong></font></tt><tt><font size=3> </font></tt><tt><font size=1 color=#00a000><strong><br />  &nbsp; &nbsp; &nbsp; &nbsp;Description: Return TRUE if we're running in the Notes browser plugin.</strong></font></tt><tt><font size=3> </font></tt><tt><font size=1 color=#00a000><strong><br /> %END REM</strong></font></tt><tt><font size=3> </font></tt><tt><font size=1 color=#0000e0><strong><br /> Function</strong></font></tt><tt><font size=1> IsNotesBrowserPlugin </font></tt><tt><font size=1 color=#0000e0><strong>As</strong></font></tt><tt><font size=1> </font></tt><tt><font size=1 color=#0000e0><strong>Boolean</strong></font></tt><tt><font size=1><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font></tt><tt><font size=1 color=#0000e0><strong>Dim</strong></font></tt><tt><font size=1> session </font></tt><tt><font size=1 color=#0000e0><strong>As</strong></font></tt><tt><font size=1> </font></tt><tt><font size=1 color=#0000e0><strong>New</strong></font></tt><tt><font size=1> NotesSession<br />  &nbsp; &nbsp; &nbsp; &nbsp;</font></tt><tt><font size=1 color=#0000e0><strong>If</strong></font></tt><tt><font size=1> session.Notesversion >= </font></tt><tt><font size=1 color=#4100c2><em>400</em></font></tt><tt><font size=1> </font></tt><tt><font size=1 color=#0000e0><strong>Then</strong></font></tt><tt><font size=1><br />  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</font></tt><tt><font size=1 color=#0000e0><strong>Dim</strong></font></tt><tt><font size=1> tmp<br />  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;tmp = </font></tt><tt><font size=1 color=#0000e0><strong>Evaluate</strong></font></tt><tt><font size=1>(</font></tt><tt><font size=1 color=#4100c2><em>{@IsNotesBrowserPlugin}</em></font></tt><tt><font size=1>)<br />  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;IsNotesBrowserPlugin = tmp(</font></tt><tt><font size=1 color=#4100c2><em>0</em></font></tt><tt><font size=1>) <> </font></tt><tt><font size=1 color=#4100c2><em>0</em></font></tt><tt><font size=1><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font></tt><tt><font size=1 color=#0000e0><strong>End</strong></font></tt><tt><font size=1> </font></tt><tt><font size=1 color=#0000e0><strong>If<br /> End</strong></font></tt><tt><font size=1> </font></tt><tt><font size=1 color=#0000e0><strong>Function</div></strong></font></tt>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/isnotesbrowserplugin</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/isnotesbrowserplugin?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Are Apple customers allowed to marry non-Apple users?</title>
<pubDate>Mon, 21 Jan 2013 11:42:22 -0500</pubDate>
<description>
<![CDATA[ 
It's been an ordeal. I have an Android smartphone and use Gmail's calendar. My wife has an iPhone. You'd think it would be simple to have a shared calendar -- this is, after all, the future. As it tur ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/apples-attitude</link>
<category>General Musings</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/apples-attitude?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/apples-attitude</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">It's been an ordeal. I have an Android smartphone and use Gmail's calendar. My wife has an iPhone. You'd think it would be simple to have a shared calendar -- this is, after all, the future. As it turns out, it is possible, but the arduous process has made me wonder whether Apple considers it a form of apostasy for their customers to associate with someone who doesn't use their products.</font> <p><font size=2 face="sans-serif">We had two alternatives to start with: we could create our shared calendar in Gmail or iCloud. No preference, so long as we could both create entries and edit any existing entry. But Gmail is an open system -- anyone can create an account and make full use of the features, without owning any particular hardware. Apple, we found, limits access to iCloud to owners of Apple hardware. So we created a Google calendar.</font> <p><font size=2 face="sans-serif">Really, if Apple makes it difficult to share a calendar with people not using their hardware, any group who wants a shared calendar on the cloud, will have to create it in Gmail, since not every member will be an Apple user.</font> <p><font size=2 face="sans-serif">It isn't hard to synchronize a shared Google calendar onto the iPhone, but the sync is buggy. Two bugs in particular caused problems:</font> <ul> <li><font size=2 face="sans-serif">If a calendar entry wasn't created on that iPhone, or if it has since been edited elsewhere, iPhone won't let the user edit it. The same user has no problem editing the entry in the Google Calendar web interface, with Android, nor, I understand, with Windows smartphones. I'm not certain whether this is a case of everybody misinterpreting the CalDAV spec except Apple, or whether Apple is the one with the error (but I have my suspicions). I read that this is a new problem with iOS 6.0.1, an apparent regression caused by Apple's attempt to fix a problem with accepting invitations, so I'm inclined to think that this is Apple's problem to fix. Every tech in the local Apple store knew of this, none of them had a workaround, and they said there was no official notice of the issue from Apple nor any planned date to fix it.</font> </li><li><font size=2 face="sans-serif">On the iPhone, my wife has a default event notification of one hour before. On one event in the shared calendar, my wife wanted a two-hour notification, so she changed the notification time. When the entry synchronized with Google, a second notification was added at the default one hour before, so now the event had two notifications -- two hours and one hour.</font></li></ul><font size=2 face="sans-serif">Neither of these problems were acceptable. It looked like an iCloud shared calendar was our only option. But as I said, iCloud doesn't allow access unless you've set up an Apple device with your iCloud ID. By this time we were both tired of dealing with this issue, which we felt should have been drop-dead simple. My wife suggested I just get an iPhone. I have no <em>intrinsic</em> objection to buying Apple gear, but on principle, I refused to reward Apple for having a buggy sync and a closed system.</font> <p><font size=2 face="sans-serif">By the way, it's amusing how when you share an Apple calendar with an email not already in Apple's system, it sends them an "invitation" to join iCloud, then if they accept the invitation it's, "Oh by the way, did we forget to mention we expect everyone with an email address to also own an iPhone?"</font> <p><font size=2 face="sans-serif">Fortunately, a tech we talked to at the Apple store told us that iCloud.com doesn't require that the device originally registered to get access to the site, remain registered to the same ID. So we deleted my wife's account from the iPhone and set mine up instead, logged me in to iCloud, then switched it back to hers. Apple, if this is in violation of your TOS or something, sorry, but you left us no choice. I'd be happy to discuss this with any representative of your company who can also answer why no public notice has been taken of no-edit issue, which thousands of people have been complaining about all over the internet for months. I'd gladly switch back to the Google shared calendar if it worked </font> <p><font size=2 face="sans-serif">So great, we have a shared calendar in iCloud and I can access it via a web browser. Now, how do I get it onto my phone, and how can I have an offline copy in my preferred mail reader, Thunderbird (with Lightning calendar add-on)*? For that, you need a CalDAV URL to sync with (or iCalendar if you prefer, but I understand that's read-only). You would think that, in the spirit of interoperability and customer convenience, Apple would make it simple to determine what the URL is.</font> <p><font size=2 face="sans-serif">Well, no. They didn't get that memo. Not only does the iCloud UI not make this information available&#8224;, </font><a href="http://blog.muehlbachler.org/2011/08/how-to-icloud-calendars-with-third-party-software/"><font size=2 color=blue face="sans-serif">Apple's lawyers come after you</font></a><font size=2 face="sans-serif"> with long sharp knives and gleaming teeth if you provide people a tool to tell them what the URLs are. Daniel Mühlbachler has written such a tool, and apparently can get away with making it available if he makes it impossible for anyone but developers to use, by only providing Java and PHP source code. To be fair, this does make it harder for someone to steal people's IDs, since you can read the source to check whether it's sending your login information off somewhere. But it makes the functionality unavailable to the average user. Fortunately, I know these programming environments, so I was able to compile the tool and use it to find the URL I needed. But why does Apple make this so hard?</font> <p><font size=2 face="sans-serif">Now for my Android phone. By this point it came as no surprise to me that there was nothing already on my phone to do this, and I wasn't too shocked that Apple didn't offer a free app for it. But fortunately, an enterprising third party has made this capability </font><a href="https://play.google.com/store/apps/details?id=org.dmfs.caldav.icloud"><font size=2 color=blue face="sans-serif">available for the low low price of $2.81</font></a><font size=2 face="sans-serif">. Who knows whether it will continue to work... Apple or Google might make some change that breaks it. But anyway, we're set for now -- provisionally!</font> <p><font size=2 face="sans-serif">--- --- --- --- --- ---</font> <p><font size=2 face="sans-serif">* My <em>preferred</em> mail reader is <span style="text-decoration:line-through">Lotus</span> IBM Notes 9.0, but among free, open-source software such as I can put on my netbook without being obligated to pay anything to anyone, I think Thunderbird is best. Or at least, Lightning is a little buggy, but I don't see enough benefit in looking for something better.</font> <p><font size=2 face="sans-serif">&#8224; It's possible to get the URL of a private calendar if you read a lot of Apple forums to find out how, and copy and paste long hex IDs from URL they do provide, into a template CalDav URL. But private calendars are read-only for the people you share them with, and the same technique doesn't work for a shared calendar.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/apples-attitude</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/apples-attitude?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Searching for design elements 100 times faster</title>
<pubDate>Tue, 8 Jan 2013 07:53:07 -0500</pubDate>
<description>
<![CDATA[ 
Often, entries in this blog are in reaction to questions I get, or someone else's code I've run across. One of the reasons things have been so quiet here is that my job has changed so that's not happe ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/search-design-elements-faster</link>
<category>performance</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/search-design-elements-faster?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/search-design-elements-faster</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">Often, entries in this blog are in reaction to questions I get, or someone else's code I've run across. One of the reasons things have been so quiet here is that my job has changed so that's not happening as often. But every now and them I'm reminded that there are things I know that it hadn't occurred to me weren't obvious, until I run across another developer who didn't know it.</font> <p><font size=2 face="sans-serif">That's the case with this tip. Someone mentioned that it was taking their code a long time to scan mail files to see whether there were any design elements that were protected from design refresh/replace (aside from personal folders, where this is expected). I didn't know what they meant by "a long time," so I wrote a few lines of code to scan my mail file, and wrote back that when accessing the file on a server, I couldn't see how to do the search faster than about one or two seconds, and what was their target?</font> <p><font size=2 face="sans-serif">As it turned out, 2 seconds was a considerable improvement over the 220 seconds average they'd been experiencing. The difference was caused by their opening each design note and checking the $Flags and $Class items in it, whereas my code just handed the server a selection formula and let the server do the heavy lifting. Here's my code (using LotusScript because it's my favorite, but it's simple to translate to Java if you're so inclined):</font> <p><font size=2 face="sans-serif"><div class="code">Dim tt As Single</font> <p><font size=2 face="sans-serif">tt = Timer</font> <br /><font size=2 face="sans-serif">Dim db As New NotesDatabase("<em>server</em>", "<em>filepath</em>")</font> <br /><font size=2 face="sans-serif">Dim nnc As NotesNoteCollection</font> <br /><font size=2 face="sans-serif">Set nnc = db.CreateNoteCollection(False)</font> <br /><font size=2 face="sans-serif">nnc.SelectAllDesignElements True</font> <br /><font size=2 face="sans-serif">nnc.SelectionFormula = { @If(@Contains($Flags; "P") | $Class != ""; $Flags != "3PFY"; @False) }</font> <br /><font size=2 face="sans-serif">nnc.BuildCollection</font> <br /><font size=2 face="sans-serif">Print nnc.Count &amp; " found - " &amp; (Timer - tt) &amp; " seconds."</div></font> <p><font size=2 face="sans-serif">(Of course, if any protected design elements were found, it would take extra time if you wanted to generate a list of their names and types, but just confirming a mail file is "clean" -- that nnc.Count = 0 -- is that fast).</font> <p><font size=2 face="sans-serif">The reason for the difference is the same as the reason it's faster to search for documents using the built-in search functions than to iterate through all the documents in a database; when the server searches, it can use indexes and summary fields, plus it has access to all the documents locally rather than through network transactions. An NSF file also contains an internal index of design elements, very similar to a view, which helps in conducting design element searches (I'm not certain whether that was a factor in this case). If you open a design element using a NotesDocument object, the entire design element has to be fetched from the server. If you use the selection formula, the only information sent back over the network is the list of matching note IDs.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/search-design-elements-faster</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/search-design-elements-faster?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Speak at Pulse?</title>
<pubDate>Wed, 17 Oct 2012 12:55:51 -0500</pubDate>
<description>
<![CDATA[ 
If you're thinking of submitting an abstract to the Pulse 2013 conference in Las Vegas, you might like to register for this webcast that explains the process. If you've been doing something interestin ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/speak-at-pulse</link>
<category>Education</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/speak-at-pulse?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/speak-at-pulse</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">If you're thinking of submitting an abstract to the </font><a href="http://www-01.ibm.com/software/tivoli/pulse/call-for-speakers/index.html"><font size=2 color=blue face="sans-serif">Pulse 2013</font></a><font size=2 face="sans-serif"> conference in Las Vegas, you might like to register for </font><a href="https://engage.vevent.com/index.jsp?seid=43115&amp;eid=556"><font size=2 color=blue face="sans-serif">this webcast</font></a><font size=2 face="sans-serif"> that explains the process. If you've been doing something interesting with IBM technologies, here's your chance to shine!</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/speak-at-pulse</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/speak-at-pulse?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Sample code for LCLSX file attachments article</title>
<pubDate>Wed, 5 Sep 2012 12:50:27 -0500</pubDate>
<description>
<![CDATA[ 
I keep getting asked where to get the sample code for the article "Working with file attachments in the LCLSX", which used to be in the Lotus Sandbox before that went away. The code is here: LcLsxTra ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/sample-code-for-lclsx-file-attachments-article</link>
<category>LotusScript</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/sample-code-for-lclsx-file-attachments-article?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/sample-code-for-lclsx-file-attachments-article</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">I keep getting asked where to get the sample code for the article "</font><a href="http://www.ibm.com/developerworks/lotus/library/lclsx-attachments/index.html"><font size=2 color=blue face="sans-serif"><span style="text-decoration:underline">Working with file attachments in the LCLSX</span></font></a><font size=2 face="sans-serif">", which used to be in the Lotus Sandbox before that went away.</font><font size=3> </font> <p><font size=2 face="sans-serif">The code is here:</font><font size=3> <a href="http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/LcLsxTracy.nsf/$file/LcLsxTracy.nsf" title="LcLsxTracy.nsf"LcLsxTracy.nsf/>LcLsxTracy.nsf</a></font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/sample-code-for-lclsx-file-attachments-article</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/sample-code-for-lclsx-file-attachments-article?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Why inboxes fail</title>
<pubDate>Wed, 13 Jun 2012 18:47:19 -0500</pubDate>
<description>
<![CDATA[ 
I've been doing some research recently into what causes email to fail to be delivered into inboxes, although it is visible in the All Documents view. I was concerned with this mainly because the recom ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/why-inboxes-fail</link>
<category>SmartCloud</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/why-inboxes-fail?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/why-inboxes-fail</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">I've been doing some research recently into what causes email to fail to be delivered into inboxes, although it is visible in the All Documents view. I was concerned with this mainly because the recommended corrective action (copy compact) isn't an option for SmartCloud Notes users and their local admins, who don't have access to the users' mail servers to issue console commands.</font> <p><font size=2 face="sans-serif">Conventional wisdom, and our technotes, claim that the problem is that the "inbox index gets corrupted". But it looks like that's not what's really going on.</font> <p><font size=2 face="sans-serif">The mail router wants a folder to put its mail into that has a $Name item with value "($Inbox)". But it doesn't search the database for such a folder every time it wants to deliver mail. Instead, for performance, it expects the note ID of the inbox folder to be available in a field of the database header, "InboxRRV". If this value is missing (zero), the mail router decides there's not an inbox folder. If it points to the wrong folder, the mail router cheerfully delivers the mail there.</font> <p><font size=2 face="sans-serif">The command <strong>fixup -j</strong>, or a copy compact should reset the InboxRRV (the latter because it reassigns all the note IDs). But as I noted, in some cases this is not an option, and even if the local admin has the rights to do it, it would be better if an end user could correct the problem themselves. (Or if it didn't happen in the first place, but I'll get to that).</font> <p><font size=2 face="sans-serif">I've learned that there's code in the "note update" to check whether the note being updated is the inbox, and assign the InboxRRV accordingly. That means that modifying the inbox folder design note should restore its function as an inbox. Refresh/replace design often doesn't work for this because, if the inbox folder already has the correct design; it doesn't get updated (unless you replace design from a different template).</font> <p><font size=2 face="sans-serif">How does the value of InboxRRV get clobbered in the first place, when there <em>is </em>a valid inbox in the nsf? I'm not sure I know all the ways, but suppose the folder referred to by InboxRRV gets deleted, or is updated in a way that makes it no longer a valid inbox. I believe the note update and delete events will clear InputRRV in this case. But they apparently fail to search the database for other notes that meet the criteria for being an inbox. So let's say a new folder gets created that has $Name="($Inbox)" (its $TITLE might contain a different name). It gets associated as the new inbox. If it is then deleted, or if it's updated and the $Name value is changed, the InboxRRV is cleared, but the inbox folder we'd like to use instead doesn't take its place. That's what I think is going on. I have to experiment and write up a bug report, if so.</font> <p><font size=2 face="sans-serif">I have a tool I'm working on to fix this problem, which can be used by a Notes client user who has only editor+views access to their own mail file. In addition to the above, this tool looks for duplicate inbox folders, <em>views</em> named "($Inbox)", and folders with $Name="($Inbox)" but a different title. I might think of some more things to look for (or you might suggest some).</font> <p><font size=2 face="sans-serif">The main corrective action is to "touch" the Inbox design note (after deleting or repairing other folders that may be confusing the issue). This should force an update on the InboxRRV (and in addition, if the index really <em>is </em>corrupted, it would force a rebuild, so we still win). As a last resort, this tool also has another button to blow away the inbox and create a new one. I <em>think</em> that should never be necessary, but I have it on there, labeled "try this last."</font> <p><font size=2 face="sans-serif">I'm giving this tool to our own support folks to see how well it works for SmartCloud Notes customers, and whether we ever actually need the "delete and re-create" button. If it works out I'll probably make it more generally available.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/why-inboxes-fail</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/why-inboxes-fail?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>You can read a story of mine...</title>
<pubDate>Thu, 10 May 2012 06:33:22 -0500</pubDate>
<description>
<![CDATA[ 
In the recent anthology Sky-Tinted Waters from SamsDot, my story "Misprint" appears. It's about a young stage magician and a trick that works a little too well, and the dangers of not reading ahead to ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/you-can-read-a-stori-of-mine...</link>
<category>Fun and Games</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/you-can-read-a-stori-of-mine...?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/you-can-read-a-stori-of-mine...</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">In the recent anthology </font><a href=http://sdpbookstore.com/anthologies.htm#skytintedwaters><font size=2 color=blue face="sans-serif">Sky-Tinted Waters</font></a><font size=2 face="sans-serif"> from SamsDot, my story "Misprint" appears. It's about a young stage magician and a trick that works a little too well, and the dangers of not reading ahead to the end of the instructions. The other stories are also very good and I'm enjoying reading it.</font> <br /> <br /><font size=2 face="sans-serif">I hope a bunch of you will buy copies, and that you'll find the stories entertaining. No ebook version is planned at present.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/you-can-read-a-stori-of-mine...</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/you-can-read-a-stori-of-mine...?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Question about non-ASCII Domino domain names</title>
<pubDate>Tue, 21 Feb 2012 07:55:14 -0500</pubDate>
<description>
<![CDATA[ 
This is a survey, especially for OUS based admins. How many of you are using Domino domain names that contain non-ASCII characters? In your experience working with customers, is that pretty common? If ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/question-about-non-ascii-domain-names</link>
<category>Administration</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/question-about-non-ascii-domain-names?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/question-about-non-ascii-domain-names</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">This is a survey, especially for OUS based admins. How many of you are using Domino domain names that contain non-ASCII characters? In your experience working with customers, is that pretty common? If you don't use them, is it because of any specific problem, or just because the documentation doesn't list them as valid characters?</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/question-about-non-ascii-domain-names</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/question-about-non-ascii-domain-names?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Finding the length of a LMBCS string</title>
<pubDate>Mon, 13 Feb 2012 17:06:17 -0500</pubDate>
<description>
<![CDATA[ 
Today I needed to use LotusScript to find the length of a string, in bytes. It took a little experimentation, so I figured I should post it here in case anyone else might sometime find it useful. This ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/finding-the-length-of-a-lmbcs-string</link>
<category>LotusScript</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/finding-the-length-of-a-lmbcs-string?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/finding-the-length-of-a-lmbcs-string</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">Today I needed to use LotusScript to find the length of a string, in bytes. It took a little experimentation, so I figured I should post it here in case anyone else might sometime find it useful. This is in LotusScript; there's probably an easier way in Java, but I needed it for a form validation.</font><font size=3> </font><font size=1 color=#00a000 face="Andale Mono"><strong><br /> <div class="code">%REM</strong></font><font size=3> </font><font size=1 color=#00a000 face="Andale Mono"><strong><br />  &nbsp; &nbsp; &nbsp; &nbsp;Function LmbcsLen</strong></font><font size=3> </font><font size=1 color=#00a000 face="Andale Mono"><strong><br />  &nbsp; &nbsp; &nbsp; &nbsp;Description: Return the number of bytes in a string if expressed in LMBCS character set.</strong></font><font size=3> </font><font size=1 color=#00a000 face="Andale Mono"><strong><br />  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Strings in LotusScript are in Unicode, but are converted to LMBCS when stored</strong></font><font size=3> </font><font size=1 color=#00a000 face="Andale Mono"><strong><br />  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;in items or passed to C API functions.</strong></font><font size=3> </font><font size=1 color=#00a000 face="Andale Mono"><strong><br /> %END REM</strong></font><font size=3> </font><font size=1 color=#0000e0 face="Andale Mono"><strong><br /> Function</strong></font><font size=1 face="Andale Mono"> LmbcsLen(x$) </font><font size=1 color=#0000e0 face="Andale Mono"><strong>As</strong></font><font size=1 face="Andale Mono"> </font><font size=1 color=#0000e0 face="Andale Mono"><strong>Long</strong></font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 color=#0000e0 face="Andale Mono"><strong>Dim</strong></font><font size=1 face="Andale Mono"> session </font><font size=1 color=#0000e0 face="Andale Mono"><strong>As</strong></font><font size=1 face="Andale Mono"> </font><font size=1 color=#0000e0 face="Andale Mono"><strong>New</strong></font><font size=1 face="Andale Mono"> NotesSession, db </font><font size=1 color=#0000e0 face="Andale Mono"><strong>As</strong></font><font size=1 face="Andale Mono"> NotesDatabase, docTmp </font><font size=1 color=#0000e0 face="Andale Mono"><strong>As</strong></font><font size=1 face="Andale Mono"> NotesDocument</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 color=#0000e0 face="Andale Mono"><strong>Dim</strong></font><font size=1 face="Andale Mono"> mime </font><font size=1 color=#0000e0 face="Andale Mono"><strong>As</strong></font><font size=1 face="Andale Mono"> NotesMIMEEntity, streamIn </font><font size=1 color=#0000e0 face="Andale Mono"><strong>As</strong></font><font size=1 face="Andale Mono"> NotesStream, streamOut </font><font size=1 color=#0000e0 face="Andale Mono"><strong>As</strong></font><font size=1 face="Andale Mono"> NotesStream</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 color=#0000e0 face="Andale Mono"><strong>Set</strong></font><font size=1 face="Andale Mono"> db = session.CurrentDatabase</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 color=#0000e0 face="Andale Mono"><strong>Set</strong></font><font size=1 face="Andale Mono"> docTmp = db.CreateDocument</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 color=#0000e0 face="Andale Mono"><strong>Set</strong></font><font size=1 face="Andale Mono"> mime = docTmp.CreateMIMEEntity(</font><font size=1 color=#4100c2 face="Andale Mono"><em>"Body"</em></font><font size=1 face="Andale Mono">)</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 color=#0000e0 face="Andale Mono"><strong>Set</strong></font><font size=1 face="Andale Mono"> streamIn = session.CreateStream</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;streamIn.WriteText x</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;streamIn.Position = </font><font size=1 color=#4100c2 face="Andale Mono"><em>0</em></font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 color=#0000e0 face="Andale Mono"><strong>Call</strong></font><font size=1 face="Andale Mono"> mime.SetContentFromText(streamIn, </font><font size=1 color=#4100c2 face="Andale Mono"><em>"text/plain;charset=LMBCS"</em></font><font size=1 face="Andale Mono">, ENC_NONE)</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;</font><font size=1 color=#0000e0 face="Andale Mono"><strong>Set</strong></font><font size=1 face="Andale Mono"> streamOut = session.CreateStream</font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;mime.getContentAsBytes streamOut, </font><font size=1 color=#0000e0 face="Andale Mono"><strong>False</strong></font><font size=3> </font><font size=1 face="Andale Mono"><br />  &nbsp; &nbsp; &nbsp; &nbsp;LmbcsLen = streamOut.Bytes</font><font size=3> </font><font size=1 color=#0000e0 face="Andale Mono"><strong><br /> End</strong></font><font size=1 face="Andale Mono"> </font><font size=1 color=#0000e0 face="Andale Mono"><strong>Function</strong></font><font size=3></div></font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/finding-the-length-of-a-lmbcs-string</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/finding-the-length-of-a-lmbcs-string?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>New Best Practices Wiki</title>
<pubDate>Tue, 10 Jan 2012 11:11:40 -0500</pubDate>
<description>
<![CDATA[ 
There's a new wiki about Domino development best practices. It was written by various experts in and out of IBM, and I followed up with a lot of edits myself, so I'm an after the fact contributor. It' ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/new-bp-wiki</link>
<category>Domino Application Performance</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/new-bp-wiki?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/new-bp-wiki</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">There's a new </font><a href="http://www-10.lotus.com/ldd/ddwiki.nsf/xpViewCategories.xsp?lookupName=Redbooks%20Wiki%3A%20Lotus%20Domino%20Development%20Best%20Practices"><font size=2 color=blue face="sans-serif"><span style="text-decoration:underline">wiki about Domino development best practices</span></font></a><font size=2 face="sans-serif">. It was written by various experts in and out of IBM, and I followed up with a lot of edits myself, so I'm an after the fact contributor. It's brand new so there are probably some mistakes, which I hope you people who know what you're doing, will correct.</font><font size=3> </font> <p><font size=2 face="sans-serif">I think this will be a good resource for developers, and I'm adding a link to my list of links on the right.</font><font size=3> </font> <p><font size=2 face="sans-serif">In other news, if you'd like to read a short story by me (under my fiction alias of Tyler Tork), there's one in the December 2011 issue of </font><a href=http://www.rampantloonmedia.com/><font size=2 color=blue face="sans-serif"><span style="text-decoration:underline">Stupefying Stories</span></font></a><font size=2 face="sans-serif">, available for </font><a href=http://www.amazon.com/dp/B006NM2Q4C target=_blank><font size=2 color=blue face="Arial"><span style="text-decoration:underline">Kindle</span></font></a><font size=2 face="Arial">, </font><font size=3 color=blue><span style="text-decoration:underline"><br /> </span></font><a href="http://www.barnesandnoble.com/w/stupefying-stories-bruce-bethke/1106464110?ean=2940013865723" target=_blank><font size=2 color=blue face="Arial"><span style="text-decoration:underline">Nook</span></font></a><font size=2 face="Arial"> or on </font><a href="http://itunes.apple.com/us/artist/bruce-bethke/id450044830?mt=11" target=_blank><font size=2 color=blue face="Arial"><span style="text-decoration:underline">iTunes</span></font></a><font size=2 face="sans-serif">.</font><font size=3> </font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/new-bp-wiki</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/new-bp-wiki?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>New wiki document for the Notes client app developer</title>
<pubDate>Thu, 17 Nov 2011 12:34:02 -0500</pubDate>
<description>
<![CDATA[ 
The new document, Controlling Document Editing in a Notes Client Application, is intended for novices and will probably not contain a lot of news for the regular readers of this blog. But for those ex ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/new-wiki-document-for-the-traditional</link>
<category>Domino Development Tools and Techniques</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/new-wiki-document-for-the-traditional?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/new-wiki-document-for-the-traditional</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">The new document, </font><a href="http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Controlling_Document_Editing_in_a_Notes_Client_Application"><font size=3 color=blue><strong><span style="text-decoration:underline">Controlling Document Editing in a Notes Client Application</span></strong></font></a><font size=2 face="sans-serif">, is intended for novices and will probably not contain a lot of news for the regular readers of this blog. But for those experienced developers here, I welcome your comments, corrections, questions about what the heck I meant by this sentence, etcetera. This is where the collaboration part comes in. Thanks.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/new-wiki-document-for-the-traditional</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/new-wiki-document-for-the-traditional?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Overly Social</title>
<pubDate>Tue, 15 Nov 2011 07:07:52 -0500</pubDate>
<description>
<![CDATA[ 
It seems like a lot of companies are still struggling to figure out how this social stuff can be used to aid their marketing. It might be just me, but some of them seem to be wandering far into the To ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/overly-social</link>
<category>General Musings</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/overly-social?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/overly-social</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">It seems like a lot of companies are still struggling to figure out how this social stuff can be used to aid their marketing. It might be just me, but some of them seem to be wandering far into the Too Much Information zone.</font> <p><font size=2 face="sans-serif">I'm not even talking about the information the companies themselves publish, though why anyone would want to subscribe to the Twitter feed of a Chinese buffet restaurant or a hotel has frankly been puzzling me for a while. No, I'm talking about the information the companies want to help us publish about ourselves and our use of their products.</font> <p><font size=2 face="sans-serif">Take for instance a certain restaurant chain. I ordered online from their website, and what do I see on the ordering page? Yes, that's a Facebook button. Really, there's not enough trivia on Facebook, the restaurant thinks everyone I know needs to know what I'm having for dinner? I try to keep my posts useful, entertaining, interesting.</font> <p><font size=2 face="sans-serif">Then there's another new thing on Facebook -- I sincerely hope it's a fad. The "Social Reader" application posts every article you <em>open</em> in a given publication onto Facebook. Once you've allowed this application the ability to write to your wall, the instant you follow a link to the article, everybody knows of your interest in celebrity plastic surgery or whatever.</font> <p><font size=2 face="sans-serif">I really value that my Facebook friends can share articles they've enjoyed. I find out some worthwhile things, experience different points of view, and learn something about the person. But, not speaking for anyone else, I can't tell whether an article is worth sharing just from the title. I read lots of things online, and a fairly small proportion are worth passing on. When I post, again, I want it to <em>mean something</em> -- not just to vainly share every tiniest detail of my life in the presumption that someone might be interested. We are drowning in a flood of trivia already.</font> <p><font size=2 face="sans-serif">I know, I can hide those updates in my own feed. And I have (the Social Reader ones -- I've never seen a red hot meal update from that restaurant chain, so I don't know whether I can filter them easily). I just don't understand why people would choose allow those Social Readers and so on access to speak for them. I can understand people might be curious to read the article, but go to the newspaper's website and search for it there. Don't publish a link until you know it's worth publishing!</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/overly-social</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/overly-social?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>The SQL Query of Doom</title>
<pubDate>Thu, 10 Nov 2011 07:09:35 -0500</pubDate>
<description>
<![CDATA[ 
I suspect this can be simplified. Thought people might find it amusing. ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/the-query-of-death</link>
<category>Fun and Games</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/the-query-of-death?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/the-query-of-death</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">I suspect </font><a href="http://thedailywtf.com/Articles/The-Query-of-Despair.aspx"><font size=2 color=blue face="sans-serif">this</font></a><font size=2 face="sans-serif"> can be simplified. Thought people might find it amusing.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/the-query-of-death</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/the-query-of-death?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>LotusScript Gold Collection 1.3</title>
<pubDate>Mon, 31 Oct 2011 12:03:12 -0500</pubDate>
<description>
<![CDATA[ 
A new version of the "LotusScript Gold Collection" toolkit is available on openntf.org. It includes the much requested NotesGroupManager library which used to be in the Lotus Sandbox, and a way to cal ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/lotusscript-gold-collection-1.3</link>
<category>Code Reuse</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/lotusscript-gold-collection-1.3?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/lotusscript-gold-collection-1.3</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">A new version of the "</font><a href="http://www.openntf.org/internal/home.nsf/releases.xsp?action=openDocument&amp;name=LotusScript%20Gold%20Collection&amp;documentId&ETH;CA44F83FF8307586257616006C6D64"><font size=2 color=blue face="sans-serif"><span style="text-decoration:underline">LotusScript Gold Collection</span></font></a><font size=2 face="sans-serif">" toolkit is available on openntf.org. It includes the much requested NotesGroupManager library which used to be in the Lotus Sandbox, and a way to call Notes C API functions without having to check which OS you're using before each call. The latter might not work on all servers, but the problem has been reported to the LotusScript team in development. It works great on all clients (and you could easily make a server version, it's just not as efficient as you must load the classes for all supported OS instead of using dynamic loading).</font><font size=3> </font> <br /> <br /><font size=3>And, if you're interested in the doing of my alter ego, Tyler Tork, you can read a Halloween tale on my other blog (link on right).</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/lotusscript-gold-collection-1.3</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/lotusscript-gold-collection-1.3?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Searching for blank date fields, and what makes a supported feature</title>
<pubDate>Mon, 31 Oct 2011 05:15:00 -0500</pubDate>
<description>
<![CDATA[ 
Timothy Briley asked: I've noticed that over time you've written a bit about valid searches in Lotus Ntoes. Can you comment one way or another on whether or not this is a valid search method: To find ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/searching-for-blank-date-fields</link>
<category>Search</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/searching-for-blank-date-fields?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/searching-for-blank-date-fields</guid>
<content:encoded><![CDATA[ <font size=1 face="Default MultiLingual">Timothy Briley asked:</font> <br /><font size=1 face="Default MultiLingual"><blockquote></font> <br /><font size=1 face="Default MultiLingual">I've noticed that over time you've written a bit about valid searches in Lotus Ntoes. Can you comment one way or another on whether or not this is a valid search method:<br /> To find documents in a view containing an empty date field manually by using the search bar or programatically using notesView.FTSearch:<br /> Not(&#91;fieldName&#93; > 0)<br /> If this is a valid method, why isn't it documented?</blockquote></font> <br /><font size=1 face="Default MultiLingual">It is seems to work for you, fine. Many things are not documented. Sometimes this is because the developer didn't tell anyone about it, sometimes because it wasn't a planned feature (as I suspect is the case here), and sometimes because we don't want to commit to supporting it indefinitely. When you try to make each version of a product able to support applications created in all previous versions, you have to be careful about what you call a supported feature.</font> <br /><font size=1 face="Default MultiLingual">So in general, if something is not documented, you should use it with care and make a special point to test it out before you upgrade your Notes/Domino installation, to make sure it still works in the new version.</font> <br /><font size=1 face="Default MultiLingual">In this case, there's a supported way to do what you're looking to do. The "is present" syntax, which is documented, will let you find documents that do, or do not, contain a value in a given field.</font> <br /><font size=1 face="Default MultiLingual">However, depending on your application, this may not be the most efficient way to do your search. Please see the wiki article </font><a href="http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Searching_for_Documents"><font size=3 color=blue><span style="text-decoration:underline">Searching for Documents</span></font></a><font size=1 face="Default MultiLingual"> for some guidelines.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/searching-for-blank-date-fields</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/searching-for-blank-date-fields?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>Sametime server owners take note</title>
<pubDate>Fri, 28 Oct 2011 08:55:19 -0500</pubDate>
<description>
<![CDATA[ 
http://www-01.ibm.com/support/docview.wss?uid=swg21569452 Please apply this security fix to your Sametime servers. Thanks ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/sametime-server-owners-take-note.</link>
<category>Security</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/sametime-server-owners-take-note.?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/sametime-server-owners-take-note.</guid>
<content:encoded><![CDATA[ <a href="http://www-01.ibm.com/support/docview.wss?uid=swg21569452"><font size=2 color=blue face="Arial"><span style="text-decoration:underline">http://www-01.ibm.com/support/docview.wss?uid=swg21569452</span></font></a> <br /> <br /><font size=2 face="sans-serif">Please apply this security fix to your Sametime servers. Thanks</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/sametime-server-owners-take-note.</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/sametime-server-owners-take-note.?opendocument&amp;comments</wfw:comment>
</item>
<item>
<title>What I&#8217;ve been working on...</title>
<pubDate>Wed, 8 Jun 2011 07:18:14 -0500</pubDate>
<description>
<![CDATA[ 
One reason I haven't been posting here much recently, is that I've been working on LotusLive configuration tools, and I didn't think that would be of general interest. These would be the NSFs that end ...
 ]]>
</description>
<link>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/what-ive-been-working-on...</link>
<category>General Musings</category>
<dc:creator>Andre Guirard</dc:creator>
<comments>http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/what-ive-been-working-on...?opendocument&amp;comments</comments>
<guid isPermaLink="true">http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/what-ive-been-working-on...</guid>
<content:encoded><![CDATA[ <font size=2 face="sans-serif">One reason I haven't been posting here much recently, is that I've been working on LotusLive configuration tools, and I didn't think that would be of general interest. These would be the NSFs that end users download to configure their workstations to access LotusLive Notes, and the one that the on-premises administrator in a "hybrid" organization uses to set up their servers to communicate with LotusLive's servers to deliver mail, etc. It's a lot of complicated application development for the Notes client, which is what I love.</font> <p><font size=2 face="sans-serif">So I can talk about some of the ins and outs of LotusLive client and hybrid server setup, how users are migrated, how we know when to delete their old mail files, and so on, if that's of interest here. Or if you have topics you'd like to see more about, please respond in comments.</font>  ]]></content:encoded>
<wfw:commentRss> http://www-10.lotus.com/ldd/bpmpblog.nsf/dxcomments/what-ive-been-working-on...</wfw:commentRss>
<wfw:comment> http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/what-ive-been-working-on...?opendocument&amp;comments</wfw:comment>
</item>
</channel></rss>
