Instalace služby API
Požadavky
- SQL verze Premiera, minimálně ve verzi MS SQL 2016 (platí i pro edici Express)
- Volba "Compatibility level" v administraci SQL musí být nastavena minimálně na "SQL Server 2016 (130)", jinak nemusí korektně proběhnout všechny příkazy:
Základní nastavení
V horní části nastavíme port, na kterém bude webová služba poslouchat. Default cesta k HTML je cesta do adresáře www_api. Je možné zvolit HTTP nebo HTTPS komunikaci. Pro HTTPS komunikaci je nutné zřídit certifikát pro danou doménu, který se pak nastaví v dialogu níže. Ve spodní části pak lze přidat účetní jednotku, která bude na API napojena. Přidat jednotku je možné kliknutím na tlačítko se symbolem PLUS.
Premier path je cesta do adresáře \premier\ - přímo na root složky, tam kde se nachází "premier.exe". Po zadání cesty, klikneme na tlačítko "R", načte se tím seznam všech účetních jednotek, ze kterého pak vybereme požadovanou jednotku. Po výběru se níže zobrazí název SQL server a typ autorizace. Tyto údaje jsou jen pro čtení. Je vhodné v této fázi ověřit spojení s SQL serverem - "Test připojení". Pokud je spojení v pořádku můžeme vygenerovat tzv. ID_UJ (ID účetní jednotky), které již po uložení neměňte. V případě změny musíte o tomto informovat vývojáře, kteří Vám řeší tuto komunikaci s Vašim SW.
„Asynchronní komunikace“ default – nezaškrtnuté.
Při komunikaci se vytvoří kanál mezi serverem a klientem. Pokud se v rámci kanálu posílá více požadavků na více firem, nedoporučujeme zapínat!
„Asynchronní komunikace“ – zaškrtnuté.
Tuto volbu zapněte tehdy, pokud SW třetí strany zajistí, že vžd ybude čekat na odpověď ze serveru a zároveň se potřebuje připojovat na API z více klientů (různé IP). Souběžně se vykoná několik příkazů najednou a komunkace bud etak rychlejší. Je to vhodné pro nové HTML funkce jako jsou načítání dokumentů z odkazů v emailu a podobně.
Poslední pole je www_path, je to zase adresář C:\www_api\. Pak už jen uložíme dialog a jsme zpět v hlavním okně, kde již na prvním řádku je zobrazen "Název jednotky a její číslo". Po kliknutí Uložit na hlavním okně, se spustí automatická registrace DLL knihoven na SQL server. Aby bylo možné zaregistrovat na straně SQL serveru tyto knihovny a vytvořit tak potřebné procedury CLR na straně SQL serveru, musí účet, který je nastaven v IS PREMIER být sysadmin účtem. Třeba jen pro toto nastavení a instalaci. Bez sysadmin účtu není možné pokračovat dále a CLR procedury se nevytvoří. Pokud se vytvoří procedury, na obrazovce proběhne jen malý dialog, že probíhá registrace funkcí.
Pokud je vše v pořádku, můžeme vše uložit a dialog zavřít.
Instalace služby
Další krokem je instalace a nastavení služby ve Windows.
Spustíme příkazový řádek "jako správce", přepneme se do adresáře C:\www_api a zadáme příkaz:
apicompremservice -install
Podobný postup je také pro odinstalaci služby, jen s parametrem -uninstall
Po instalaci služby otevřeme ve Windows "Služby" a změníme účet, pod kterým se bude služba spouštět. Je potřeba nastavit účet ze skupiny Administrators, který má zároveň sysadmin práva na SQL server.
Po změně je nutné službu restartovat.
Aktualizace služby API
Je také vhodné provést aktualizaci samotné služby. Tu provedeme spuštěním souboru (jako správce) C:\www_api\ApiComUpdate.exe. Zobrazí se dialog, kde budou automaticky vybrány moduly, potřebné k aktualizaci. Stačí jen kliknout na tlačítko "Aktualizovat".
Vše se pak provede automaticky. Po aktualizaci je nutné restartovat službu ApiComPrem.
Při provádění aktualizace API je nutné, aby účet služby ve Windows a účet, kterým se ověřuje PREMIER v nastavení účetní jednotky byl jako "sysadmin" na SQL serveru.
Webové rozhraní
Pokud je vše aktuální, služba je spuštěna, můžeme v lokálním PC spustit prohlížeč a vyzkoušet základní komunikaci.
V prohlížeči zadáme: http://IP_SERVERU:PORT např. http://192.168.0.38:19901 - pokud jsme nepoužili certifikát pro SSL, jinak bude zápis https://..... Zobrazí se webové rozhraní služby
Můžeme vyplnit požadované údaje a zadat JSON pro výstup, např.
{ "select": "select top 10 * from partnery" } nebo { "command": { "inComm": "VERZEAPI" } }
Výsledkem by měl být výstup v pravé části textového pole se zobrazením partnerů zadaných v účetní jednotce.
Pokud instalaci připravujete pro Vaše vývojáře, potřebujete jim předat tyto informace:
- URL: na které je služba API spuštěna, např.: https://vase_domena:port (popřípadě http://IP:port)
- ID_UJ: b12295-b922-4992-b7f4-313bbd6e6bbe