OLE dokumenty

Jednou z možných kategórií dokumentov sú "OLE dokumenty". Ide o dokumenty využívajúce na uloženie a zobrazenie obsahu tzv. OLE technológiu. V tejto kap. nájdete informácie týkajúce sa tejto kategórie:

Do v. 9.02 vrátane slúžila na zadávanie tzv. OLE dokumentov samostatná agenda "OLE dokumenty". To sa od v. 9.03 zmenilo, viac viď v agende Dokumenty. Možnosť evidovania OLE dokumentov však zostala zachovaná v pôvodnej podobe (viď Často kladené otázky - Je možné vo v. 9.03 a vyšších zadávať "OLE dokumenty" tak, ako v predchádzajúcich verziách?).

Stručné objasnenie podstaty OLE technológie

ABRA Gen disponuje podporou pre využitie tzv. OLE objektov, registrovaných vo Windows, využívajúce OLE technológiu na dynamickú výmenu dát. Toto riešenie teda nevyžaduje programovanie rôznych editorov, prehliadačov apod., pre rôzne typy príloh - to by len zbytočne "nafukovalo" celú aplikáciu a komplikovalo užívateľovi prácu (možné odlišnosti v ovládaní vlastných editorov od štandardných Windows editorov apod.). Naopak umožňuje využívať iné Windows aplikácie a to tie, ktoré má užívateľ na svojom PC k dispozícii.

Laicky objasníme podstatu: keď si inštalujete nejakú windows aplikáciu na váš počítač, táto si registruje svoje objekty vo Windows. Keď potom chcete ako prílohu (teda obsah dokladu typu Dokumenty v agende Dokumenty) vytvoriť alebo pripojiť nejaký fyzický dokument tvorený v tejto aplikácii, vložíte vlastne objekt typu "dokument tejto aplikácie". Tento objekt má nadefinované, ako sa má správať, aké má vlastnosti, k akej aplikácii patrí, akou ikonkou bude reprezentovaný, aké obsahuje dáta apod. Keď s ním potom potrebujete nejako manipulovať (napr. editovať ho), on potom už "sám vie", že prostredníctvom služieb operačného systému má vyvolať "svoju" aplikáciu, odovzdať jej "svoje" dáta a otvoriť sa v nej. Užívateľ sa nemusí o nič starať a pohodlne si oedituje "svoju prílohu" v automaticky otvorenej aplikácii bez toho, aby musel nejako ukončovať beh systému ABRA alebo sa niekam ručne prepínať apod. Vyvolanie aplikácie, ktorá daný obsah dokumentu detailne zobrazí, je veľmi jednoduché (doubleclick, dvojité kliknutie myšou na zobrazovaný obsah v záložke Obsah dokladu OLE dokument).

Táto technológia má však bohužiaľ aj svoje nevýhody, viď Možné problémy s "OLE dokumentmi".

Využitie objasníme na príkladoch:

Príklad 1: Vášmu klientovi chcete poslať obchodnú ponuku. Jednou možnosťou je otvoriť si nejaký textový editor, napr. Word, v ňom ponuku napísať, uložiť a vytlačiť. A pak jen zbývá si "pamatovat", že pro tuto firmu jste "někdy" (třeba před několika měsíci) vytvořili "nějakou" (ale už přesně nevíte jakou) obchodní nabídku, kterou jste si uložili "někam" (ale kam?).... o informovanosti vašich kolegů o této akci ani nemluvě.

ABRA Gen nabízí jiné řešení: v agendě Dokumenty si vytvoříte nový dokument typu OLE dokumenty. Vyplníte jeho "hlavičkové" údaje, nutné pre jeho neskoršiu identifikáciu, ako je napr. zviazanie s nejakou firmou z adresára apod. a potom zadáte jeho obsah, ktorým v tomto prípade má byť onen "wordovský" súbor. Ak ho už máte hotový, len ho "pripojíte", pokiaľ zatiaľ neexistuje, môžete si rovno vytvoriť nový. Jednoducho zvolíte, že chcete dokument vo Worde. "Zavolá" se příslušný OLE objekt pro "wordovský" dokument, který již zajistí vše ostatní: vytvoří tzv. instanci objektu této třídy, otevře aplikaci MS Word, v níž vytvoříte váš dopis, který se po uložení v agendě Dokumenty uloží do databáze ABRA Gen.

Príklad 2: Od vášho klienta vám príde e-mail, ktorého obsah by ste si chceli poznamenať k objednávke vystavovanej na danú firmu. Môžete ho napr. uchopiť myšou a "pretiahnuť" na plochu (tým sa mail uloží ako súbor napr. súbor typu *.eml). Pak jej stačí např. jednoduše vzít (zkopírovat) do clipboardu, v ABRA Gen si založit nový dokument pro tuto firmu a v jeho obsahu použít funkci Vložit z clipboardu. "Vyvolaný" OLE objekt daného typu zaistí všetko potrebné, bez interakcie užívateľa. Potom len stačí dokument uložiť a v agende Objednávok prijatých ho v záložke Prílohy pripojiť ku konkrétnej objednávke.

Zobrazovanie vložených objektov, "containery" a OLE servery

Medzi aplikáciami, ktorých objekty je možné vkladať do iných, sú niektoré, ktoré sú tzv. OLE servery. Dá sa povedať, že keď je aplikácia OLE serverom, umožňuje väčší komfort pri poskytovaní dát svojich objektov do iných aplikácií, ako aplikácia, ktorá nie je OLE serverom, napr. pri zobrazovaní obsahu dokumentu apod. Aplikácie, do ktorých je možné vložiť dokumenty vytvorené v iných aplikáciách ako objekty príslušných typov, sa nazývajú "containers" (kontajnery). Mezi ně patří i ABRA Gen.

Objekty vložené do kontejnerů jsou reprezentovány ikonou nebo obrázkem (fotkou, snapshot), závisí na volbě uživatele. Ikona je daná aplikáciou, v ktorej je daný súbor tvorený (je ju ale možné zameniť za inú apod.). Obrázok (fotka) obsahu je tvorený pri vkladaní. Teda pri vkladaní obsahu dokumentu ako objektu do inej aplikácie sa vkladajúca aplikácia postará o to, aby požadovaný obrázok (fotku) obsahu vyrobila. Ten se pak používá pro účely zobrazování obsahu takovýchto dokumentů vytvořených v jiném programu, jsou-li vloženy do aktuálního programu. Keď teda prehliadate napr. v MS Word tabuľku vloženú z MS Excel, prehliadate len jej "obrázok". Až vtedy, keď naň "poklikáte" myšou, zaktivuje sa objekt daného typu, vyvolá sa daná aplikácia a tabuľku editujete. To, aký ten obrázok (fotka) bude, závisí v podstate od toho, o akú aplikáciu, v ktorej bol dokument vytvorený, ide. Ak ide o OLE servery, je obrázok "fotkou" obsahu dokumentu (napr. ak ide o spread-sheet, môže byť obrázkom "vyfotený" obsah zošita naposledy aktívneho pred uložením dokumentu"). Tedy v záložce Obsah v agendě Dokumenty v ABRA Gen vidíte vždy Obsah daného dokumentu (tedy vidíte bitmapu obsahu daného dokumentu), i když třeba nemáte danou aplikaci k dispozici). Súbory z iných aplikácií boli vkladané ako tzv. balíčky (Package) nástrojom "Balíčkovač objektov" (Packager), ktorý je na tento účel určený a ktorý namiesto fotky obsahu vyrobí bitmapu nejakej ikonky, ktorá potom bude obsah reprezentovať (obsah dokumentu teda v záložke Obsah v prehliadacom režime neuvidíte, uvidíte ho jedine až po zaktivovaní daného objektu priamo v otvorenej aplikácii). (Pouze na OS 7 a nižších, viz upozornění.)

Objasníme na príklade:

Príklad: Pokud je tedy do ABRA Gen vložen objekt doc dokumentu (MS Word je OLE server), pak uživatel v záložce Obsah vidí jako obrázek obsah celého dokumentu (jakoby si prohlížel jeho "fotku", či si jej otevřel přímo ve Wordu). Keď je ale vložený napr. objekt txt súboru otváraného v NotePade, tak užívateľ v záložke Obsah uvidí len ikonku reprezentujúcu obrázok a vlastné dáta textového súboru nevidí (uvidí ich jedine po aktivácii objektu a jeho otvorení v zaktivovanej aplikácii NotePad).

Pozor! Principiálne nie je možné získať pôvodné dáta z akéhokoľvek OLE obsahu (teda napr. aj súbor *.doc z OLE obsahu MS Wordu). To je možné len pomocou príslušného OLE servera. V případě OLE obsahu, který neumí zpracovat žádný specifický OLE server (např. MS Word), se této operace na předchozích OS ujal výše zmíněný "Balíčkovač objektů", který byl na OS Windows 7 a nižších schopen "vyhrát" z OLE dokumentu původní soubor.  Od verzie Windows Vista nie je Packager súčasťou operačného systému!

Z toho samozrejme plynie, že na vyšších OS také OLE dokumenty proste nebude možné otvoriť a ich obsah "vyhrať". Nicméně jelikož již není doporučeno používat v systému ABRA Gen "OLE dokumenty", není to pro další použití nijak na závadu. Pokud potřebujete ještě i nyní otevřít takový OLE soubor, je možným řešením jej ručně otevřít např. na stroji s Windows 7 (nebo na virtuálním PC s Windows 7) a soubory znovu nahrát do systému ABRA Gen např. jako dokument typu "obecný soubor" nebo jako "obrázek" apod.

Obrázek (fotka) obsahu dokumentu vloženého jako objekt do ABRA Gen je pamatován v databázi stejně jako konkrétní data. To umožňuje, že si príslušný vložený dokument (resp. jeho obrázok) môžu zobrazovať aj užívatelia, ktorí na svojom počítači danú aplikáciu nemajú apod. Objasníme na príklade:

Uživatel 1 síťové ABRA Gen má ve windows v seznamu registrovaných souborů nastaveno, že soubory s příponou gif mají patřit k aplikaci PhotoShop. Do dokumentu vloží ako objekt obsah súboru *.gif., okrem vlastných dát sa do databázy uloží ako obrázok "fotka" gif obrázka. Užívateľ 2 má nastavené, že súbory gif majú pridruženú aplikáciu InternetExplorer. Keď Užívateľ 2 vytvorí dokument a vloží do neho obsah súboru *.gif, bude jeho obrázok len reprezentujúca ikona. Keď si ale bude prehliadať dokument vytvorený Užívateľom 1, neuvidí len ikonu, ale uvidí "fotku" jeho obsahu presne tak, ako ho vytvoril Užívateľ 1.

Uvedené platí pre windows aplikácie podporujúce drag-and-drop funkcie pre OLE.

Možné problémy pri vytváraní "OLE dokumentov"

V niektorých prípadoch môže pri vytváraní dokumentu program nahlásiť nejakú chybu, kvôli ktorej nemôže požadovanú akciu vykonať. V nasledujúcom texte uvedieme najtypickejšie prípady. Pokiaľ by ste si nevedeli s riešením problému rady, vyžiadajte si odbornú pomoc.

  • Pri snahe vytvoriť dokument zvoleného typu program hlási, že nemôže otvoriť aplikáciu

    Môže sa stať napr. vtedy, ak máte danú aplikáciu už spustenú a ide o takú aplikáciu, ktorú Windows neotvárajú opakovane pri opakovanom spustení.

  • Pri snahe aktivovať obsah dokumentu nejakého typu hlási, že "moniker nemôže otvoriť súbor"

    Ide o situáciu, keď bol obsah do dokumentu vložený ako obsah existujúceho súboru s prepojením na tento súbor. Pamätá sa teda link na tento súbor, ktorý sa potom otvára pri aktivácii obsahu dokumentu. Ak program hlási, že ho nemôže otvoriť, môže to byť napr. z dôvodu, že daný súbor nie je na otvorenie dostupný, tzn. bol zmazaný, premiestnený, premenovaný apod.
     

  • Pri snahe aktivovať obsah dokumentu nejakého typu hlási, že "na vykonanie tejto akcie nie je k súboru pridružený žiadny program"

    Môže ísť o prípad, keď obsah dokumentu vytvoril napr. iný užívateľ na inom PC a keď ide o objekt takého typu, ktorý vyžaduje k aktivácii aplikáciu, ktorú vy na svojom počítači napr. vôbec nemáte inštalovanú. Ďalej môže ísť typicky o prípad, keď obsah bol tvorený objektom typu "Balíček" (Package), ktorý "balil" taký typ súboru, pre ktorý na vašom PC nie je nastavené, v akom programe sa má otvárať. (Len na OS XP a nižších, viď upozornenie.) Objasníme na príklade:

    Majme súbor XY.err, pre ktorý nemáme nastavené, v akom programe sa má otvoriť (prejavuje sa tak, že keď ho chcete spustiť napr. Z Internet Explorera "poklikaním" naň, tak sa neotvorí, systém ponúkne dialógové okno a vyzve vás, aby ste zvolili program na otvorenie). Súbor XY.err vložíme ako objekt do obsahu dokumentu - vloží sa prostredníctvom "balíčkovača objektov" ako objekt typu "Balíček". Keď potom v obsahu daného dokumentu chceme vyvolať jeho editáciu, zobrazí program vyššie uvedené hlásenie. Pokud bychom poté nastavili, že pro otevření tohoto typu souboru se má např. použít program UltraEdit32, nebo NotePad apod. akci zopakovali, k editaci obsahu souboru by se otevřel příslušný program.

    Nastavení přidruženého programu pro otvírání můžete provést např. ve výše zmíněném dialogu nabídnutém po zaklikání na soubor, když jej chcete spustit, nebo podle typu vašeho operačního systému např. ve složce Tento počítač v menu Nastavení ve volbě Možnosti v seznamu registrovaných typů souborů, příp. může být toto nastavení dostupné v menu Start ve volbě Ovládací panely.

     

  • Pri snahe vytvoriť dokument kategórie "OLE dokument" program hlási "Nesprávny reťazec triedy".

    Stane sa to vtedy, keď vo Windows nie je zaregistrovaný OLE objekt s očakávaným OLE ProgId podľa typu OLE dokladu. To môže byť spôsobené tým, že na svojom PC nemáte inštalovanú príslušnú aplikáciu (tým pádom ani registrované objekty s ňou súvisiace).

  • Pri snahe vytvoriť "OLE dokument" program "padá"

    Zvyčajne je to spôsobené tým, že daná aplikácia je chybne nainštalovaná, alebo nejakým spôsobom poškodená. Potom sa pri jej vyvolaní nepodarí založiť dokument (objekt daného typu). Riešením môže byť reinštalácia danej aplikácie.

Používať "OLE dokumenty"?

Kategória určená pre OLE dokumenty, tzn. kategória nadefinovaná s ovládačom "OLE dokumenty", je v systéme k dispozícii z dôvodov spätnej kompatibility. Do v. 9.02 vč. byla technologie OLE dokumentů jedinou možnou, která byla v systému ABRA Gen pro evidenci dokumentů k dispozici. Bola určená primárne iba pre formát súborov, ktorý je podporovaný OLE aplikáciou nainštalovanou na danom PC. Ak takáto aplikácia nie je správne nainštalovaná, daný dokument nie je možné otvoriť a zobraziť. Viď vyššie Možné problémy s "OLE dokumentmi".

Od v. 9.03 je k dispozícii podpora pre rôzne formáty súborov, a nie je preto nutné kategóriu OLE dokumenty používať. Súbor si môžete vložiť pomocou kategórie určenej priamo pre neho (napr. obrázky, ISDOC doklady a pod.) alebo môžete použiť kategóriu Všeobecný súbor.

V budúcej verzii sa plánuje doplnenie systému i o možnosť odkladania do externých DMS systémov a o vyhľadávanie podľa kľúčových slov, čo by v obsahu dokumentov uložených ako "OLE dokumenty" nebolo možné.