Při vývoji aplikace pro správu dokumentů jsme narazili na potřebu tuto aplikaci podpořit DMS systémem Quickr. Pro integraci LN aplikací s Quickrem mohou dobře posloužit jak Quickr webowé služby, tak také Quickr REST services, kde se jedná v podstatě o předávání dat pomocí xml feedů.
Provedli jsme ještě těsnější integraci, kterou předvedeme na příkladu. Máme v LN aplikaci dokument řekněme objednávku. Dokument je otevřený ve formuláři. V tomto formuláři je vložený pohled obsahující všechny přílohy k této objednávce. Pohled obsahuje akce pro vkládání příloh, jedna akce umožňuje vložit soubor z disku uživatele a druhá akce, pro nás ta zajímavá, umožňuje vložit soubor z Quickru. Tedy ve skutečnosti vloží jen link na tento soubor.
Jak je akce vytvořena? Je to standardní formula akce, která obsahuje kód:

@DbCommand("qkr":"NoCache"; "InsertLink");

Musíme upřesnit, že tato akce bude funkční pouze pokud jsou nainstalovány Quickr konektory. Na formuláři, kam chceme link vložit, je nutné mít nějaké richtextové pole, umístit do něj kurzor a poté spuštěním výše uvedené formule je zobrazen dialog výběru souboru z Quickru. Po výběru a potvrzení je do richtextového pole vygenerován obsah viz obr. quickr_linkNás zajímá hlavně link, který je zde obsažen. Lze ho pomocí práce s textem vyextrahovat (pole musí mít nastaveno ukládání obsahu jako html) a uložit kam potřebujeme. V naší aplikaci máme kód pro umístění kurzoru, zobrazení dialogu a vyextrahování linku celý právě ve zmíněné akci pro přidání souboru z Quickru. Když máme získaný tento link, je dále možno např. po dvojkliku na dokument ve vloženém pohledu tento soubor rovnou pomocí REST services stáhnout z Quickru a spustit (zobrazit) nebo např. plánovaný agent může v předem stanovaném okamžiku (např. v průběhu workflow) soubor stáhnout, připojit k mailu a odeslat.

Uvedený formula kód využívá knihovnu ndbqkr.dll, která je po nainstalování Quickr konektorů uložena v programovém adresáři Lotus Notes.

Knihovna obsahuje i další funkce, které však již nejsou tak efektivně využitelné (spíše z neznalosti) nebo je nelze pomocí @DbCommand(”qkr”.. použít. Zde je přehled fukcí, které knihovna obsahuje:

PROMPTSENDATTACHMENTLOCATION – zobrazí výběr složky, po potvrzení neznámý výsledek
SAVEATTACHMENTS – pokud je kurzor v richtextovém poli obsahujícím přílohy, zobrazí dialog, kam soubory uložit (+volba, zda si přejeme soubor v LN nahradit pouze jeho linkem) a po potvrzení je uloží
GETSENDATTACHMENTOPTION – neznámý výsledek
SETSENDATTACHMENTOPTION- neznámý výsledek
DISPLAYPREFERENCES- zobrazí uživatelské nastavení konektorů
INSERTLINK- akce z našeho příkladu

přičem obecný zápis formule je:

@DbCommand("qkr":"NoCache"; "SaveAttachments"; [list of note IDs]; [source db server]:[source db path]; [display status]; [display errors]; [refresh current UI note]);

Hlavní problém je v tom, že nikde nelze nalézt oficiální dokumentaci, která by nám použití těchto funkcí značně usnadnila.