HTTP_GET
-
- Posty: 8356
- Rejestracja: wt kwie 03, 2007 4:05 pm
- Has thanked: 1924 times
- Been thanked: 1478 times
- Kontakt:
Re: HTTP_GET
Moim zdaniem podajesz zły URL tj. http://195.136.199.105/kursy/kursya.html
Moja przeglądarka nie potrafi tego adresu otworzyć, natomiast z http://www.nbp.pl/kursy/kursya.html radzi sobie bez problemu.
Moja przeglądarka nie potrafi tego adresu otworzyć, natomiast z http://www.nbp.pl/kursy/kursya.html radzi sobie bez problemu.
-
- Posty: 1062
- Rejestracja: pt mar 14, 2008 12:51 pm
- Has thanked: 71 times
- Been thanked: 315 times
Re: HTTP_GET
Wygląda na to że przekleiłeś kod bezpośrednio a NBP zmienił adres w międzyczasie.
Spróbuj przeczytać kod (w końcu ma być czytelny w założeniach ) bo tak to możesz przez to nie przebrnąć i napotkasz co chwilę jakiś problem.
Spróbuj przeczytać kod (w końcu ma być czytelny w założeniach ) bo tak to możesz przez to nie przebrnąć i napotkasz co chwilę jakiś problem.
Re: HTTP_GET
Staram się czytać ten kod, ale łatwo mi nie idzie.
W mojej firmie wdrożyli SAPa ale nikogo nie wysłali na kursy z ABAPa...
Staram się to zrozumieć czytając różne poradniki i książki.
Póki co jestem na poziomie napisania jakiegoś programu (raportu) który pobierze dane z SAPowych tabel jakoś je przemieli i pokaże końcowy raport
Ostatnio wyszła potrzeba automatyzacji wczytywania kursów walutowych do SAPa no i znalazłem ten wątek na forum.
Podany kod odwołuje się do funkcji których jeszcze nie opanowałem (pobieranie danych ze stron www i zapisywanie ich w tabelach SAP itp...)
Staram się na starcie, aby moduł http_get coś mi zwrócił (tylko nie błąd).
Podaje różne adresy stron nbp, ale cały czas wywala mi to samo co wcześniej przesłałem (nieprawidłowe dane).
Próbowałem z takimi adresami
http://www.nbp.pl/kursy/xml/a232z151130.xml
http://www.nbp.pl/kursy/xml/dir.txt
http://www.nbp.pl/kursy/kursya.html
http://195.149.95.21/kursy/kursya.html
http://195.136.199.105/kursy/kursya.html
Nie wiem co dalej z tym robić
W mojej firmie wdrożyli SAPa ale nikogo nie wysłali na kursy z ABAPa...
Staram się to zrozumieć czytając różne poradniki i książki.
Póki co jestem na poziomie napisania jakiegoś programu (raportu) który pobierze dane z SAPowych tabel jakoś je przemieli i pokaże końcowy raport
Ostatnio wyszła potrzeba automatyzacji wczytywania kursów walutowych do SAPa no i znalazłem ten wątek na forum.
Podany kod odwołuje się do funkcji których jeszcze nie opanowałem (pobieranie danych ze stron www i zapisywanie ich w tabelach SAP itp...)
Staram się na starcie, aby moduł http_get coś mi zwrócił (tylko nie błąd).
Podaje różne adresy stron nbp, ale cały czas wywala mi to samo co wcześniej przesłałem (nieprawidłowe dane).
Próbowałem z takimi adresami
http://www.nbp.pl/kursy/xml/a232z151130.xml
http://www.nbp.pl/kursy/xml/dir.txt
http://www.nbp.pl/kursy/kursya.html
http://195.149.95.21/kursy/kursya.html
http://195.136.199.105/kursy/kursya.html
Nie wiem co dalej z tym robić
-
- Posty: 8356
- Rejestracja: wt kwie 03, 2007 4:05 pm
- Has thanked: 1924 times
- Been thanked: 1478 times
- Kontakt:
Re: HTTP_GET
Jeśli żaden z podanych przez Ciebie adresów nie działa to najpewniej twój SAP nie ma możliwości połączenia się zewnętrznymi adresami WWW. To jest temat do sieciowców w twojej firmie.
-
- Posty: 1062
- Rejestracja: pt mar 14, 2008 12:51 pm
- Has thanked: 71 times
- Been thanked: 315 times
Re: HTTP_GET
Tak jak pisałem wcześniej i Dominik dobrze podpowiada - sprawdź z Basisem jakie proxy jest ewentualnie dostępne żeby SAP mógł ściągnąć stronę www z Internetu. Najprawdopodobniej będą musieli dodać wyjątek w zaporze sieciowej na żądane adresy, więc przemyśl które adresy potrzebujesz.
Re: HTTP_GET
Tylko z tego co zrozumiałem z tego wątku to nbp codziennie wystawia plik z kursami walutowymi o innej nazwie. Skoro codziennie inna nazwa to i inny adres do pliku...
Ciężko podać konkretny adres do firewalla.
Jak podaje proxy które dostałem od sieciowców to niby coś się łączy...
Pokazuje czas wykonania: 79.562 Mikrosek (co oznacza że chyba jest jakieś połączenie)
(Jak nie podam proxy lub podam fałszywe proxy to myśli dużo dłużej i pokazuje ostatecznie inny błąd)
W RESPONSE_HEADERS pokazuje mi takie coś:
HTTP/1.1 400 Bad Request ( NieprawidÅ#owe dane. ) - pewnie jednak to jakieś problemy z połączeniem
Connection: close
Proxy-Connection: close
Pragma: no-cache
Cache-Control: no-cache
Content-Type: text/html
Content-Length: 1946
Pogadam jeszcze z basisem i sieciowcami.
W każdym razie dziękuje za wskazówki
Ciężko podać konkretny adres do firewalla.
Jak podaje proxy które dostałem od sieciowców to niby coś się łączy...
Pokazuje czas wykonania: 79.562 Mikrosek (co oznacza że chyba jest jakieś połączenie)
(Jak nie podam proxy lub podam fałszywe proxy to myśli dużo dłużej i pokazuje ostatecznie inny błąd)
W RESPONSE_HEADERS pokazuje mi takie coś:
HTTP/1.1 400 Bad Request ( NieprawidÅ#owe dane. ) - pewnie jednak to jakieś problemy z połączeniem
Connection: close
Proxy-Connection: close
Pragma: no-cache
Cache-Control: no-cache
Content-Type: text/html
Content-Length: 1946
Pogadam jeszcze z basisem i sieciowcami.
W każdym razie dziękuje za wskazówki
-
- Posty: 1062
- Rejestracja: pt mar 14, 2008 12:51 pm
- Has thanked: 71 times
- Been thanked: 315 times
Re: HTTP_GET
Dokładnie to program pobiera stronę www z adresu http://www.nbp.pl/Kursy/KursyA.html i szuka w nim tekstu "tabela w formacie .XML" i na podstawie tego wyciąga link do aktualnego kursu np. z dziś http://www.nbp.pl/kursy/xml/a232z151130.xml
Zależnie od tego czy Twój SAP jest w stanie ściągnąć pliki z nbp.pl czy po adresie IP musisz mieć odpowiednie wyjątki w zaporze.
Zależnie od tego czy Twój SAP jest w stanie ściągnąć pliki z nbp.pl czy po adresie IP musisz mieć odpowiednie wyjątki w zaporze.
Re: HTTP_GET
Co do adresu kursu to zawsze jest jeszcze adres http://www.nbp.pl/kursy/xml/LastA.xml, tam zawsze masz ostatni ważny kurs... czyli po 12 będzie z dnia dzisiejszego, a przed z poprzedniego. Jak ci basis nie ustawi odpowiednio dostępu to zawsze możesz taki plik ściągnąć harmonogramem zadań na jakimś serwerze i wgrać go na AS i później obrobić tylko XML w abapie.
-
- Posty: 1062
- Rejestracja: pt mar 14, 2008 12:51 pm
- Has thanked: 71 times
- Been thanked: 315 times
Re: HTTP_GET
Komuś też przestał działać HTTP_GET i zwraca błąd 503 w SAPie, a w przeglądarce jest OK? Mam wrażenie że nbp zaczął sprawdzać przeglądarkę klienta i tylko cha *chrome* czy *ie* działa?
-
- Posty: 72
- Rejestracja: czw lis 04, 2010 10:49 pm
- Has thanked: 1 time
- Been thanked: 72 times
- Kontakt:
Re: HTTP_GET
Od dość dawna NBP udostępnia REST API http://api.nbp.pl/ do kursów walut - dużo prostsze i wygodniejsze, zwłaszcza kiedy potrzebujemy nie tylko kurs bieżący.
Poniżej prosty raport (powinien działać bez zmian od wersji 7.40).
Poniżej prosty raport (powinien działać bez zmian od wersji 7.40).
Kod: Zaznacz cały
DATA: currency TYPE tcurr-tcurr VALUE 'USD'.
cl_demo_input=>add_text( 'Exchange rate for:' ).
cl_demo_input=>request( EXPORTING text = 'Currency'
CHANGING field = currency ).
DATA(url) = |http://api.nbp.pl/api/exchangerates/rates/A/{ currency }/|.
*url = |http://api.nbp.pl/api/exchangerates/rates/A/{ currency }/?format=xml|.
* Create HTTP Client by URL
cl_http_client=>create_by_url(
EXPORTING
url = url
IMPORTING
client = DATA(http_client)
EXCEPTIONS
OTHERS = 1 ).
TRY.
* Create REST Client
DATA(rest_client) = NEW cl_rest_http_client( http_client ).
* Get REST response
rest_client->if_rest_client~get( ).
DATA(response) = rest_client->if_rest_client~get_response_entity( ).
DATA(out) = response->get_string_data( ).
" 404 NotFound - Not Found - Brak danych
* Display JSON string
cl_demo_output=>display_json( response->get_binary_data( ) ).
* Display JSON string as XML
cl_demo_output=>display_xml( response->get_binary_data( ) ).
* Display parsed JSON
DATA(tab) = NEW /ui5/cl_json_parser( ).
tab->parse( out ).
cl_demo_output=>write( tab->value( '/code' ) ).
DO.
IF tab->exists( |/rates/{ sy-index }| ).
cl_demo_output=>write( tab->array_values( |/rates/{ sy-index }| ) ).
ELSE.
EXIT.
ENDIF.
ENDDO.
cl_demo_output=>display( ).
* END Display...
IF NOT rest_client IS INITIAL.
rest_client->if_rest_client~close( ).
ENDIF.
http_client->close(
EXCEPTIONS
http_invalid_state = 1
OTHERS = 2 ).
CATCH cx_root INTO DATA(error).
MESSAGE error TYPE 'I'.
ENDTRY.
Pozdrawiam,
Krzysiek
Krzysiek
-
- Posty: 1
- Rejestracja: wt cze 23, 2020 9:34 am
Re: HTTP_GET
Też mam problem z odpowiedzią 503 Service Unavailable przy próbie pobrania HTTP_GET.
Korzystam z adresu http://api.nbp.pl/api/exchangerates/tab ... format=xml
Zdefiniowałem sobie połączenie w SM59 i tam testowanie połączenia pokazuje wynik OK i zwraca wynik w xml.
Czy ktoś może spotkał się z takim problemem?
Korzystam z adresu http://api.nbp.pl/api/exchangerates/tab ... format=xml
Zdefiniowałem sobie połączenie w SM59 i tam testowanie połączenia pokazuje wynik OK i zwraca wynik w xml.
Czy ktoś może spotkał się z takim problemem?
-
- Posty: 1062
- Rejestracja: pt mar 14, 2008 12:51 pm
- Has thanked: 71 times
- Been thanked: 315 times
Re: HTTP_GET
ja zastąpiłem http_get przez kod powyżej i śmiga elegancko. w wolnej chwili poczytam dlaczego tak się dzieje. reguła nadal ta sama - ściągam z nbp.pl pierwszą stronkę z tabelą a i szukam adresu do XML, znowu drugi raz zamiast http_get powyższe metody do downloadu i tak jak wcześniej analizuję xml do kursów.