XML Raktárlekérdezés

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

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>