flexibee developers day 2014 - úvod do rest api

Download FlexiBee Developers Day 2014 - úvod do rest api

Post on 12-Feb-2017

243 views

Category:

Software

2 download

Embed Size (px)

TRANSCRIPT

vod do FlexiBee REST APIPetr FerschmannFlexiBee Systems s.r.o.

Co je FlexiBee?

Ne zaneme eknu nco o FlexiBee.Je to etnictv:- pro Linux, Windows a Mac OS X- um sklady, mzdy, majetek, apod.- m desktopovou aplikaci, mobiln pstup a webov pstup- m oteven programtorsk rozhran REST API.- um fungovat pes internet.

Jet jednou zopakuji aplikace u umla komunikovat pes internet.

Obchodn partnei

Nkup a prodej

Skladov evidence

Majetek a leasing

etnictv

Personalistikaa mzdy

Konkurence je Pohoda, Money S3 a S4, Abra G1, G2 a trochu G3

FlexiBee a cloud

volsk oko :-)

linern vs logaritmick sloitostlinern na disku (ten je levn)linern na poet souasnch poadavk (kad trv 5 vtein).logaritmick na poet instalac, poet klient

cloud m nedostatek aktulnho vkonu, ale hodn vkonu celkem- optimalizace pro odloenou realizaci - selhn je standard - klientsk aplikace s tm mus potat - OBRZEK: prmr za 5 minut vs prmr za 5 vtein

Nov architektura

Uvaovali jsme zda nepout njakou platformu. Bohuel zatm dn z nich nepodporuje PostreSQL. A souasn b daleko. Nae specializovan aplikace je citliv na latenci (provd mnoho voln). Proto je i irsko pli daleko.

Museli jsme proto zatm aplikaci provozovat jen na vlastn infrastruktue.

Na tomto obrzku je vidt, e mme vdy ti repliky (jedna z nich je master) pro databzov loit. Tch databzovch loi je vce. Kad loit je v RAIDu. Take od kadch dat mme 6 kopi. A to nepotm zlohy. Kad megabajt mme cca desetkrt.

Dle mme vce aplikanch server. Kad z nich se me napojit na libovoln databzov loit dle firmy. Ped tm jsou postaveny dva loadbalancery, kter rozhazuj zt na aplikan servery a sleduj jejich ivotnost. Je zde maximln snaha, aby vdy stejn klient el stejnou cestou. Tm meme cachovat nkter data.

Prvn vc a nejzsadnj byla prava aplikace tak, aby mohlo na jednom serveru bet vce klient. Znamen to naten dat o firm pi prvnm poadavku a jen jej krtk cachovn. Nememe si tedy moc vc pednatat a musme tomu podvolit vvoj. Prost si neme aplikan server nahrt pr megabajt dat a ty pak dret dlouho.

Museli jsme tak upravit vechny sti tak, aby byly maximln bezstavov. Pepsali jsme teba ochranu proti CSRF a je kompletn bezstavov pouv cookie.

vod do FlexiBee REST APIPetr FerschmannFlexiBee Systems s.r.o.

Snadnozat

SamodokumentaceBrowser je nstrojPodvm se jak to funguje.

REST API

XML import

code:FAKTURA code:WINSTROM Ukzkov faktura 1000.0 true

Doklad je idempotentn. Import lze opakovat.Uvdme jen to co mnme.I povinn atributy nen nutn vyplovat, protoe se dopotou/dopln

Podporujeme formty: XML, JSON, CSV, DBF, XLS, PDF, ISDOC, EDI, vCard, iCalendar, HTML.Umme importovat i gigov XML (vce ne je RAM).

Ukzka v PHPrequire_once("HTTP/Request.php");$req = new HTTP_Request();

$req->setBasicAuth("winstrom", "winstrom");

$req->setURL(https://demo.flexibee.eu:5434/c/demo/faktura-vydana.json");

$req->setMethod(GET);

$req->sendRequest();

URL/c///.

/c///().

Zpsoby integrace

Importy a exporty

Nejjednodu - vyaduje et ve FlexiBee

Forma odkazu

Nejjednodu - vyaduje et ve FlexiBee

Jako SQL

Informan systm se autorizuje do FlexiBee.

Integrace GUI

Informan systm me ct - toto je uivatel Jarda. Lze tak pout single sign-on.

Identifikace zznam123code:CZKext:SHOP:123ean:4710937332698vatid:CZ28019920in:28019920plu:4020key:550e8400e29b41d4a716

[123][code:CZK][ext:SHOP:abc]

Extern identifiktory pouvme i pro importy. Udlme velk XML a tm se pak odkazujeme.

Typ dokladu

Parametry URLazen - ?order=nazev@DStrnkovn ?limit=100&page=20Poet zznam: ?add-row-count=trueFormt vstupu ?format=pohoda

Detail zznamu?detail=id?detail=summaryvchoz pro seznam zznam?detail=fullvchoz pro detail zznamu

?detail=custom:kod,nazev?detail=custom:kod,polozky(nazev,cena)ID vdy

?detail=custom:...&includes=...

FiltraceFQL (FlexiBee Query Language)

(typDokl=code:FAKTURA and uzivatel = me())

Pokroil XMLcode:FIRMA

Ukzka XML

ext:MY:firmicka vatid:CZ123456 CZ123456 Nzev firmy code:FAKTURA ext:MY:firmicka Ukzkov faktura 1000.0 true

Doklad je idempotentn. Import lze opakovat.Uvdme jen to co mnme.I povinn atributy nen nutn vyplovat, protoe se dopotou/dopln

Podporujeme formty: XML, JSON, CSV, DBF, XLS, PDF, ISDOC, EDI, vCard, iCalendar, HTML.Umme importovat i gigov XML (vce ne je RAM).

Navzan objekty?relations=polozkyvazbyprilohysklad-karty

Seznam vazeb lze ziskat na adrese /c/firma//relations

?includes=code:CZ?includes=/adresar/stat......