dominoGuru.com
Your Development & Design Resource
Project: Yellowcake - For want of an FTSearch Engine hack!
02/12/2008 11:50 PM by Chris Toohey
When does the want to enhance your own code become scope creep?
I'm getting both amazing results from Project: Yellowcake, as well as seeing some of the solution's limitations. A lot of these are easily addressed (the architecture of the solution allows for that - THANKFULLY), but two tweaks here and four tweaks there... well, my in-my-head release date might just be blown as a result.
Here's a simple example:
Let's say you have an Application Profile defined for your Domino Directory. I give you the option to query this Domino Directory via a simple GET/POST HTTP request (so you can grow your own forms and use them to query the NAB) and return a result set rendered via the given Query Template configuration to whichever content type and formatting you wish.
This is all great - absolutely wonderful stuff - but what if you want to pull up a given document?
Well, right now, I have two types of "actions" if you will - Query and Save, each of which are controlled by their own mechanism and applied logic. For v1.0, I thought that this was good enough. Well, you can pretty much tell what I think now... but I digress.
So, my plan for returning a given document was this: use the
QueryTemplate to return a count=1
document collection
against the target database. The query would have the document's unqiue ID
(@Text(@DocumentUniqueID)
) and use that information to get the
target document, spin it through the Query Template's rendering (a
specific one created to display the given document) and give you the read-only
document (and theoretically an editing-friendly format as well - just a
different Query Template result rendering...). Simple right?
Well, unless you know of a way to (without modifying the target database or
target document) do a db.ftsearch
and basically get
@Text(@DocumentUniqueID) = "blah"
... I'm going to have to account
for this by exanding the current engine.
This, outside of crashing servers and just not having things work, is why we test! Due to this limitation (again, if you know how to do this - please share!!) in the FTSearch engine, I need to get back to writing...