Jak se připojit k API je celkem známá věc. Jak se připojit k databázi FlexiBee je už známo méně. Přitom je to celkem podobné 🙂
Přístupové údaje
Host: localhost
Port: 5435
Username: dba
Password: 7971
pgAdmin 3
K připojení je nejlepší použít nástroj pgAdmin 3, který je dostupný pro všechny operační systémy, které FlexiBee podporuje (Windows, Linux, macOS).
Po úspěšné instalaci pgAdminu zvolíme možnost Add server (menu File).
Do pole Name vyplníme jméno připojení. Toto jméno je libovolné. Nic ale neovlivňuje.
Do pole Host vyplníme adresu serveru. Většinou localhost, pokud se snažíme připojit k „místnímu počítači“. Pokud se budeme chtít připojit ke vzdálenému serveru, zadáme jeho adresu. Pozor ale na to, že na vzdáleném serveru musí být správně nastaven pg_hba.conf.
Pole Port vyplníme hodnotou 5435. Pozor, standardní port FlexiBee serveru je 5434. Port 5435 je port FlexiBee PostgreSQL.
Poslední pole, která musíme vyplnit a neponechat výchozí hodnoty, jsou Username a Password. Databázový administrátor má uživatelské jméno dba a heslo 7971.
Jsme připojeni a můžeme se směle vrhnout do zkoumání databáze FlexiBee. Pro každou firmu je vytvořena samostatná databáze. Její jméno je stejné jako identifikátor firmy používaný při připojování přes REST API.
PSQL
Dalším programem, který je možné k připojení použít je psql. Tento program je součástí instalace FlexiBee a není tedy nutné instalovat žádný další program. Jeho výhodou oproti pgAdminovi je to, že neobsahuje žádné GUI a je ho tedy možné používat i na serverech bez grafického rozhraní.
Spuštění PSQL
Windows:
"%flexibee_dir%\pgsql\9.3\bin\psql" -U dba -p 5435 -h localhost -d centralServer
Linux:
psql -U dba -p 5435 -h localhost -d centralServer
macOS:
/Library/WinStrom-PostgreSQL/bin/psql -U dba -p 5435 -h localhost -d centralServer
Po spuštění příkazu je potřeba zadat heslo 7971 a stisknout ENTER.
Příkazy PSQL
Příkazem \l zobrazíme výpis všech databází. Jedna firma = jedna databáze. Jméno databáze je shodné jako identifikátor firmy využívaný při API připojeních.
\c jmenoDatabaze se připojíme ke konkrétní databázi.
\df vypíše seznam funkcí
\d nazevTabulky vypíše informace o tabulce(seznam sloupců, indexy a constrainty)
Závěr
Uživatelské dotazy jsou velmi silnou funkcí ve FlexiBee. Byla by škoda je nevyužívat jen kvůli tomu, že neznáme databázové schéma. Také ladění dotazů je mnohem jednodušší přímo v databázi než přes FlexiBee. Do FlexiBee je vhodné zadávat až finální verzi odladěného dotazu.
A mimochodem, FlexiBee umožňuje jako Uživatelský dotaz jen select … Insert, update a delete jsou nepovolená slova. Pokud ale máme přístup k databázi, můžeme i toto omezení obejít a doplnit například funkci, která bude provazovat dobropis s fakturou 😉. Její volání je pak select funkce 🙂.
Aktualizace 26.5.2017
Při tvorbě uživatelských dotazů je možná dobré si prohlídnout moji prezentaci z FlexiBee Developers Day 2014.
Uživatelské dotazy - když standardní nástroje nestačí