Saving adobe forms in DMS through web dynpro application

Hi all,
        I have a requirement in web dynpro where the user enters few data and clicks a generate button. On click of this button i have to generate pdf forms and save it in DMS. I have already designed the adobe form, but i do not know how to save it in DMS. So, please let me know asap how this can be done.
Thanks and Regards,
Vinod

Hi,
You will have to use the function module BAPI_DOCUMENT_CHECKIN_REPLACE2.
First save the PDF file on application server.
Then use above function module.
Regards,
Girishkumar Hegde
Edited by: Girishkumar Hegde on Feb 23, 2010 3:42 PM

Similar Messages

  • How to send a mail through web dynpro application

    Hi
    How to send a mail through web dynpro application?
    Thanks

    Hi ,
      Please post some more details about your query .
    One way is to can use LinkToUrl UI element and in the reference property of the UI element , give it as mailto:mail addess
    Thanks.
    aditya.

  • Mass upload through Web Dynpro application possible?

    We want to develop a custom aplication with Web Dynpro ABAP for master data maintenance. About 90 % will be done manually but we also want to have the possibility to do mass uploads (comparable with LSMW's in SAP R3 for win gui transactions: users send us a spreadsheet and we load it for them using a LSMW). I found one option by building Adobe Interactive form offline scenario using xml messages but I don't want to be forced to use Adobe only to enable mass uploads that will only happen in 10 % of the cases.
    I am loking forward to your suggestions!
    kind regards
    Angelique Heutinck

    I got a very useful answer from Thomas Jung (SAP) via a site he did setup with a couple of other SAP experts, also see http://enterprisegeeks.com/blog/2009/03/31/abap-freak-show-april-1st-acf-updownload-in-web-dynpro-abap/comment-page-1/
    My question:
    I think this new UI element ACFUpDownload cannot be used to do mass uploads/updates of data that need to be stored in SAP tables?
    Answer Thomas:
    This UI element is just about the transfer of data from the client machine to the server. It has nothing to do with how the data is used or processed after upload. Think of it as the equal to the CL_GUI_FRONTEND_SERVICES class and methods GUI_UPLOAD and GUI_DOWNLOAD.
    My question:
    Is there a tool like LSMW, CATT, eCATT that we can use for recording webenabled transactions (applications developed in Web Dynpro ABAP)?
    Answer Thomas:
    You shouldnu2019t need a tool like LSMW, CATT, eCATT that is tied to the user interface. With WDA you should be using MVC to design your application. This is part of the reason for MVC so that you have a clear separation of the model - business logic. You should always have a reusable class that can be called to input and create data with the same validations without going through the user interface. This is the process that SAP is following as we create new WDA screens. We use the enterprise services and their implementation classes as the Model for the WD Components. This ensures that you always have a clear API to use to mass import data.
    Although we wouldnu2019t recommend doing any kind of mass data load via the user interface any longer - eCATT will be supported for automated testing of Web Dynpro ABAP applications as of NetWeaver 7.0 Enhancement Package 2.

  • Adobe form data not being retrieved by Web Dynpro application

    Hi,
    I have created an online interactive Adobe form embedded in a Web Dynpro ABAP application.  The Web Dynpro application calls a function module to update data in SAP.  My problem is that the ABAP code that was generated to retrieve the data from the Adobe form and call the function module does not retrieve the data if it has been typed into any of the input fields.  Oddly enough, it does work if the data is entered by using the value helps that have been placed on the form. 
    I would appreciate any suggestions.
    Thanks!
    Russell

    Use messageboxes on various events to find out when your value dissapeears.
    If you´re not sure about the binding, you can always drag/drop from data view tab onto the layout and check the binding which the system generates for you. Just to make sure.
    Regards Otto

  • Accessing anonymous user in web dynpro application

    Hi All,
      I have created one web dynpro application for internet site (Anonymous user). While trying to retrieve the Iuser through web dynpro application, it is coming <b>null</b> coz user is Anonymous if i am not wrong.
    So I am not able to read the property file from the KM and based on the value coming from the property file i am setting in the drop down.
    Regards,
    Nelly
    Message was edited by: Nelly
            nelly khare

    hi,
    i did the same thing den code is working and values are coming from the property file but i m going to place this application in the Internet.
    There i can't ask user to enter User-Id and PWD.
    I tried to use IWDClient's object and through this i m accessing getSAPUser().
    here is the code that i m using:-
    <b>wdClientUser = WDClientUser.getCurrentUser();
    manager.reportSuccess("wdclientuser-"+wdClientUser);-value is coming for that
    sapUser = wdClientUser.getSAPUser();
    manager.reportSuccess("sapUser -"+sapUser );Null is coming for that
    //create an ep5 user from the retrieved user
    ep5User = WPUMFactory.getUserFactory().getEP5User(sapUser);
    resourseContext = new ResourceContext(ep5User);
    resourseFactory = ResourceFactory.getInstance();
    pathRID =RID.getRID(/documents/IDBDevelopments/Propertyfiles/JobOpportunity/DateofBirth.properties");
    resource =     (IResource) resourseFactory.getResource(pathRID,resourseContext);</b>
    In that point i m getting Null as value.coz it's description says that if user is Anopnymous this function will return Null.
    Coz of that i m not able to create Resource context for reading the property file.
    Regards,
    Deepak

  • Adobe Forms - Table control data Saved in Database table through Web Dynpro

    Hello Friends,
    I Am facing a Problem in Adobe Forms through Web Dynpro.
    i Want to Make Interactive online Adobe Forms - In Table Control user enter the multiple entry in the table control and after that Click on SAVE button , entry will saved in Database table.
    Please guide me.
    Thanks in advance.
    Gaurav.

    Hi Gaurabh,
    For interactive form you have to check the property DisplayType = native and PdfSource should be a Context Attribute of type 'Xstring'.
    For data retrieval, create a NODE and have all the required attributes within that node of AOBE form.
    Fetch the data in WDDOINIT.
    Also check, that the offline senario for this form is working.
    Hope it helps you.

  • Blank adobe form displayed in  web dynpro application

    Hi,
                 I have created an Interactive Adobe form using web dynpro Java. When I run the form (in IE), a blank page is displayed.
    If I keep the Adobe reader open and run the form on IE, the form is opened in reader and it's working.
    When I access the same form on a different system, there is no problem.
    Does this have anything to do with the IE settings or Adobe Reader version/ updates.
    I have checked the adobe reader version and it's the same on both the systems.
    Version:
    Adobe Reader Version : 8.1.2.
    Adobe Designer 7.1
    SAP NW 2004s - SP 15
    Thank you,
    Vasu

    Not sure what the problem could be, here are some suggessionsu2026
    Check whether you have enabled the option Display PDF in browser in the Adobe Reader.
    I should be under:   Edit > Preference > Internet
    Also, in your Web Dynpro Application, try to set the u201CdisplayTypeu201D property of your Interactive form to ActiveX
    Else, just try upgrading your Adobe Reader to latest version!
    Hope this helps,
    Harman

  • Adobe: ActiveX vs Native in web dynpro

    Hello,
    has there recently (the last week or so) been an update on Adobe Reader or windows xp that makes the adobe forms not work anymore with web dynpro?
    Last week i had a simple form (activeX) in my web dynpro that was working fine. The form had two buttons (activeX), and on clicking the button they set a context attribute to BUTTONONE or BUTTONTWO and then they fire the webdynpro event; In my web dynpro i then check if the context attribute is BUTTONONE or BUTTONTWO and take an action depending on the button clicked. This was working fine, but now it doesnt work anymore.
    When i change the buttons to native buttons and change the uielement of adobe to native in my developer studio, it is working again..
    Why doesnt the activeX work anymore? The activeX buttons dont even fire an event in my webdynpro. All is configured correctly, because it worked before.
    Another thing that doesnt work is the following. Binding the adobe form to the context and then an inputvalue on the form. Setting the value in webdynpro passes the value to the form, but changing the value in theform, doesnt pass the value to web dynpro, so webdynpro still has it's old value in the context.
    I hope someone knows why simple things are not working.
    Kind regards,
    J.

    Hi Joren,
    Usually this is due to missing or something wrong with the ACF. I suggest to first check in your Windows Control Panel to see if the ACF is installed. If it is there but somehow still doesn't work, try to uninstall it and install the ACF again (make sure to install the ACF which is for your NW release and SP, refer to note 766191 for detail).
    BTW, native forms should be the way going forward to. Perhaps you should actually stay with native forms unless you have special reasons to use activex forms.
    Regards,
    Marc

  • FPM Form Scripting - How to call a web dynpro application as pop up

    Hi All,
    I want to call a web dynpro application as a pop up from FPM form scripting.
    Like click on button -Maintain Approval Routing in a FPM form i want to open a web dynpro pop up..
    Thanks In Advance.

    Refer to the post How to show pop up’s in WDA HCMPF by Yugandhar Reddy - on some hints
    Hope this helps.
    Regards,
    Sahir.

  • Passing parameters to Transactions from Web dynpro Application through ITS

    Hi,
    i need to call a transaction from Web dynpro through ITS. On action from web dynpro application, i am concatenating the respective parameters mentioned below along with URL. The problem is one parameter(VARIANT) is being passed to the t-code CAT3 correctly. The next mandatory parameter(PERNR) is not passed to the respective field.Here is the URL Code:
    CONCATENATE 'http'
    '://' host ':' port
    '/sap/bc/gui/sap/its/webgui/?sap-client=&~transaction=' 'CAT3'
    '%20TCATST-VARIANT=' lv_name2 '&CATSFIELDS-PERNR=' lv_name1 INTO url.
    Called T-Code CAT3
    Passing Parameters are:
    Data Profile TCATST-VARIANT
    Pernr: CATSFIELDS-PERNR

    Pradeep,
    iam trying to pass values from webdynpro application to SAP GUI Transaction
    here is the sample code which iam using
    CONCATENATE  'http://s0164dep01.adta.uae:50000/irj/portal/interop?NavigationTarget=pcd:portal_content/Testing/trn_iw33?'
    '%20CAUFVD-AUFNR='
                 'ApplicationParameter=CAUFVD-AUFNR='
                  lv_workorder';'
              'DYNP_OKCODE=SHOW'
             INTO lv_url.
    i could'nt able to succed as its displaying page not found exception.
    Help me on this to proceed further
    Regards
    Jaipal.E

  • Search for users in a particular LDAP through Web Dynpro code...

    Hi Experts,
    Let me try explaining my problem. In my project we are using two ADAM LDAPs. One for storing internal users and the other for storing external users. I have configured the portal to connect to both the LDAPs. I am able to search for the users created in both the LDAPs through portal Indentity Management.
    I am trying to search for the users in a specific LDAP through Web Dynpro coding... I am not lucky enough to get it done. Let me explain you what I did.
    I created a custom attribute for UME through config tool. Gave a physical mapping for the custom attribute in dataSourceConfig_xxx.xml to the LDAP attribute distinguishedName which returns the distinguished Name for the user in ADAM LDAP.
    For Example: Custom attribute in UME is ldapuser which is mapped to distinguishedName attribute in ADAM LDAP in dataSourceConfig_xxx.xml.
    When I do a search for the users in a particular LDAP, I am trying to put a filter to the newly created ldapuser attribute to distinguish between the two LDAPs.
    The search will result if I pass the value as '*'. If I try to specify the user path for the LDAP in this attribute it doesnt result any data.
    For example:
    userSearchFilter.setSearchAttribute(
         "com.sap.com.cust.admn",
          "ldapuser",
         "OU=16482515,OU=Members",
         ISearchAttribute.LIKE_OPERATOR,
         false);
    The above code will not return the data, whereas
    userSearchFilter.setSearchAttribute(
         "com.sap.com.cust.admn",
          "ldapuser",
         ISearchAttribute.LIKE_OPERATOR,
         false);
    Will result with user list from both the LDAPs.
    If anyone tried searching for users in a particular LDAP through code, please help me with this issue.
    Thank you in advance.
    Regards,
    Rekha Malavathu

    I just figured it out. Under "group-policy GroupPolicy_COMPANY_SSL_VPN attributes", I had to add "vpn-simultaneous-logins 15". Apparently, it was using the value "vpn-simultaneous-logins 0" under the NOACCESS group policy.

  • Upload and Attach file to Service Notificacion through Web Dynpro

    Hi,
    I need to upload and attach a file (Word, PDF, TXT ...) to Service Notificacion (TX - IW53) through Web Dynpro.
    I have used the integration component "File Upload" to obtain the "fileName" atribute. Also, I have used the functions SO_OBJECT_UPLOAD, SO_INSERT_OBJECT and BINARY_RELATION_CREATE_COMMIT.
    But have a problem, because the function SO_OBJECT_UPLOAD use the class "cl _ gui _ frontend _ services" and that clash with Web Dynpro.
    My question is: how could I resolve that problem?
    I look forward to your response.
    Thanks

    IV_NAME     Importing     Type     STRING
    IV_CONTENT     Importing     Type     STRING
    IV_CONTENT_HEX     Importing     Type     XSTRING
    IS_LPORB     Importing     Type     SIBFLPORB
    IV_OBJTP     Importing     Type     SO_OBJ_TP
    RT_MESSAGES     Returning     Type     BAPIRETTAB
    method save.
      data ls_message type bapiret2.
      data:
        filename     type string,
        filefullname type string,
        mime_type    type string,
        size         type i,
        offset type i,
        offset_old type i,
        temp_len type i,
        objname type string,
        l_obj_type type so_obj_tp,
        hex_null type x length 1 value '20',
        l_document_title type so_text255,
        file_ext type string,
        lt_objcont type standard table of  solisti1 initial size 6,
        objcont like line of lt_objcont,
        lt_ls_doc_change type standard table of sodocchgi1,
        ls_doc_change like line of lt_ls_doc_change,
        lt_data type soli_tab,
        ls_data type soli,
        lt_xdata type solix_tab,
        ls_xdata type solix,
        l_folder_id type sofdk,
        ls_object_id type soodk,
        l_object_id_fol type so_obj_id,
        l_object_id type so_obj_id,
       l_doc_info TYPE sofolenti1,
        l_object_hd_change type sood1,
        l_tab_size type int4,
        l_retype type breltyp-reltype,
        lt_urltab  type standard table of sood-objdes.
    get foler
    l_folder_id = 'FOL29000000000004'.
      call function 'SO_FOLDER_ROOT_ID_GET'
        exporting
         owner                            = sy-uname
          region                           = 'B'
        importing
          folder_id                        = l_folder_id
       tables
         path_table                       =
      if iv_objtp = gc_type_file.
        size = xstrlen( iv_content_hex ).
    get file name and extension
        call method split_path
          exporting
            iv_path           = iv_name
          importing
         E_PATH           =
           ev_filename       = filename
         E_PSERVER        =
        call method split_file_extension
          exporting
            iv_filename_with_ext = filename
          importing
            ev_filename          = objname
            ev_extension         = file_ext.
        ls_doc_change-obj_name = objname.
        ls_doc_change-obj_descr = objname.
        ls_doc_change-obj_langu = sy-langu.
        ls_doc_change-sensitivty = 'F'.
        ls_doc_change-doc_size = size.
        offset = 0.
        while offset <= size.
          offset_old = offset.
          offset = offset + 255.
          if offset > size.
            temp_len = xstrlen( iv_content_hex+offset_old ).
            clear ls_xdata-line with hex_null in byte mode.
            ls_xdata-line = iv_content_hex+offset_old(temp_len).
          else.
            ls_xdata-line = iv_content_hex+offset_old(255).
          endif.
          append ls_xdata to lt_xdata.
        endwhile.
    set object type relation type and other header info
        l_retype = 'ATTA'.
        l_obj_type = 'EXT'.
        l_object_hd_change-objnam = ls_doc_change-obj_name.
        l_object_hd_change-objdes = ls_doc_change-obj_descr.
        l_object_hd_change-objsns = ls_doc_change-sensitivty.
        l_object_hd_change-objla  = ls_doc_change-obj_langu.
        l_object_hd_change-objlen = ls_doc_change-doc_size.
        l_object_hd_change-file_ext = file_ext.
      prepare header
        data lt_obj_header type standard table of solisti1.
        data ls_header type solisti1.
        concatenate '&SO_FILENAME=' filename into ls_header.
        append ls_header to lt_obj_header.
        clear ls_header.
        ls_header = '&SO_FORMAT=BIN'.
        append ls_header to lt_obj_header.
    change hex data to text data
        call function 'SO_SOLIXTAB_TO_SOLITAB'
          exporting
            ip_solixtab = lt_xdata
          importing
            ep_solitab  = lt_data.
      else.
    for note
        size = strlen( iv_content ).
        objname = iv_name.
        ls_doc_change-obj_descr = objname.
        ls_doc_change-sensitivty = 'O'.
        ls_doc_change-obj_langu  = sy-langu.
    put content into table
        offset = 0.
        if iv_objtp = gc_type_note.
    it's a note
          l_retype = 'NOTE'.
          l_obj_type = 'RAW'.
          l_object_hd_change-file_ext = 'TXT'.
    read note content into table
          while offset <= size.
            offset_old = offset.
            offset = offset + 255.
            if offset > size.
              temp_len = strlen( iv_content+offset_old ).
              clear ls_data-line.
              ls_data-line = iv_content+offset_old(temp_len).
            else.
              ls_data-line = iv_content+offset_old(255).
            endif.
            append ls_data to lt_data.
          endwhile.
    get title from content , if it's initial
          if objname is initial.
            read table lt_data index 1 into l_document_title.
            while l_document_title+49 <> ' '.
              shift l_document_title right.
            endwhile.
            shift l_document_title left deleting leading ' '.
            ls_doc_change-obj_descr = l_document_title.
          endif.
        else.
    it's url (not note)
          l_retype = 'URL'.
          l_obj_type = 'URL'.
          if objname is initial.
            split iv_content at '/' into table lt_urltab.
            describe table lt_urltab lines l_tab_size.
            read table lt_urltab index l_tab_size into ls_doc_change-obj_descr.
          endif.
          while offset <= size.
            offset_old = offset.
            offset = offset + 250.
            if offset > size.
              temp_len = strlen( iv_content+offset_old ).
              clear ls_data-line.
              ls_data-line = iv_content+offset_old(temp_len).
            else.
              ls_data-line = iv_content+offset_old(250).
            endif.
            concatenate '&KEY&' ls_data-line into ls_data-line.
            append ls_data to lt_data.
          endwhile.
        endif.
        ls_doc_change-doc_size = size.
       l_object_hd_change-objnam = ls_doc_change-obj_name.
        l_object_hd_change-objdes = ls_doc_change-obj_descr.
        l_object_hd_change-objsns = ls_doc_change-sensitivty.
        l_object_hd_change-objla  = ls_doc_change-obj_langu.
        l_object_hd_change-objlen = ls_doc_change-doc_size.
      endif.
    save object
      call function 'SO_OBJECT_INSERT'
           exporting
                folder_id                  = l_folder_id
               OBJECT_FL_CHANGE           = OBJECT_FL_CHANGE
                object_hd_change           = l_object_hd_change
                object_type                = l_obj_type
               ORIGINATOR_ID              = OWNER_ID
              OWNER                      = USER-USRNAM
           importing
               OBJECT_FL_DISPLAY          = OBJECT_FL_DISPLAY
               OBJECT_HD_DISPLAY          = OBJECT_HD_DISPLAY
                object_id                  = ls_object_id   "l_doc_info-object_id
           tables
                objcont                    = lt_data
                objhead                    = lt_obj_header
               OBJPARA                    = OBJECT_PARA
               OBJPARB                    = OBJECT_PARB
           exceptions
                component_not_available    = 01
                folder_not_exist           = 06
                folder_no_authorization    = 05
                object_type_not_exist      = 17
                operation_no_authorization = 21
                parameter_error            = 23
                others                     = 1000.
      if sy-subrc <> 0.
        message id sy-msgid type sy-msgty number sy-msgno
                with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 into ls_message-message.
        ls_message-type = sy-msgty.
        ls_message-id = sy-msgid.
        ls_message-number = sy-msgno.
        ls_message-message_v1 = sy-msgv1.
        ls_message-message_v2 = sy-msgv2.
        ls_message-message_v3 = sy-msgv3.
        ls_message-message_v4 = sy-msgv4.
        append ls_message to rt_messages.
        return.
      endif.
    create relation
      data l_obj_rolea type borident.
      data l_obj_roleb type borident.
    MOVE-CORRESPONDING wd_this->ms_lporb to l_obj_rolea.
      l_obj_rolea-objkey = is_lporb-instid.
      l_obj_rolea-objtype = is_lporb-typeid.
      l_obj_rolea-logsys = is_lporb-catid.
      l_object_id_fol  = l_folder_id.
      l_object_id = ls_object_id.
      concatenate l_object_id_fol l_object_id into l_obj_roleb-objkey respecting blanks.
      l_obj_roleb-objtype = 'MESSAGE'.
      clear l_obj_roleb-logsys.
      call function 'BINARY_RELATION_CREATE'
        exporting
          obj_rolea    = l_obj_rolea
          obj_roleb    = l_obj_roleb
          relationtype = l_retype
        exceptions
          others       = 1.
      if sy-subrc = 0.
        commit work and wait.
       wd_this->MV_UPDATE_FLAG = 'X'.
      else.
        message id sy-msgid type sy-msgty number sy-msgno
                with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 into ls_message-message.
        ls_message-type = sy-msgty.
        ls_message-id = sy-msgid.
        ls_message-number = sy-msgno.
        ls_message-message_v1 = sy-msgv1.
        ls_message-message_v2 = sy-msgv2.
        ls_message-message_v3 = sy-msgv3.
        ls_message-message_v4 = sy-msgv4.
        append ls_message to rt_messages.
        return.
      endif.
    endmethod.
    Edited by: Reyleene Hunt on May 26, 2009 10:05 AM

  • Create a DB-Table through Web Dynpro

    Hi everybody,
    how can i create a new DB-Table on my Database (oracle) through a Web Dynpro Application. In my Web Dynpro Application i create in the dictionary area a table with some colums. After deploying it into my WAS i opened the SQL-Developer but i could not see the new table which i have create in my Web Dynpro Application. Should i restart the WAS?
    regards
    Sid

    Hi,
    It will not create a table in a outside database. When you create table through Dictionary project, it creates table in the database associated with server instance which can be MAX DB or Oracle database. Just check with your basis team about the connection parameters and then check the table through the SQL-Developer. Provided that you have done everything correctly.
    Regards,
    Manoj

  • File Upload In DMS Using Web Dynpro ABAP

    Hi,
    I have a requirement to upload files in DMS using Web Dynpro. I have written the code by the hint of the following thread:-
    scn.sap.com/thread/1865934 
    My code is uploading all files but when I try to view them from CV03N only txt files are displaying , Images and PDF files are not
    showing there.
    Please help me. It's urgent requuirement.
    Thanks
    Amit

    TYPES : BEGIN OF zst_ts_raw_line,
                 line TYPE orblk,
                END OF zst_ts_raw_line.
      DATA : ls_draw TYPE draw ,
               ls_api_ctrl TYPE cvapi_api_control,
               ls_message TYPE messages,
               lv_documentnumber TYPE draw-doknr,
               it_objectlinks  TYPE STANDARD TABLE OF  dms_db_drad,
               ig_objectlinks TYPE  dms_db_drad ,
               it_documentdescriptions  TYPE STANDARD TABLE OF  bapi_doc_drat,
               ig_documentdescriptions TYPE  bapi_doc_drat ,
               it_originals_of_doc TYPE STANDARD TABLE OF  cvapi_doc_file,
               ig_originals_of_doc TYPE  cvapi_doc_file ,
               lv_storage_cat TYPE cv_storage_cat,
               lv_size TYPE i ,
               lt_bindata TYPE STANDARD TABLE OF zst_ts_raw_line,"  STANDARD TABLE  OF zst_ts_raw_line,
               ls_bindata TYPE  zst_ts_raw_line ,"SOLISTI1,"sdokcntbin ,
               ls_drao TYPE drao,
               lt_drao TYPE TABLE OF drao,
               lt_DRAT TYPE TABLE OF DMS_DB_DRAT,
               ls_DRAT TYPE DMS_DB_DRAT,
               lt_files TYPE cvapi_tbl_doc_files,
               ls_files TYPE cvapi_doc_file,
               l_string TYPE string.
      DATA : ex_pf_ftp_dest           TYPE  rfcdes-rfcdest.
      DATA : ex_pf_http_dest          TYPE  rfcdes-rfcdest.
      DATA lo_nd_upload TYPE REF TO if_wd_context_node.
      DATA lo_el_upload TYPE REF TO if_wd_context_element.
      DATA ls_upload TYPE wd_this->element_upload.
      DATA lo_nd_upload1 TYPE REF TO if_wd_context_node.
      DATA lo_el_upload1 TYPE REF TO if_wd_context_element.
      DATA ls_upload1 TYPE wd_this->element_upload1.
      DATA lo_nd_upload2 TYPE REF TO if_wd_context_node.
      DATA lo_el_upload2 TYPE REF TO if_wd_context_element.
      DATA ls_upload2 TYPE wd_this->element_upload2.
    *   navigate from <CONTEXT> to <UPLOAD> via lead selection
      lo_nd_upload = wd_context->get_child_node( name = wd_this->wdctx_upload ).
      lo_el_upload = lo_nd_upload->get_element( ).
      lo_el_upload->get_static_attributes(  IMPORTING   static_attributes = ls_upload ).
    * navigate from <CONTEXT> to <UPLOAD1> via lead selection
      lo_nd_upload1 = wd_context->get_child_node( name = wd_this->wdctx_upload1 ).
      lo_el_upload1 = lo_nd_upload1->get_element( ).
      lo_el_upload1->get_static_attributes( IMPORTING static_attributes = ls_upload1 ).
    * navigate from <CONTEXT> to <UPLOAD2> via lead selection
      lo_nd_upload2 = wd_context->get_child_node( name = wd_this->wdctx_upload2 ).
      lo_el_upload2 = lo_nd_upload2->get_element( ).
      lo_el_upload2->get_static_attributes( IMPORTING  static_attributes = ls_upload2 ).
      DATA : lv_file_name   TYPE filep.
      ls_draw-dokar = 'Document Type'.
      ls_draw-dokvr = '00'.
      ls_draw-doktl = '000'.
      ls_draw-dwnam = sy-uname.
      lv_storage_cat = 'Storage space'.
      ls_DRAT-doknr = 'Document Type'.
      ls_DRAT-dokvr = '00'.
      ls_DRAT-doktl = '000'.
      ls_DRAT-dktxt = 'Test Document'.
      ls_drat-dktxt_uc = 'Test Document'.
      append ls_drat to lt_drat.
      ls_api_ctrl-tcode = 'CV01N'.
      ls_api_ctrl-commit_flag = 'X'.
      ls_api_ctrl-save_flag = 'X'.
      ls_api_ctrl-api_mode = 'X'.
      ls_api_ctrl-no_update_task = 'X'.
      ls_draw-filep = ls_upload-filename. "l_string. *
      ig_objectlinks-dokar = doc type
      ig_objectlinks-dokvr = '00'.
      ig_objectlinks-doktl = '000'.
      ig_objectlinks-dokob = 'LFA1'.
      ig_objectlinks-objky =  lifnr.
      APPEND ig_objectlinks TO it_objectlinks.
      CALL FUNCTION 'CVAPI_DOC_CREATE'
        EXPORTING
          ps_draw        = ls_draw
    *•  PF_STATUSLOG             = ' '
    *•  PF_REVLEVEL              =
          ps_api_control = ls_api_ctrl
    *•  PF_FTP_DEST              = ' '
    *•  PF_HTTP_DEST             = ' '
    *•  PF_HOSTNAME              = ' '
    *•  PF_CONTENT_PROVIDE       = ' '
        IMPORTING
          psx_message    = ls_message
    *•  PFX_DOKAR                =
          pfx_doknr      = lv_documentnumber
        TABLES
          pt_drad_x      = it_objectlinks
          pt_drat_x      = lt_drat
    *      pt_files_x     = lt_files.
    *      documentdescriptions = it_documentdescriptions.
      IF sy-subrc NE 0.
        WRITE: 'no number'.
      ENDIF.
      IF ls_message-msg_type CA 'EA'.
      ELSE.
        ls_draw-doknr = lv_documentnumber.
        COMMIT WORK.
      ENDIF.
      DATA lv_count TYPE i.
      DO 3 TIMES.
        REFRESH : lt_files,lt_bindata,lt_drao.
        lv_count = lv_count + 1.
        ls_files-appnr = lv_count."'1'.
        CASE lv_count.
          WHEN '1'.
            ls_files-filename = ls_upload-filename. "wa_general-REF_FILE_NAME1.  "
            ls_upload-filecontent = ls_upload-filecontent.
          WHEN '2'.
            ls_files-filename = ls_upload1-filename. "wa_general-REF_FILE_NAME1.  "
            ls_upload-filecontent = ls_upload1-filecontent.
          WHEN '3'.
            ls_files-filename = ls_upload2-filename. "wa_general-REF_FILE_NAME1.  "
            ls_upload-filecontent = ls_upload2-filecontent.
        ENDCASE.
        MOVE ls_files-filename TO lv_file_name.
        CALL FUNCTION 'CV120_DOC_GET_APPL'
          EXPORTING
    *•PF_DIALOG        =
    *•PF_DISPLAY       =
    *       PF_FILE   = 'DO.TXT'
            pf_file   = lv_file_name "wa_general-REF_FILE_NAME1 "
    *•PF_TYPDT         =
          IMPORTING
            pfx_dappl = ls_files-dappl.
        ls_files-updateflag = 'I'.
        ls_files-langu = sy-langu.
        ls_files-storage_cat = 'Srotage ID'.
        ls_files-description = 'DMS'.
        APPEND ls_files TO lt_files.
        CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
          EXPORTING
            buffer        = ls_upload-filecontent "wa_general-ref_doc1   "
    *•  APPEND_TO_TABLE       = ' '
          IMPORTING
            output_length = lv_size
          TABLES
            binary_tab    = lt_bindata.
        DATA : lv_zaehl TYPE obzae.
        CLEAR lv_zaehl.
        LOOP AT lt_bindata INTO ls_bindata.
          CLEAR ls_drao.
          lv_zaehl = lv_zaehl + 1.
          ls_drao-orblk = ls_bindata-line.
          ls_drao-orln = lv_size.
    *      ls_drao-dokar = ls_draw-dokar.
    *      ls_drao-doknr = lv_documentnumber.
    *      ls_drao-dokvr = ls_draw-dokvr.
    *      ls_drao-doktl = ls_draw-doktl.
          ls_drao-zaehl = lv_zaehl.
    *      ls_drao-appnr = lv_count."'1'.
          APPEND ls_drao TO lt_drao.
        ENDLOOP.
        CALL FUNCTION 'CVAPI_DOC_CHECKIN'
          EXPORTING
            pf_dokar           = ls_draw-dokar
            pf_doknr           = lv_documentnumber
            pf_dokvr           = ls_draw-dokvr
            pf_doktl           = ls_draw-doktl
            ps_api_control     = ls_api_ctrl
            pf_content_provide = 'TBL'
          IMPORTING
            psx_message        = ls_message
          TABLES
            pt_files_x         = lt_files
            pt_content         = lt_drao.
        COMMIT WORK.
      ENDDO.

  • Calling  second step of transaction of r3 through web dynpro

    Hi all
    We are calling a particular transaction and passing paramter to it through web dynpro.We have successfully implemented it.but we are facing problem in  calling second step of transaction and passing parameter required at second step.
    pls tell me if any one has any ideas how to do it ???
    regards
    zaid

    Does the second step involve a new function module or does it make use of the same one?  Regardless the second call shouldn't be any different than the subsequent calls.  Maybe you could provide more details.
    /Greg

Maybe you are looking for