Dispalying Checkboxes in the Tabsprit using BSP

Hello Everyone,
Could you please help me that I have just created a tabstrip with group of checkboxes. I am getting tabtrip in the explorer but I am not getting this checkboxes in it.
How to do it could any one help me out.
With Best regards,
Suneetha

two problems in the code.
1.
<htmlb:tabStripItem id      = "tabstripitem1"
                            index   = "3"
                            title   = "SAP Products "
                            tooltip = "SAP Products und Module angeben" >
you have only one tabstrip item , however you mentioned index 3 which is causing problem. change it to 1 you will now see the check boxes.
2. other problem - not related to this .
<htmlb:label for = "Benutzte SAP Produkte"
required = " "
text = "Produkte"/>
</td>
<td Valign="top">
<htmlb:checkbox id = "ERPCO"
checked ="<%=Z_SAPProducts-ERPCO%>"
text = "ECC / R/3"
/>
htmlb:label for attribute should be referring to another UI element id
exmaple you could link into to check box id ERPCO
in that case label for = "ERPCO"
Regards
Raja
assign points to helpful answers by choosing radiobuttons

Similar Messages

  • Uploaded text file has a new line added at the top using BSP MVC applicatio

    I have a BSP MVC application that uploads data on to the application server. When I open the uploaded text file, the very first line on the file looks like the line below. ->
    htmlb:button:click:nullhtmlb_form_1UploadUpload0htmlbdfsdf
    But the rest of the file looks okay. This is causing other than .txt files to get corrupted.
    Here is the code from my DO_HANDLE_EVENT.
    data: entity   type ref to if_http_entity,
          name     type string,
          content  type xstring,
          content_type type string,
          idx      type i value 1,
          v_root(26) value '
    houappl131\SRM_Download\',
          v_unxfile(100),
          v_transfer type xstring,
          v_type(6),
          v_len type i,
          v_dirfile type zfileinfo,
          v_ofile(80),
          v_guid type guid_32.
      class cl_htmlb_manager definition load.
      data:        v_asn(10) type n.
      data: fu        type ref to cl_htmlb_fileupload,
                       file_id   type string value 'batchfile'.
      data: o_page_context type ref to if_bsp_page_context.
      data: parent type ref to cl_bsp_controller2,
            lo_model                       type ref to cl_sus_m_asn_detail.
      o_page_context = me->get_page_context( ).
      cl_htmlb_manager=>dispatch_event_ex( request = request
      page_context = o_page_context
      event_handler = me ).
      refresh z_batch->message.
      if htmlb_event->server_event = 'Upload'.
        fu ?= cl_htmlb_manager=>get_data( request = request id = file_id name
                                             = 'fileUpload' ).
        if fu->file_name gt space.
              z_batch->parameters-fpath = fu->file_name.
              v_len = strlen( z_batch->parameters-fpath ).
              if v_len gt 4.
                v_len = v_len - 3.
              endif.
              v_type = z_batch->parameters-fpath+v_len(3).
              search z_batch->parameters-fpath for '.'.
              if sy-fdpos gt 0 and v_len gt 0.
                v_len = v_len - sy-fdpos.
                v_type = z_batch->parameters-fpath+sy-fdpos(v_len).
              endif.
              clear v_asn.
              v_asn = z_batch->parameters-asnhdr.
              concatenate v_asn
                          z_batch->parameters-asnitem
                          z_batch->parameters-batch
                          v_type
                          into v_unxfile separated by '.'.
              concatenate v_root v_unxfile into v_unxfile.
              condense v_unxfile no-gaps.
              open dataset v_unxfile for output in binary mode.
                while idx <= request->num_multiparts( ).
                  entity = request->get_multipart( idx ).
                  name = fu->file_name .
                  if name is not initial.
                    content_type = entity->get_header_field( 'Content-Type' ).
                    clear content.
                    content      = entity->get_data( ).
                    v_transfer = content.
                    transfer content to v_unxfile.
                    append content to z_batch->filetab.
                  endif.
                  idx = idx + 1.
                endwhile.
                close dataset v_unxfile.
            endif.
      endif.
    Here is my fileupload button in the view
    <htmlb:page title="File Upload " >
        <htmlb:form method       = "post"
                    encodingType = "multipart/form-data" >
          <htmlb:label id     = "Batchnum"
                       design = "Label"
                       for    = "Batchnumber"
                       text   = "Batch" />
          <htmlb:inputField id    = "Batchinput"
                            value = "//zbatch/parameters.batch" />
          <htmlb:fileUpload id="batchfile" />
          <htmlb:button id      = "Upload"
                        text    = "Upload"
                        onClick = "Upload" />
          <htmlb:button id      = "Close"
                        text    = "Close window"
                        onClick = "Close" />
    Any of you gurus know why this is happening?

    I solved it myself

  • Picture uopload in the solution manager using BSP

    Hi Everybody I am trying to upload a employee pictures for the each user in the Solution manager using BSP. I have got some coding form the help but its not working. Kindly direct me the way I can go for the upload.
    Please help me out.
    With best regards,
    Suneetha

    Hi Thank you very much for your answer.
    I am using for the file upload code  is
    <%@page language="abap"%>
    <%@extension name="htmlb" prefix="htmlb"%>
    <htmlb:content design="design2003">
      <htmlb:page title = " ">
        <htmlb:form>
    <html>
      <body>
    <h2> Form with File Upload and Download </h2>
    Choose a file for upload. The file will be echoed to your browser if you
         select the checkbox below.
    <form method="POST" enctype="multipart/form-data">
      <table border=1 width="100%">
        <tr>
          <td> <input type=checkbox name="doEcho"&gt; </td>
          <td> <input type=checkbox name="doEcho" value="X"> (select for echo)
    </tr>
        <tr>
          <td> <input type=file name="echoFile"> </td>
        </tr>
        <tr>
             height = "45".
              width = "45".
          <td> <input type=submit name="onInputProcessing(upload)" value="Submit"> </td>
        </tr>
      </table>
    </form>
      </body>
    </html>
        </htmlb:form>
      </htmlb:page>
    </htmlb:content>
    Can I use this along with oninput processing that u have given.
    With Best regards,
    Suneetha

  • Is there anywhere where Apple describes the function and use of every field and popup and checkbox in the email setup "panes"???

    So you call up an account in email
    Account Information is selecgted in the 3-choice menu-bar/button (what is that thing called, anyway? An "inspector"? (frown).
    Then check "enable this account"--is selectable
    Then Account type: iCloud IMAP or example--this is NOT selectable.
    Then "Description field" What's it for, where does it show up, especially if it shows up in other "related" or "integrated" programs?
    Alias popup: What's this for? How do you use it. What approaches, strategies, effects might one employ?
    Email address is pretty straight forward--but see "user.name" in the "server sub-box/sub-pane" below.
    Full Name:  What full name? Where does it appear in use? I cannot access it from the pane/panel, so how do I set it, or who/what sets it?
    Outgoing mail server (SMTP): OK, here's a popup that isn't congruent with "account type" in the first sub-pane. Or is IMAP only an extroverted function/setting, and (SMTP) is a introverted one (IMAP for outbound, SMTP for inbound)?
    Now comes Confusion: Outgoing Mail Server popup menu, which leads you off to a wholenother pane that lets you create new/delete old incoming server names.
    There's a Description (what's that for, what does it do?  Ditto Server name--I get than's something like smtp.ISP.Com or IMAP.ISP.com). You can set those fields in the + menu Account Information Pane, with its blank text fields. And you can also "double-click to enter" that field in the list itself. Why is that?And then I can select Advanced, and get another batch of checkboxes, fields, and popups.
    But I left the Account Information pane before asking, What is this Thread-Lock Stitching Certificate thing? (Or is that Transport Layer Secrecy Sertificate, what?  None is displaying now, but if I popup what's beneath it a humongously long "ID" string, which I take to be, what, my Apple ID? A public key/ provate key encryption string/key? How do I use it if I'm trying to keep the National Surveillance Agency from eavesdropping, "in the clear," my every blessed keystroke, "phrase-stroke" (think VoIP), and if I use the thing, can the president just press a button and send a drone to blow me off the planet (and anyone near me at the time--always great fun for friends and family)?
    And never mind router and FiOS, etc., modem settings. and the Network settings outside of email....
    I guess my bottom line is, the user is presented with a rich smorgasbord of significant choices by all of the panes and panels, etc., on the mac, iMac, iPad-Phone-Watch real soon now, mac pro, macbook pro, etc.  But the specific description of the proper use of these description/instruction on their use and function is impoverished.  I think manuals used to handle some of these issues. But where are the manuals? Or am I just so overwhelmed by the complexity of what was once a simple user interface that I can't see pointers (in light grey type on lighter grey backgrounds--what the heck is wrong with black type, I'd like to know!) staring me in the phiz. Oh, help.

    Hi Cff7dxp,
    I am glad to hear that your issue has been resolved from the provided troubleshooting steps. Please feel free to post in Lenovo Community Forums if you have any further queries!
    Did someone help you today? Press the star on the left to thank them with a Kudo’s!
    Cheers!
    Hemanth Kumar
    Did someone help you today? Press the star on the left to thank them with a Kudo!
    If you find a post helpful and it answers your question, please mark it as an "Accepted Solution"! This will help the rest of the Community with similar issues identify the verified solution and benefit from it.
    Follow @LenovoForums on Twitter!

  • What are the classes used for bropdownListBox in BSP and purpose and how

    what are the classes used for bropdownListBox in BSP and purpose and how
    thank you,
    Regards.
    Jagrut BharatKumar Shukla

    Benje001,
    Right-click on the CWAI control on your form. Choose Properties. The first tab is the Channels tab. After you choose your device from the drop down box on the right, you can type in the Channels box which channel you want to use.
    If you want to see a CWAI control that is already configured, all of the shipping examples will have this already done.
    Also, if you have questions about any item on the CWAI (or any other NI ActiveX control) you can click the ? icon in the right corner of the properties page and then click on the item in the dialog that you need help with. This "What's this" help will describe that particular control on the dialog.
    Hope that helps!
    Regards,
    Shannon R.
    Applications Engineer
    National Instruments

  • Problem in following the webblog "Using TimeStamps: BSP Extensions"

    I try to follow the webblog "Using TimeStamps: BSP Extensions for a TimeStamp UI."
    However, after I have created the method 'RESOLVE_MODEL_BINDING' and compiled it, it shows me an error message
    <b>'Method "ADD_TO_CHECK_TABLE" is unknown or PROTECTED or PRIVATE.'</b>
    This is some part of that code.
      model = m_page_context->get_model( model_name ).
      name = model->get_attribute_name( attribute_path = value_path ).
      valuelow = model->get_attribute( attribute_path = value_path ).
      IF id IS INITIAL.
        id = name.
      ENDIF.
      IF disabled IS INITIAL.
        bspmodel ?= model.
        bspmodel->add_to_check_table( control_id = name ).
      ENDIF.

    I defined the bspmodel above the if block like the tutorial code.
    DATA: model             TYPE REF TO if_bsp_model_binding,
          model_name        TYPE string,
          metadata          TYPE REF TO if_bsp_metadata_simple,
          metadata_base     TYPE REF TO if_bsp_metadata,
          value_path        TYPE string,
          is_valid          TYPE i,
          error_value       TYPE string,
          bspmodel          TYPE REF TO if_bsp_model.
    I further looked into the interface <b>if_bsp_model</b> in my system. It doesn't include any interface, and only five methods were found:
    1) INIT
    2) GET_BINDING_INTERFACE
    3) GET_ERRORS
    4) INSTANTIATE
    5) RESET_ERRORS

  • Attach the file for purchase requisition using BSP service

    Hi All,
    I have Requirement Attach the any file like(PDF,TXT,PPT) to Purchase requisition using BSP service.Could please provide me any function module or BAPI for this functionality.
    Thanks in advance.
    Regards,
    Rajesh.

    Hi All,
    REPORT ZTESTJLG3 . .
    parameter p_mandt like sy-mandt default '120' .
    parameter p_equi type equnr default '1000007' .
    parameter p_path like IBIPPARMS-path memory id AD_LOCAL_PATH .
    parameter p_name(30) default 'Test attach 100007' lower case .
    " nom attachement .
    data w_prog like sy-repid .
    data w_dynnr like sy-dynnr .
    data w_attachement type borident .
    initialization .
    w_prog = sy-repid .
    w_dynnr = sy-dynnr .
    " test jean luc recuperer le code de
    fucntion module 'GOS_EXECUTE_SERVICE'
    data lo_container TYPE REF TO cl_gui_container .
    *call method lo_container->get_container_type .
    at selection-screen on value-request for p_path .
    CALL FUNCTION 'F4_FILENAME'
    EXPORTING
    PROGRAM_NAME = w_prog
    DYNPRO_NUMBER = w_dynnr
    FIELD_NAME = 'P_PATH'
    IMPORTING
    FILE_NAME = p_path .
    start-of-selection .
    if sy-mandt ne p_mandt .
    write 'Erreur mandt ' .
    exit .
    endif .
    data ws_borident like borident .
    ws_borident-OBJKEY = p_equi.
    ws_borident-OBJTYPE = 'EQUI'.
    data w_document like SOOD4 .
    data : begin of wt_files occurs 0 .
    data fname(128) .
    data end of wt_files.
    wt_files-fname = p_path .
    append wt_files .
    data folder_id like SOODK .
    call function 'SO_FOLDER_ROOT_ID_GET'
    EXPORTING
    region = 'B'
    IMPORTING
    folder_id = folder_id
    EXCEPTIONS
    others = 1.
    w_document-foltp = folder_id-objtp .
    w_document-folyr = folder_id-objyr .
    w_document-folno = folder_id-objno .
    append document to documents.
    w_document-objdes = p_name .
    w_document-objnam = p_name .
    data w_h_data like sooD2 ..
    data w_fol_data like sofm2.
    data w_rec_data like soos6 .
    w_h_data-objdes = p_name .
    CALL FUNCTION 'SO_DOCUMENT_REPOSITORY_MANAGER'
    EXPORTING
    METHOD = 'IMPORTFROMPC'
    OFFICE_USER =
    REF_DOCUMENT = w_document
    NEW_PARENT =
    IMPORTING
    AUTHORITY =
    TABLES
    OBJCONT =
    OBJHEAD =
    OBJPARA =
    OBJPARB =
    RECIPIENTS =
    ATTACHMENTS =
    REFERENCES =
    FILES = wt_files
    CHANGING
    DOCUMENT = w_document
    HEADER_DATA = w_h_data
    FOLMEM_DATA = w_fol_data
    RECEIVE_DATA = w_rec_data .
    if w_document-okcode = 'CREA' or w_document-okcode = 'CHNG'.
    w_attachement-objtype = 'MESSAGE'.
    w_attachement-objkey = w_document(34).
    CALL FUNCTION 'BINARY_RELATION_CREATE_COMMIT'
    EXPORTING
    OBJ_ROLEA = ws_borident
    OBJ_ROLEB = w_attachement
    RELATIONTYPE = 'ATTA'
    IMPORTING
    BINREL =
    TABLES
    BINREL_ATTRIB =
    EXCEPTIONS
    NO_MODEL = 1
    INTERNAL_ERROR = 2
    UNKNOWN = 3
    OTHERS = 4
    IF SY-SUBRC 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    endif .
    For above requirement i am trying like above code.
    working fine but which transaction i can find the attach file.I am trying to fine using ME52N transaction but i c't find this file.
    Please suggest me how can i find this one
    Thanks in advance,
    RajeshV.

  • Checkboxes:check the dish in one table-it checks off ingredients in another

    If you select a dish from a table of recipes (via checkbox) can you make it select all the ingredients for that dish from another table, your master ingredients list?
    I think it has to do with Boolean true/false, but checkboxes seems weird to me...they dont act like normal formula cells.....
    This would be really helpful for shopping/meal planning.........thanks

    Create a new table .
    In cell A1 grab the name of the selected dish
    In column B insert formulas grabbing the required ingredients.
    These formula would use the function VLOOKUP to extract the ingredients required for the dish whose name is in $A$1.
    I'm not sure that checkboxes are the good tool to select the dish because it's easy to have several boxes checked in a single column.
    I feel that using a popup menu would be a better soluce.
    If you really want to use checkboxes, it would be good practice to create a table with a single cell containing a formula displaying an alert if more than one box is checked.
    Yvan KOENIG (VALLAURIS, France) vendredi 5 mars 2010 22:02:42

  • Creating a New PO using BSP Application

    Hello BSP Gurus,
    Newbie in BSP and want to create a BSP application that uploads PO data using Transaction ME21N. Its like this, an BSP application displays the Header and Line item data. and then I need to create a New PO by inputting the fields in the BSP Application.
    Any suggestions would be rewarded.
    Regards
    Leo

    <b>Since you are new to BSP refer the below links to create the BSP..</b>
    https://wiki.sdn.sap.com/wiki/display/BSP/Main
    http://www.sapdevelopment.co.uk/webapps/bsp/mvc_example1.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/101c3a1cf1c54be10000000a114084/frameset.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/e5/edae3b59e17646e10000000a11402f/frameset.htm
    http://www.sapdesignguild.org/resources/htmlb_guidance/
    Look at the below links.. Some of them are step by step procedures.
    https://www.sdn.sap.com/irj/sdn/weblogs?blog=/weblogs/topic/24
    http://help.sap.com/saphelp_nw04/helpdata/en/7a/b86041397211d5992200508b6b8b11/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/7a/b86041397211d5992200508b6b8b11/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/4e/ac0b94c47c11d4ad320000e83539c3/content.htm
    https://www.sdn.sap.com/irj/sdn/weblogs
    /people/durairaj.athavanraja/blog/2005/08/21/running-your-first-bsp-application-in-sap-netweaver-04-abap-edition--nsp
    www.thespot4sap.com/Articles/SAP_WAS_BSP_Apps.asp
    www.thespot4sap.com/Articles/SAP_WAS_Overview.asp
    help.sap.com/saphelp_nw04/helpdata/ en/56/e6f3409ade8631e10000000a1550b0/content.htm
    New to BSP
    New to BSP. Where do I start from?
    New to BSP's ....Please Help me.......................
    And also recommend you to go through the BSP Weblogs in the BSP forum...highly Suggested and Helpful
    ;\ New BSP Weblogs
    <b>TO Create the PO:</b>
    Get the data from BSP & Use the BAPI:- <b>"BAPI BAPI_PO_CRE</b>ATE1 " to create the PO.
    See the link for more detail..
    BAPI_PO_CREATE1
    <i>* Reward each helpful answer</i>
    Raja T

  • Hierarchy download using bsp

    I have a requirement where I have to display all hierarchies on an infoobject to a user. The user should be able to select a particular hierarchy and download it as a flat file to a location. Can this be done using bsp?

    Hi,
    You can list the hierarchies of an InfoObject using table RSHIEDIR.
    When the user clicks on a hierarchy name, you can get its content in an internal table using Function Module RSSH_HIERARCHY_READ.
    Finally, you will have to process the internal table to send it as a flat file in HTTP response at the BSP level, so that the user can download it.
    Regards,
    Tanguy

  • How to Download displayed output to Excel Using Bsp Application

    Hi Experts,
    please give me some idea because I am New In BSP.
    How to Download displayed output to Excel Using Bsp Application.
    If any sample code please do send me.
    In my condition I am getting data in  2-3 table view formats on one page and i want download that in Excel.
    please help me.
    Regards & Thanks,
    Yogesh

    Hi,
    This is more a question for the BSP forum.
    Anyway, as such it's realy easy since you can use HTML in order to import to Excel. All you need to do is add
    runtime->server->response->set_header_field( name = 'Contnet-Type'
    value = 'application/vnd.ms-excel' ).
    runtime->server->response->delete_header_field( name = 'Cache-Control' ).
    runtime->server->response->delete_header_field( name = 'Expires' ).
    runtime->server->response->delete_header_field( name = 'Pragma' ).
    Also check threads like
    Download BSP data into Excel
    export bsp-table to excel
    Export BSP Table to Excel
    Eddy
    PS. Reward useful answers and earn points yourself

  • How to hide the Save Results Layout checkbox on the Create Saved Search pop

    I need to hide the Save Results Layout checkbox on the Create Saved Search popup. Can anyone tell me how to do it?
    This popup is used when the user is on a query (rendered by the af:query component) and they select click the "Save..." button. The have three options, Set as Default, Run Automatically, and Save Results Layout. I have an implementation that supports everything except saving the layout. So I need to hide that checkbox.
    Thanks,
    Mike

    For anybody else who needs to do this, here is how I did it.
    Add this to your css
    /* This hides the Save Results Layout checkbox on the Create Saved Search screen */
    span[id$='saveLayout'] {
    visibility: hidden;
    }

  • Error in uploading the data using BDC

    Hi All,
    I developed a BDC to upload the data for Infotype-0195.When I am trying to upload the flatfile using Functional Module option I am getting the error Invalid Date Format.
    Can anyone please help me out giving the solution..........
    Thanks in advance,
    Deepika

    Hi Avinash,
    I am passing the date field in the format MM/DD/YYYY but in the program i am converting to the format YYYYMMDD using concatenate and then passing the value to the FM but still I am getting the error.
    For ur convenience I am sending the code
    *-- Includes Declaration                                               *
    INCLUDE zixx_data_upload.
    INCLUDE zixx_conversion_log.
    INCLUDE bdcrecx1.
    *-- SELECTION SCREEN                                                   *
    SELECTION-SCREEN BEGIN OF BLOCK funcmod WITH FRAME TITLE text-t01.
    PARAMETERS : p_fm   TYPE c AS CHECKBOX.
    PARAMETERS : p_ctumod TYPE ctu_mode DEFAULT '0',
                 p_date TYPE c AS CHECKBOX DEFAULT 'X'.
    SELECTION-SCREEN END OF BLOCK funcmod.
    TYPES Declaration.
    Types decalration for flat file structure
    *Declaration for internal table/wa for flat file structure
    TYPES: BEGIN OF gt_data,
              pernr TYPE rp50g-pernr,
              begda(10) TYPE c,
              endda(10) TYPE c,
              gcase     TYPE pb10_gcase,
              objps TYPE p0195-objps,
              ordcd TYPE p0195-ordcd,
              rulid TYPE p0195-rulid,
              ibaln(13) TYPE c,
              deduc(13) TYPE c,
              dedut TYPE p0195-dedut,
              li1no TYPE q0195-li1no,
              li1ex TYPE q0195-li1ex,
              nval1(13) TYPE c,
              nuni1 TYPE p0195-nuni1,
              li2no TYPE q0195-li1no,
              li2ex TYPE q0195-li2ex,
              nval2(13) TYPE c,
              nuni2 TYPE p0195-nuni2,
              addno TYPE q0195-addno,
              addex TYPE q0195-addex,
              addvl(13) TYPE c,
              addun TYPE p0195-addun,
              fstat TYPE p0195-fstat,
              exemp TYPE p0195-exemp,
              addde TYPE p0195-addde,
              levda(10) TYPE c,
              fild1 TYPE p0195-fild1,
              fild2 TYPE p0195-fild2,
              fild3 TYPE p0195-fild3,
              fild4 TYPE p0195-fild4,
            END OF gt_data,
            BEGIN OF gt_0194,
               pernr TYPE p0194-pernr,
               begda TYPE p0194-begda,
               endda TYPE p0194-endda,
               subty TYPE p0194-subty,
               lifnr TYPE p0194-lifnr,
               schid TYPE p0194-schid,
               rulnr TYPE p0194-rulnr,
               plain TYPE p0194-plain,
               orign TYPE p0194-orign,
               orcod TYPE p0194-orcod,
               ornam TYPE p0194-ornam,
               orstr TYPE p0194-orstr,
               orort TYPE p0194-orort,
               orreg TYPE p0194-orreg,
               orcnt TYPE p0194-orcnt,
               orplz TYPE p0194-orplz,
               lapdy TYPE p0194-lapdy,
               lapdt TYPE p0194-lapdt,
               gcase TYPE p0194-gcase,
               gprio TYPE p0194-gprio,
               gcate TYPE p0194-gcate,
               gstat TYPE p0194-gstat,
               rcvdd TYPE p0194-rcvdd,
               rlsdd TYPE p0194-rlsdd,
               scrul TYPE p0194-scrul,
            END OF gt_0194.
    TYPES: BEGIN OF gt_data_d,
              pernr TYPE rp50g-pernr,
              begda(10) TYPE c,
              endda(10) TYPE c,
              gcase     TYPE pb10_gcase,
              objps TYPE p0195-objps,
              ordcd TYPE p0195-ordcd,
              rulid TYPE p0195-rulid,
              ibaln(13) TYPE c,
              deduc(13) TYPE c,
              dedut TYPE p0195-dedut,
              li1no TYPE q0195-li1no,
              li1ex TYPE q0195-li1ex,
              nval1(13) TYPE c,
              nuni1 TYPE p0195-nuni1,
              li2no TYPE q0195-li1no,
              li2ex TYPE q0195-li2ex,
              nval2(13) TYPE c,
              nuni2 TYPE p0195-nuni2,
              addno TYPE q0195-addno,
              addex TYPE q0195-addex,
              addvl(13) TYPE c,
              addun TYPE p0195-addun,
              fstat TYPE p0195-fstat,
              exemp TYPE p0195-exemp,
              addde TYPE p0195-addde,
              fild1 TYPE p0195-fild1,
              fild2 TYPE p0195-fild2,
              fild3 TYPE p0195-fild3,
              fild4 TYPE p0195-fild4,
            END OF gt_data_d.
    INTERNAL TABLE/WORK AREA Declaration.
    *Declaration for internal table/wa for flat file structure
    DATA:    gi_data       TYPE TABLE OF gt_data,
             gw_data       TYPE gt_data,
             gi_0194       TYPE TABLE OF gt_0194,
             gw_0194       TYPE gt_0194,
    *Declaration for BDCDATA
            gi_bdcdata     TYPE STANDARD TABLE OF bdcdata,
            gw_bdcdata     TYPE bdcdata,
    *Declaration for BDCMSGCOLL
            gi_bdcmsgcoll  TYPE TABLE OF bdcmsgcoll,
            gw_bdcmsgcoll  TYPE bdcmsgcoll,
             gi_data_d     TYPE TABLE OF gt_data_d,
             gw_data_d     TYPE gt_data_d,
             gw_p0195      TYPE p0195,
             gw_p0194      TYPE pa0194.
    DATA: gw_return TYPE bapireturn1,
    *Declaration for Global Variables
            gv_count(5)    TYPE c VALUE 0.
    *Declaration for constants
    CONSTANTS: gc_update               VALUE 'L',
               gc_msgid(2)             VALUE 'PG',
               gc_s_msgid(3)           VALUE '102',
               gc_pa30 TYPE tstc-tcode VALUE 'PA30',
               gc_200(3)               VALUE '200'.
    *-- AT SELECTION SCREEN OUTPUT
    AT SELECTION-SCREEN OUTPUT.
      nodata = ' '.
      group = sy-uname.
    *To change the screen attributes dynamically.
      PERFORM upload_screen_output.
    *-- START-OF-SELECTION                                                 *
    START-OF-SELECTION.
      IF p_date = 'X'.
    *-- Routine to upload the file data
        PERFORM upload USING 'X'       "HAS_SEPARATOR
                             'ASC'     "File Type
                             space     "ALT_SEPARATOR Alternate separator
                             'X'       "DISPLAY_ERROR
                             'X'       "ERROR_OCCURRED
                             gi_data. "TABLE Table to upload into
        IF NOT gi_data IS INITIAL.
          SELECT pernr begda endda subty
                 lifnr schid rulnr
                 plain orign orcod
                 ornam orstr orort
                 orreg orcnt orplz
                 lapdy lapdt gcase
                 gprio gcate gstat
                 rcvdd rlsdd scrul
            FROM pa0194
            INTO TABLE gi_0194
             FOR ALL ENTRIES IN gi_data
           WHERE pernr = gi_data-pernr
             AND gcase = gi_data-gcase.
    *-- Routine to perform bdc
          IF sy-subrc IS INITIAL.
            IF p_fm NE 'X'.
              PERFORM bdc.
            ELSE.
              PERFORM function_module.
            ENDIF.
          ENDIF.
        ENDIF.
      ELSE.
    *-- Routine to upload the file data
        PERFORM upload USING 'X'       "HAS_SEPARATOR
                             'ASC'     "File Type
                             space     "ALT_SEPARATOR Alternate separator
                             'X'       "DISPLAY_ERROR
                             'X'       "ERROR_OCCURRED
                             gi_data_d. "TABLE Table to upload into
        IF NOT gi_data_d IS INITIAL.
          IF p_fm EQ 'X'.
            PERFORM function_module.
          ENDIF.
        ENDIF.
      ENDIF.
    *Perform to insert the filename in Z-Table and move the file from New
    *to Processed in APP Server.
      SORT gi_log BY msg_typ.
      READ TABLE gi_log INTO gw_log WITH KEY msg_typ = 'E' BINARY SEARCH.
      IF sy-subrc <> '0'.
        PERFORM file_moving USING gi_data.
      ENDIF.
    *-- END-OF-SELECTION                                                   *
    END-OF-SELECTION.
    *-- Routine to display conversion log
      PERFORM log_display.
      Subroutine Pool
    *&      Form  BDC
          Routine to perform bdc
    FORM bdc .
    *Data declaration for collecting success and error records
      DATA: lv_success(5)     TYPE c VALUE 0,
            lv_begda  TYPE string,
            lv_rlsdd  TYPE string,
            lv_lapdt  TYPE string,
            lv_endda  TYPE string,
            lv_rcvdd  TYPE string.
      gv_count = 0.
      PERFORM open_group.
      SORT gi_0194 BY pernr gcase.
      LOOP AT gi_data INTO gw_data.
        gv_count = gv_count + 1.
        READ TABLE gi_0194 INTO gw_0194 WITH KEY pernr = gw_data-pernr
                                                 gcase = gw_data-gcase.
        IF sy-subrc = 0.
       LOOP AT gi_0194 INTO gw_0194 WHERE gcase = gw_data-grnum.
          MOVE gw_0194-begda TO lv_begda.
          MOVE gw_0194-endda TO lv_endda.
    *FUNCTION MODULE TO CONVERT DATE FORMAT
          CALL FUNCTION '/SAPDII/SPP05_CONVERT_DATE'
            EXPORTING
              if_date = lv_begda
            IMPORTING
              ef_date = lv_begda.
          CALL FUNCTION '/SAPDII/SPP05_CONVERT_DATE'
            EXPORTING
              if_date = lv_endda
            IMPORTING
              ef_date = lv_endda.
          PERFORM bdc_dynpro      USING 'SAPMP50A' '1000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=MOD'.
          PERFORM bdc_field       USING 'RP50G-PERNR'
                                        gw_data-pernr.
          PERFORM bdc_field       USING 'RP50G-TIMR6'
                                        'X'.
          PERFORM bdc_field       USING 'RP50G-CHOIC'
                                        '0194'.
          PERFORM bdc_field       USING 'RP50G-SUBTY'
                                        gw_0194-subty.
          PERFORM bdc_dynpro      USING 'MP019400' '2000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=GROR'.
          PERFORM bdc_field       USING 'P0194-BEGDA'
                                        lv_begda.
          PERFORM bdc_field       USING 'P0194-ENDDA'
                                        lv_endda.
          PERFORM bdc_field       USING 'P0194-LIFNR'
                                        gw_0194-lifnr.
          PERFORM bdc_field       USING 'P0194-SCHID'
                                        gw_0194-schid.
          PERFORM bdc_field       USING 'P0194-RULNR'
                                        gw_0194-rulnr.
          PERFORM bdc_field       USING 'P0194-pLAIN'
                                        gw_0194-plain.
          PERFORM bdc_field       USING 'P0194-ORIGN'
                                        gw_0194-orign.
          PERFORM bdc_field       USING 'P0194-ORCOD'
                                        gw_0194-orcod.
          PERFORM bdc_field       USING 'P0194-ORNAM'
                                        gw_0194-ornam.
          PERFORM bdc_field       USING 'P0194-ORSTR'
                                        gw_0194-orstr.
          PERFORM bdc_field       USING 'P0194-ORORT'
                                        gw_0194-orort.
          PERFORM bdc_field       USING 'P0194-ORREG'
                                        gw_0194-orreg.
          PERFORM bdc_field       USING 'P0194-ORCNT'
                                        gw_0194-orcnt.
          PERFORM bdc_field       USING 'P0194-ORPLZ'
                                        gw_0194-orplz.
          PERFORM bdc_field       USING 'P0194-LAPDY'
                                        gw_0194-lapdy.
          IF gw_0194-lapdt IS NOT INITIAL.
            MOVE gw_0194-lapdt TO lv_lapdt.
            CALL FUNCTION '/SAPDII/SPP05_CONVERT_DATE'
              EXPORTING
                if_date = lv_lapdt
              IMPORTING
                ef_date = lv_lapdt.
            PERFORM bdc_field       USING 'P0194-LAPDT'
                                          lv_lapdt.
          ENDIF.
          PERFORM bdc_field       USING 'P0194-GCASE'
                                        gw_0194-gcase.
          PERFORM bdc_field       USING 'P0194-GPRIO'
                                        gw_0194-gprio.
          PERFORM bdc_field       USING 'P0194-GCATE'
                                        gw_0194-gcate.
          PERFORM bdc_field       USING 'P0194-GSTAT'
                                        gw_0194-gstat.
          IF gw_0194-rcvdd IS NOT INITIAL.
            MOVE gw_0194-rcvdd TO lv_rcvdd.
            CALL FUNCTION '/SAPDII/SPP05_CONVERT_DATE'
              EXPORTING
                if_date = lv_rcvdd
              IMPORTING
                ef_date = lv_rcvdd.
            PERFORM bdc_field       USING 'P0194-RCVDD'
                                          lv_rcvdd.
          ENDIF.
          IF gw_0194-rlsdd IS NOT INITIAL.
            MOVE gw_0194-rlsdd TO lv_rlsdd.
            CALL FUNCTION '/SAPDII/SPP05_CONVERT_DATE'
              EXPORTING
                if_date = lv_rlsdd
              IMPORTING
                ef_date = lv_rlsdd.
            PERFORM bdc_field       USING 'P0194-RLSDD'
                                          lv_rlsdd.
          ENDIF.
          PERFORM bdc_field       USING 'P0194-SCRUL'
                                        gw_0194-scrul.
         PERFORM bdc_dynpro      USING 'SAPLSPO1' '0200'.
         PERFORM bdc_field       USING 'BDC_CURSOR'
                                       'SPOP-TEXTLINE1'.
         PERFORM bdc_field       USING 'BDC_OKCODE'
                                       '=YES'.
          PERFORM bdc_dynpro      USING 'SAPLSPO1' '0200'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'SPOP-TEXTLINE1'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=YES'.
          PERFORM bdc_dynpro      USING 'MP019500' '2000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=UPD'.
          PERFORM bdc_field       USING 'P0195-BEGDA'
                                        gw_data-begda.
          PERFORM bdc_field       USING 'P0195-ENDDA'
                                        gw_data-endda.
          PERFORM bdc_field       USING 'P0195-ORDCD'
                                        gw_data-ordcd.
          PERFORM bdc_field       USING 'P0195-RULID'
                                        gw_data-rulid.
          PERFORM bdc_field       USING 'P0195-IBALN'
                                        gw_data-ibaln.
          PERFORM bdc_field       USING 'P0195-DEDUC'
                                        gw_data-deduc.
          PERFORM bdc_field       USING 'P0195-DEDUT'
                                        gw_data-dedut.
    Begin of Insertion V2.0 by S.NATARAJAN
         IF ( ( gw_data-li1no = '1' AND gw_data-li1ex = ''  ) OR
              ( gw_data-li1no = ''  AND gw_data-li1ex = ''  ) ).
          IF ( ( gw_data-li1no = '1' AND gw_data-li1ex = ''  ) OR
               ( gw_data-li1no = ''  AND gw_data-li1ex = ''  ) OR
               ( gw_data-li1no = ''  AND gw_data-li1ex = '2' ) ).
    End of Insertion V2.0 by S.NATARAJAN
            PERFORM bdc_field       USING 'Q0195-LI1NO'
                                          'X'.
            PERFORM bdc_field       USING 'P0195-NVAL1'
                                          gw_data-nval1.
            PERFORM bdc_field       USING 'P0195-NUNI1'
                                          gw_data-nuni1.
    Begin of Insertion V2.0 by S.NATARAJAN
         ELSEIF  gw_data-li1no = '' AND gw_data-li1ex = '2'  .
          ELSEIF ( gw_data-li1no = '' AND gw_data-li1ex = '1' ) .
    End of Insertion V2.0 by S.NATARAJAN
            PERFORM bdc_field       USING 'Q0195-LI1EX'
                                          'X'.
            PERFORM bdc_field       USING 'P0195-NVAL1'
                                          gw_data-nval1.
            PERFORM bdc_field       USING 'P0195-NUNI1'
                                          gw_data-nuni1.
          ENDIF.
    Begin of Insertion V2.0 by S.NATARAJAN
         IF ( ( gw_data-li2no = '1' AND gw_data-li2ex = ''  ) OR
              ( gw_data-li2no = ''  AND gw_data-li2ex = ''  ) ).
          IF ( ( gw_data-li2no = '1' AND gw_data-li2ex = ''  ) OR
               ( gw_data-li2no = ''  AND gw_data-li2ex = ''  ) OR
               ( gw_data-li2no = ''  AND gw_data-li2ex = '2' ) ).
            PERFORM bdc_field       USING 'Q0195-LI2NO'
                                          'X'.
            PERFORM bdc_field       USING 'P0195-NVAL2'
                                          gw_data-nval2.
            PERFORM bdc_field       USING 'P0195-NUNI2'
                                          gw_data-nuni2.
    Begin of Insertion V2.0 by S.NATARAJAN
         ELSEIF  ( gw_data-li2no = '' AND gw_data-li2ex = '2' ).
          ELSEIF  ( gw_data-li2no = '' AND gw_data-li2ex = '1' ).
    End of Insertion V2.0 by S.NATARAJAN
            PERFORM bdc_field       USING 'Q0195-LI2EX'
                                          'X'.
            PERFORM bdc_field       USING 'P0195-NVAL2'
                                          gw_data-nval2.
            PERFORM bdc_field       USING 'P0195-NUNI2'
                                          gw_data-nuni2.
          ENDIF.
    Begin of Insertion V2.0 by S.NATARAJAN
         IF ( ( gw_data-addno = '1' AND gw_data-addex = ''  ) OR
              ( gw_data-addno = ''  AND gw_data-addex = ''  ) ).
    End of Insertion V2.0 by S.NATARAJAN
          IF ( ( gw_data-addno = '1' AND gw_data-addex = ''  ) OR
               ( gw_data-addno = ''  AND gw_data-addex = ''  ) OR
               ( gw_data-addno = ''  AND gw_data-addex = '2' ) ) .
            PERFORM bdc_field       USING 'Q0195-ADDNO'
                                          'X'.
            PERFORM bdc_field       USING 'P0195-ADDVL'
                                          gw_data-addvl.
            PERFORM bdc_field       USING 'P0195-ADDUN'
                                          gw_data-addun.
    Begin of Insertion V2.0 by S.NATARAJAN
    *ELSEIF  gw_data-addno = '' AND gw_data-addex = '2' .
          ELSEIF ( gw_data-addno = '' AND gw_data-addex = '1' ).
    End of Insertion V2.0 by S.NATARAJAN
            PERFORM bdc_field       USING 'Q0195-ADDEX'
                                          'X'.
            PERFORM bdc_field       USING 'P0195-ADDVL'
                                          gw_data-addvl.
            PERFORM bdc_field       USING 'P0195-ADDUN'
                                          gw_data-addun.
          ENDIF.
          PERFORM bdc_dynpro      USING 'MP019500' '2000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=UPD'.
          PERFORM bdc_dynpro      USING 'MP019400' '2000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '/EBCK'.
          PERFORM bdc_dynpro      USING 'SAPLSPO1' '0200'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'SPOP-TEXTLINE1'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=YES'.
          PERFORM bdc_dynpro      USING 'SAPLSPO1' '0200'.
          PERFORM bdc_field       USING 'BDC_CURSOR'
                                        'SPOP-TEXTLINE1'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=YES'.
          PERFORM bdc_dynpro      USING 'MP019500' '2000'.
          PERFORM bdc_field       USING 'BDC_OKCODE'
                                        '=UPD'.
         CALL TRANSACTION gc_pa30 USING gi_bdcdata
                                   MODE p_ctumod
                                 UPDATE gc_update
                               MESSAGES INTO gi_bdcmsgcoll.
          PERFORM bdc_transaction USING gc_pa30.
          gi_bdcmsgcoll[] = messtab[].
          LOOP AT gi_bdcmsgcoll INTO gw_bdcmsgcoll.
            IF gw_bdcmsgcoll-msgnr NE gc_200.
              IF gw_bdcmsgcoll-msgid = gc_msgid.
                IF gw_bdcmsgcoll-msgnr EQ gc_s_msgid.
                  ADD 1 TO lv_success.
                ENDIF.
              ENDIF.
              gw_log-msg_id   = gw_bdcmsgcoll-msgid.
              gw_log-msg_num  = gw_bdcmsgcoll-msgnr.
              gw_log-msg_key  = gw_bdcmsgcoll-msgv1.
              gw_log-msg_typ  = gw_bdcmsgcoll-msgtyp.
              gw_log-rec_no   = gv_count.
              CALL FUNCTION 'FORMAT_MESSAGE'
                EXPORTING
                  id        = gw_log-msg_id
                  no        = gw_log-msg_num
                  v1        = gw_bdcmsgcoll-msgv1
                  v2        = gw_bdcmsgcoll-msgv2
                  v3        = gw_bdcmsgcoll-msgv3
                  v4        = gw_bdcmsgcoll-msgv4
                IMPORTING
                  msg       = gw_log-msg_txt
                EXCEPTIONS
                  not_found = 1
                  OTHERS    = 2.
              IF sy-subrc <> 0.
                MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                      WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
              ENDIF.
              CONCATENATE gw_log-msg_txt 'for Personnel No -' ''''
                          gw_data-pernr '''' 'Case -' '''' gw_data-gcase
                          '''' INTO gw_log-msg_txt SEPARATED BY space.
              APPEND gw_log TO gi_log.
              REFRESH gi_bdcmsgcoll.
            ENDIF.
          ENDLOOP.
          CLEAR : lv_begda,lv_endda,
                  lv_lapdt,lv_rlsdd.
        ELSE.
          gw_log-msg_id = 'CUST'.
          gw_log-msg_num = 'XXX'.
          gw_log-msg_key  = 'USK'.
          gw_log-msg_typ  = 'E'.
          gw_log-rec_no   = gv_count.
          CONCATENATE 'Case -' '''' gw_data-gcase ''''
                      'does not exists for Personnel No -'
                      '''' gw_data-pernr ''''
                       INTO gw_log-msg_txt SEPARATED BY space.
          APPEND gw_log TO gi_log.
        ENDIF.
       ENDLOOP.
        CLEAR : gw_0194, gw_data.
        REFRESH gi_bdcdata.
      ENDLOOP.
      FREE gi_data.
      gv_tot_rec = gv_count.
      gv_suc_rec = lv_success.
      gv_err_rec = gv_count - lv_success.
      gv_ifnam   = p_upfile.
      PERFORM close_group.
    ENDFORM.                    " BDC
    *&      Form  FUNCTION_MODULE
          text
    FORM function_module .
      IF p_date = 'X'.
        LOOP AT gi_data INTO gw_data.
          gv_count = gv_count + 1.
          SELECT SINGLE pernr begda endda subty grnum
            FROM pa0194
            INTO CORRESPONDING FIELDS OF gw_p0194
           WHERE pernr = gw_data-pernr
             AND gcase = gw_data-gcase.
          IF sy-subrc = 0.
            MOVE-CORRESPONDING gw_data TO gw_p0195.
            CONCATENATE gw_data-begda6(4) gw_data-begda3(2)
                        gw_data-begda+0(2)
                       INTO gw_p0195-begda.
            CONCATENATE gw_data-endda6(4) gw_data-endda3(2)
                        gw_data-endda+0(2)
                       INTO gw_p0195-endda.
            CONCATENATE gw_data-levda6(4) gw_data-levda3(2)
                        gw_data-levda+0(2)
                       INTO gw_p0195-levda.
            gw_p0195-grnum = gw_p0194-grnum.
            gw_p0195-nein1 = ' '.
            gw_p0195-nein2 = ' '.
            gw_p0195-addin = ' '.
            IF ( gw_data-li1no = '' AND gw_data-li1ex = '1' ) .
              gw_p0195-nein1 = '1'.
            ELSEIF ( gw_data-li1ex = '2' OR gw_data-li1ex = '' ).
              gw_p0195-nein1 = '2'.
            ENDIF.
            IF ( gw_data-li2no = '' AND gw_data-li2ex = '1' ) .
              gw_p0195-nein2 = '1'.
            ELSEIF ( gw_data-li2ex = '2' OR gw_data-li2ex = '' ).
              gw_p0195-nein2 = '2'.
            ENDIF.
            IF ( gw_data-addno = '' AND gw_data-addex = '1' ) .
              gw_p0195-addin = '1'.
            ELSEIF ( gw_data-addex = '2' OR gw_data-addex = '' ).
              gw_p0195-addin = '2'.
            ENDIF.
            CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
              EXPORTING
                number = gw_p0195-pernr
              IMPORTING
                return = gw_return.
            IF gw_return-type NE 'E'.
              CALL FUNCTION 'HR_INFOTYPE_OPERATION'
                EXPORTING
                  infty         = '0195'
                  number        = gw_p0195-pernr
                  validityend   = gw_p0195-endda
                  validitybegin = gw_p0195-begda
                  record        = gw_p0195
                  operation     = 'INS'
                  dialog_mode   = p_ctumod                      "Mod-01
                  tclas         = 'A'
                  nocommit      = ' '
                IMPORTING
                  return        = gw_return.
              CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
                EXPORTING
                  number = gw_p0195-pernr.
            ENDIF.
            IF gw_return IS NOT INITIAL.
              gw_log-msg_id = gw_return-id.
              gw_log-msg_num = gw_return-number.
              CONCATENATE gw_data-pernr gw_data-gcase INTO
              gw_log-msg_key SEPARATED BY '|'.
              gw_log-msg_typ  = gw_return-type.
              gw_log-rec_no   = gv_count.
              gw_log-msg_txt  = gw_return-message.
            ELSE.
              gw_log-msg_id = 'CUST'.
              gw_log-msg_num =  '000'.
              CONCATENATE gw_data-pernr gw_data-gcase INTO
              gw_log-msg_key SEPARATED BY '|'.
              gw_log-msg_typ  = 'S'.
              gw_log-rec_no   = gv_count.
              gw_log-msg_txt  = 'Record Created'(t02).
            ENDIF.
          ELSE.
            gw_log-msg_id = 'CUST'.
            gw_log-msg_num = 'XXX'.
            CONCATENATE gw_data-pernr gw_data-gcase INTO
            gw_log-msg_key SEPARATED BY '|'.
            gw_log-msg_typ  = 'E'.
            gw_log-rec_no   = gv_count.
            gw_log-msg_txt  =  'Case does not exists for Personnel No'(t03).
          ENDIF.
          APPEND gw_log TO gi_log.
          CLEAR : gw_log,gw_return,gw_data,gw_p0194,gw_p0195.
        ENDLOOP.
      ELSE.
        LOOP AT gi_data_d INTO gw_data_d.
          gv_count = gv_count + 1.
          SELECT SINGLE pernr begda endda subty grnum
            FROM pa0194
            INTO CORRESPONDING FIELDS OF gw_p0194
           WHERE pernr = gw_data_d-pernr
             AND gcase = gw_data_d-gcase.
          IF sy-subrc = 0.
            MOVE-CORRESPONDING gw_data_d TO gw_p0195.
            CONCATENATE gw_data_d-begda6(4) gw_data_d-begda3(2)
         gw_data_d-begda+0(2)
                       INTO gw_p0195-begda.
            CONCATENATE gw_data_d-endda6(4) gw_data_d-endda3(2)
         gw_data_d-endda+0(2)
                       INTO gw_p0195-endda.
            gw_p0195-grnum = gw_p0194-grnum.
            gw_p0195-nein1 = ' '.
            gw_p0195-nein2 = ' '.
            gw_p0195-addin = ' '.
            IF ( gw_data_d-li1no = '' AND gw_data_d-li1ex = '1' ) .
              gw_p0195-nein1 = '1'.
            ELSEIF ( gw_data_d-li1ex = '2' OR gw_data_d-li1ex = '' ).
              gw_p0195-nein1 = '2'.
            ENDIF.
            IF ( gw_data_d-li2no = '' AND gw_data_d-li2ex = '1' ) .
              gw_p0195-nein2 = '1'.
            ELSEIF ( gw_data_d-li2ex = '2' OR gw_data_d-li2ex = '' ).
              gw_p0195-nein2 = '2'.
            ENDIF.
            IF ( gw_data_d-addno = '' AND gw_data_d-addex = '1' ) .
              gw_p0195-addin = '1'.
            ELSEIF ( gw_data_d-addex = '2' OR gw_data_d-addex = '' ).
              gw_p0195-addin = '2'.
            ENDIF.
            CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
              EXPORTING
                number = gw_p0195-pernr
              IMPORTING
                return = gw_return.
            IF gw_return-type NE 'E'.
              CALL FUNCTION 'HR_INFOTYPE_OPERATION'
                EXPORTING
                  infty         = '0195'
                  number        = gw_p0195-pernr
                  validityend   = gw_p0195-endda
                  validitybegin = gw_p0195-begda
                  record        = gw_p0195
                  operation     = 'INS'
                  dialog_mode   = p_ctumod                      "Mod-01
                  tclas         = 'A'
                  nocommit      = ' '
                IMPORTING
                  return        = gw_return.
              CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
                EXPORTING
                  number = gw_p0195-pernr.
            ENDIF.
            IF gw_return IS NOT INITIAL.
              gw_log-msg_id = gw_return-id.
              gw_log-msg_num = gw_return-number.
              CONCATENATE gw_data_d-pernr gw_data_d-gcase INTO
              gw_log-msg_key SEPARATED BY '|'.
              gw_log-msg_typ  = gw_return-type.
              gw_log-rec_no   = gv_count.
              gw_log-msg_txt  = gw_return-message.
            ELSE.
              gw_log-msg_id = 'CUST'.
              gw_log-msg_num =  '000'.
              CONCATENATE gw_data_d-pernr gw_data_d-gcase INTO
              gw_log-msg_key SEPARATED BY '|'.
              gw_log-msg_typ  = 'S'.
              gw_log-rec_no   = gv_count.
              gw_log-msg_txt  = 'Record Created'(t02).
            ENDIF.
          ELSE.
            gw_log-msg_id = 'CUST'.
            gw_log-msg_num = 'XXX'.
            CONCATENATE gw_data_d-pernr gw_data_d-gcase INTO
            gw_log-msg_key SEPARATED BY '|'.
            gw_log-msg_typ  = 'E'.
            gw_log-rec_no   = gv_count.
           gw_log-msg_txt  =  'Case does not exists for Personnel No '(t03).
          ENDIF.
          APPEND gw_log TO gi_log.
          CLEAR : gw_log,gw_return,gw_data_d,gw_p0194,gw_p0195.
        ENDLOOP.
      ENDIF.
    ENDFORM.
    Thanks.

  • How to  upload and display image using bsp application

    hi
    I  just wants to know that
    1- how to  upload image from BSP page with attachment into sap server .?
    2-how to display image in to BSP page(webpage).
    thanks

    Hello Gupta Prashant,
    Just to upload and display an image, import image in MIME repository. Not only still images but also flash files can also be uploaded in the MIME repository. Once you import the image in it, use normal html code for image call;
    <img src = "file.jpg/gif" width=  height=>
    Besides it, if your requirement is to store the image in the database and fetch it based on specified field-name, then you have to go for BLOBs i.e Binary Large Object, using this you can also store images, videos, pdfs, applications in the database.
    MBLOB - Medium BLOBs store videos and pdfs,
    LBLOB  - Large BLOBs store movie files and applications.
    You have got 2 ways to use it; some databases store BLOB objects into themselves and some store the path of the BLOB object maintained on the FTP server.
    You can also implement it in ABAP;
    read the following link and practice the tutorial;
    [ Use of MIME Types|http://help.sap.com/saphelp_45b/helpdata/en/f1/b4a6c4df3911d18e080000e8a48612/content.htm]
    also check this
    [TYPES - LOB HANDLE|http://help.sap.com/abapdocu/en/ABAPTYPES_LOB_HANDLE.htm]
    And looking at your question, in order to upload an image, you can make use of FILEUPLOAD tag provided by HTMLB.
    Step 1: FILEUPLOAD provides a browse button to choose desired image file.
    Step 2: Store that image in database using BLOBs.
    Step 3: Retrieve the image using normal select query and display it on the screen.
    Hope it helps you,
    Zahack

  • Add checkbox on the nodes of Hierarchical tree in oracle forms 9i

    Hi,
    I am working on oracle forms 9i.I have to add checkbox at the place of node(+/-) in Hierarchical tree so,
    that user can select or deselect the Tree.That can do in oracle forms but how i don't know.
    can anybody help me.....
    Regards,
    Hemant

    You can't change this aspect of the Tree Control in Oracle Forms using built-in functionality. You might be able to extend the Tree Control using Java, but you have to do this yourself. : (
    Craig...

Maybe you are looking for

  • CS5 is not responding...any suggestions on what to do

    CS5 is not responding...any suggestions on what to do.  The last thing that happened before I stopped responding.... I got a message that Photoshop quit unexpectedly and the next time I tried to open Photoshop it's not responding.  I've tried restart

  • Exception 'NOT_ALLOWED'.

    Hi, I wrote 'COM_PARTNER_BADI' so stop creating orders against a PROSPECT. When a user enters a PROSPECT in standard order i am prompting the user saying 'Orders cannot be created against PROSPECT' in the status bar thru this BADI. It is working fine

  • Lumia 630 Color Saturation problem

    I'm currently on the latest update on the developer preview version (Lumia Cyan OS 8.1 (8.10.14157.200)). Even when i was on the non developer preview version i had this problem. SETTINGS->DISPLAY->COLOUR PROFILE->COLOUR SATURATION Even though my sli

  • Can I run 2 separate versions of Firefox on my Mac with OS 10.6.8?

    For example, I'd like to run my current Firefox version 5.0.1 with the new version 6.0 so that I can easily switch to the older version if something doesn't work with the new version. I run the 1Password extension with Firefox and I got a message the

  • Discoverer vs. BO vs. Cognos

    Is there any comparison between Oracle BI tools (10g) and Cognos, BO BI tools? Please mail me [email protected]