Zkřížili jsme dinosaura s raketou

Jan Zatloukal


Nacházíte se v archivu mého blogu, který již není udržovaný. Novější články o testování píšu na Testujeme.software.

seznam článků v archivu blogu

Když se účastníte nějaké konference zaměřené na on-line marketing, programování a podobná témata, nabudete dojmu, že programátoři používají nejnovější vychytávky, využívají těch nejlepších služeb, … Prostě IT na nejvyšším levelu. Jenže pak se vrátíte domů zpět do reality.

O tom, jak se nám podařilo nabourat SAP, už jsme psal. Není to ale zdaleka jediná „třešnička“, kterou jsem musel řešit při napojování informačních systémů našich klientů na e-shop. API nebo alespoň export do XML/CSV? Někdy to jde. Většinou ale musíte z programátorů daného systému vyždímat maximum, aby byl výsledek alespoň trochu použitelný. A někdy se dostanete do bodu, kdy už to dál prostě nejde. Například, když klient používá skladový systém běžící na MS-DOSu.

MS-DOS stále žije
MS-DOS stále žije

MS-DOS v roce 2016?

Ano. I v dnešní době narazíte na tak zastaralou věc, jako je účetní a skladový program, bežící v prostředí MS-DOS. A není to žádná výjimka. Takové programy jsou oblíbené, používá je spousta firem a můžete si ho stále koupit. Důvodem je zřejmě fakt, že je složité přejít na něco modernějšího nebo zaučit zaměstnance na nový systém.

Pro rozběhnutí samozřejmě nepotřebujete kus historického železa, program spustíte v moderních OS přes DOSBox.

No jo, ale co s tím napojením na e-shop?

Čáry máry

O nějakém API si v tomto případě můžete nechat jenom zdát. Při otázkách na možnost exportu v XML nebo uploadu někam na server jsem vypadal skoro jako kacíř nebo čaroděj. Upálit! Alespoň pojem CSV byl něčím známým a program dokonce umí vyexportovat do CSV vlastní pohledy.

Automaticky to ale nejde.

Paní jenom zmáčkně Shift+F8, potom dá tady tohle, pak dá Ctrl+T, pak Alt+F5, vybere tady ty položky. Ne to nemusí, to už vybrané bude. Pak dá Ctrl+E, pak přejede na „Vyexportovat“ a pak ten soubor uloží někam na disk. To bude v pohodě, vytiskneme ji návod, jak postupovat a ona to prostě párkrát za den udělá.

Trocha moderny

Uff... no, šlo by to. A s tím uploadem na server? To je co? Jako nahrát to někam do internetu? To nepůjde.

S „nahráním někam do internetu“ už si poradím. Navrhl jsem hned dvě možnosti (určitě by se jich našlo více):

  1. Soubor exportovat do složky, které se bude sdílet přes DropBox nebo Google Disk (případně jinou podobnou službu) a my už si to přes API stáhneme k sobě na server.
  2. Soubor exportovat a potom nahrát na FTP přes NcFTPPut, jednoduchou konzolovou aplikaci, která se dá spustit buď ručně po exportu, nebo pomocí automatických úloh.

Používat NcFTPPut je velmi jednoduché:

ncftpput -u [USERNAME] -p [PASSWORD] -R -v [FTP SERVER] [CÍLOVÁ SLOŽKA (FTP)] [ZDROJOVÁ SLOŽKA (LOKÁLNÍ POČÍTAČ)]

Nakonec jsme se ale k realizaci projektu nedostali. Bylo by potřeba udělat pořádek v datech i samotném skladu, na což klient nakonec nenašel čas a možná i sílu (ze stejného důvodu zřejmě stále používá daný software). Byla to ale dobrá zkušenost a jsem rád, že se podařilo najít celkem jednoduché a (pro klienta) levné řešení.

Už vidím, jak by někteří programátoři navrhli instalaci programu na virtuální server u Amazonu, použití nějaké aplikace pro virtuální mačkání kláves a vytvoření rozhraní pro stahování aktuálního souboru. Výsledná částka na faktuře by pak s klientem praštila o zem.