Delete customized enhancement objects issue

Hello everyone!
I'm quite new to SAP, and I was trying to make an enhancement to display additional field in the Product Header area. I did some steps, but at some point wanted to start again and delete enhancement. When I've tried to do that with the button "Delete component enhancement" warning message appeared that enhancement is not empty. Then I went to tc sm34 cluster BSPWDVC_CMP_EXT and deleted controller substitutes and enhancement definition there. After that I wanted to delete obsolete objects from the Z package and that's the point where the issue comes in. When I select, for example, BSP Application or classes created by wizard, and try to delete them, GUI just hangs. No errors, no warnings. If I try to create enhancement again without deleting obsolete objects, it asks me if I want to overwrite the BSP application, that was created with my first attempt. If I choose yes, it hangs in the same manner.
Is there a way to solve this? Please advise.
Thanks in advance,
Alex.

I've actually followed note 1122248, but at the step: "Then go to the BSP components in the ABAP workbench (SE80) that are used to store the enhancements. Search for the obsolete objects and delete them" GUI just hangs.
In addition, even if I try to create new package, or class, or even save a program in a local object GUI hangs. Is it some global problem?
Regards.

Similar Messages

  • Delete customs append structure issue

    Hi Gurus,
    I added a customs append structure with a 'YY'  field in one of LO extractr structures.
    Now I don't need that field, I need to delete that customs append structure and field from the extract structure. I deleted that 'YY' field but I don't how to delete customs append structure which one I created.
    Please advice ?
    Thanks
    Liza

    Goto SE11 -> Give append structure name ..should be ZA*  and select delete option , This will delete append structrure ref. from extract structure.
    Hope it helps..

  • Deleting CRM2007 customer enhancement

    Hi,
    we made a lot of testing of the creation and deleting of view enhancements and its sets  (BSP_WD_CMPWB) of the CRM2007 component IUICOBJD. Now, after deleting all enhancement sets we have the problem that,  when (after creating and assigning an new enhancement set) we only "ENHANCE" the view of  the above descriped component, without any changes (no new customer fields etc.), the browser shows a white screen with the following error:
    Cannot display view IUICMD/MainVS
    An exception occurred during the internal HTTP communication Exception Class  CX_BSP_WD_HTTP_RESPONSE_ERROR 
    Text:  HTTP answer has status 500 
    Additional Info:  Business Server Page (BSP) Error 
    Program:  CL_BSP_WD_STREAM_LOADER=======CP 
    Include:  CL_BSP_WD_STREAM_LOADER=======CM002 
    Source Text Row:  61
    An exception occurred during the activation of target view usageIUICOBJD.MainWindow for the navigation
    An exception has occurred Exception Class  CX_BSP_WD_RUNTIME_ERROR - View usageIUICOBJD.MainWindow could not be bound 
    Method:  CL_BSP_WD_VIEW_CONTROLLER=>BIND_VIEW 
    Source Text Row:  162
    We don't receive this error when showing other "enhanced" components, for example IUICPRP.
    It seems to me that the object IUICOBJD is corrupt because of to many enhancement creation/deletion or that there is still something that must be deleted to "clean up" the component completely. I allready tryed note 1122248 without success.
    Does anybody have any idea how to fix this problem or how to "clean up" completely the component?
    Thanx & best regards,
    Oliver
    Edited by: Oliver Pregler on Apr 14, 2008 4:10 PM

    Hi Oliver,
    Whenever you get en exception from the CL_BSP_WD_STREAM_LOADER class this indicates a problem with a runtime repository. Either there is an error in one or it contains dynamic parts and the corresponding ICF service is inactive.
    In your I suspect two possible reasons:
    1) You enhanced component A with a window/ interface view and used (declared usage) of this enhancement in a component B. Now you deleted the enhancement of A including the new interface view. But this is still used/ referenced by component B. Now when you load B (latest access the usage that points into nirvana), system crashes as usage target does not exist anymore.
    2) You enhanced component A, and re-enhanced it. By any weired reason (copy and paste error, system bug, or similar) the runtime repository of your enhancement still reflects pieces of the previous enhancement. To fix this, copy the original SAP runtime repository and add what you've added (if at all).
    I would assume 1) to be the cause in your case but I'm not 100% sure from your posting.
    Please let us know if this information was useful.

  • Custom Lock objects few question issues

    Hello guys , i create a custom lock object for my z tables ( ZFISGC_MCFG )  which have 3 key field
    MANDT
    ID_EMPRESA
    CL_MVTOSGC
    now in my program doing testing i put a break point after the ENQUEUE_ of the lock object
    then when i go to the sm30 and try modif the value of the entry using the same key i pass to the ENQUEUE_ fm i can modif and save the entry now i am now if that is the right workflow in custom object lock or if i am doing something wrong , this is how i can the enqueue FM:
    call function 'ENQUEUE_EZFISGCOBJECT'
    EXPORTING
       MODE_ZFISGC_MCFG       = 'E'
       MANDT                  = SY-MANDT
       ID_EMPRESA             = p_bukrs
    *   X_ID_EMPRESA           = ' '
    *   _SCOPE                 = '2'
    *   _WAIT                  = ' '
    *   _COLLECT               = ' '
    EXCEPTIONS
       FOREIGN_LOCK           = 1
       SYSTEM_FAILURE         = 2
       OTHERS                 = 3
    if sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    Thanks

    You have to remember that SAP locks are logical locks, not physical. This means that whatever you enqueue is not physically locked from changes. You have to ensure that any program that tries to update your table, first checks these locks and stops the update if it finds that it is already locked.
    Rob

  • Custom Enhancement for IT207

    Hello Gurus!
    This is my first post so bear with me.  I am trying to update IT207 for Maryland (MD) counties using a custom enhancement in HRPAD00INFTYDB.  This is called when an employee changes the MD county in their Permanent Address in ESS.  I've done the same thing for IT210 using FM HR_ECM_INSERT_INFOTYPE with success, but when I use the same FM to update IT207 I get an error.
    ST22 Info                                                                               
    Error analysis                                                                               
    An exception occurred that is explained in detail below.                            
         The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not           
          caught in                                                                               
    procedure "ADD_MESSAGES" "(METHOD)", nor was it propagated by a RAISING clause.     
         Since the caller of the procedure could not have anticipated that the               
         exception would occur, the current program is terminated.                           
         The reason for the exception is:                                                    
         You attempted to use a 'NULL' object reference (points to 'nothing')                
         access a component.                                                                 
         An object reference must point to an object (an instance of a class)                
         before it can be used to access components.                                         
         Either the reference was never set or it was set to 'NULL' using the                
         CLEAR statement.                                                                    
    The program reads IT207 using FM HR_ECM_READ_INFOTYPE, loops at lt_p0207, updates the begda and taxar (Residence Tax Area), then runs FM HR_ECM_INSERT_INFOTYPE to create the new record.  This produces a dump (details above). The message that is being added is from message class PG, 204, and is only a warning. 
    If I only update the taxar (not the dates) the IT207 record is updated with the incorrect dates.
    I am running FMs HR_ECM_INITIALIZE_BUFFER and HR_ECM_ENQUEUE_PERNR prior to reading IT207.
    I have done extensive debugging of the enhancement ... I can manually skip the date check and it works fine.  After a number of debugging sessions, the update works fine ... but only until I log out and re log in.
    Any ideas on how to fix so that ADD_MESSAGES is not called?
    Thanks!
    Carl

    My issue has been solved!
    I had previously declared the message handler as:
            DATA:  lo_msg_handler TYPE REF TO if_hrpa_message_handler.
    The enhancement activate ok until a message was passed.  I found by changing the message handler to:
            DATA:  lo_msg_handler TYPE REF TO CL_HRPA_MESSAGE_LIST.
    If I didn't want to output the messages I could have declared it as:
            DATA:  lo_msg_handler TYPE REF TO CL_HRPA_DUMMY_MESSAGE_HANDLER.
    Next I instantiated the message handler:
           CREATE OBJECT lo_msg_handler.
    This was followed by my existing code:
          Initialize buffer
                    CALL FUNCTION 'HR_ECM_INITIALIZE_BUFFER'
                      EXPORTING
                        message_handler = lo_msg_handler.
          Enqueue Pernr (fixes context issue)
                    CALL FUNCTION 'HR_ECM_ENQUEUE_PERNR'
                      EXPORTING
                        pernr           = <new_p0006>-pernr
                        message_handler = lo_msg_handler
                      IMPORTING
                        is_ok           = lv_is_ok.
    I hope this might help others.

  • Custom Archiving Object: cluster tables

    Hello All,
    I need to create a custom archiving object to archive the content of a cluster table. Does anyone know how to do this? Would you provide me with the steps to do so?
    Thank you in advance!

    Solution
    As of R/3 Release 3.0, the ADK is also delivered to customers as a development tool for archiving programs. The ADK (Archive Development Kit) consists of function modules that help you to develop your own archiving solutions, as well as documentation on how to use the function modules.
    As of Release 3.0, all existing archiving from SAP applications is moved to the ADK.
    If you want to enhance an existing solution, you can do this with the help of the ADK. However, your own solutions may NOT delete or modify data from SAP standard tables.
    Archiving classes are developed by SAP exclusively and must not be used alone but only in connection with an archiving object.
    Archiving objects and archiving classes (and the objects belonging to the class) are not namespace-capable. A namespace as prefix may lead to errors in this case and must therefore not be used.
    For more information on the ADK documentation please see Note 71930.
    The two-days customer training BC670 deals with customer-specific enhancements to data archiving

  • Internal Error in reading a Table of Oracle custom-defined objects.

    Hi,
    We are running into an Oracle internal error when trying to extract data from an OUT parameter of a stored procedure. The OUT parameter is of the type TABLE of Oracle custom-defined OBJECT.
    Any help on this issue will be greatly appreciated.
    Thanks, in advance,
    OraNew
    Program:
    package test;
    import java.sql.CallableStatement;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Types;
    import java.util.ArrayList;
    import java.util.List;
    import oracle.sql.ARRAY;
    import oracle.sql.STRUCT;
    import src.vo.ProfileBank;
    public class TestOracle {
    * @param args
    public static void main(String[] args) {
    try{
    Connection con = getConnection();
    ResultSet rsBalance = null;
    CallableStatement cs =
    con.prepareCall("{ CALL acr_profiles.get_profile_bank( ?, ?, ?)}");
    cs.setLong(1, new Long(133).longValue());
    cs.setLong(2, new Long(29032).longValue());
    cs.registerOutParameter(3,Types.ARRAY,"ACR_USER." + "ACR_PROF_BANK_TAB");
    cs.execute();
    ARRAY array = (oracle.sql.ARRAY) cs.getObject(3);
    System.out.println("length: "+ array.length());
    System.out.println("isConvertible: " + array.isConvertibleTo(Object.class));
    System.out.println("isInline: " + array.isInline());
    rsBalance = array.getResultSet();
    showResultSet(rsBalance);
    } catch (Exception sql){
    System.out.println("Exception "+ sql);
    public static void showResultSet (ResultSet rs) throws SQLException
    System.out.println("ResultSet = "+ rs.toString());
    List profileBanks = new ArrayList();
    while (rs != null && rs.next()) {
    STRUCT struct = (STRUCT)rs.getObject (2); //getting the Internal Error on this line.
    Object[] attribs = struct.getAttributes();
    System.out.println("Bank Alias Id"+ (java.math.BigDecimal) attribs[0]);
    System.out.println("Bank Name"+ (String)attribs[1]);
    System.out.println("Bank set flag "+ (String) attribs[2]);
    ProfileBank pBank = new ProfileBank();
    pBank.setBankAliasId(new Integer(((java.math.BigDecimal) attribs[0]).intValue()));
    pBank.setBankName((String) attribs[1]);
    pBank.setSelBankFlag((String) attribs[2]);
    profileBanks.add(pBank);
    public static Connection getConnection() throws ClassNotFoundException, SQLException {
    Class.forName("oracle.jdbc.driver.OracleDriver");
    System.out.println("Driver loaded");
    // establish a connection
    Connection conn = DriverManager
    .getConnection(
    "jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST=10.3.11.201)(Port=1521)) (CONNECT_DATA=(SERVICE_NAME= aada.a.al)))",
    "acr_user", "acr_user");
    System.out.println("Database connected");
    return conn;
    Console Output:
    Driver loaded
    Database connected
    length: 2
    isConvertible: false
    isInline: true
    ResultSet = oracle.jdbc.driver.ArrayDataResultSet@1f3aa07
    Exception java.sql.SQLException: Internal Error
    Partial Stacktrace obtained from the Eclipse Debug window:
    oracle.jdbc.driver.DatabaseError.throwSqlException(int) line: 292
    oracle.jdbc.oracore.OracleTypeCOLLECTION.initCollElemTypeName() line: 1192
    oracle.jdbc.oracore.OracleTypeCOLLECTION.getAttributeType(int) line: 1225
    oracle.jdbc.oracore.OracleTypeADT(oracle.jdbc.oracore.OracleNamedType).getFullName(boolean) line: 119
    oracle.jdbc.oracore.OracleTypeADT(oracle.jdbc.oracore.OracleNamedType).getFullName() line: 93
    oracle.sql.StructDescriptor(oracle.sql.TypeDescriptor).initSQLName() line: 497
    oracle.sql.StructDescriptor(oracle.sql.TypeDescriptor).getName() line: 392
    oracle.sql.StructDescriptor.getClass(java.util.Map) line: 2003
    oracle.sql.STRUCT.toJdbc(java.util.Map) line: 983
    oracle.jdbc.driver.ArrayDataResultSet.getObject(int, java.util.Map) line: 1379
    oracle.jdbc.driver.ArrayDataResultSet.getObject(int) line: 1198
    test.TestOracle.showResultSet(java.sql.ResultSet) line: 53
    test.TestOracle.main(java.lang.String[]) line: 38
    Environment:
    Database: Oracle 10g (10.2.0.3)
    JDBC Drivers: version 10.2.0.3 (ojdbc14, orai18n)
    Database Server: HP-UX
    Client machine: Windows XP
    <end of thread>

    hi Thom,
    most error relating to table DOKTL are caused by misconfigured network card.
    if this is a "home" system, install a loopback adapter from Microsoft and use IP address 127.0.0.1 and also check "hosts" file for inconsistency. do not use the IP adddress provided by your ISP as it may change.

  • Spark skins, modules and custom themes: linking issues?

    I've read some other threads on this topic that were related to the pre-release versions, but I can't get a complete answer get. I also opened an issue in the bug tracker (https://bugs.adobe.com/jira/browse/SDK-30748), but I'm also posting here, hoping to get some help.
    Basically, I have a bunch of skin classes for the standard Spark controls (e.g. s:Button), as well as other skin classes for my custom SkinnableComponent objects. I need to reuse those skins in many projects, so I created a theme: I put in a Flex Library Project all my skin classes, all related graphical assets, and a defaults.css stylesheet that associates each component with its correct skinClass.
    Now, in my modular application project, what is the correct method to link this compiled theme SWC? I tried different ways, and found some issue for each one:
    In <app>-config.xml, using the <theme> compiler option: this way, modules don't pick up the skinClass correctly (default components use the standard Spark skin, and for custom components I get many skinNotFound errors).. its a pity, I like this method because command-line invocations of MXMLC (build scripts) automatically apply the settings in the config.xml file, while I have to manually keep in sync any additional compiler argument.
    In <app>-config.xml, using the <theme> compiler option and add -compiler.isolated-styles=false: seems to work, but not always.. moreover, the option must be put in additional compiler argument, and not in <app>-config.xml, to have effect... I understand that the config.xml file, in a modular application, is only applied to the main application (or that it must replicated with correct name for each module)?
    In additional compiler arguments, using the theme+= option.. these arguments should be used also for modules compilation, and this seems the most effective solution at the moment (swf size of compiled modules has slightly increased), but skinNotFound errors still happens sometimes, usually going away after a clean build.. maybe this has something with the incremental build performed by Flash Builder and/or optimization of modules?
    Right now, I've tried adding also -keep-all-type-selectors in the compiler arguments to see how it goes...
    Is my scenario supported by Flex 4? How should I setup my environment? I read how to create custom themes in the official documentation (http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7f85.html) and a specific help section exists about using styles with modules (http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-799a.html#WSda 78ed3a750d6b8f1b97f82d12508050aa0-8000), but it only cover simple style sheets, no specific information about compiled themes and the suggested linking strategy.
    I'm using Flash Builder 4.5.1 and compiling with Flex SDK 4.5.0 (both application and theme), the project use some Halo components (e.g. DateField) but almost all components are Spark, and I use Spark component for <s:Application> and <s:Module>. Modules are optimized for the main application, and are loaded using the ModuleManager.
    Thanks in advance for any help.
    Cosma Colanicchia

    I'm not sure Spark components will work if the compatibility mode is set to
    3.

  • HR custom authorization objects

    Is it possible to have more than one custom HR authorization object active at the same time? For example if I need 2 custom variations of P_ORGINCON (I  have some very complex requirements),  is that possible, or am I limited to just 1? Having more than 1 seems to present a problem when I run RPUACG00 to generate include MPAUTCON. It overlys the code generated fo the first cusom object with code for the second object, therefore only allowing cgenerated code to exist for 1 of the objects.
    And one additional question - when I create a custom HR object (one which contains infotype, subtype, persg, persk etc), am  I limitied to only using fields from PA0001 in that object?  If I include some other field that does not exist on PA0001, when I run RPUACG00 it gives me the error "Field xxx is not allowed  in authorization object Z_xxx".
    Many thanks,
        Mike

    One example of a  requiremnet I have is for a manager to have 3 different types  of authority based on when a position was in his org structure. So if a position is currently in his org structure he might have WRITE access to their infotype 2,6,8... for positions that were in his org strucure between 1 and 60 days ago (but are not in his structure as of today) he might have WRITE access to their infotype 2 and 6 and READ access to other infotypes, and for people that were in his structure 61-9999 days ago, he might have only READ  access to all the position's infotype data.
    I was thinking of using 3 disctinct HR authorization objects to cover each of these 3 scenarios, but ran into the issue mentioned above with the generation program RPUACG00.

  • Dunning Block for Customer Disputed objects

    Dear Colleagues,
    I come with what seems to be a simple but interesting requirement from my customer, that I believe can turn out to be an interesting subject for discussion and knowledge exchange.
    My customer requires having the possibility of creating several dispute cases, at different times with different partial amounts and different reasons, related to the same invoice. This is possible only through u201Ccustomer disputed amountu201D. With this functionality I can create several disputes linked to the same invoice, with partial amounts and different reasons.
    The tricky part comes when the requirement also asks for automatic dunning block for the invoice, for each one of the dispute cases. Here I face with two basic problems:
    1) There is only one dunning block at invoice level. (an invoice cannot have several dunning block reasons at the same time.
    2) The automatic document changes through dispute cases is not for "customer disputed objects". It only creates and updates the dunning blocks on invoices that belong to a traditional dispute case ("Disputed Objects").
    Has anyone faced a similar requirement before? any insights or suggestions regarding  this process?
    Thank you very much
    Best Regards,
    Luis Angeli

    Hi Luis,
    Customer disputed objects are meant to capture customer disputes prior to the receipt of payment.
    They can be used to create many disputes for a single invoice.
    However a single invoice can only be disputed once.
    Further to this, if different parts of an invoice are disputed, the dunning block should only be removed once all issues against the invoice are resolved.
    It could be an idea to create a single dispute against an invoice, and then get different people to resolve the different issues.
    You may also want to consider how you are creating your invoices - it could be that you split them down further so there is only a single dispute against an invioce.

  • XI 3.0 Import SCW and importing IR Objects issues

    Hi,
    I am working on SAP XI 3.0.
    I imported IR objects in the repository through .tpz file and all the objects were imported successfully. I was able to view all the objects. Then I manually created the SCW in the SLD.
    I had delete the IR objects and did re import successfully but the objects are not displayed in the list.
    Also when I try to import the SCW it is imported successfully but not displayed in IR.
    Appreciate your support
    Thanks

    Hi,
    I have informed the my basis team on the import issue.
    But I have two queries.
    1.When I import the SWCV version from its going directly to the Changed List -> Closed. And every option is disabled in the context menu when I right click on the SWCV.
    2. How to import the SAP Basis v 7.0 content into Integration repository. When I imported SAP BASIS 7.0  from SLD it went to the Changelist - closed.
    Thanks
    Zak

  • Global list of all custom/developed objects

    Hi all!
    We need to get a list of all custom objects of a SAP systems.
    First time we think accessing TADIR to get all repository objects of the system and after this access, get all atributes for any of the retrieved objects.
    Example:
      To a report, access TADIR and TRDIR dictionary tables. in TADIR use class of development custom or in TRDIR any of the user that don't belongs to SAP.
    But this solution to the problem is very effort and we should access so too many tables for the objects to get their attributes.
    Second time, we think filtering the objects using their namespace with FM TR_CHECK_NAME_CLASS, but this option jumps some objects, like VOFM generated objects or customer exits form VA01 transaction.
    Do any of you know the way of extracting a list of all Custom/developed objects for a System?

    Hi,
    Just check if this suffices.
    REPORT  zobjects no standard page heading
    TABLES:TADIR,TSTC,V_USERNAME,VRSD.
    TYPE-POOLS:slis,VRM.
    TYPES: BEGIN OF ittemp,
           object    LIKE tadir-object,
           obj_name  LIKE tadir-obj_name,
           text      LIKE trdirt-text,
           author    LIKE tadir-author,
           devclass  like tadir-devclass,
           name_text LIKE v_username-name_text,
           tcode like tstc-tcode,
           korrnum like vrsd-korrnum,
           END OF ittemp.
    DATA: itfinal TYPE STANDARD TABLE OF ittemp WITH HEADER LINE,
          wafinal   TYPE ittemp.
    DATA : name  TYPE vrm_id,
          list  TYPE vrm_values,
          value LIKE LINE OF list.
    DATA:itfieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE.
    DATA:itrepid TYPE sy-repid.
    itrepid = sy-repid.
    DATA:itevent TYPE slis_t_event.
    DATA:itlistheader TYPE slis_t_listheader.
    DATA:walistheader LIKE LINE OF itlistheader.
    DATA:itlayout TYPE slis_layout_alv.
    DATA:top TYPE slis_formname.
    DATA:itsort TYPE slis_t_sortinfo_alv WITH HEADER LINE.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETER: PACKAGE LIKE TADIR-DEVCLASS.
    SELECTION-SCREEN END OF BLOCK B1.
    START-OF-SELECTION.
    PERFORM getdata.
    PERFORM alv.
    *&      Form  GETDATA
          text
    FORM getdata.
    read the repository object table and link with username if found
    SELECT tadir~object
            tadir~obj_name
            trdirt~text
            tadir~author
            tadir~devclass
            v_username~name_text
            INTO TABLE itfinal
            FROM tadir
            LEFT JOIN v_username
            ON tadirauthor = v_usernamebname
            LEFT JOIN trdirt
            ON tadirobj_name = trdirtname
            WHERE tadir~devclass = PACKAGE
            "'$TMP'
            AND ( tadirobj_name LIKE 'Z%' OR tadirobj_name LIKE 'Y%' ).
    CHECK sy-subrc EQ 0.
    loop at itfinal.
    *TCODE FROM TSTC
    select single tcode from tstc into (itfinal-tcode) where pgmna =
    itfinal-obj_name.
    *LATEST TRANSPORT REQUEST NUMBER FROM VRSD
    select single korrnum from vrsd into (itfinal-korrnum) where objname =
    itfinal-obj_name.
    modify itfinal.
    endloop.
    delete itfinal where korrnum is INITIAL.
    SORT itfinal BY author object.
    ENDFORM.                    "GETDATA
    *&      Form  ALV
          text
    FORM alv.
    IF itfinal[] IS INITIAL.
        MESSAGE 'No Values exist for the Selection.' TYPE 'S'.
        STOP.
      ENDIF.
      DEFINE m_fieldcat.
        itfieldcat-fieldname = &1.
        itfieldcat-col_pos = &2.
        itfieldcat-seltext_l = &3.
        itfieldcat-do_sum = &4.
        itfieldcat-outputlen = &5.
        append itfieldcat to itfieldcat.
        clear itfieldcat.
      END-OF-DEFINITION.
      m_fieldcat 'OBJECT' ''   'OBJECT' ''       04  .
      m_fieldcat 'OBJ_NAME' '' 'PROGRAM NAME' '' 40 .
      m_fieldcat 'TCODE' ''    'TCODE' ''        20 .
      m_fieldcat 'TEXT' ''     'DESCRIPTION' ''  70 .
      m_fieldcat 'AUTHOR' ''   'AUTHOR' ''       80 .
      m_fieldcat 'DEVCLASS' '' 'PACKAGE' ''      30 .
      m_fieldcat 'KORRNUM' ''  'LATEST TRANSPORT REQUEST' '' 20 .
    itlayout-zebra = 'X'.
    itlayout-colwidth_optimize = 'X'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
          EXPORTING
            i_callback_program      = sy-repid
            is_layout               = itlayout
           i_callback_user_command =  'LIST1'
            i_callback_top_of_page  = 'TOP'
            it_fieldcat             = itfieldcat[]
            i_save                  = 'A'
         is_variant              = ITVARIANT
            it_events               = itevent[]
         is_print                = ITPRINTPARAMS
            it_sort                 = itsort[]
          TABLES
            t_outtab                = itfinal
            EXCEPTIONS
            program_error           = 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.
    ENDFORM.                    "ALV
    *&      Form  TOP
        Top of page for ALV Report
    FORM top.
    DATA:STRING1(70),
         STRING2(70),
         title1(100),
         title2(100),
         count(10).
    describe table itfinal lines count.
    CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
         EXPORTING
            i_list_type           = 0
         IMPORTING
            et_events             = itevent
    EXCEPTIONS
      LIST_TYPE_WRONG       = 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.
    string1 = 'List of Objects in Development Class'.
    concatenate string1 ':' itfinal-devclass into title1.
    walistheader-typ = 'H'.
    walistheader-info = title1.
    APPEND walistheader TO itlistheader.
    string2 = 'Total No.of Objects'.
    concatenate string2 ':' count into title2.
    walistheader-typ = 'H'.
    walistheader-info = title2.
    APPEND walistheader TO itlistheader.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary      = itlistheader
        I_LOGO                   = ''.
        I_END_OF_LIST_GRID       =
       ENDIF.
      CLEAR itlistheader.
    ENDIF.
    ENDFORM.                    "TOP
    *&      Form  list1
          ALV Interactive-
         -->R_UCOMM    text
         -->RS_SELFIELDtext
    FORM list1 USING r_ucomm LIKE sy-ucomm rs_selfield TYPE slis_selfield.
      CASE r_ucomm.
        WHEN '&IC1'.
          IF rs_selfield-fieldname = 'OBJ_NAME'.
            READ TABLE itfinal INDEX rs_selfield-tabindex.
            SET PARAMETER ID 'RID' FIELD itfinal-OBJ_NAME.
            CALL TRANSACTION 'SE38' AND SKIP FIRST SCREEN.
          ELSEIF rs_selfield-fieldname = 'TCODE'.
            READ TABLE itfinal INDEX rs_selfield-tabindex.
            SET PARAMETER ID 'TCD' FIELD itfinal-TCODE.
            CALL TRANSACTION 'SESSION_MANAGER' AND SKIP FIRST SCREEN.
         ENDIF.
      ENDCASE.
    ENDFORM.
    K.Kiran.

  • How to save the instance in standard lead from custom business object

    Hi Experts,
              I am unable to save the instance(Record) in standard Lead business object from custom business object.
    Steps:
    created one custom business object with mandatory fields for creating instance in standard lead.
    in quick create screen i bind  data elements to standard lead business object elements.
    issue:
    when i click on preview i am getting exception as Arguments not found
    can you please tell me that How to save the instance in standard lead from custom business object with step by step .

    Hi Vijay,
    Please refer this link under that mentioned that how to create lead using ABSL code
    Web 2 Lead in SAP Cloud for Customer, step by step - Part 1 - myCloudDoor myCloudDoor
    Under the "Action-CreateLead.absl" mentioned how to create lead
    the above link for convert web 2 lead functionality and under they create lead using web data from ABSL code.
    Regards,
    Mithun

  • Code for Custom Business Object and Adding/Updating Data

    Hi,
    I would like to update/insert data thru Custom Business Object to sql Server.Pls let me know is it possible in MSA.If yes I would appreciate if you can share the code/Process in this forum.
    Thanks and Regds
    Harish

    Harish
    Depending on what data you update you need to do the following:
    If updating SAP tables or customer tables which are an extension of a SAP object like business partner, material, activity or similar:
    1. Create the extension of the data object via the easy enhancement workbench (EEWB). This will also create mapping functionality from MSA to CRM Server and extend the BDocs.
    2. Go to the BDoc modeler. Find the sBDoc for data exchange (type Write BDoc), that contains your object and check whether the new segment is there.
    3. In the Mobile Application Studio (MAS) you can now create a custom business object related to the standard sBDoc mentioned in 2 which is mapped to the new segment. This way the data exchange happens together with the main object
    4. Drag & drop the fields of the new BO to a new tile, and link that tile to the existing main object in the UI via the appropriate relation.
    If you would create a new business object / BDoc for a set of attributes belonging to a main object and not use an extension of the existing BDoc then the data would get its own flow and when replicating it would not come together with the main data. This can lead to data inconsistencies and in surplus effort administrating this data.
    If you have your own objects not related to a SAP object, you can do it the following way:
    1. Create your own table(s)
    2. Create a Write sBDoc on the table(s)
    3. Create BO's on each BDoc segment / table
    4. (as above)
    Hope this helps,
    Kai

  • Want to create custom BOR object

    I want to create a  custom BOR object ZMSN in SWO1 so what value should I put in for these filed
    1: super type
    2:object name
    3:name
    4:program
    5: application

    If you are creating the Custom business object ZMSN then.......put the follwoing values in parameters
    1: super type      :---   Leave it blank ...it is used only when we are enhancing( create a deletgate BO)
                                     standard business object
    2:object name     :-- Give any relevant name like ...ZMSN
    3:name               :-- Give any relevant name like ...ZMSN
    4:program           :--  Give any relevant name like ...ZMSN  
    5: application      :--  Select the relevant functional area for which u r creating it....like 'F' --> finance
                                   'H'> Human resource, 'R'-> if Function area is unknown

Maybe you are looking for

  • How to schedule a background job using the Event concept..?

    Hi Folks, I have a requirement that, I need a schedule a background job. Once after the previous job successful only, new job should get triggered. How to go ahead with this..? For Eg, I am scheduling a job called ZTEST periodically for 1 minute. If

  • Assigning javascript varible value to java variable

    Hi all I want to find screen resolution in one jsp page.That can be done in javascript. (though 'screen.width and screen.height') But is there any way to assign that value to java variable. Any body has the idea? Help me.

  • Error during check of component BP_EEW view ContactRelEL in WCF_CC T.code

    In CRM 7.0 EhP1, Perform Check showed error in UI Configuration that: "Context Node Attribute does not exist: STRUCT.ZZFIELD in Object type: BP_ACCOUNT, Subobject type: ZZI5TEEWCONTACT Role Config Key: <DEFAULT>, Component Usage: <DEFAULT>". Please h

  • How to create non editable fields in OIM?

    Hi , I would like to know about the creation of non-editable fields in OIM. Thanks in Advance.

  • Make photos vertical from horizontal?

    imac   Mac OS X (10.4.7)   Is it possible to change a photo from a horizontal to a vertical? Can I compress the photo in some way so that the 4x6 dimension goes vertically instead of horizontally? Please help--I'm trying to make family photos work in