Vendor Client Utility Felhasználói kézikönyv
Budapesti Értéktızsde 2002
BSE Vendor Client Utility
Felhasználói kézikönyv
Tartalomjegyzék Bevezetı ..................................................................................................................................................................3 1. Fejezet A BSE Vendor Client Utility telepítése ...........................................................................................3 A mőködési környezet követelményei.................................................................................................................3 A program telepítése............................................................................................................................................3 A program eltávolítása.........................................................................................................................................6 2. Fejezet A BSE Vendor Client Utility használata..........................................................................................7 A program elindítása............................................................................................................................................7 Az opciók beállítása.............................................................................................................................................7 Kapcsolódás a BÉT oldali kiszolgáló szerverhez ..............................................................................................10 A letöltés folyamata...........................................................................................................................................11 A feldolgozás szüneteltetése, a kapcsolat lebontása, és újraépítése...................................................................11 A kapcsolat állapotváltozásai.............................................................................................................................12 Feldolgozás fájlból.............................................................................................................................................12 Ablakok kezelése ...............................................................................................................................................13 Help menü..........................................................................................................................................................13 Parancssorban használható paraméterek............................................................................................................14 3. Fejezet Továbbküldött adatok fogadása .....................................................................................................14 Hogyan használjuk ezt a funkciót ......................................................................................................................14 Példa az adatok fogadását megvalósító függvényre C nyelven .........................................................................15 4. Fejezet Naplózott események .....................................................................................................................16 Hibaüzenetek .....................................................................................................................................................16 Információs üzenetek.........................................................................................................................................16
Változások jegyzéke Verzió 1.0 1.1
Dátum Változás 2002. július 25. Elkészült a program elsı verziója. 2002. szeptember 30. Két új parancssori paraméter beépítése („-d” , „-q”)
2
BSE Vendor Client Utility
Felhasználói kézikönyv
Bevezetı Ez a segédeszköz a BSE Vendorai számára készült, amely lehetıvé teszi, hogy adott esetben a meglévı alkalmazásuk mellett tesztelni tudják az adatletöltés folyamatát. A program funkcionalitása lehetıvé teszi, hogy akár be is integrálják abba a rendszerbe, amely a BSE-tıl kapott adatokat feldolgozza. A program MS Visual C++ fejlesztıeszközzel készült, és ugyanazt az API csomagot használja az adatkommunikációhoz, amit a BSE Vendorai is alkalmaznak. Ezen program egy elindított példányával csak egy távoli fájl (adatfolyam) tölthetı le. Ha egy idıben több fájlt is le szeretnénk tölteni, akkor annyi példányban kell elindítani a programot. A program a következıket nyújtja: -
kapcsolódás a BÉT adatszolgáltató szervereire;
-
aktuális napi, vagy korábbi – megadott dátumú – adatok letöltése;
-
letöltött adatok megjelenítése a képernyın rekordtípusok szerint;
-
letöltött adatok alapján készített adatgyakorisági statisztikák megjelenítése;
-
index értékek megjelenítése;
-
letöltött adatok tárolása fájlban, vagy továbbküldése hálózaton;
-
korábban letöltött adatok felolvasása fájlból és azok megjelenítése;
-
a kommunikációs vonal megszakadása esetén folyamatos próbálkozás újrakapcsolódás céljából, kapcsolódási státuszinformáció kijelzése, stb.
1. Fejezet
A BSE Vendor Client Utility telepítése
A mőködési környezet követelményei Minimális konfiguráció: • PII Celeron 300 MHz • 64 MB RAM • 5 MB Disk area • Network connection Operációs rendszer: Windows 98 / NT 4.0 / 2000 / XP Hálózati protokoll: TCP/IP
A program telepítése A BSEvcuSetup.zip csomagot ki kell csomagolni egy tetszıleges könyvtárba, és onnan elindítani a SETUP.EXE programot, amely a telepítés lépésein végigvezet.
3
BSE Vendor Client Utility
Felhasználói kézikönyv
Az elsı képernyı arra figyelmeztet, hogy ajánlatos a telepítés megkezdése elıtt a futó alkalmazásokat leállítani. Ha a szükséges intézkedéseket megtettük, akkor kattintsunk a „Next” gombra.
A következı képernyı tájékoztat a program használatának jogi feltételeirıl. Ha elfogadjuk ezeket a feltételeket, akkor kattintsunk a „Yes” gombra.
Alapesetben a „Program Files” könyvtáron belül a „BSE\BSE Vendor Client Utility” helyre történik a telepítés. Ezt módosíthatjuk a következı dialógus ablak segítségével. Ha a beállítást elfogadjuk, akkor kattintsunk a „Next” gombra.
4
BSE Vendor Client Utility
Felhasználói kézikönyv
Ezután elindul a program telepítése. A sikeres telepítésrıl a következı képernyı ad tájékoztatást.
A telepítı a program elindításához szükséges ikonokat egyrészt a Windows Asztal-ra teszi, másrészt a „Start” menüben a „Programs\BSE” almenübe. A telepítés során a program könyvtárába több „ini” kiterjesztéső paraméterfájl is kerül. Ezeket szövegszerkesztıvel ne módosítsák, mert elıre nem látható következményekkel járhat.
5
BSE Vendor Client Utility
Felhasználói kézikönyv
A program eltávolítása Ha a programot el szeretnénk távolítani, akkor „Start” menü „Settings\Conrol Panel” pontját kiválasztjuk, majd a elindítjuk a „Add/Remove Programs” rendszer alkalmazást. A megjelenı ablakban kiválasztjuk a „BSE Vendor Client Utility” alaklmazást, majd alul rákattintunk az „Add/Remove…” gombra.
Ezután már csak egy megerısítést vár az eltávolító program. Ha folytatni kívánjuk, akkor a „Yes” gombra kattintsunk.
Ezek után megtörténik a telepített komponensek eltávolítása, amelynek lépéseit nyomon követhetjük a következı ablakon.
6
BSE Vendor Client Utility
Felhasználói kézikönyv
Amikor végzett az eltávolítással, az „OK” gombbal bezárhatjuk az ablakot.
A program használata közben keletkezhetnek (log és/vagy data) fájlok abban a könyvtárban, ahova a program telepítésre került. Ha szükséges, akkor ezek törlése az Explorer vagy más fájlkezelı segítségével könnyen elvégezhetı az Uninstall után.
2. Fejezet
A BSE Vendor Client Utility használata
A program elindítása A telepítés után két lehetıségünk is nyílik, hogy a programot elindítsuk. Egyrészt a „Start” menüben a „Programs\BSE” alatt megtalálható a „BSE Vendor Client Utility” menüpont. Másrészt a Windows Asztalon megtalálható a következı ikon:
A menüpontot, vagy az ikont kiválasztva elindíthatjuk a programot, amely rögtön a kapcsolatfelvételt indító ablakot jeleníti meg a legutolsó kapcsolati leíróval. Ezt az ablakot becsukhatjuk, és így elérhetıvé válik a fımenü, és ezen keresztül az opciók beállítása.
Az opciók beállítása A „Connection” menü „Otions…” menüpontját kiválasztva eljuthatunk az „Options” dialógus ablakhoz.
7
BSE Vendor Client Utility
Felhasználói kézikönyv
A dialógus ablakon a világos háttérrel rendelkezı mezık módosíthatóak. A „Timeout” mezı jelenti, hogy ha ennyi másodpercig nem érkezik rekord a szervertıl, akkor lebontja a meglévı hibás kapcsolatot és a „Reconnect automatically after” mezınél megadott idı után megpróbál új kapcsolatot létesíteni. A „Wait if remote file doesn’t exist” mezı alapján a nem létezı távoli fájl megnyitását ennyi idı után kezdeményezi újra. A „ Receive messages from BSE admin” check box segítségével ki/be kapcsolhatjuk az BSE operátorainak üzeneteit megjelenítı ablakot. Ha több gépen is futtatják a programot, akkor felesleges, hogy mindegyiken be legyen kapcsolva, de egyébként ennek a funkciónak az erıforrásigénye minimális. A „Disconnect automatically after Z record” check box segítségével beállítható, hogy a záró rekord megérkezése után a program automatikusan lebontsa a kapcsolatot vagy folytassa a dummy rekordok letöltését. A program üzemelése során fellépı eseményeket elmenthetjük fájlba. A „Save logs into a file” check box szolgál a mentés ki és bekapcsolására. A „Prefix” és „Extension” mezık jelentik a logfájl nevének elejét és végét, amely közé beszúródik a dátum, ha ezt kérjük az „Insert date into filename” check box segítségével. A prefix tartalmazhat útvonalat is. A többi mezı csak tájékoztató jellegő, a programmal nem módosítható.
A „Settings…” nyomógombra kattintással a rekordtípusok beállítása dialógus ablakot aktivizálhatjuk. 8
BSE Vendor Client Utility
Felhasználói kézikönyv
A bal oldali „Record types” címkéjő listbox –ban választhatjuk ki a módosítani kívánt rekordot. Csak azoknál a rekordoknál lehet a beállításokat elvégezni, amelyeknek van leíró állománya, vagyis nem üres a „Description file” mezı. Az „Enable related window” check box segítségével engedélyezhetjük, hogy az adott típusú rekordok külön ablakban is megjelenjenek. A „Focus on last received record” check box bekapcsolásával elérhetjük, hogy mindig a legutóbb érkezett rekordot lássuk az adott ablakban. Az „Update record by ID field” check box állításával meghatározhatjuk, hogy az érkezı rekordok a táblázat végére szúródnak be, vagy pedig az azonosító mezı alapján csak frissülnek a megfelelı sorok cellái. A „Sort on ID field” check box csak akkor használható, ha az „Update record by ID field” check box be van kapcsolva. Ekkor a táblázat feltöltése az azonosító mezı alapján rendezetten történik. Az „Offset of timestamp” csak tájékoztató jellegő, és a statisztika készítéshez szükséges. A „Join” mezı szintén tájékoztató jellegő, és csak az Y rekordnál van jelentısége, mivel az ilyen rekord csak az A vagy B rekord kiegészítése. A „Fields…” nyomógomb kiválasztása az adott rekordtípus mezıirıl nyújt információt egy újabb dialógus ablakban.
Hasonlóan a rekordtípusoknál itt is a bal oldali listbox –ban lehet a mezıkön lépkedni. Egy beállítási lehetıség van, amely az „Enable column of field” check box –ot jelenti. Ezzel tudjuk engedélyezni, hogy az adott mezıhöz tartozó oszlop megjelenjen-e a táblázatban vagy sem. A többi mezı csak tájékoztató jellegő.
9
BSE Vendor Client Utility
Felhasználói kézikönyv
Kapcsolódás a BÉT oldali kiszolgáló szerverhez Ez a dialógus ablak jelenik meg a program indulásánál. Itt állíthatjuk be a kapcsolat felépítéséhez és a letöltendı adatokhoz szükséges paramétereket. Több ilyen beállítást is létrehozhatunk, és egyszerő kiválasztás után máris indítható a megfelelı letöltés. Új beállítást úgy hozhatunk létre, hogy az aktuálisról készítünk egy másolatot a „Duplicate conn. set” nyomógombra való kattintással. Az aktuálisat ezen kívül átnevezhetjük „Rename conn. set”, illetve letörölhetjük „Delete conn. set”. A „Save” nyomógomb hatására a program elmenti a beállításainkat és marad a dialógus ablak aktív. A „Connect” hatására szintén megtörténik a mentés, de az aktuális beállítás szerint elindul a kapcsolatfelvétel. A „Standby server” rész használatával biztosíthatjuk, hogy a kapcsolat megszakadása esetén egy másik szerver géppel is próbálkozzon a program a helyreállítás során. A „Remote file” résznél a „Wait for file if doesn’t exist” check box mezı a lényeges, amely biztosítja, hogy a program folyamatosan (bizonyos idıközönként, lásd: „Az opciók beállítása”) próbálkozzon, amíg a fájlt létre nem hozzák. A „Local file” résznél rendelkezhetünk, hogy a letöltött adatokat elmentse a program és azt milyen fájlnév alá tegye (a „Prefix” mezıben útvonal is megadható). A „Transmission” részben megadhatjuk, hogy a fogadott adatokat küldje tovább a program egy másik alkalmazásnak speciális feldolgozás céljára. (lásd még: 3. Fejezet)
10
BSE Vendor Client Utility
Felhasználói kézikönyv
A letöltés folyamata Ha adatletöltést kezdeményeztünk, akkor a fıablakban feljönnek a különbözı információkat szolgáltató gyerekablakok, amelyek közül három fix (Statistics, Event logs, All received records), a többi meg bekapcsolható (Messages, T-Trades, etc.). A menü alatti sorban láthatjuk a BUX index értékét, a letöltött valós (a dummy -k nélküli) rekordok számát, az utoljára letöltött valós rekord idıbélyegét, és a kapcsolat állapotát jelzı mezıt. Az „All received records” ablakban két oszlop található. A Status oszlop cellái normál esetben üresek, de itt megjelenhet az „unknown” felirat, ha ismeretlen a rekord típusa, vagy a „bad CRC” felirat, ha hibás a rekordhoz tartozó ellenırzıszám.
A feldolgozás szüneteltetése, a kapcsolat lebontása, és újraépítése Ha az érkezı rekordok megjelenését már szemmel nem tudjuk követni, és szeretnénk visszanézni adatokat valamelyik gyerekablakban, akkor a „Connection” menü „Pause” menüpontját kiválasztva szüneteltethetjük a rekordok fogadását. Ugyanezt a menüpontot kiválasztva folytathatjuk a rekordfeldolgozást. A könnyebb kezelhetıség kedvéért a „Space” gomb megnyomásával is ugyanezt érhetjük el. Ha meg akarjuk szakítani az adatletöltést, vagy a többszöri sikertelen kapcsolatfelvételt, akkor a „Disconnect / Stop trying to reconnect” menüpontot válasszuk. Az így megszakított folyamat folytatható a „Reconnect” menüpont aktivizálásával. A programból kilépni is csak megszakított állapotban lehet.
11
BSE Vendor Client Utility
Felhasználói kézikönyv
A kapcsolat állapotváltozásai A kapcsolat állapotát jelzı mezı a következı értékeket veheti fel:
A – (üres szürke kör) még nem indult el a kapcsolódás folyamata B – (félig zöld, félig piros kör) próbálkozás a kapcsolatfelvétellel C – (zöld kör) sikeres kapcsolat, adatfeldolgozás folyamatban D – (zöld körben „P” bető) szüneteltetett kapcsolat E – (piros kör) hiba a kapcsolatfelvételben, újabb próbálkozás várható F – (zöld alapon piros „END” felirat) letöltés befejezıdött vagy megszakítva
Feldolgozás fájlból Ha nem kapcsolódunk a programmal a távoli kiszolgáló szerverhez, akkor lehetıségünk van egy korábban letöltött fájl beolvasására, amely hasonlóan a távoli letöltéshez megjelenik a gyerekablakokban. A „Transmission” funkció ilyenkor nem mőködik, vagyis a beolvasott rekordokat nem küldi tovább a program.
12
BSE Vendor Client Utility
Felhasználói kézikönyv
Ablakok kezelése Az adatok megjelenítése elég sok gyerekablakban történik, így kezelésük egy kicsit körülményes, viszont a „Window” menü pontjai segítenek ebben. Az ismert menüpontokon kívül további hárommal találkozhatunk itt. A „Save window positions” az összes ablak koordinátáit (beleértve a fıablakot is) elmenti, de ezen kívül a gyerekablakokban lévı táblázatok beállított oszlopszélességeit is lementi. A „Clear selected window” segítségével az aktuális gyerekablak táblázata kitörölhetı, amely már csak az ezután érkezı rekordokkal töltıdhet fel. A „Focus on last received record” menüponttal ki-, bekapcsolhatjuk azt a lehetıséget, hogy a legutoljára érkezett rekord látszódjon az adott gyerekablakban.
Help menü A „Help” menünek két pontja van, amelyekkel a licenc feltételek leírása illetve a névjegy ablak tekinthetı meg.
13
BSE Vendor Client Utility
Felhasználói kézikönyv
Parancssorban használható paraméterek A program indítható parancssori paraméterekkel is, amely lehetıvé teszi, hogy még rugalmasabban indítsuk a programot, beleértve azt is, hogy egy másik alkalmazás indítja. -c [conn_set_name] Egy kapcsolati leírónevet megadva, azonnal indul a kapcsolatfelvétel az adott beállításokkal. Ha nem adunk meg nevet, akkor az utoljára használt kapcsolati beállításokkal indul a program. -f input_file_name A megadott fájlt dolgozza fel így a program. A „-c” és „-f” opciók nem használhatók együtt. -o option_file_name A program paramétereit leíró fájlt adhatjuk meg így, amely természetesen tetszıleges könyvtárban is lehet. Alapértelmezésben a telepítést követıen a program az aktuális könyvtárában lévı „Options.ini” paraméterfájlt keresi. Mindegyik fenti paraméterre érvényes kikötés, hogy a névben nem lehet szóköz, vagyis a paraméterek nem adhatók meg idézıjelek között. -d YYYYMMDD A letöltendı fájl nevének dátum részét lehet megadni, ami lehetıvé teszi, hogy ne csak az aktuális nap adatait érjük el automatikus indítással (lásd „-c” kapcsoló) -q A „Z” zárórekord után lebontja a kapcsolatot és kilép a program.
3. Fejezet
Továbbküldött adatok fogadása
Hogyan használjuk ezt a funkciót Ha használjuk a „Transmission” funkciót, akkor a program a kapott rekordokat továbbküldi a megadott IP címre és portra. Ehhez a standard socket kommunikációs függvényeket használja (socket, bind, connect, send, closesocket). Ha készítünk egy alkalmazást az így továbbküldött adatok fogadására, akkor az futhat egyrészt ugyanazon számítógépen vagy egy másik a helyi hálózaton található gépen.
14
BSE Vendor Client Utility
Felhasználói kézikönyv
Példa az adatok fogadását megvalósító függvényre C nyelven #define LISTEN_PORT #define REC_LENGTH
… 130
BOOL DataProcessing() { int i; int rval; int mainSocket, subSocket; char record[REC_LENGTH]; struct sockaddr_in server; struct sockaddr ssa; memset( &server, 0, sizeof(server) ); server.sin_family = AF_INET; server.sin_addr.s_addr = INADDR_ANY; server.sin_port = htons( LISTEN_PORT ); mainSocket = socket( AF_INET, SOCK_STREAM, 0 ); if (mainSocket < 0) { LogWrite( "Socket error" ); return FALSE; } rval = bind( mainSocket, (struct sockaddr*)&server, sizeof(server) ); if ( rval ) { LogWrite( "Bind error" ); closesocket(mainSocket); return FALSE; } i = sizeof(server); getsockname( mainSocket, (struct sockaddr*)&server, &i ); listen( mainSocket, 5 ); LogWrite( "Wait for a connect..." ); memset( &ssa, 0, sizeof(ssa) ); i = sizeof(ssa); subSocket = accept( mainSocket, (struct sockaddr*) &ssa, &i ); if( subSocket == -1 ) { LogWrite( "Accept error" ); closesocket(mainSocket); return FALSE; } LogWrite( "Connection accepted" ); while( TRUE ) { if( (rval = recv( subSocket, record, REC_LENGTH, 0 )) <= 0 ) { LogWrite( "Connection closed" ); break; } RecordProcessing( record ); } closesocket(subSocket); closesocket(mainSocket); return TRUE; } 15
BSE Vendor Client Utility
4. Fejezet
Felhasználói kézikönyv
Naplózott események
Hibaüzenetek Option file not found! Connection parameter file not found! Record parameter file not found! xxx : (field description) file not found Missing input file name! Inputfile not found: xxx Bad connection-name Missing connection name! Cannot delete last connection set! File not found on server : xxx Connection failure (ip-addr / port / user) : xxx / nn / xxx Write error on file: xxx Open error on file: xxx Open error on event log file: xxx Data transmit socket create error (ip_addr / port) : xxx / nn Data transmit bind error (ip_addr / port) : xxx / nn Data transmit connect error (ip_addr / port) : xxx / nn Data transmit send error Connection lost. Timeout: nn
Információs üzenetek Data service shut down / Service ID: nn Message service shut down / Service ID: nn Data service opened. Remote file: xxx / Service ID: nn Message service opened Disconnected from server Input file opened successfully: xxx Input file closed Last record received Disconnected by user Trying to connect... Successful connect (ip-addr / port / user): xxx / nn / xxx Output file opened: xxx Output file closed Data transmit connect successful (ip_addr / port): xxx / nn Data transmit connection closed
16