Projekt
Web service Invoicing
webová služba pro podporu fakturace s využitím formátu ISDOC
Popis

Webová služba Invoicing slouží pro podporu fakturace s využitím strandardizovaného formátu ISDOC. Webová služba pokrývá celý proces vystavení faktury od sestavení faktury na základě objednávky (načtení/kontrola informací o odběrateli, načtení položek faktury) až po odeslání faktury odběrateli (e-mail, datové schránky).
Základním kamenem celé služby je nativní XML databázové úložiště faktur ve formátu ISDOC. Dále se předpokládá napojení na stávající katalog produktů/služeb přístupný na databázové úrovni. Vystavené faktury je poté možné pomocí další webové služby odesílat buď na e-mail nebo do datových schránek, které formát ISODC podporují. Z externích služeb využíváme již zmíněnou webovou službu datových schránek, pro odesílání zpráv do datových schránek.
Webové služby v rámci projektu jsou implementované v různých jazycích a běží na různých serverech (Java & Tomcat & Axis2, C# & IIS, PHP & Apache). Jako databázové úložiště nám slouží nativní XML databáze Oracle Berkeley DB XML a relační databáze Oracle 11.
Projekt byl vytvořen pro předmět NSWI135 Praktické aplikace XML technologií na MFF UK v Praze.
Webové služby
Order2Invoice - hlavní webová služba pro vystavení faktury z objednávky využívající následujích služeb (BPEL skript, WSDL popis, schéma volání BPEL skriptu)
InvoiceODB - webová služba pro přistup k databázovému úložišti ISDOC faktur (WSDL popis, AAR balíček pro Axis2, zdrojové kódy (Java Eclipse project), SQL skripty (Oracle), ToXGene skripty)
Catalog - webová služba pro přístup k databázi s katalogem (WSDL popis, zdrojové kódy (VS project C#), SQL skripty (Oracle))
Post - webová služba pro odesílání faktur na email nebo do datových schránek (WSDL popis, zdrojové kódy (PHP))
Datové schránky (externí) - využita webová služba dmOperationsWeb pro zasílání zpráv do datových schránek (Provozní řád včetně příloh)
Evoluce XML Schémat
Pro in-place evoluci jsme použili část XML Schématu formátu ISDOC - element Party, kde přibyl nepovinný element InvoiceContact a element Name se stal nepovinným. XML schéma formátu ISDOC reálně prochází evolucí a na většinu změn mezi verzemi by stačila in-place evoluce (krom restriktivních omezení jednoduchých typů).
Realizace
říjen 2010 - leden 2011