XML Raktárlekérdezés

Adatok küldésének formátuma:

GET - bejelentkező oldal (lekerdezésére praktikus)

POST - és XML kulcsú paraméter

vagy POST és Content_Type⇒'text/xml' formátum.

1. Az oldal lekérdezése egy üres esystem xml blokkal (<esystem></esystem>). pl GET keres:

http://host.url/.../index.cgi?xml''%3Cesystem%3E%3C/esystem%3E

2. Visszakapunk egy eVIR bejelentkező oldalt:

<?xml version''"1.0" encoding''"UTF-8"?>
<esystem>
<frame>
<framename>main</framename>
<choice>
<choicename>login</choicename>
<click>
<data>
<record>
<field>
<name>login</name>
<value></value>
</field>
<field>
<name>extprocid</name>
<value></value>
</field>
<field>
<name>pass</name>
<value></value>
</field>
<field>
<name>lang</name>
<value>HU</value>
<metadata>
<type>select</type>
<check>
<options>SK</options>
<options>HU</options>
<options>EN</options>
</check>
</metadata>
</field>
</record>
</data>
</click>
</choice>
<info_message>
</msg>.......
</msg>
</info_message>
</frame>
</esystem>

3, ebből az XML interface leírás szerint kiszedjük a nekünk megfelelő <click>-et, majd kitöltjük, és visszaküldjük a rendszernek. pl amit lehet küldeni:

<esystem>
<click>
<data>
<record>
<field>
<name>login</name>
<value>username_kitolteni</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
<field>
<name>pass</name>
<value>jelszo_kitolteni</value>
</field>
<field>
<name>lang</name>
<value>HU</value>
<metadata>
<type>select</type>
<check>
<options>SK</options>
<options>HU</options>
<options>EN</options>
</check>
</metadata>
</field>
</record>
</data>
</click>
</esystem>

4, ekkor visszakapjuk a rendszertől (sikeres bejelentkezés esetén) a form választót:

<?xml version''"1.0" encoding''"UTF-8"?>
<esystem>
<frame>
<framename>framset</framename>
<choice>
<choicename>menu</choicename>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>WV5J9XqoHU</value>
</field>
<field>
<name>dok</name>
<value>menudir</value>
</field>
<field>
<name>proc</name>
<value>none</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>VwrIpTJwHU</value>
</field>
<field>
<name>frame</name>
<value>menu</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</choice>
<choice>
<choicename>main</choicename>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>WV5J9XqoHU</value>
</field>
<field>
<name>dok</name>
<value>startlap</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>kzM82qh2HU</value>
</field>
<field>
<name>frame</name>
<value>main</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</choice>
<choice>
<choicename>sysportal</choicename>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>WV5J9XqoHU</value>
</field>
<field>
<name>dok</name>
<value>sysportal</value>
</field>
<field>
<name>proc</name>
<value>none</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>NG0q8mEkHU</value>
</field>
<field>
<name>frame</name>
<value>external</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</choice>
<info_message>
<msg>
......
</msg>
</info_message>
</frame>
</esystem>

5, ki kell választani a sysportal egyik <click>-jét, és ezt esystem blokkok között visszaküldeni: Figyelem: sid,lid,cid értéke bejelentkezésenként, adatküldésenként más és más! Küldeni:

<esystem>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>WV5J9XqoHU</value>
</field>
<field>
<name>dok</name>
<value>sysportal</value>
</field>
<field>
<name>proc</name>
<value>none</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>NG0q8mEkHU</value>
</field>
<field>
<name>frame</name>
<value>external</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</esystem>

6, ekkor visszakapjuk a XML-el lekérdezhető oldalak <choice>-ait:

<?xml version''"1.0" encoding''"UTF-8"?>
<esystem>
<frame>
<framename>framset</framename>
<choice>
<choicename>refresh</choicename>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>EsnWMBaYHU</value>
</field>
<field>
<name>dok</name>
<value>sysportal</value>
</field>
<field>
<name>proc</name>
<value>none</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>JFr4uY22HU</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</choice>
<choice>
<choicename>startlap</choicename>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>EsnWMBaYHU</value>
</field>
<field>
<name>dok</name>
<value>startlap</value>
</field>
<field>
<name>proc</name>
<value>new</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>vq286WvcHU</value>
</field>
<field>
<name>frame</name>
<value>main</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</choice>
<choice>
<choicename>raktarkeszlet</choicename>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>EsnWMBaYHU</value>
</field>
<field>
<name>dok</name>
<value>raktar_lista</value>
</field>
<field>
<name>proc</name>
<value>new</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>UAooXGTEHU</value>
</field>
<field>
<name>frame</name>
<value>main</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</choice>
<choice>
<choicename>exit</choicename>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>EsnWMBaYHU</value>
</field>
<field>
<name>dok</name>
<value>logout</value>
</field>
<field>
<name>proc</name>
<value>new</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>lccfuHPwHU</value>
</field>
<field>
<name>frame</name>
<value>main</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</choice>
<info_message>
<msg>
.......
</msg>
</info_message>
</frame>
</esystem>

7, és most kiválasztjuk az megfelelő funkció <choicename>-je alatt található <click>-et:

<esystem>
<click>
<session>
<record>
<field>
<name>sid</name>
<value>EsnWMBaYHU</value>
</field>
<field>
<name>dok</name>
<value>raktar_lista</value>
</field>
<field>
<name>proc</name>
<value>new</value>
</field>
<field>
<name>lid</name>
<value>ySWxH0NUHU</value>
</field>
<field>
<name>cid</name>
<value>UAooXGTEHU</value>
</field>
<field>
<name>frame</name>
<value>main</value>
</field>
<field>
<name>extprocid</name>
<value>1</value>
</field>
</record>
</session>
</click>
</esystem>

8. megkapjuk a raktár lista XML-t:

Eleje egy <head> block, ami tartalmazza az oszlopok neveit, majd <line><record>-ban az adatokat:

<esystem>
<frame>
<framename>main</framename>
<choice>
<choicename>list</choicename>
<click>
<header>
<record>
<field>
<name>numbering</name>
<value></value>
<metadata>
<type>text</type>
<human>
<help>SorszÃ¡m</help>
<label>#</label>
</human>
</metadata>
</field>
<field>
<name>raktar</name>
<value></value>
<metadata>
<type></type>
<human>
<help>A raktÃ¡r kÃ³dja</help>
<label>RaktÃ¡r</label>
</human>
</metadata>
</field>
<field>
<name>raktarnev</name>
<value></value>
<metadata>
<type>text</type>
<human>
<help>A raktÃ¡r neve</help>
<label>RaktÃ¡r neve</label>
</human>
</metadata>
</field>
<field>
<name>cikkszam</name>
<value></value>
<metadata>
<type>text</type>
<human>
<help>A termÃ©k cikkszÃ¡ma.</help>
<label>CikkszÃ¡m</label>
</human>
</metadata>
</field>
<field>
<name>megnevezes</name>
<value></value>
<metadata>
<type>text</type>
<human>
<help>A cikk megnevezÃ©se.</help>
<label>MegnevezÃ©s</label>
</human>
</metadata>
</field>
<field>
<name>menny</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>MennyisÃ©g</help>
<label>MennyisÃ©g</label>
</human>
</metadata>
</field>
<field>
<name>megys</name>
<value></value>
<metadata>
<type>text</type>
<human>
<help>EgysÃ©g</help>
<label>EgysÃ©g</label>
</human>
</metadata>
</field>
<field>
<name>gysz</name>
<value></value>
<metadata>
<type>text</type>
<human>
<help>GyÃ¡riszÃ¡m</help>
<label>GyÃ¡riszÃ¡m</label>
</human>
</metadata>
</field>
<field>
<name>beszar</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help></help>
<label>BeszerzÃ©si Ã¡r</label>
</human>
</metadata>
</field>
<field>
<name>beszardat</name>
<value></value>
<metadata>
<type>text</type>
<human>
<help>A beszerzÃ©s dÃ¡tuma</help>
<label>DÃ¡tum</label>
</human>
</metadata>
</field>
<field>
<name>EUR_beszar</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>EUR_beszar Ã¡r_ar_help</help>
<label>EUR_beszar Ã¡r_ar</label>
</human>
</metadata>
</field>
<field>
<name>Elrontott</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>Elrontorr_ar_help</help>
<label>Elrontorr_ar</label>
</human>
</metadata>
</field>
<field>
<name>EuR_1</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>Euros Ã¡r_ar_help</help>
<label>Euros Ã¡r_ar</label>
</human>
</metadata>
</field>
<field>
<name>UsaDollaros</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>UsaDollaros_ar_help</help>
<label>UsaDollaros_ar</label>
</human>
</metadata>
</field>
<field>
<name>ar1</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>Kiskereskedelmi_ar_help</help>
<label>Kiskereskedelmi_ar</label>
</human>
</metadata>
</field>
<field>
<name>ar2</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>ViszonteladÃ³i_ar_help</help>
<label>ViszonteladÃ³i_ar</label>
</human>
</metadata>
</field>
<field>
<name>ar3</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>Nagykereskedelmi_ar_help</help>
<label>Nagykereskedelmi_ar</label>
</human>
</metadata>
</field>
<field>
<name>ar4</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>Piaci Ã¡r_ar_help</help>
<label>Piaci Ã¡r_ar</label>
</human>
</metadata>
</field>
<field>
<name>usa1</name>
<value></value>
<metadata>
<type>num</type>
<human>
<help>UsaDollaros Ã¡r_ar_help</help>
<label>UsaDollaros Ã¡r_ar</label>
</human>
</metadata>
</field>
</record>
</header>
<line>
<record>
<field>
<name>#</name>
<value>1</value>
</field>
<field>
<name>RaktÃ¡r</name>
<value>1234</value>
</field>
<field>
<name>RaktÃ¡r neve</name>
<value>Ãjpest Fatelep</value>
</field>
<field>
<name>CikkszÃ¡m</name>
<value>12334423</value>
</field>
<field>
<name>MegnevezÃ©s</name>
<value>12334423megnec</value>
</field>
<field>
<name>MennyisÃ©g</name>
<value>5</value>
</field>
<field>
<name>EgysÃ©g</name>
<value>Darab</value>
</field>
<field>
<name>GyÃ¡riszÃ¡m</name>
<value></value>
</field>
<field>
<name>BeszerzÃ©si Ã¡r</name>
<value>1 HUF</value>
</field>
<field>
<name>DÃ¡tum</name>
<value>2008-10-17</value>
</field>
<field>
<name>EUR_beszar Ã¡r_ar</name>
<value>0.00 EUR</value>
</field>
<field>
<name>Elrontorr_ar</name>
<value>0 HUF</value>
</field>
<field>
<name>Euros Ã¡r_ar</name>
<value>0.00 EUR</value>
</field>
<field>
<name>UsaDollaros_ar</name>
<value>0.00 USD</value>
</field>
<field>
<name>Kiskereskedelmi_ar</name>
<value>2&nbsp;000 HUF</value>
</field>
<field>
<name>ViszonteladÃ³i_ar</name>
<value>0 HUF</value>
</field>
<field>
<name>Nagykereskedelmi_ar</name>
<value>0 HUF</value>
</field>
<field>
<name>Piaci Ã¡r_ar</name>
<value>0 HUF</value>
</field>
<field>
<name>UsaDollaros Ã¡r_ar</name>
<value>0 HUF</value>
</field>
</record>
</line>
<line>
<record>
<field>
<name>#</name>
<value>2</value>
</field>
<field>
<name>RaktÃ¡r</name>
<value>1234</value>
</field>
<field>
<name>RaktÃ¡r neve</name>
<value>Ãjpest Fatelep</value>
</field>
<field>
<name>CikkszÃ¡m</name>
<value>12334423</value>
</field>
<field>
<name>MegnevezÃ©s</name>
<value>12334423megnec</value>
</field>
<field>
<name>MennyisÃ©g</name>
<value>3</value>
</field>
<field>
<name>EgysÃ©g</name>
<value>Darab</value>
</field>
<field>
<name>GyÃ¡riszÃ¡m</name>
<value></value>
</field>
<field>
<name>BeszerzÃ©si Ã¡r</name>
<value>1 HUF</value>
</field>
<field>
<name>DÃ¡tum</name>
<value>2008-10-17</value>
</field>
<field>
<name>EUR_beszar Ã¡r_ar</name>
<value>0.00 EUR</value>
</field>
<field>
<name>Elrontorr_ar</name>
<value>0 HUF</value>
</field>
<field>
<name>Euros Ã¡r_ar</name>
<value>0.00 EUR</value>
</field>
<field>
<name>UsaDollaros_ar</name>
<value>0.00 USD</value>
</field>
<field>
<name>Kiskereskedelmi_ar</name>
<value>2&nbsp;000 HUF</value>
</field>
<field>
<name>ViszonteladÃ³i_ar</name>
<value>0 HUF</value>
</field>
<field>
<name>Nagykereskedelmi_ar</name>
<value>0 HUF</value>
</field>
<field>
<name>Piaci Ã¡r_ar</name>
<value>0 HUF</value>
</field>
<field>
<name>UsaDollaros Ã¡r_ar</name>
<value>0 HUF</value>
</field>
</record>
</line>