Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Call url from ABAP program

Former Member
0 Likes
12,526

Hi friends,

Can we call a web URL from a ABAP program?

Is there anyway its possible ? if yes how?

Please provide the solution.

Thanks & Regards

kapil

1 ACCEPTED SOLUTION
Read only

suresh_datti
Active Contributor
0 Likes
4,433

TRY this..

report zp_test_web4 .


call method cl_gui_frontend_services=>execute
  exporting
    document = 'http://www.sap.com'
  exceptions
    others   = 1.

~Suresh

7 REPLIES 7
Read only

suresh_datti
Active Contributor
0 Likes
4,434

TRY this..

report zp_test_web4 .


call method cl_gui_frontend_services=>execute
  exporting
    document = 'http://www.sap.com'
  exceptions
    others   = 1.

~Suresh

Read only

Bema
Active Participant
0 Likes
4,433

Inserting Website Links in ABAP

*

  • ABAP with web links

*

  • Creates a list that has a couple of active URL links embedded.

  • By single-clicking on these links a web browser will popup and display

  • the corresponding web page.

*

*

REPORT ZURL NO STANDARD PAGE HEADING.

DATA: BEGIN OF URL_TABLE OCCURS 10,

L(25),

END OF URL_TABLE.

URL_TABLE-L = 'http://www.lycos.com'.APPEND URL_TABLE.

URL_TABLE-L = 'http://www.hotbot.com'.APPEND URL_TABLE.

URL_TABLE-L = 'http://www.sap.com'.APPEND URL_TABLE.

LOOP AT URL_TABLE.

SKIP. FORMAT INTENSIFIED OFF.

WRITE: / 'Single click on '.

FORMAT HOTSPOT ON.FORMAT INTENSIFIED ON.

WRITE: URL_TABLE. HIDE URL_TABLE.

FORMAT HOTSPOT OFF.FORMAT INTENSIFIED OFF.

WRITE: 'to go to', URL_TABLE.

ENDLOOP.

CLEAR URL_TABLE.

AT LINE-SELECTION.

IF NOT URL_TABLE IS INITIAL.

CALL FUNCTION 'WS_EXECUTE'

EXPORTING

program = 'C:\Program Files\Internet Explorer\IEXPLORE.EXE'

commandline = URL_TABLE

INFORM = ''

EXCEPTIONS

PROG_NOT_FOUND = 1.

IF SY-SUBRC <> 0.

WRITE:/ 'Cannot find program to open Internet'.

ENDIF.

ENDIF.

*-- End of Program

Read only

Former Member
0 Likes
4,433

Use the fm: call_browser:

Sample usage:

CALL FUNCTION 'CALL_BROWSER'

EXPORTING

URL = 'www.yahoo.com'

  • BROWSER_TYPE =

  • CONTEXTSTRING =

EXCEPTIONS

FRONTEND_NOT_SUPPORTED = 1

FRONTEND_ERROR = 2

PROG_NOT_FOUND = 3

NO_BATCH = 4

UNSPECIFIED_ERROR = 5

OTHERS = 6.

Read only

Former Member
0 Likes
4,433

hi Kapil,

Check out this thread..

call function 'CALL_BROWSER'
exporting
   url = 'C:Documents and SettingshemantgDesktopnew.html'
   exceptions
     frontend_not_supported = 1
     frontend_error = 2
     prog_not_found = 3
     no_batch = 4
     unspecified_error = 5
      others = 6.
if sy-subrc <> 0.
 message id sy-msgid type sy-msgty number sy-msgno
 with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.

Regards,

santosh

Message was edited by: Santosh Kumar P

Read only

Former Member
0 Likes
4,433

call this function module

HR_URL_CALL_BROWSER

pass your URL to the URL field of this function module.

regards

srikanth.

Message was edited by: Srikanth Kidambi

Read only

Former Member
0 Likes
4,433

Hi Kapil,

<b>Look at the below example program:-</b>

REPORT  zget_mayors_for_cities.

DATA: it_citymayors TYPE TABLE OF zcitymayors,
      wa_citymayors LIKE LINE OF it_citymayors,
      mayor TYPE full_name,
      trash TYPE string.
 
PARAMETERS: s_city TYPE s_city LOWER CASE.
 
SELECT * FROM zcitymayors INTO TABLE it_citymayors
  WHERE city LIKE s_city.
 
* HTTP Client according to
* /people/thomas.jung3/blog/2005/07/01/bsp-create-a-weather-magnet-using-xml-feed-from-weathercom
 
DATA: client TYPE REF TO if_http_client,
      <b>url TYPE string,</b>
      xml TYPE xstring,
      c_xml TYPE string,
      city TYPE string.
 
* Converter
DATA: l_convin   TYPE REF TO cl_abap_conv_in_ce.
 
LOOP AT it_citymayors INTO wa_citymayors.
* Use the Progress Indicator to show the user which City is processed
  CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
    EXPORTING
      percentage = sy-index
      text       = wa_citymayors-city.
 
  city = wa_citymayors-city.
* Spaces have to be replaced by _ in the URL
  REPLACE FIRST OCCURRENCE OF space IN city WITH '_'.
 
<b>  CONCATENATE
    'http://de.wikipedia.org/wiki/Spezial:Export/' city
       INTO url.</b>
 
****Create the HTTP client
  TRY.
<b>      CALL METHOD cl_http_client=>create_by_url
        EXPORTING
          url    = url
        IMPORTING
          client = client
        EXCEPTIONS
          OTHERS = 1.</b>
 
      client->send( ).
      client->receive( ).
 
      xml = client->response->get_data( ).
      client->close( ).
    CATCH cx_root.
      WRITE: / 'HTTP Connection error: ', city.
  ENDTRY.
* Wikipedia does not provide a encoding with the returned XML
* so we have to do the conversion manually
  TRY.
      CALL METHOD cl_abap_conv_in_ce=>create
        EXPORTING
          encoding = 'UTF-8'
          input    = xml
          endian   = 'L'
        RECEIVING
          conv     = l_convin.
 
      CALL METHOD l_convin->read
        IMPORTING
          data = c_xml.
    CATCH cx_root.
      WRITE: / 'Problem during Character conversion: ', city.
  ENDTRY.
****Transform XML to ABAP Values
  TRY.
      CALL TRANSFORMATION zwikipedia_mayor_to_abap
      SOURCE XML c_xml
      RESULT mayor = mayor.
    CATCH cx_root.
      WRITE: / 'Data loss during transformation: ', city.
  ENDTRY.
* Some Mayors already have pecial Pages
  REPLACE FIRST OCCURRENCE OF '[[' IN mayor WITH ''.
  REPLACE FIRST OCCURRENCE OF ']]' IN mayor WITH ''.
* Some Mayors are members of a Party
  SPLIT mayor AT '(' INTO mayor trash.
  wa_citymayors-mayor = mayor.
 
  WRITE: / wa_citymayors-city.
* Update Database
  IF NOT wa_citymayors-mayor IS INITIAL.
    UPDATE zcitymayors FROM wa_citymayors.
    WRITE: wa_citymayors-mayor.
  ENDIF.
ENDLOOP.

Look at the below thread for more info:-

/people/gregor.wolf3/blog/2006/06/29/use-data-from-wikipedia

Regards

Sudheer

Read only

Former Member
0 Likes
4,433

Hi,

You can use the FM <b>CALL_BROWSER</b>

Regards

vijay