Infotype Operation

Hi,
Can someone explain me following Infotype operation's, with an example please and also, how we should decide which operation for an Infotype will suit the best to the client.
Create INS
Copy   COP
Change MOD
Delimit LIS9
Create operation for actions  INSS
Please do not copy paste R/3 defined definitions here,I have already gone through it and I'm looking for further explanation.
Thanks,
Tk

Hi Tina,
This FM is generally used to perform data base record change for an Infotype
INS- Create
Creates a new record in the system
COP- Copy
Copy the existing record from the system
MOD- Modification
Change the existing record in the system
LIS9
Delimit the Existing record in the system
And so Onn..
Look into the code below for your reference
  CALL FUNCTION 'HR_INFOTYPE_OPERATION'
    EXPORTING
      infty         = c_i0014                               "'0014'
      number        = wa_zltcbill-pernr
      validityend   = ld_validityend
      validitybegin = wa_zltcbill-zdate
      record        = wa_0014
      operation     = ld_operation
      tclas         = p_tclas
      dialog_mode   = p_mode
    IMPORTING
      return        = p_wa_return.
Regards
Pavan

Similar Messages

  • Check before an infotype operation (PA) / HR_INFOTYPE_OPERATION

    Hi,
    In my latest project there is a requirement to simulate the HR_INFOTYPE_OPERATION (or other possibilities to update the PA* infotypes). The main meaning of the project is in robust customer customization, which translates to dynamic abap webdynpro views with data from the infotypes. Person fills those forms and sends the "personal document" for processing (creating entries in customer Z* namespace). Just after that a different user can pick the "personal document" and can process it - that is the part where it comes to the infotypes filling (HR_INFOTYPE_OPERATION, batch-inputs, direct updates etc.).
    Now requirement is to implement checks also in the creating of the "personal document" itself, before saving it into customer (Z*) tables. How could that be achieved? One way would be using HR_INFOTYPE_OPERATION with nocommit = 'X' and after all operations call of ROLLBACK WORK, initializing buffers etc. However whole concept of using HR_INFOTYPE_OPERATION is in locking the personal number before the call. User which only creates the "personal document" should not lock the personal number - as this part should be independent on other processes, taken in SAP standard HR tables / transactions themselfs.
    I did not find any kind of checking mechanism ignoring the person-locking concept, but with full logic that the corresponding infotype expects. There should be are all kind of operations supported (insert, copy, delimit...).
    I underline that the customer is at a low support package (< EH5) and the decoupling infotypes concept is useless here.
    Thanks for any advice.

    Hi Surya,
    Enhancement project PBAS0001which contains those includes is obsolete in terms of detached infotype framework.
    The following enhancements will work for a decoupled infotype:
    BAdIs:
    HRPAD00INFTYBL Enhancement of Business Logic of Standard Infotypes (this is the direct replacement for the enhancement project PBAS0001)
    HRPAD00INFTYDB Performing actions after updating (this is the direct replacement for the BAdI HRPAD00INFTY)
    HRPAD00INFTYUI BAdI: UI Logic Enhancement
    More information you may find here:
    IMG Personnel Management->Personnel Administration->Customizing Procedures->Infotypes->Infotypes in Detached Infotype Framework
    Under the following IMG nodes:
    Enhancements to Business Logic and Updating
    Enhancements to UI Logic
    Regarding to your questions:
    1. If the infotype is decoupled, even the HR_INFOTYPE_OPERATION will call these business checks and time constraint checks. Right ? So, what is the major advantage of moving to HR_ECM_INSERT_INFOTYPE ?
    I suppose it has been done to follow the same logic as SAP does in PA-EC component
    For example to adjust a salary in ECM SAP uses FM HR_ECM_ACTIVATE_SAL_ADJUSTMENT meanwhile it uses FM HR_ECM_INSERT_INFOTYPE to update IT0008
    2. Is there some trick to enable HR_ECM_INSERT_INFOTYPE call the user exits of the Infotype ?
    I think there is no standard way to do so...
    It is a good idea to follow the standard enhancement concept for decoupled infotypes, at least I see no problems in moving the old enhancement to a new one.
    Kind regards,
    Sergey

  • Infotype operation (Delete,Insert,Change) Log

    Hello Folks,
    I want to get the log of operation happend on a infotype in my Z Report.
    I know that log can be seen using prog RPUAUD00.
    Iam using the FM's HR_INFOTYPE_LOG_GET_LIST & HR_INFOTYPE_LOG_GET_DETAIL but this is not fetching the Operation or action happend on a infotype.
    Please suggest me the way to fecth it.

    solved on my own
    Below is the code
    REPORT  yinfotypelog.
    TABLES:pcl4.
    INCLUDE rpcblo00.
    INCLUDE rpcbsh00.
    INCLUDE rpcbdt00.
    PARAMETER : p_aedtm LIKE sy-datum.
    DATA: t_change_list TYPE pldoc_key_tab,
    w_change_item TYPE pldoc_key.
    CALL FUNCTION 'HR_INFOTYPE_LOG_GET_LIST'
      EXPORTING
        tclas              = 'A'
        begda              = p_aedtm
        endda              = p_aedtm
      TABLES
        infty_logg_key_tab = t_change_list.
    DATA: t_before TYPE prelp_tab,
    t_after TYPE prelp_tab,
    w_before TYPE prelp,
    w_after TYPE prelp.
    LOOP AT t_change_list INTO w_change_item.
      lo-key-tclas = w_change_item-tclas.
      lo-key-pernr = w_change_item-pernr.
      lo-key-infty = w_change_item-infty.
      lo-key-bdate = w_change_item-bdate.
      lo-key-btime = w_change_item-btime.
      lo-key-seqnr = w_change_item-seqnr.
      IMPORT header belege FROM DATABASE pcl4(la) ID
        lo-key .
      CALL FUNCTION 'HR_INFOTYPE_LOG_GET_DETAIL'
        EXPORTING
          logged_infotype  = w_change_item
        TABLES
          infty_tab_before = t_before
          infty_tab_after  = t_after.
    ENDLOOP.
    LOOP AT t_after INTO w_after.
      CASE w_after-infty.
        WHEN '0001'.
        WHEN '0002'.
      ENDCASE.
    ENDLOOP.

  • Multiple Infotype operation in simulation mode

    Hi All,
    We have a requirement to first delete a infotype record and then add another record in simulation mode or to add multiple new record in simulation. Can you please let me know how to implement this functionality.
    Thanks in advance.
    Srikanta

    Hi Raj,
    <li>I tried the with the below code. It worked for me. Can you please check this way.
    REPORT  ztest_notepad .
    DATA:p0015  TYPE p0015.
    DATA:return LIKE  bapireturn1.
    p0015-pernr = '00909089'.
    p0015-subty = '1500'.
    p0015-endda = '99991231'.
    p0015-begda = sy-datum.
    p0015-lgart = '1500'.
    p0015-betrg = '100.00'.
    CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
      EXPORTING
        number = '00909089'.
    CALL FUNCTION 'HR_INFOTYPE_OPERATION'
      EXPORTING
        infty         = '0015'
        number        = '00909089'
        subtype       = '1500'
        validityend   = '99991231'
        validitybegin = sy-datum
        record        = p0015
        operation     = 'INS'
        tclas         = 'A'
      IMPORTING
        return        = return.
    WRITE return.
    CALL FUNCTION 'HR_EMPLOYEE_DEQUEUE'
      EXPORTING
        number = '00909089'.
    Thanks
    Venkat.O

  • Infotype Operation: Infotype with TABNR and HRT tables

    Hi all,
    Can anyone share the code for updating the infotypes and corresponding HRT tables having TABNR field for example infotype 1018 and HRT1018.
    Thanks,
    Shilpa

    Hi,
    Go through below code
    The HR_INFOTYPE_OPERATION function module is used for the Maintenance of HR infotypes, such as inserting, changing, deleting data etc
    Parameters Explained
    Here is a list of the fm's parameters and how they are used, obviously not all parameters will be used depending on what function you are performing i.e. insert, change, delet etc
    infty - Infotype being updated
    objectid - object id from infotype
    number - Personnel number
    validityend - validity end date
    validitybegin - validity begin date
    record - infotype record values to be updated, inserted etc (will be structure of infortyoe you are updating)
    recordnumber - sequence nunber from infotype record you are updating
    Operation - describes what operation is to be performed
    COP = Copy
    DEL = Delete
    DIS = Display
    EDQ = Lock/unlock
    INS = Create
    LIS9 = Delimit
    MOD = Change
    INSS = Create for Actions is not converted to Change
    nocommit - commit yes('X') / no(' ')
    dialog_mode - dialog mode or not, default is '0'
    Example coding for MOD operation
          CONSTANTS: change TYPE pspar-actio VALUE 'MOD'.
          "This code is requred and locks the record ready for modification
          CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
            EXPORTING
             number = p_pernr.
          "loop at p0071 into p_p0071.  "added to put code in context
          validitybegin = p_record-begda.
          validityend   = p_record-endda.
          p_record-endda = pn-begda - 1.
          CALL FUNCTION 'HR_INFOTYPE_OPERATION'
            EXPORTING
              infty         = '0071'
              subtype       = p_record-subty
              objectid      = P_record-objps
              number        = p_record-pernr     "employeenumber
              validityend   = validityend
              validitybegin = validitybegin
              record        = p_record
              recordnumber  = p_record-SEQNR
              operation     = change
              nocommit      = nocommit
              dialog_mode   = '0'
            IMPORTING
              return        = return_struct
              key           = personaldatakey
            EXCEPTIONS
              OTHERS        = 0.
           "endloop.
         "unlock record after modification
         CALL FUNCTION 'HR_EMPLOYEE_DEQUEUE'
           EXPORTING
            number = p_pernr.
    Example coding for INS operation
          CONSTANTS: insert TYPE pspar-actio VALUE 'INS'.
          "This code is requred and locks the record ready for modification
          CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
            EXPORTING
             number = p_pernr.
          validitybegin = p_record-begda.
          validityend   = p_record-endda.
          p_record-pernr = p_pernr
          p_record-begda =  pn-begda.
          p_record-endda =  validityend.
          p_record-subty = p_SUBTY.  "subtype of new entry
          p_record-SCREF = p_SUBTY.  "subtype of new entry
          "plus populate any other fields you need to update
          CALL FUNCTION 'HR_INFOTYPE_OPERATION'
            EXPORTING
              infty         = '0071'
              subtype       = p_record-subty
              number        = p_record-pernr     "employeenumber
              validityend   = validityend
              validitybegin = validitybegin
              record        = p_record
              operation     = insert
              nocommit      = nocommit
              dialog_mode   = '0'
            IMPORTING
              return        = return_struct
              key           = personaldatakey
            EXCEPTIONS
              OTHERS        = 0.
         "unlock record after modification
         CALL FUNCTION 'HR_EMPLOYEE_DEQUEUE'
           EXPORTING
            number = p_pernr.
    Thanks,
    venkat

  • Calling HR infotype operation in a webdynpro ABAP application

    Hi,
    is it possible to call hr_infotype_operation on an infotype which has custom control to update the infotype.
    Because i have observed that all the 9 series infotypes which have custom control in them are giving short dump when hr_infotype_operation is used on them.
    Please reply
    Divya

    Hi experts ,
    I am trying to use FM HR_INFOTYPE_OPERATION to update infotype 9205,
    for this i need to pass infotype as exporting parameter.
    but i am not able to use INFOTYPES statement to declare
    the infotype in the view method .
    how can i use the FM now in my webdynpro application
    points are sure.
    Thanks,
    Sushant

  • Infotype operation on infotype 0008

    Dear Freinds,
                While using the HR_INFOTYPE_OPERATION for the infotype 0008 , i have one specific problem being encountered .
    the scenario is when iam having multiple Wage types for an employee..then i couldnt upload all the wages types . Only the
    the wage type which is last one is being uploaded .
    ex
    pernr        wage type
    1001          101
                     102
                     103
    so when i see after uploading the data for the employee no
    1001 only the wage type 103 being uploaded but not 101 & 102 at all.
    could any one please let me know what i should do in order to get all the wages types.
    Thanks & regards

    In the record you have to fill diferent fields, if you have more then one wage you have to fill fields LGA01, LGA02, LGA03 and so on. I dont know what your input is (file or database) but i sugest creating the internal table with the same field names and then move-corresponding itab to it0008. If you specify a bit more i can give you an more exact example.

  • DEFAULTING DELIMIT DATE HR INFOTYPE OPERATION

    Is it possible to set a default date for delimiting infotypes in function module HR_INFOTYPE_OPERATION...
    Rewards guarantee

    hi
    to set a default date range for the infotype, lets say you want the latest data then you can pass the following parameters to the function module.
    move sy-datum to VALIDITYEND.
    move 99991231 to VALIDITYBEGIN.
    then executel the function module.
    Thanks.

  • HR-ABAP Any BAPI or Function module to update infotypes 167 & 170

    Hi,
        Can anyone let me know is there any BAPI or Function module to update infotypes 167(Health Plans) & 170(Flexible Spending Accounts).
    Thanks,
    Sandeep

    Hi,
       U can use HR_BEN_CREATE_PLANS internally it calls HR infotype operation as specified by suresh.
    Suresh  : If there are approximately 3000 records to be updated on regular basis do u think is it better to use BAPI's or BDC
    regards
    Vick

  • How to Insert Infotype by FM HR_INFOTYPE_OPERATION

    Hi,
    I am using  HR_INFOTYPE_OPERATION FM to insert and update the infotype.
    I am able to update the data but unable to insert.
    When I use MOD operation the data is updated successfully but for INS operation it is again rather than inserting record it is updated again.
    Please see the following sample code .
    REPORT  ZHR_UPDATE_INFOTYP.
    DATA: G_RETURN LIKE BAPIRETURN1,
          IT_P0003 LIKE P0003,
          G_SUBRC TYPE SY-SUBRC.
    data: l_infty type prelp-infty value '0003',
          l_infty_tab type table of pa0003 with  header line,
          wa_infty type pa0003.
    PARAMETER: P_PERNR LIKE PA0003-PERNR,
              P_MODE TYPE CHAR1.
    start-of-selection.
    IT_P0003-INFTY = '0003'.
    CALL FUNCTION 'HR_READ_INFOTYPE'
      EXPORTING
      TCLAS                 = 'A'
        pernr                 = p_pernr
        infty                 = l_infty
      BEGDA                 = '20110905'
       ENDDA                 = '99991231'
      BYPASS_BUFFER         = ' '
      LEGACY_MODE           = ' '
    IMPORTING
      SUBRC                 = SUBRC
      TABLES
        infty_tab             = l_infty_tab
    EXCEPTIONS
      INFTY_NOT_FOUND       = 1
    read table l_infty_tab index 1 into wa_infty.
    CLEAR:IT_P0003.
    IT_P0003 = wa_infty.
    IT_P0003-ABWD1 = sy-datum - 1.
    PERFORM HR_INFOTYPE_OPERATION USING IT_P0003 P_MODE
                                  CHANGING G_RETURN
                                           G_SUBRC.
    WRITE:/ 'G_SUBRC',G_SUBRC.
    *&      Form  HR_INFOTYPE_OPERATION
          text
    FORM HR_INFOTYPE_OPERATION  USING   P_P0003 STRUCTURE P0003
                                        P_P_MODE
                                CHANGING P_P_RETURN
                                         P_P_SUBRC.
      DATA: L_OPERATION TYPE PSPAR-ACTIO,
            L_KEY LIKE BAPIPAKEY.
      CASE P_P_MODE.
        WHEN '1'.
          L_OPERATION = 'INS'.
        WHEN '2'.
          L_OPERATION = 'DEL'.
        WHEN '3'.
          L_OPERATION = 'MOD'.
        WHEN OTHERS.
      ENDCASE.
    *--Performing Infotype Operations Using FM
      CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
        EXPORTING
          NUMBER = P_P0003-PERNR.
       IMPORTING
         RETURN = P_P_RETURN.
      CALL FUNCTION 'HR_INFOTYPE_OPERATION'
        EXPORTING
          INFTY                  = P_P0003-INFTY
          NUMBER                 = P_P0003-PERNR
          SUBTYPE                = P_P0003-SUBTY
      OBJECTID               = OBJECTID
      LOCKINDICATOR          = LOCKINDICATOR
       VALIDITYEND            = P_P0003-ENDDA
       VALIDITYBEGIN          = P_P0003-BEGDA
      RECORDNUMBER           = RECORDNUMBER
          RECORD                 = P_P0003
          OPERATION              = 'INS'
       TCLAS                  = 'A'
        DIALOG_MODE            = '1'
      NOCOMMIT               = NOCOMMIT
      VIEW_IDENTIFIER        = VIEW_IDENTIFIER
      SECONDARY_RECORD       = SECONDARY_RECORD
       IMPORTING
         RETURN                 = P_P_RETURN
         KEY                    = L_KEY  .
      P_P_SUBRC = SY-SUBRC.
      CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
        EXPORTING
          NUMBER = P_P0003-PERNR.
       IMPORTING
         RETURN = RETURN.
    ENDFORM.                    " HR_INFOTYPE_OPERATION
    Any help will be greatly appreciate

    not solved ,closed sadly

  • Problem in customize infotype data for save

    Hi experts,
    specially for ABAP-hr guys.....Can u pls help me in providing me the correct solution for the below:
    I had created the new infotype with table control now i have to save this table control value means list box value or check box value which is been inside the table control.How i save these values in the table .
    Shall I have to write the query for Insert the data in infotype or some other way.Because if i take the only fields in the infotype insted of table control no need to write the query statement.
    How can i achive this pls help me.
    Thanks
    sandeep

    Hi,
    Just remember one thing never ever fire any SQL query (Inset,Delete,Update) on infotypes it can cause havoc.
    to maintain infotypes SAP has given few standard function modules. use HR-INFOTYPE-OPERATION to maintain infotype data.
    you can also use BDCs  and LSMWs to upload data as well but never a quey unless if u dnt have ne other options and u knw exact impacts of the same.

  • Data upload in infotype 2006 using LSMW

    Dear gurus,
    I am trying to upload data from  a flat file into infotype 2006 using LSMW can you tell me what the standard t code thorugh which infotype 2006 is populated or can please you please guide me procceding forward .
    Thanks in advance

    Hi,
    Please Have a look at the following Link there is Much more information about using FM: HR INFOTYPE OPERATION. This link is the Result of Search From SCN you can also search like this.
    Because you are new to SDN so always Search Before Posting your Query there are lots of Thread having info about most of the Questions
    [HR INFOTYPE OPERATION|https://www.sdn.sap.com/irj/scn/advancedsearch?query=%22hr_infotype_operation%22&cat=sdn_all]
    Hope will help you to solve out your problem,
    Kind Regards,
    Faisal

  • Insert into sap r/3 table

    hi,guruvulu
    this is the program...............to insert the data into sap r/3 table
    but record is not inserting....any commit i have to write in my program?
    Created on Feb 20, 2007
    TODO To change the template for this generated file go to
    Window - Preferences - Java - Code Style - Code Templates
    package comm;
    @author sapusr006
    TODO To change the template for this generated type comment go to
    Window - Preferences - Java - Code Style - Code Templates
    Example2.java
    Property of SAP AG, Walldorf
    (c) Copyright SAP AG, Walldorf, 2000-2005.
    All rights reserved.
    //import java.sql.Connection;
    //import java.sql.PreparedStatement;
    import com.sap.mw.jco.IFunctionTemplate;
    import com.sap.mw.jco.IRepository;
    import com.sap.mw.jco.JCO;
    @version 1.0
    @author  SAP AG, Walldorf
    public class Fm {
      // The MySAP.com system we gonna be using
         static final String SID = "R3";
    // static String query="insert into BAPI_COMPANYCODE_GETLIST values(?,?)";
      // The repository we will be using
      IRepository repository;
                                 //ESTABLISHING A CONNECTION TO SAP
      public Fm()
        try {
          JCO.addClientPool( SID,            // Alias for this pool
                             10,             // Max. number of connections
                             "800",          // SAP client
                             "RFCTEST",      // userid
                             "welcome",      // password
                             "EN",           // language
                             "10.10.88.170", // host name
                             "01" );
           //   Create a new repository
          //    The repository caches the function and structure definitions
          //    to be used for all calls to the system SID. The creation of
          //    redundant instances cause performance and memory waste.
            repository = JCO.createRepository("MYRepository", SID);
        catch (JCO.Exception ex) {
          System.out.println("Caught an exception: \n" + ex);
                               // RETRIEVES AND DISPLAY A  ZHR INFOTYPE OPERATION
      public void salesOrders()
        JCO.Client client = null;
        try {
          // Get a function template from the repository
             //System.out.println("goes to sales order");
          IFunctionTemplate ftemplate = repository.getFunctionTemplate("ZHR_INFOTYPE_OPERATION");
          System.out.println("hai");
               if(ftemplate != null) {
            // Create a function from the template
           JCO.Function function = ftemplate.getFunction();
           JCO.ParameterList paralist=function.getImportParameterList();
                             paralist.setValue("0000000011","PERNR");
                             paralist.setValue("UPD","ACTIO");
                             paralist.setValue("A","TCLAS");
                             System.out.println("hello");
                             paralist.setValue("20061215","BEGDA");
                             System.out.println("hello");
                             paralist.setValue("20061215","ENDDA");
                             paralist.setValue("1","OBJPS");
                             paralist.setValue("LTA","SUBTY");
              System.out.println("SETTING VALUES");
            // Get a client from the pool
              client = JCO.getClient(SID);
              System.out.println("goes to sales order");
              //function.getImportParameterList().setValue("QUERY_TABLE","ZHRJ2EETEST");
                //EXECUTING THE FUNCTION
               client.execute(function);
              System.out.println("after exeucting the function");
                 // NO OF IMPORT PARAMS IT DISPLAY
                             //STRUCTURE
                              JCO.Structure returnStructure =
                                                                              function.getExportParameterList().getStructure("RETURN");
                              String structure=returnStructure.toString();
                              System.out.println(structure);
                                                                                    JCO.Table sales_orders = function.getTableParameterList().getTable("PROPOSED_VALUES");
                             System.out.println("after function");
                               System.out.println("proposed111"+sales_orders.getNumRows());
                                                                                    sales_orders.firstRow();
                                    sales_orders.appendRows(3);
                                 sales_orders.setValue("0582","INFTY");
                                 sales_orders.setValue("P0582-AMTEX","FNAME");
                                  sales_orders.setValue("200.00","FVAL");
                                  sales_orders.nextRow();
                                  sales_orders.setValue("0582","INFTY");
                                  sales_orders.setValue("P0582-JBGDT","FNAME");
                                  sales_orders.setValue("20061215","FVAL");
                                  sales_orders.nextRow();
                                  sales_orders.setValue("0582","INFTY");
                                  sales_orders.setValue("P0582-JENDT","FNAME");
                                  sales_orders.setValue("20061215","FVAL");
                                  System.out.println("proposed222"+sales_orders.getNumRows());
                                                                                    /*for (int i = 0; i <sales_orders.getNumRows(); i++) {
                                  sales_orders.setRow(i);
                                  System.out.println(sales_orders.getString("INFTY"));
                     JCO.Table sales_orders1 = function.getTableParameterList().getTable("MODIFIED_KEYS");
                             System.out.println("modified"+sales_orders1.getNumRows());
                                                                                    sales_orders1.setRow(1);
                               sales_orders1.appendRows(1);
                               sales_orders1.setValue("0000000011","PERNR");
                               sales_orders1.setValue("0582","INFTY");
                               sales_orders1.setValue("LTA","SUBTY");
                               sales_orders1.setValue("1","OBJPS");
                               sales_orders1.setValue("20061215","BEGDA");
                               sales_orders1.setValue("20061215","ENDDA");
                             System.out.println("modified222"+sales_orders1.getNumRows());
                                                                                    System.out.println("execute222"+sales_orders1.getNumRows());
                                                                                    for (int i = 0; i <sales_orders1.getNumRows(); i++) {
                                  sales_orders.setRow(i);
                                  System.out.println("hia"+sales_orders1.getString("SUBTY"));
                                                                                    System.out.println("NO OF ROWS ARE:---"+ sales_orders.getNumRows());
               String fieldName[]=new String[sales_orders.getFieldCount()];
               System.out.println("THE COLUMNS IN THE TABLE ARE:--"+sales_orders.getFieldCount());
               // sales_orders.firstRow();
               //COLUMNS NAMES
               System.out.println(fieldName.length);
               for (int iCtrst = 0;iCtrst < sales_orders1.getFieldCount();iCtrst++) {
                        fieldName[iCtrst] = sales_orders1.getName(iCtrst);
                        System.out.println(fieldName[iCtrst]);
            if (sales_orders.getNumRows() > 0) {
              // Loop over all rows
               do {
                     System.out.println("----
                     //int r=1;
                // Loop over all columns in the current row
                for (JCO.FieldIterator e = sales_orders.fields(); e.hasMoreElements();)
                       JCO.Field field = e.nextField();
                       String compcode=field.getString();
                       //pst.setString(r,compcode);
                       System.out.println(field.getName() + ":\t" + field.getString());
                      // r++;
                   }//for
                    // i=pst.executeUpdate();
                } while(sales_orders.nextRow());
            else {
              System.out.println("No results found");
            if (sales_orders1.getNumRows() > 0) {
                // Loop over all rows
                 do {
                       System.out.println("----
                       //int r=1;
                  // Loop over all columns in the current row
                  for (JCO.FieldIterator e = sales_orders1.fields(); e.hasMoreElements();)
                             JCO.Field field1 = e.nextField();
                         //String compcode=field1.getString();
                         //pst.setString(r,compcode);
                         System.out.println(field1.getName() + ":\t" + field1.getString());
                        // r++;
                                                                                    }//for
                      // i=pst.executeUpdate();
                  } while(sales_orders1.nextRow());
              else {
                System.out.println("No results found");
               System.out.println("modified"+sales_orders1.getNumRows());
               System.out.println("modified"+sales_orders.getNumRows());
            //if
           /* if(i>=1)
                 System.out.println("\t\t\tUpdated ORACLE successfully");
          else {
            System.out.println("FUNCTION MODULE not found in backend system.");
          }//if
        catch (JCO.AbapException ex) {
          System.out.println("Caught an exception: \n" + ex);
        }catch(Exception en){en.printStackTrace();}
        finally {
                   JCO.releaseClient(client);
      protected void cleanUp() {
          JCO.removeClientPool(SID);
      public static void main(String[] argv)
        Fm e=new Fm();
       // e.systemInfo();
        e.salesOrders();
        e.cleanUp();
    output:
    TABLE: MODIFIED_KEYS
    TABLE: PROPOSED_VALUES
    IMPORT         ACTIO
    IMPORT         BEGDA
    IMPORT         DIALOG_MODE
    IMPORT         ENDDA
    IMPORT         LUW_MODE
    IMPORT         MASSN
    IMPORT         NO_ENQUEUE
    IMPORT         NO_EXISTENCE_CHECK
    IMPORT         OBJPS
    IMPORT         PERNR
    IMPORT         PERSG
    IMPORT         PERSK
    IMPORT         PLANS
    IMPORT         SEQNR
    IMPORT         SPRPS
    IMPORT         SUBTY
    IMPORT         TCLAS
    IMPORT         WERKS
    EXPORT          HR_RETURN
    EXPORT          RETURN
    EXPORT          RETURN1
    appending
    NO OF ROWS ARE:---3
    THE COLUMNS IN THE TABLE ARE:--4
    INFTY:     0582
    FNAME:     P0582-AMTEX
    FVAL:     200.00
    SEQNR:     00
    INFTY:     0582
    FNAME:     P0582-JBGDT
    FVAL:     20061215
    SEQNR:     00
    INFTY:     0582
    FNAME:     P0582-JENDT
    FVAL:     20061215
    SEQNR:     00
    PERNR:     00000011
    INFTY:     0582
    SUBTY:     LTA
    OBJPS:     1
    SPRPS:     
    ENDDA:     2006-12-15
    BEGDA:     2006-12-15
    SEQNR:     000

    hi jagadesh,
    ur code is very length to see.
    see the following code ,
    JCO.Function objFunction =
                   this
                        .objIRepository
                        .getFunctionTemplate("BAPI_MATERIAL_AVAILABILITY")
                        .getFunction();
              objFunction.getImportParameterList().setValue(strPlant, "PLANT");
              objFunction.getImportParameterList().setValue(strMaterial, "MATERIAL");
              objFunction.getImportParameterList().setValue(strQuantity, "UNIT");
              this.objClient.execute(objFunction);
              JCO.Structure ret =
                   objFunction.getExportParameterList().getStructure("RETURN");
              String strRetMsg = ret.getString("MESSAGE");
    System.out.println(strRetMsg);  // it will tell whether record is inserted or not
    /*JCO.Function objFunction1 =
                   this
                        .objIRepository
                        .getFunctionTemplate("BAPI_TRANSACTION_COMMIT")
                        .getFunction();
    objFunction1.setValue("",WAIT);
    objClient.execute(objFunction1);*/
    CHECK THE RETURN MSG .IT WILL TELL THE PROBLEM
    give me points if it is useful
    regards
    Guru
    Message was edited by:
            Guruvulu Bojja
    Message was edited by:
            Guruvulu Bojja
    Message was edited by:
            Guruvulu Bojja

  • ESS Change of Address REQUESTED process

    Hi all,
    I had ESS Change of Address working since 2003. Now, I am having issues. Don't know when something changed, but in last year.
    Any answers to any questions would be appreciated and if I need to clarify, by all means, let me know and I will break it down. I see an OSS Server Message coming anyway...
    When I org designed a Change of Address WF in 2003, a user would (Edit OR Delete) a record, then it would create 2 locked records, and send only 1 REQUESTED event to start my WFs. HR would verify new record, unlock new record would automatically delimit old, and all is golden.
    1.
    Via Portal, user Edits address record, it creates 2 locked records in pa0006, and NOW it sends 2 ADDREMPUS->REQUESTED events. I think there is an oss note to stop 2 REQUESTED events in in srv pk 43.
    SAP Note 1565056 - Function HR_EVENT_CREATE is triggered twice
    Corrects WF from being called twice?
    Also, if our HR service center processes the new locked record, it is not automatically delimiting the old record. Can't navigate to it in PA30 because it is already delimited and it is causing a lot of locked records in system. Can't get to it using nav left / right button because it is delimited. From my notes, HR svr cntr should only see the new locked record, verifies, unlocks, then that action is supposed to delimte the old without HR actually unlocking both. This ring a bell?
    2. I have the same issue with Delete, except it only starts 1 WF, when it locks. Still trying to figure out why 'sometimes' it does not lock or raise REQUESTED or locks and no REQUESTED event. Elusive little bugger!
    3. 1 day rule? If HR unlocks all records and then user makes another change on same day as updated by HR personnel, I get a locked record and no REQUESTED event.
    This is not working right!
    OSS notes? And more importantly, is this indeed how this "supposed" to work?
    We are on ecc6 and hr srv pk 604-41.

    So, this is same solution for both PA30 and the call from Portals?
    Oss Note 0001565056:
    When an infotype record is maintained in the transaction PA30, the function
    HR_EVENT_CREATE ('Create Event for Employees and Applicants using Infotype
    Operations') is called twice.

  • Problem in BDC for IT0585

    Dear All,
      I am uploading data into IT0585 through a BDC program and I am getting one problem.
      Even when I was passing Tax Ded. Field as 'X' or  as 'A', the Tick mark is not getting effected asnd it is 
      showing as Proposed values only not as Actual Values.
      I am using HR Infotype Operation to do this and I am passing it in Insert mode.
      Can anyone please help me out in this.
      Thanks in Advance,
    Regards,
    Satya.

    Hi,
    If you want to change the tax exemption flag, you can use the standard report program HINIS800 which will generate the batch program.
    Running this report marks or un-marks the 'Consider actual contributions for tax exemption' entry in the Section 80 Deductions Infotype (585).
    Thanks,
    Rajakumar.S

Maybe you are looking for