Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kursna lista NBS

[es] :: PHP :: Kursna lista NBS

Strane: 1 2

[ Pregleda: 17492 | Odgovora: 26 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

agvozden
Aleksandar Gvozden
www.BGSvetionik.com
Beograd

Član broj: 37813
Poruke: 143
*.ptt.yu.

Sajt: www.aleksinac.net


Profil

icon Re: Kursna lista NBS28.12.2006. u 09:08
Jutros su opet promenili ...
ne moze se uzeti direktno, ipak mora POST
OTPOR DO POBEDE
28.12.2006. u 09:08 

papago

Član broj: 127278
Poruke: 3
*.pools.arcor-ip.net.



Profil

icon Re: Kursna lista NBS28.12.2006. u 10:11
Mozda ce vam ovo pomoci...

napisao sam adminu mejl i on(a) mi je je odgovorio(la) sledece:
Nadam se da ce vam ovo pomoci. Mozda ce se naci i neki PHP genije koji ce da napise funkciju za parsovanje ovoga XML konstrukta.



Postovanje,

U attachmentu vam prosledjujemo uputsvo koriscenja web servisa za kursne
liste.

Isto ce danas biti objavljeno na sajtu.

Pozdrav,

Web urednistvo NBS.




Narodna banka Srbije
Informaciona Tehnologija
Odeljenje za aplikativnu podršku
Uputstvo za korišćenje web servisa trenutno važeće kursne liste NBS
Lokacija service-a:
http://webservices.nbs.yu/Comm.../TempExchangeRatesService.asmx
WSDL service-a se nalazi na adresi:
http://webservices.nbs.yu/Comm...ExchangeRatesService.asmx?WSDL
--------------------------------------------------------------------
Metode servisa su sledece:
DataSet GetCurrentExchangeRates(decimal nExchangeRatesTypeID) -- preporuceni
nacin koriscenja za klijente koji ce konzumirati servis iz .NET aplikacija
string GetCurrentExchangeRatesXML(decimal nExchangeRatesTypeID) -- preporuceni
nacin koriscenja za klijente koji ce konzumirati servis iz drugih tehnologija ,pri tome su validne vrednosti za parametar nExchangeRatesTypeID {1, 2, 3}
1 – kurs za devize
2 – kurs za efektivu
3 – srednji kurs
---------------------------------------------------------------------
Ostali parametri sistema:
U zaglavlju zahteva (AuthenticationHeader) moraju se proslediti sledeci parametri:
UserName, Password, LicenceID
Prametru UserName treba proslediti vrednost TempTest,
Parametru Password treba proslediti vrednost TempTestPassword
Parametru LicenceID treba proslediti vrednost 0
Ukoliko postoji neko pitanje mozete ga uputiti na e-mail webservices@nbs.yu
28.12.2006. u 10:11 

milivoye
milivoye

Član broj: 28289
Poruke: 27
*.yubc.net.



Profil

icon Re: Kursna lista NBS20.06.2007. u 11:26
Da li bi mogao da okacis verziju koja vraca XML tako da mogu da formatiram output onako kako mi je potrabno?
20.06.2007. u 11:26 

zidane_zizu
Ivan Kolarov
Beograd

Član broj: 158477
Poruke: 1
*.dynamic.sbb.co.yu.



Profil

icon Re: Kursna lista NBS01.10.2007. u 15:59
Code:

<?
require_once('../lib/nusoap.php');
$soapaction = "http://www.nbs.rs/TempExchange...ervice/GetCurrentExchangeRates";

$wsdl = "http://webservices.nbs.yu/Comm...ExchangeRatesService.asmx?wsdl";
$namespace = "http://www.nbs.rs/TempExchangeRatesService";
$client = new soapclientw($wsdl);

$mysoapmsg = $client->serializeEnvelope('<GetCurrentExchangeRates xmlns="http://www.nbs.rs/TempExchangeRatesService">
      <nExchangeRatesListTypeID>1</nExchangeRatesListTypeID>
    </GetCurrentExchangeRates>','<AuthenticationHeader xmlns="http://www.nbs.rs/TempExchangeRatesService">
      <UserName>TempTest</UserName>
      <Password>TempTestPassword</Password>
      <LicenceID>0</LicenceID>
    </AuthenticationHeader>',array(),'document', 'literal');

$response = $client->send($mysoapmsg, $soapaction);

if ($client->fault) {
echo '<h3>Fault</h3><pre>';
print_r($response);
echo '</pre>';
}
echo $client->response;
?>


Ovo ce ti biti dovoljno da udjes u fazon. Potrebna ti je biblioteka NuSoap da mi mogao da koristis funkcije WS-a u 4-ci. Radi i u 5ci mada onda moras da prebacis ime klase SoapClient u npr SoapClientW kao sto sam ja to uradio...

Fora je da se mora rucno praviti Envelope deo Soap poruke jer .NET pravi problem kada se poziv ne formira na odgovarajuci nacin. Ako me ne bude mrzelo detaljnije cu ceo postupak objasniti na mom blogu > www.insaned.net.

Pozdrav!
01.10.2007. u 15:59 

sale83
Aleksandar Ervacanin
Full Time Student & Full Time Zaposlen ( IT Suppo..
Sydney

Član broj: 41625
Poruke: 610
*.ispone.net.au.

Sajt: www.serbiansite.com


Profil

icon Re: Kursna lista NBS03.10.2007. u 07:56
Citat:
milivoye: Da li bi mogao da okacis verziju koja vraca XML tako da mogu da formatiram output onako kako mi je potrabno?


Evo kako ja preuzimam kursnu listu u XML-u od NBS :

Code:

function getXML(){
        ini_set('user_agent', 'Mozilla Firefox');
        $date=date("d.m.Y");
        $url='http://www.nbs.yu/internet/latinica/scripts/kl.html?datum=';
        $url.=$date.'&broj=br.&godina='.date("Y").'&vrsta=1&eksport=xml';
        $xml = file_get_contents($url);
        preg_match("@(<kursna_lista>)(.*?)(</kursna_lista>)@si", $xml, $matches); 
        $ret = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
        $ret .= $matches[0];
        return $ret;
}


Poz
sale


PHP/MySQl/SQL/VB.NET/JAVA/JSP/Servlet/MSSQLServer/MSAccess/Perl
COBOL/JCL/CICS -> IBM Mainframe
Nortel/Cisco/SideWinder
03.10.2007. u 07:56 

Dr NIK
Novakovic Marko
BG

Član broj: 19744
Poruke: 108
194.106.175.*



Profil

icon Re: Kursna lista NBS17.10.2007. u 17:12
Evo moje verzije programa;

Code:

<?php
require_once('nusoap.php');

$wsdl = "http://webservices.nbs.yu/Comm...ExchangeRatesService.asmx?WSDL";
$namespace = "http://www.nbs.rs/TempExchangeRatesService";
$client = new soap_client($wsdl, true);

$header = 
'<AuthenticationHeader xmlns="http://www.nbs.rs/TempExchangeRatesService">
      <UserName>TempTest</UserName>
      <Password>TempTestPassword</Password>
      <LicenceID>0</LicenceID>
 </AuthenticationHeader>';

$client->setHeaders($header);

$parameters_array = array('parameters' => array(
                                            'nExchangeRatesListTypeID'=>1 // kurs za devize
                                            //'nExchangeRatesListTypeID'=>2 // kurs za efektivu
                                            //'nExchangeRatesListTypeID'=>3 //srednji kurs
                                            )
                        );

$xml_result_array =  $client->call('GetCurrentExchangeRatesXML', $parameters_array) ;
$xml_result = $xml_result_array['GetCurrentExchangeRatesXMLResult'];
echo $xml_result;

/*
 a moze i druga funkcija iz WS-a
$xml_result_array =  $client->call('GetCurrentExchangeRates', $parameters_array) ;
$xml_result = $xml_result_array['GetCurrentExchangeRatesResult'];
echo $xml_result;
*/
?>

POZ
Seek & Destroy Rap
17.10.2007. u 17:12 

Cybernoid II

Član broj: 14852
Poruke: 523
*.yubc.net.

Sajt: www.youtube.com/watch?v=7..


Profil

icon Re: Kursna lista NBS13.11.2007. u 14:49
Citat:
.NET pravi problem kada se poziv ne formira na odgovarajuci nacin

Istina...
Evo i moj mali doprinos za one koji koriste SOAP extension i klase
Code:

class AuthenticationHeader{
    function __construct() {
        $this->UserName='TempTest';
        $this->Password='TempTestPassword';
        $this->LicenceID=0;
    }
    public $UserName;
    public $Password;
    public $LicenceID;
}

class NBSSoapClient extends SoapClient {

    function __construct($wsdl,array $options){
        parent::__construct($wsdl,$options);    
        $auth=new AuthenticationHeader;
        $authvalues = new SoapVar($auth, SOAP_ENC_OBJECT);
        $header =  new SoapHeader('http://www.nbs.rs/TempExchangeRatesService','AuthenticationHeader', $authvalues, false);
        $this->__setSoapHeaders(array($header));
    }

    function __doRequest($request, $location, $action, $version) {
        $request=mb_ereg_replace('ns1:','',$request);
        $request=mb_ereg_replace(':ns1','',$request);
        $request=mb_ereg_replace('SOAP-ENV','soap',$request);
        $request=mb_ereg_replace('Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"','Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"',$request);
    return parent::__doRequest($request, $location, $action, $version);
    }
}

class GetCurrentExchangeRatesXML{
    function __construct($ID=3) {
        $this->nExchangeRatesListTypeID=$ID;
    }
    public $nExchangeRatesListTypeID;
}



Koristi se na sledeći način

Code:

$NBSclient = new NBSSoapClient("http://webservices.nbs.yu/Comm...ExchangeRatesService.asmx?WSDL",array(
            'soap_version' => SOAP_1_1,
            'style' => SOAP_DOCUMENT,
            'encoding' => 'utf-8',
            'use' => SOAP_LITERAL
        ));

$parameters= new GetCurrentExchangeRatesXML(3);
$response=$NBSclient->GetCurrentExchangeRatesXML($parameters);


Naravno ovo može da se još malo ulepša...

[Ovu poruku je menjao Cybernoid II dana 13.11.2007. u 16:00 GMT+1]
#!/usr/bin/basho
mv frog ancient_pond
echo "Splash!"
13.11.2007. u 14:49 

[es] :: PHP :: Kursna lista NBS

Strane: 1 2

[ Pregleda: 17492 | Odgovora: 26 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.