How to call url from abap in background

Hi,
I could open url but it opens browser window
i saw several threads on how to cal url in background but no good answer
kindly help
thanks
B

Hi,
Try the following (primitive) example, it calls an url and display the result on screen.
Hope this will help you.
<pre>
REPORT  test.
      CLASS lcx_http_client DEFINITION
      Minimal Error Handling
CLASS lcx_http_client DEFINITION INHERITING FROM cx_static_check.
  PUBLIC SECTION.
    INTERFACES:
      if_t100_message.
    DATA:
       mv_method TYPE string,                               "#EC NEEDED
       mv_subrc  TYPE i.                                    "#EC NEEDED
    METHODS:
      constructor
        IMPORTING iv_method TYPE string  OPTIONAL
                  iv_subrc  TYPE i       OPTIONAL
                  iv_msgid  TYPE symsgid DEFAULT '00'
                  iv_msgno  TYPE i       DEFAULT 162.
ENDCLASS.                    "lcx_http_client DEFINITION
      CLASS lcx_http_client IMPLEMENTATION
CLASS lcx_http_client IMPLEMENTATION.
  METHOD constructor.
    super->constructor( ).
    mv_method = iv_method.
    mv_subrc  = iv_subrc.
    if_t100_message~t100key-msgid = iv_msgid.
    if_t100_message~t100key-msgno = iv_msgno.
    if_t100_message~t100key-attr1 = 'MV_METHOD'.
    if_t100_message~t100key-attr2 = 'MV_SUBRC'.
  ENDMETHOD.                    "constructor
ENDCLASS.                    "lcx_http_client IMPLEMENTATION
      CLASS lcl_http_client DEFINITION
      Facade for if_http_client
CLASS lcl_http_client DEFINITION.
  PUBLIC SECTION.
    CLASS-METHODS:
      get_http_client_by_url
        IMPORTING iv_url           TYPE string
                  iv_proxy_host    TYPE string OPTIONAL
                  iv_proxy_service TYPE string OPTIONAL
                  PREFERRED PARAMETER iv_url
        RETURNING value(ro_http_client) TYPE REF TO lcl_http_client
        RAISING lcx_http_client.
    DATA:
      mr_http_client TYPE REF TO if_http_client.
    METHODS:
      send
        RAISING lcx_http_client,
      receive
        RAISING lcx_http_client,
      close
        RAISING lcx_http_client,
      get_response_header_fields
        RETURNING value(rt_fields) TYPE tihttpnvp,
      get_response_cdata
        RETURNING value(rv_data) TYPE string.
ENDCLASS.                    "lcl_http_client DEFINITION
      CLASS lcl_http_client IMPLEMENTATION
CLASS lcl_http_client IMPLEMENTATION.
  METHOD get_http_client_by_url.
    DATA: lv_subrc TYPE sysubrc.
    CREATE OBJECT ro_http_client.
    cl_http_client=>create_by_url( EXPORTING url                 = iv_url
                                             proxy_host          = iv_proxy_host
                                             proxy_service       = iv_proxy_service
                                   IMPORTING client              = ro_http_client->mr_http_client
                                   EXCEPTIONS argument_not_found = 1
                                              plugin_not_active  = 2
                                              internal_error     = 3
                                              OTHERS             = 999 ).
    CHECK sy-subrc <> 0.
    lv_subrc = sy-subrc.
    RAISE EXCEPTION TYPE lcx_http_client EXPORTING iv_method = 'GET_HTTP_CLIENT_BY_URL' iv_subrc = lv_subrc.
  ENDMETHOD.                    "get_http_client_by_url
  METHOD send.
    DATA: lv_subrc TYPE sysubrc.
    mr_http_client->send( EXCEPTIONS http_communication_failure = 5
                                     http_invalid_state         = 6
                                     http_processing_failed     = 7
                                     http_invalid_timeout       = 8
                                     OTHERS                     = 999 ).
    CHECK sy-subrc <> 0.
    lv_subrc = sy-subrc.
    RAISE EXCEPTION TYPE lcx_http_client EXPORTING iv_method = 'SEND' iv_subrc = lv_subrc.
  ENDMETHOD.                    "send
  METHOD close.
    DATA: lv_subrc TYPE sysubrc.
    CALL METHOD mr_http_client->close
      EXCEPTIONS
        http_invalid_state = 10
        OTHERS             = 999.
    CHECK sy-subrc <> 0.
    lv_subrc = sy-subrc.
    RAISE EXCEPTION TYPE lcx_http_client EXPORTING iv_method = 'CLOSE' iv_subrc = lv_subrc.
  ENDMETHOD.                    "close
  METHOD receive.
    DATA: lv_subrc TYPE sysubrc.
    mr_http_client->receive( EXCEPTIONS http_communication_failure = 9
                                        http_invalid_state         = 10
                                        http_processing_failed     = 11
                                        OTHERS                     = 999 ).
    CHECK sy-subrc <> 0.
    lv_subrc = sy-subrc.
    RAISE EXCEPTION TYPE lcx_http_client EXPORTING iv_method = 'RECEIVE' iv_subrc = lv_subrc.
  ENDMETHOD.                    "receive
  METHOD get_response_header_fields.
    mr_http_client->response->get_header_fields( CHANGING fields = rt_fields ).
  ENDMETHOD.                    "get_response_header_fields
  METHOD get_response_cdata.
    rv_data = mr_http_client->response->get_cdata( ).
  ENDMETHOD.                    "get_response_cdata
ENDCLASS.                    "lcl_http_client IMPLEMENTATION
PARAMETERS: p_url   TYPE string DEFAULT 'http://www.google.com' LOWER CASE,
            p_phost TYPE string DEFAULT 'your_proxy_here'       LOWER CASE,
            p_pserv TYPE string DEFAULT '8080'                  LOWER CASE.
*===================================================================================
START-OF-SELECTION.
  TRY .
      DATA: gt_data          TYPE string_table,
            gv_data          TYPE string,
            gr_http_client   TYPE REF TO lcl_http_client,
            go_cx            TYPE REF TO lcx_http_client.
      "Initialize the http client
      gr_http_client =
        lcl_http_client=>get_http_client_by_url( iv_url           = p_url
                                                 iv_proxy_host    = p_phost
                                                 iv_proxy_service = p_pserv ).
      "Call the specified URL and retrieve data from the response
      gr_http_client->send( ).
      gr_http_client->receive( ).
      gv_data = gr_http_client->get_response_cdata( ).
      "Its over....
      gr_http_client->close( ).
      "Display result
      REPLACE ALL OCCURRENCES OF cl_abap_char_utilities=>cr_lf IN gv_data WITH cl_abap_char_utilities=>newline.
      SPLIT gv_data AT cl_abap_char_utilities=>newline INTO TABLE gt_data.
      LOOP AT gt_data INTO gv_data.
        WRITE: / gv_data.
      ENDLOOP.
    CATCH lcx_http_client INTO go_cx.
      MESSAGE go_cx TYPE 'S' DISPLAY LIKE 'E'.
  ENDTRY.
</pre>

Similar Messages

  • How to call  URL from BADDI??

    Hi,
    I have a requirement to call URL from BADI, i tried to use 'CALL BROWSER' function module,
    it works when we are working in GUI, but for portal/PCUI it gives sy-subrc = 2 ( Front end Error)
    How to call a pop up page or URL from poral??
    Thanks,
    Manoj
    Edited by: Manoj Lakhanpal on Sep 27, 2010 10:27 AM

    Hi!
    I'm using this code for calling a browser, you might try out as well...
    MOVE 'http://www.sap.com' TO command.
        CONCATENATE 'url.dll,FileProtocolHandler'
                    command
               INTO command
           SEPARATED BY space.
        MOVE 'rundll32' TO lv_application.
        CALL METHOD cl_gui_frontend_services=>execute
           EXPORTING
             APPLICATION            = lv_application
             PARAMETER              = command
           EXCEPTIONS
             CNTL_ERROR             = 1
             ERROR_NO_GUI           = 2
             BAD_PARAMETER          = 3
             FILE_NOT_FOUND         = 4
             PATH_NOT_FOUND         = 5
             FILE_EXTENSION_UNKNOWN = 6
             ERROR_EXECUTE_FAILED   = 7
             others                 = 8
    Regards
    Tamá

  • Call url from ABAP program

    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

    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

  • How to call BAPI from ABAP Inbound Proxy

    Hi All
    Can some one provide/giude  a sample code on how to call a BAPI from generated Method (Inbound Proxy) and how are the table parameters passed from Proxy to BAPI.
    Thanks
    Ravi/

    Hello Ravi,
    In the proxy before calling the BAPI, construct the table, fill it with the appropiate values by lopping over the proxy request object. Now use this table for calling BAPI
    Cheers,
    Naveen

  • How to Call Java from ABAP

    Hi all,
    I have installed JCO & created the RFC in SAP. i have used below code to test my RFC connection & it's working fine.
    But In the below report, where to call the JAVA Program & what code i should use to call java code .
    Actually my ABAP requirement is to download a file. Then i need to call JAVA program, inside ABAP, to encrypt the downloaded file. Here, Java program is used to encrypt the file. Now question is, how to call the Java program inside the ABAP code.  Please advice with the code sample. Thanks a lot.
    REPORT  z_jco_test.
    PARAMETERS: requtext LIKE sy-lisel.
    DATA: echotext LIKE sy-lisel,
          resptext LIKE sy-lisel,
          rfctest TYPE TABLE OF rfctest,
          wa_rfctest TYPE rfctest.
    wa_rfctest-rfcdata1 = requtext.
    wa_rfctest-rfcdata2 = 'Hello World'.
    APPEND wa_rfctest TO rfctest.
    CALL FUNCTION 'RFC_PING'
      DESTINATION 'JCO'.
    CALL FUNCTION 'STFC_CONNECTION'
      DESTINATION 'JCO'
      EXPORTING
        requtext = requtext
      IMPORTING
        echotext = echotext
        resptext = resptext
      TABLES
        rfctest  = rfctest.
    WRITE: 'Echo Text: ', echotext.
    WRITE: 'Response Text: ', resptext.
    LOOP AT rfctest INTO wa_rfctest.
      WRITE: / 'rfcdata1: ', wa_rfctest-rfcdata1.
      WRITE: / 'rfcdata2: ', wa_rfctest-rfcdata2.
    ENDLOOP.

    Hi,
    You might accomplish your goal using external operating system commands.
    1) Define in SM69 an external command, letu2019s say ZJAVA. This command will execute a script on the operating system, letu2019s call it calljava.sh.
    2) In script calljava.sh you just call java, passing some parameters. For example, java $1 $2 $3 $4 $5 $6 $7
    3) In your ABAP program you call the ZJAVA external command and pass parameters to it. Of course, one of the parameters must be your Java program name.
      CALL FUNCTION 'SXPG_COMMAND_EXECUTE'
        EXPORTING
          commandname                   = l_command
          additional_parameters         = l_param
          trace                         = 'X'
        IMPORTING
          status                        = l_status
          exitcode                      = l_exitcode
        TABLES
          exec_protocol                 = l_exec_protocol_itab
        EXCEPTIONS
          no_permission                 = 1u2026

  • How to call smartforms from abap

    hi experts,
    I TRIED AND NOW I AM GETTING MY SF IN MY PROG.(I TRIED BY OWN)
    NOW I WANT TO CONVERT IT INTO PDF FORM ,AND THEN SAVE THIS SF IN COMPUTER ,
    thanks
    sunny

    hello mr thakur
    please take reference of this  code
    REPORT  ZTESTCURRENCY.
    data : IT_DATA  type table of  zstruct1.
    DATA : FM_NAME TYPE RS38L_FNAM.
    DATA : FORM_NAME TYPE TDSFNAME.
    selection-screen begin of block b1 with frame title text-000.
    parameters p_date type vbak-audat.
    selection-screen pushbutton /10(5) pb1 USER-COMMAND UC01.
    selection-screen end of block b1.
    initialization.
    move 'PRINT' to pb1.
    AT SELECTION-SCREEN.
    case SY-UCOMM.
    when 'UC01'.
    PERFORM SELECT_DATA.
    ENDCASE.
    *&      Form  SELECT_DATA
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM SELECT_DATA .
         FM_NAME =  '/1BCDWB/SF00000042'.
         FORM_NAME = 'ZSF_TESTSMARTFORM'.
         SELECT AUDAT
                AUART
                NETWR
                WAERK
                INTO TABLE IT_DATA FROM VBAK WHERE AUDAT = p_date.
                CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
                  EXPORTING
                    FORMNAME                 = FORM_NAME
    *               VARIANT                  = ' '
    *               DIRECT_CALL              = ' '
    *             IMPORTING
    *               FM_NAME                  =
    *             EXCEPTIONS
    *               NO_FORM                  = 1
    *               NO_FUNCTION_MODULE       = 2
    *               OTHERS                   = 3
                IF SY-SUBRC  0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
                ENDIF.
                CALL FUNCTION FM_NAME
    *             EXPORTING
    *               ARCHIVE_INDEX              =
    *               ARCHIVE_INDEX_TAB          =
    *               ARCHIVE_PARAMETERS         =
    *               CONTROL_PARAMETERS         =
    *               MAIL_APPL_OBJ              =
    *               MAIL_RECIPIENT             =
    *               MAIL_SENDER                =
    *               OUTPUT_OPTIONS             =
    *               USER_SETTINGS              = 'X'
    *             IMPORTING
    *               DOCUMENT_OUTPUT_INFO       =
    *               JOB_OUTPUT_INFO            =
    *               JOB_OUTPUT_OPTIONS         =
                  TABLES
                    IT_DATA                    =  IT_DATA
    *             EXCEPTIONS
    *               FORMATTING_ERROR           = 1
    *               INTERNAL_ERROR             = 2
    *               SEND_ERROR                 = 3
    *               USER_CANCELED              = 4
    *               OTHERS                     = 5
                IF SY-SUBRC  0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
                ENDIF.
    ENDFORM.                    " SELECT_DATA

  • How to print PDF file content from ABAP in background?

    Hi,
    Is it possible to print PDF file content from ABAP in background?
    I have some PDF content which I need to print it, these PDF files are generated outside the SAP.
    Please have you any suggestions?
    Thank you
    Tomas

    <b><u>Solution:</u></b><br>
    <br>
    The target output device must support PDF print, this is only one limitation.<br>
    <br>
    REPORT  z_print_pdf.
    TYPE-POOLS: abap, srmgs.
    PARAMETERS: p_prnds LIKE tsp01-rqdest OBLIGATORY DEFAULT 'LOCL',
                p_fname TYPE file_table-filename OBLIGATORY LOWER CASE,
                p_ncopi TYPE rspocopies OBLIGATORY DEFAULT '1',
                p_immed AS CHECKBOX.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_fname.
      DATA: lv_rc     TYPE i,
            lv_filter TYPE string.
      DATA: lt_files TYPE filetable.
      FIELD-SYMBOLS: <fs_file> LIKE LINE OF lt_files.
      CONCATENATE 'PDF (*.pdf)|*.pdf|' cl_gui_frontend_services=>filetype_all INTO lv_filter.
      CALL METHOD cl_gui_frontend_services=>file_open_dialog
        EXPORTING
          file_filter             = lv_filter
        CHANGING
          file_table              = lt_files
          rc                      = lv_rc
        EXCEPTIONS
          OTHERS                  = 1.
      IF sy-subrc NE 0 AND lv_rc EQ 0.
        MESSAGE 'Error' TYPE 'E' DISPLAY LIKE 'S'.
      ENDIF.
      READ TABLE lt_files ASSIGNING <fs_file> INDEX 1.
      IF sy-subrc EQ 0.
        p_fname = <fs_file>-filename.
      ENDIF.
    AT SELECTION-SCREEN.
      DATA: lv_name   TYPE string,
            lv_result TYPE boolean.
      lv_name = p_fname.
      CALL METHOD cl_gui_frontend_services=>file_exist
        EXPORTING
          file                 = lv_name
        RECEIVING
          result               = lv_result
        EXCEPTIONS
          OTHERS               = 1.
      IF sy-subrc NE 0.
        MESSAGE 'Bad file!' TYPE 'E' DISPLAY LIKE 'S'.
      ENDIF.
      IF lv_result NE abap_true.
        MESSAGE 'Bad file!' TYPE 'E' DISPLAY LIKE 'S'.
      ENDIF.
    START-OF-SELECTION.
    END-OF-SELECTION.
      PERFORM process.
    FORM process.
      DATA: lv_name     TYPE string,
            lv_size     TYPE i,
            lv_data     TYPE xstring,
            lv_retcode  TYPE i.
      DATA: lt_file TYPE srmgs_bin_content.
      lv_name = p_fname.
      CALL METHOD cl_gui_frontend_services=>gui_upload
        EXPORTING
          filename                = lv_name
          filetype                = 'BIN'
        IMPORTING
          filelength              = lv_size
        CHANGING
          data_tab                = lt_file
        EXCEPTIONS
          OTHERS                  = 1.
      IF sy-subrc NE 0.
        MESSAGE 'Read file error!' TYPE 'E' DISPLAY LIKE 'S'.
      ENDIF.
      CALL FUNCTION 'SCMS_BINARY_TO_XSTRING'
        EXPORTING
          input_length = lv_size
        IMPORTING
          buffer       = lv_data
        TABLES
          binary_tab   = lt_file
        EXCEPTIONS
          failed       = 1
          OTHERS       = 2.
      IF sy-subrc NE 0.
        MESSAGE 'Binary conversion error!' TYPE 'E' DISPLAY LIKE 'S'.
      ENDIF.
      PERFORM print USING p_prnds lv_data CHANGING lv_retcode.
      IF lv_retcode EQ 0.
        WRITE: / 'Print OK' COLOR COL_POSITIVE.
      ELSE.
        WRITE: / 'Print ERROR' COLOR COL_NEGATIVE.
      ENDIF.
    ENDFORM.                    " PROCESS
    FORM print USING    iv_prndst  TYPE rspopname
                        iv_content TYPE xstring
               CHANGING ev_retcode TYPE i.
      DATA: lv_handle    TYPE sy-tabix,
            lv_spoolid   TYPE rspoid,
            lv_partname  TYPE adspart,
            lv_globaldir TYPE text1024,
            lv_dstfile   TYPE text1024,
            lv_filesize  TYPE i,
            lv_pages     TYPE i.
      CLEAR: ev_retcode.
      CALL FUNCTION 'ADS_SR_OPEN'
        EXPORTING
          dest            = iv_prndst
          doctype         = 'ADSP'
          copies          = p_ncopi
          immediate_print = p_immed
          auto_delete     = 'X'
        IMPORTING
          handle          = lv_handle
          spoolid         = lv_spoolid
          partname        = lv_partname
        EXCEPTIONS
          OTHERS          = 1.
      IF sy-subrc NE 0.
        ev_retcode = 4.
        RETURN.
      ENDIF.
      CALL FUNCTION 'ADS_GET_PATH'
        IMPORTING
          ads_path = lv_globaldir.
      CONCATENATE lv_globaldir '/' lv_partname '.pdf' INTO lv_dstfile.
      OPEN DATASET lv_dstfile FOR OUTPUT IN BINARY MODE.
      IF sy-subrc NE 0.
        ev_retcode = 4.
        RETURN.
      ENDIF.
      TRANSFER iv_content TO lv_dstfile.
      IF sy-subrc NE 0.
        ev_retcode = 4.
        RETURN.
      ENDIF.
      CLOSE DATASET lv_dstfile.
      IF sy-subrc NE 0.
        ev_retcode = 4.
        RETURN.
      ENDIF.
      CALL FUNCTION 'ZBAP_RM_PDF_GET_PAGES'
        EXPORTING
          iv_content = iv_content
        IMPORTING
          ev_pages   = lv_pages.
      lv_filesize = XSTRLEN( iv_content ).
      CALL FUNCTION 'ADS_SR_CONFIRM'
        EXPORTING
          handle   = lv_handle
          partname = lv_partname
          size     = lv_filesize
          pages    = lv_pages
          no_pdf   = ' '
        EXCEPTIONS
          OTHERS   = 1.
      IF sy-subrc NE 0.
        ev_retcode = 4.
        RETURN.
      ENDIF.
      CALL FUNCTION 'ADS_SR_CLOSE'
        EXPORTING
          handle = lv_handle
        EXCEPTIONS
          OTHERS = 1.
      IF sy-subrc NE 0.
        ev_retcode = 4.
        RETURN.
      ENDIF.
    ENDFORM.                    " PRINT

  • Call procedure2 from procedure1 "in background"

    Hi all,
    my need is to call procedure2 from procedure1 "in background". What I mean... Let's say, procedure2 works about 10 seconds. So, procedure1 should call procedure2 and go on working without waiting for procedure2 to end its work.
    How do I perform it? Is it possible at all? My thought was to use pragma autonomous transaction, am I right?

    marco wrote:
    Hi all,
    my need is to call procedure2 from procedure1 "in background". What I mean... Let's say, procedure2 works about 10 seconds. So, procedure1 should call procedure2 and go on working without waiting for procedure2 to end its work.
    How do I perform it? Is it possible at all? My thought was to use pragma autonomous transaction, am I right?No. Pragma Autonomous Transaction sets up a seperate transaction for the code in that procedure, though it will still have to complete that procedure before control is returned to the calling code.
    To call procedure2 from procedure1 but not have to wait for procedure 2 to finish, you would use DBMS_SCHEDULER (or DBMS_JOB if you don't want any current transaction committed), to schedule the procedure to be run immediately. This causes the scheduled task to run in it's own right without being a part of the current session.
    http://docs.oracle.com/cd/E11882_01/appdev.112/e25788/d_sched.htm#ARPLS72260

  • Code to call url in abap program

    code to call url in abap program using cl_http requests and save the outcome to a location  in a file

    See the below program
    REPORT zbrowser .
    TABLES : sscrfields.
    INCLUDE .
    CONSTANTS: htmlcntl_eventid_on_navigate TYPE i VALUE 1.
    CONSTANTS: htmlcntl_eventid_navigate_com TYPE i VALUE 2.
    DATA : h_html_ctrl TYPE cntl_handle,
    repid TYPE sy-repid,
    dynnr TYPE sy-dynnr,
    cmd TYPE sy-ucomm,
    flag,disp.
    DATA : it_exclude LIKE TABLE OF rsexfcode WITH HEADER LINE.
    SELECTION-SCREEN : FUNCTION KEY 1,
    FUNCTION KEY 2,
    FUNCTION KEY 3,
    FUNCTION KEY 4,
    FUNCTION KEY 5.
    General Browser to View
    Files/Pictures & WebPages
    © 2005 SAP AG 2
    SELECTION-SCREEN COMMENT 45(50) comment1.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 2(28) comment2 FOR FIELD url.
    SELECTION-SCREEN POSITION 31.
    PARAMETERS : url(1064) LOWER CASE .
    SELECTION-SCREEN PUSHBUTTON 79(4) open USER-COMMAND open.
    SELECTION-SCREEN END OF LINE.
    INITIALIZATION.
    comment1 = 'ABAP INTERNET EXPLORER'.
    comment2 = 'Enter URL/Filename To Open :'.
    open = icon_transfer .
    sscrfields-functxt_05 = icon_sap.
    sscrfields-functxt_04 = icon_booking_stop.
    sscrfields-functxt_03 = icon_refresh.
    sscrfields-functxt_02 = icon_arrow_right.
    sscrfields-functxt_01 = icon_arrow_left.
    repid = sy-repid.
    dynnr = '1000'.
    it_exclude-fcode = 'ONLI'.
    APPEND it_exclude.
    it_exclude-fcode = 'INFO'.
    APPEND it_exclude.
    *Changing GUI status
    CALL FUNCTION 'RS_SET_SELSCREEN_STATUS'
    EXPORTING
    p_status = sy-pfkey
    p_program = repid
    TABLES
    p_exclude = it_exclude.
    CALL FUNCTION 'CONTROL_INIT' .
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    CALL FUNCTION 'HTMLCNTL_CREATE'
    EXPORTING
    owner_repid = repid
    link_repid = repid
    dynnr = dynnr
    handle = h_html_ctrl
    EXCEPTIONS
    control_install_error = 1
    create_error = 2
    General Browser to View
    Files/Pictures & WebPages
    © 2005 SAP AG 3
    OTHERS = 3
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    CALL FUNCTION 'HTMLCNTL_INIT'
    EXPORTING
    h_control = h_html_ctrl
    left = 1
    top = 2
    width = 143
    height = 37
    register_event_on_navigate = 'X'
    cb_form_navigate_complete = 'ON_CONTROL_EVENT'
    EXCEPTIONS
    cntl_system_error = 1
    cntl_error = 2
    dp_create_error = 3
    dp_install_error = 4
    dp_error = 5
    create_browser_error = 6
    init_error = 7
    OTHERS = 8
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    CALL FUNCTION 'CONTROL_FLUSH'.
    AT SELECTION-SCREEN.
    cmd = sscrfields-ucomm.
    CASE cmd.
    WHEN 'OPEN'.
    PERFORM load_html_page.
    CALL FUNCTION 'CONTROL_FLUSH'.
    WHEN 'FC01'. "BACK
    CALL FUNCTION 'HTMLCNTL_GO_BACK'
    EXPORTING
    h_control = h_html_ctrl.
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    General Browser to View
    Files/Pictures & WebPages
    © 2005 SAP AG 4
    PERFORM get_current_url.
    WHEN 'FC02'. "FORWARD
    CALL FUNCTION 'HTMLCNTL_GO_FORWARD'
    EXPORTING
    h_control = h_html_ctrl.
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    PERFORM get_current_url.
    WHEN 'FC03'. "REFRESH
    CALL FUNCTION 'HTMLCNTL_DO_REFRESH'
    EXPORTING
    h_control = h_html_ctrl.
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    PERFORM get_current_url.
    WHEN 'FC04'. "STOP
    CALL FUNCTION 'HTMLCNTL_STOP'
    EXPORTING
    h_control = h_html_ctrl.
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    WHEN 'FC05'. "GO TO HOME
    CALL FUNCTION 'HTMLCNTL_GO_HOME'
    EXPORTING
    h_control = h_html_ctrl.
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    PERFORM get_current_url.
    CALL FUNCTION 'CONTROL_FLUSH'.
    WHEN OTHERS.
    General Browser to View
    Files/Pictures & WebPages
    © 2005 SAP AG 5
    CALL FUNCTION 'CONTROL_DISPATCH'
    EXPORTING
    fcode = cmd.
    CALL FUNCTION 'CONTROL_FLUSH'.
    ENDCASE.
    CLEAR cmd.
    CALL FUNCTION 'CONTROL_FLUSH'.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR url.
    PERFORM get_file_name.
    PERFORM load_html_page.
    *& Form get_page_name
    Get Page Name
    FORM get_file_name.
    CALL FUNCTION 'WS_FILENAME_GET'
    EXPORTING
    DEF_FILENAME = ' '
    def_path = 'C: '
    mask = ',.,..'
    mode = 'o'
    title = 'Browse to Open'
    IMPORTING
    filename = url
    RC =
    EXCEPTIONS
    inv_winsys = 1
    no_batch = 2
    selection_cancel = 3
    selection_error = 4
    OTHERS = 5
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    ENDFORM. " get_page_name
    *& Form load_html_page
    TO load the file (URL)
    General Browser to View
    Files/Pictures & WebPages
    © 2005 SAP AG 6
    FORM load_html_page.
    CALL FUNCTION 'HTMLCNTL_SHOW_URL'
    EXPORTING
    h_control = h_html_ctrl
    url = url.
    IF sy-subrc <> 0.
    EXIT.
    ENDIF.
    flag = 'X'.
    ENDFORM. " load_html_page
    *& Form get_current_url
    Get Current URL
    FORM get_current_url.
    CALL FUNCTION 'HTMLCNTL_GET_CURRENT_URL'
    EXPORTING
    h_control = h_html_ctrl
    IMPORTING
    url = url.
    ENDFORM. " get_current_url
    Callback form for the event 'NavigateComplete'
    callback on_control_event.
    CALL FUNCTION 'CONTROL_GET_EVENT_PARAM'
    EXPORTING
    h_control = h_html_ctrl
    param_id = 0
    CHANGING
    return = url.
    PERFORM get_current_url.
    endcallback.
    Reward Points if it is helpful
    Thanks
    Seshu

  • Is it possible to call website from ABAP Program?

    Hi Experts,
           Is it possible to call website from ABAP Program?
    It is very Urgent Help me.
    Regards,
    Ashok.

    Hi,
    Check the following program:
    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.
    Regards,
    Bhaskar

  • Call java from ABAP

    JCo connectivity is used to call RFCs from Java. can i call Java from abap?
    thanks in advance.....
    regards,
    Sundararamaprasad

    Hi Sundar ,
             This link will surely give u an idea about calling java fro ABAP using Jco.
    http://www.thespot4sap.com/Articles/SAP_Netweaver_Java_Connector.asp
    regards,
    aravindh.

  • Calling url from a form - err using ".value" method

    I'm trying to call url from a form, which seems to be the subject of many of these Posts.
    I have a form with a combo box/LOV and a button. The LOV will read a url into the combo box from a table of url's.
    I used the following code in the "OnClick" Java Script Event Handler section, which I pieced together from other posts in this and other forums. (i.e. I'm a pl/sql programmer trying to use Java Scripts for the first time).
    OnClick
    var X = FORM_DRWING.DEFAULT.A_DRILLDOWN_PATH.value;
    run_form(x);
    When I attempt to run this form from the "manage" window, I get a run time error "FORM_DRWING is undefined" upon clicking the button. FORM_DRWING "IS" the name of the form!
    The runform() function in the "before displying form" pl/sql code section is
    htp.p('<script language="JavaScript1.3">
    < !--
    function runForm(v_link)
    window.open(V_LINK);
    //-->
    </script>');
    This code was from yet another Post.
    Any help would be appreciated.
    Thanks, Larry
    null

    Hi Larry,
    the problem could be that you need to preface your form with 'document.'.
    i.e.
    var X = document.FORM_DRWING.DEFAULT.A_DRILLDOWN_PATH.value;
    Regards Michael

  • Related documents or links on how to call webservices from WDJ

    Hi all
    i need documents & links on how to call webservices from Webdynpro for Java.
    if anybody send the documents on sample scenarios on the same then it is the great help to me...
    Thanks
    Sunil

    Hi Sunil,
    May these links help you.
    http://help.sap.com/saphelp_nw04/helpdata/en/f7/f289c67c759a41b570890c62a03519/frameset.htm
    http://help.sap.com/saphelp_nwce10/helpdata/en/64/0e0ffd314e44a593ec8b885a753d30/frameset.htm
    http://help.sap.com/saphelp_nw04s/helpdata/en/d2/0357425e060d53e10000000a155106/frameset.htm
    and  the below thread to call weservices in java.
    Re: How to call a web service from Java
    Regards,
    Supraja

  • Configurational settings for calling HTTP from ABAP

    Hi,
    I need to call HTTP from ABAP.
    Other than ABAP code, what configurational settings (and functional settings, if any) I need to do for this scenario..
    Please help...
    Thanks,
    Shivaa...
    Moderator message - Duplicate post locked
    Edited by: Rob Burbank on May 7, 2009 3:44 PM

    Hi All,
    I have a problem to pass a file.txt in a parameter of a web service.
    Iam using CL_HTTP_CLIENT and I am passing the parameters (user, password and file):
    clear wa_form.
    wa_form-name = 'user'.
    wa_form-value = '33333333333'.
    append wa_form to it_form.
    clear wa_form.
    wa_form-name = 'password'.
    wa_form-value = '11111111'.
    append wa_form to it_form.
    clear wa_form.
    wa_form-name = 'file'.
    wa_form-value = data. ---> "data" is a type string with the data of the file.txt.
    append wa_form to it_form.
      r_client->request->set_form_fields( fields = it_form ).
    I have not problem with the user and password parameters.
    Thank.

  • Any program for calling bapi from ABAP step by step

    any program for calling bapi from ABAP step by step
    points will be rewarded,
    thank you,
    Jagrut BharatKumar Shukla

    Hi Jagrut,
    BAPI stands for Business API(Application Program Interface).
    A BAPI is remotely enabled function module ie it can be invoked from remote programs like standalone JAVA programs, web interface etc..
    You can make your function module remotely enabled in attributes of Function module but
    A BAPI are standard SAP function modules provided by SAP for remote access. Also they are part of Businees Objest Repository(BOR).
    BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects. You create business objects and those are then registered in your BOR (Business Object Repository) which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA. in this case u only specify the business object and its method from external system in BAPI there is no direct system call. while RFC are direct system call Some BAPIs provide basic functions and can be used for most SAP business object types. These BAPIs should be implemented the same for all business object types. Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs. Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.
    The following standardized BAPIs are provided:
    Reading instances of SAP business objects
    GetList ( ) With the BAPI GetList you can select a range of object key values, for example, company codes and material numbers.
    The BAPI GetList() is a class method.
    GetDetail() With the BAPI GetDetail() the details of an instance of a business object type are retrieved and returned to the calling program. The instance is identified via its key. The BAPI GetDetail() is an instance method. BAPIs that can create, change or delete instances of a business object type
    The following BAPIs of the same object type have to be programmed so that they can be called several times within one transaction. For example, if, after sales order 1 has been created, a second sales order 2 is created in the same transaction, the second BAPI call must not affect the consistency of the sales order 2. After completing the transaction with a COMMIT WORK, both the orders are saved consistently in the database.
    Create( ) and CreateFromData! ( )
    The BAPIs Create() and CreateFromData() create an instance of an SAP business object type, for example, a purchase order. These BAPIs are class methods.
    Change( )
    The BAPI Change() changes an existing instance of an SAP business object type, for example, a purchase order. The BAPI Change () is an instance method.
    Delete( ) and Undelete( ) The BAPI Delete() deletes an instance of an SAP business object type from the database or sets a deletion flag.
    The BAPI Undelete() removes a deletion flag. These BAPIs are instance methods.
    Cancel ( ) Unlike the BAPI Delete(), the BAPI Cancel() cancels an instance of a business object type. The instance to be cancelled remains in the database and an additional instance is created and this is the one that is actually canceled. The Cancel() BAPI is an instance method.
    Add<subobject> ( ) and Remove<subobject> ( ) The BAPI Add<subobject> adds a subobject to an existing object inst! ance and the BAPI and Remove<subobject> removes a subobject from an object instance. These BAPIs are instance methods.
    ex BAPI:
    API_SALESORDER_CREATEFROMDAT1
    BAPI_SALESORDER_CREATEFROMDAT2
    You can get good help form the following links,
    BAPI-step by step
    http://www.sapgenie.com/abap/bapi/example.htm
    list of all bapis
    http://www.planetsap.com/LIST_ALL_BAPIs.htm
    for BAPI's
    http://www.sappoint.com/abap/bapiintro.pdf
    http://www.sappoint.com/abap/bapiprg.pdf
    http://www.sappoint.com/abap/bapiactx.pdf
    http://www.sappoint.com/abap/bapilst.pdf
    http://www.sappoint.com/abap/bapiexer.pdf
    http://service.sap.com/ale
    http://service.sap.com/bapi
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCMIDAPII/CABFAAPIINTRO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/CABFABAPIREF/CABFABAPIPG.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCFESDE8/BCFESDE8.pdf
    http://www.planetsap.com/Bapi_main_page.htm
    http://www.topxml.com/sap/sap_idoc_xml.asp
    http://www.sapdevelopment.co.uk/
    http://www.sapdevelopment.co.uk/java/jco/bapi_jco.pdf
    Also refer to the following links..
    www.sappoint.com/abap/bapiintro.pdf
    www.sap-img.com/bapi.htm
    www.sap-img.com/abap/bapi-conventions.htm
    www.planetsap.com/Bapi_main_page.htm
    www.sapgenie.com/abap/bapi/index.htm
    Checkout !!
    http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
    http://techrepublic.com.com/5100-6329-1051160.html#
    http://www.sap-img.com/bapi.htm
    http://www.sap-img.com/abap/bapi-conventions.htm
    http://www.sappoint.com/abap/bapiintro.pdf
    http://sap-img.com/bapi.htm
    <b>EG::</b>
    <b>Here is the step by step procedure for creating BAPIs.</b>
    There are 5 different steps in BAPI.
    - Create BAPI Structure
    - Create BAPI Function Module or API Method.
    - Create BAPI object
    - Release BAPI Function Module.
    - Release BAPI object.
    Step1. Creating BAPI Structure:
    - Go to <SE11>.
    - Select Data Type & Enter a name.
    - Click on Create.
    - Note: Always BAPI should be in a development class with request number (Not Local Object).
    - Select Structure & hit ENTER.
    - Enter the fields from your database. Make sure that the first field is the Primary Key Field.
    - Then SAVE & ACTIVATE.
    Step 2. Creating BAPI module:
    - Enter TR.CODE <SE37>.
    - Before entering any thing, from the present screen that you are in, select the menu
    Goto -> Function Groups -> Create Group.
    Enter a name (Note: This name Must start with ZBAPI)
    Let this screen be as it is and open another window and there, enter TR.CODE <SE80).
    Click on the Third ICON that says Inactive Objects.
    Select the group that you just created and click on Activate.
    Notice that the group you created will disappear from the list of inactive objects.
    - Go back to ><SE37> screen and enter a name and hit <ENTER>. Then enter the group name that you just created and activated.
    NOTE: When you release a function module the respective group will be attached to that particular application. It cannot be used for any other application. NEVER include an already existing group that is attached to another module.
    Now click on the first Tab that says [ATTRIBUTES] and select the radio button that says remote-enabled module since we will be accessing this from any external system.
    Then click on the second tab that says [IMPORT].
    Enter a PARAMETER NAME, TYPE and the structure you created in the first step. Also select the check box ‘Pa’. All remotely enabled functional modules MUST be Pa enabled, where Pa means ‘Passed by Value’ and if you don’t select ‘Pa’, then that means it will be passed by reference..
    Then click on tab that says [EXPORT].
    Enter the following as is in the first three fields
    RETURN TYPE BAPIRETURN (These 3 field values are always same)
    Here also select ‘Pa’ meaning Pass by value.
    Note: BAPIRETURN contains structure with message fields.
    Then SAVE and ACTIVATE.
    Step 3. Creating BAPI object:
    - Enter Tr.Code <SWO1> (Note. It is letter ‘O’ and not Zero).
    - Enter a name and then click on create. Enter details.
    NOTE: Make sure that that Object Type and Program name are SAME.
    - Enter Application ‘M’, if you are using standard table Mara. If you are using your own database then select ‘Z’ at the bottom.
    - Then hit <ENTER>.
    - Now we have to add ‘Methods’. High light METHODS and then select the following from the menu:
    Goto Utilities -> API Methods -> Add Methods.
    - Enter function Module name and hit <ENTER>.
    - Select the second FORWARD ARROW button (>)to go to next step.
    - Check if every thing looks ok and again click on FORWARD ARROW button (>).
    - Then select ‘YES’ and click on <SAVE>.
    - Now on a different screen goto TR.CODE <SE37>. Enter Function Module name and select from the top menu Function Module -> Release -> Release.
    - Goback to TR.CODE <SWO1>.
    Here select the menu combination shown below in the same order.
    - Edit -> Change Release Status -> Object Type Component -> To Implemented.
    - Edit -> Change Release Status -> Object Type Component -> To Released.
    - Edit -> Change Release Status -> Object Type -> To Implemented.
    - Edit -> Change Release Status -> Object Type -> To Released.
    - Then click on <SAVE>.
    - Then click on Generate Button (4th button from left hand side looks like spinning wheel).
    - Then Click on the button that says ‘PROGRAM’ to see the source code.
    To check if this is present in work flow goto TR.CODE <BAPI>.
    Here it shows business object repository.
    - First click on the middle button and then select “ALL” and hit ENTER.
    - Goto tab [ALPHABETICAL] and look for the object that you created. This shows that the BAPI object has been created successfully
    <b>Reward pts if found usefull :)</b>
    regards
    Sathish

Maybe you are looking for

  • Black and white photos do not preview in "organize"

    The preview of all grayscale images shows as a black window in the organize mode. They appear fine in edit mode. How do I get the preview to appear in the main library and the album? I saw a closely related topic but I am having a slightly different

  • How to put some iWeb pages onto my Blogger blog?

    I am using iWeb '09, 3.0.3 (501) There are two pages on my website that I would like to put on my personal Blogger blog. The iWeb page has a hyperlink that opens up another page. That first page also has some lightning flashes behind the old haunted

  • Flash CS4 extremely slow!

    It's extremely slow to render any flash motion in CS4. I import to the stage some material and when I try to change and create any motion the processor usage raise up to 50% and the program freezing. It will be completly useless... Is there any solut

  • TSQL Retrieve from linked Oracle server

    We're porting an Oracle system to SQL server and it's not going well... Our system is a data warehouse that extracts data from an Oracle operational system. In the Oracle version we use database links to access Oracle. On SQL Server we've created a l

  • Cannot connect to the store, UK iPad in UK

    am i missing something? when i try and get on to the itunes store through the ipad it says Cannot connect to iTunes store. Its a UK iPad got it the other day. searched everywhere and all i find is the US-UK iPad problems