Implementation of type-ahead functionality in Endeca JSP Ref application

Hi all,
I am trying to implement the type-ahead functionality in Endeca jsp reference application which Oracle is shipping with it's products. The type-ahead functionality is not present by default. Can anyone help me to implement the same thing or provide sample code/strategy to achieve the desired results ?
Basically typeahead functionality is present in Endeca Information's quick start's search box (EID) but not it JSP reference application .
Waiting for the replies...
Regards,
Hoque

Type-ahead functionality can mean different things and be implemented in different ways. It is usually based on what behavior your user-space would benefit from.
In the commerce space, one popular use-case is to return Category matches based on what a user has started typing. Within Endeca, this boils down to doing a dimension search and having the Category dimension enabled for dimension search. If a user starts typing "cam", the type-ahead would then recommend:
Category: Cameras
You can match on multiple dimensions though, so long as they are enabled for dimension search. For example, if a user starts typing "ca", the type-ahead could return:
Category: Cameras
Brand: Canon
Furthermore, this behavior can be extended by enabling Compound Dimension Search. Compound Dimension Search is enabled via a flag on the dgidx process and on your ENEQuery. It provides the following behavior. If a user searches for "canon cam", it would suggest:
Category: Cameras + Brand: Canon
Clicking on the type-ahead would return the intersection of Category = Cameras and Brand = Canon, eliminating a click if the user is after Canon brand Cameras.
With regards to implementation, it basically boils down to an AJAX call to a service/URL that responds with dimension search results. Then populate an empty <div> with links.
Other scenarios involve returning Product/Record matches instead of Dimension matches.
Edited by: gose on Sep 11, 2012 8:31 AM

Similar Messages

  • Type ahead function in the implict list

    Dear Experts,
    I wonder if type ahead function can be added to search implicit list. I have looked for some info but it seems to me that it is not that simple. What I am looking for the same functionality as in the phone book. Any experiecence?
    Many thanks,
    seyyah

    Your best bet is to do it manually; draw the list yourself and intercept keypresses, interpreting them as required. You're right, it's not that simple!

  • How to implement Type Ahead in Endeca

    Hi
    Can anyone help us as how to implement type ahead search in Endeca ATG.
    Any documents related to it?
    Thanks

    Hi,
    The following links might help you.
    how to implement type-ahead for search
    Implementation of type-ahead functionality in Endeca JSP Ref application
    Re: Problem with endeca typeahead
    (You can even continue the hunt for the answer for this qn that forum as more Endeca experienced persons will be answering there)
    Thanks,
    Gopinath Ramasamy

  • Endeca Type Ahead Search

    Hi,
      We are working on ATG 10.2 with Endeca 3.1.2 integration and are exploring different ways of type ahead searches. The required functionality is to achieve similar suggestions like google search from the catalog data. The Endeca Experience Manager out of box has cartridges which query dimension search for this feature, apart from these do we have any other endeca specific APIs to achieve the same functionality.

    Hi,
    The following links might help you.
    how to implement type-ahead for search
    Implementation of type-ahead functionality in Endeca JSP Ref application
    Re: Problem with endeca typeahead
    (You can even continue the hunt for the answer for this qn that forum as more Endeca experienced persons will be answering there)
    Thanks,
    Gopinath Ramasamy

  • How to implement type-ahead for search

    Hi there,
    I would like to have type-ahead for my endeca. e.g. if user clicks on search box and type"g", it should show all items starts with g.
    How can I do that? I have only three dimensions : PRIRCERANGE, category and flex. And I have 3 properties: description, color, price, uom, sku etc.

    Endeca exposes webservice that can be accessed by xquery library provided by endeca. You can write your own xquery module to fetch dimension query result, format and use as a output to type-ahead.
    Refer below xquery guide to get more details about developing
    your own xquery module,
    http://docs.oracle.com/cd/E28910_01/MDEX.622/pdf/XQueryDevGuide.pdf
    HTH
    -Pravin

  • Question about back button and Onload function in a jsp

    Hi All,
    I am having two jsp pages, say a.jsp and b.jsp. I had a javascript onload function which refreshes all the fields in a.jsp. When i enter some values in a.jsp, based on those values i will be getting the results in b.jsp. Now when i click the back button in b.jsp, it will go to a.jsp again. The problem i am facing is when i click this back button, because of the onload function in a.jsp all the fields in a.jsp are getting refreshed but i want the values which i entered previously in that page. Is there a way that i can do this such that the onload function will not run when i come to that jsp by clicking the back button.
    Also i would like to know why a.jsp is reloading when we click the back button in b.jsp and coming to a.jsp. Is this way how back button will function. I am not sure of it. Plz clarify my doubts..
    Thx.....

    Normally it is not advisable to use the browser back button rather if there is a need we should
    implement the back button functionality.
    For e.g
    In b.jsp
    <head>
    </head>
    <script language="Javascript">
    function fnBack()
      document.frmHeader.action = "a.jsp";
      document.frmHeader.submit();
    </script>
    <form name="frmHeader" method= "post">
    <input type="hidden" name="hdCheckFromB" value="Y">
    <p>
    <input type="button" name="btnBack" value="Back" onClick="javascript:fnBack();">
    </p>
    </form>
    </body>---------------------------------------
    Now , in a.jsp
    <%
    String strBackParameter = requst.getParameter("hdCheckFromB");
    %>
    // Now if strBackParameter is carrying a value "Y" , then we know its from B else body onLoad refresh-------------------------------------
    Hope this helps.
    Thanks

  • 'Read Ahead' functionality in JComboBox

    Hi ,
    Does any body know how to provide 'Read Ahead' functionality in JCombobox ?
    Meaning, if my combo bo has four items say, Apple,Banana,Bag,Cat then
    when I type 'B''A', 'Banana' should get selected. When I type 'G', 'Bag' should get selected.
    This can be a very useful feature to the user. Can anyone please help me out for this ?
    Thanks in advance

    See StanislavL's reply in http://forum.java.sun.com/thread.jsp?forum=57&thread=369042&tstart=60&trange=15
    --A                                                                                                                                                                                                                           

  • Dynamic parameter with 'type-ahead' capability

    Hi,
    How do I create a dynamic parameter that will return a drop down list of over 11,000 records in alphabetic order that I can then select the value I want by starting to type in the value.  For example, in a list of cities of the world I want to select 'London' so I type in an 'L' and the list moves to the first city starting with an 'L', I then type an 'o' and the list goes to 'Lo' etc.
    At the moment only 30 values appear in the drop-down list and I can only enter the first letter.
    I want to use this value as the parent for a cascading parameter.
    Thanks, Colin

    The dynamic parameter does not have the functionality to 'type-ahead' and go to specific values in the list in that manner. The most you can do is go to values that start with a specific letter and scroll through them. This behavior is occurring by design.
    By default, Crystal Reports will only return the first 1000 unique values for a dynamic parameter. This can be changed through a registry entry.
    For information on changing the values retrieved for the dynamic parameter, you can refer to the following Business Objects Note.
    - Go to this link
    https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_ossnotes&query=&adv=true
    - Search for the Note: 1218588
    When using a dynamic parameter, the limit will be a combination of all the values return at each level to reach the total number of records returned. Also the more records that you return to the dynamic parameter, the longer it will take to retrieve the data from the database.

  • Different types of function module

    hi,
    When we create a function module : in one of the tabs we can find
      1 general function module
      2. remote function module
    3. update function module.
    What is meant by update function module and remote function module. can anyone explain me with an example and when shd we opt for 2 and 3.
    thanxs
    hari

    Function Modules:
    Function modules allow you to encapsulate and reuse global functions in the R/3 System.
    They are stored in a central library. The R/3 System contains a wide range of predefined
    function modules that you can call from any ABAP program.
    Unlike subroutines, you do not define function modules in the source code of your program.
    Instead, you use the Function Builder. The actual ABAP interface definition remains hidden
    from the programmer. You can define the input parameters of a function module as optional.
    You can also assign default values to them. Function modules also support exception handling.
    This allows you to catch certain errors while the function module is running. You can test
    function modules without having to include them in a program using the Function Builder.
    Function Groups:
    Function groups are containers for function modules. You cannot execute a function group.
    When you call a function module, the system loads the whole of its function group into the
    internal session of the calling program.
    Calling Function Modules in ABAP:
    To call a function module, use the CALL FUNCTION statement:
    CALL FUNCTION <module>
    [EXPORTING f1 = a 1.... f n = a n]
    [IMPORTING f1 = a 1.... f n = a n]
    [CHANGING f1 = a 1.... f n = a n]
    [TABLES f1 = a 1.... f n = a n]
    [EXCEPTIONS e1 = r 1.... e n = r n [ERROR_MESSAGE = r E]
    [OTHERS = ro]].
    You can specify the name of the function module <module> either as a literal or a variable.
    Each interface parameter <fi> is explicitly assigned to an actual parameter <a i>. You can
    assign a return value <r i> to each exception <e i>. The assignment always takes the form
    <interface parameter> = <actual parameter>. The equals sign is not an assignment operator
    in this context.
    • After EXPORTING, you must supply all non-optional import parameters with values
    appropriate to their type. You can supply values to optional import parameters if you
    wish.
    [email protected]
    34
    • After IMPORTING, you can receive the export parameters from the function module by
    assigning them to variables of the appropriate type.
    • After CHANGING or TABLES, you must supply values to all of the non-optional
    changing or tables parameters. When the function module has finished running, the
    changed values are passed back to the actual parameters. You can supply values to
    optional changing or tables parameters if you wish.
    You can use the EXCEPTIONS option to handle the exceptions of the function module. If an
    exception <e i > is raised while the function module is running, the system terminates the
    function module and does not pass any values from the function module to the program,
    except those that were passed by reference. If <e i > is specified in the EXCEPTION option,
    the calling program handles the exception by assigning <r i > to SY-SUBRC. <r i > must be a
    numeric literal.
    If you specify of ERROR_MESSAGE in the exception list you can influence the message
    handling of function modules. Normally, you should only call messages in function modules
    using the MESSAGE ... RAISING statement. With ERROR_MESSAGE you can force the system
    to treat messages that are called without the RAISING option in a function module as follows
    for various FM's
    http://www.erpgenie.com/abap/functions.htm
    Calling Function Modules
    http://help.sap.com/saphelp_46c/helpdata/en/9f/db98ef35c111d1829f0000e829fbfe/content.htm
    remote enabled fm's are BAPI's
    refer
    Introduction to BAPIs:
    Definition
    The SAP Business Objects held in the Business Object Repository (BOR) encapsulate their data
    and processes. External access to the data and processes is only possible by means of specific
    methods - BAPIs (Business Application Program Interfaces).
    A BAPI is defined as a method of a SAP Business Object.
    For example, the functionality that is implemented with the SAP Business Object type
    "Material" includes a check for the material’s availability. Thus, the Business Object type
    "Material" offers a BAPI called "Material.CheckAvailability".
    Use
    To use a BAPI method, an application program only needs to know how to call the method;
    that is, it needs to know the method’s interface definition. Therefore, when including a BAPI
    invocation in your application program, you only need to supply the appropriate interface
    information.
    A BAPI interface is defined by:
    • Import parameters, which contain data to be transferred from the calling program to
    the BAPI
    • Export parameters, which contain data to be transferred from the BAPI back to the
    calling program
    • Import/export (table) parameters for both importing and exporting data
    Structure
    The BAPIs in the R/3 System are currently implemented as function modules, all of which are
    held in the Function Builder. Each function module underlying a BAPI:
    • Supports the Remote Function Call (RFC) protocol
    • Has been assigned as a method to an SAP Business Object in the BOR
    • Is processed without returning any screen dialogs to the calling application
    Integration
    The architecture enables SAP to change the details of a BAPI’s implementation without
    affecting external applications, which are using the BAPI.
    Advantages of Using BAPIs
    BAPIs are standardized methods of SAP Business Objects that enable customers and third
    parties to integrate their software components with the R/3 System and the Business
    Framework.
    Business Standard
    SAP Business Objects and their BAPIs provide a business content standard, rather than a
    technical interoperability standard; that is, they enable the integration of R/3 and other
    software components on a business level, not on a technical level.
    [email protected]
    97
    Standards Conformance
    BAPIs are being developed as part of the SAP joint initiative with customers, partners, and
    leading standards organizations. BAPIs are becoming a communication standard between
    business systems.
    You can access SAP Business Objects and their BAPIs by using object-oriented interfacing
    technologies such as Microsoft’s COM/DCOM (Component Object Model/Distributed Component
    Object Model).
    The SAP Business Objects already comply with the Open Applications Group (OAG)
    specifications, and, in conjunction with ObjectBridge from VisualEdge, conform to the Object
    Management Group’s CORBA (Common Object Request Broker Architecture) guidelines.
    Stability and Downward Compatibility
    Once a BAPI is implemented and released by SAP, its interface definition and parameters
    remain stable in the long term, thus ensuring that your application program remains
    unaffected by any changes to the underlying R/3 software and data.
    SAP can make any necessary extensions to the BAPIs, for example, additional optional
    parameters, without destabilizing the operation of existing applications and, at the same time,
    can offer the enhanced functionality to new applications.
    Object Orientation
    As methods of the SAP Business Objects, BAPIs provide access to R/3 data and processes
    following an object-oriented programming model. BAPIs can be called using object-oriented
    interfacing technologies, such as COM/DCOM, thus enabling software components from SAP
    and third parties to interact freely.
    Openness
    You can access BAPIs from all development platforms that support the SAP Remote Function
    Call (RFC) protocol.
    BAPI Definition
    A Business Application Programming Interface (BAPI) is a precisely defined interface providing
    access to processes and data in business application systems such as R/3. BAPIs are defined
    as API methods of SAP Business Objects. These business objects and their BAPIs are described
    and stored in the Business Object Repository (BOR).
    A BAPI is implemented, however, as a function module, that is stored and described in the
    Function Builder.
    BAPIs can be called within the R/3 System from external application systems and other
    programs. BAPIs are the communication standard for business applications. BAPI interface
    technology forms the basis for the following developments:
    • R/3 satellite systems
    • Isolating components within the R/3 System in the context of Business Framework
    • Distributed R/3 scenarios using Application Link Enabling (ALE)
    • Connecting R/3 Systems to the Internet using Internet Application Components (IACs)
    • Visual Basic programs as front-end to R/3 Systems
    • Workflow applications that extend beyond system boundaries
    • Customers’ and partners’ own developments
    • Connections to non-SAP software
    • Connections to legacy systems
    [email protected]
    98
    Standardized BAPIs
    Some BAPIs and methods provide basic functions and can be used for most SAP Business
    Objects. Such BAPIs are known as "standardized" BAPIs.
    Using the descriptions below as a guide, verify whether you can implement the BAPI as a
    standardized BAPI.
    Features
    BAPIs for Reading Data
    The following BAPIs provide you with read-only access to data in the associated business
    object:
    • GetList
    With this BAPI you can select a range of object key values, for example, company
    codes and material numbers. To specify appropriate selection requirements the calling
    program must pass the relevant parameters to the interface. The key values selected
    by the BAPI GetList are returned to the calling program in a table, together with other
    useful information, for example, short texts. The key values can then be passed on to
    another BAPI for further processing, for example, the BAPI GetDetail, as listed below.
    • GetDetail
    The BAPI GetDetail uses a key to retrieve details about an instance(s specific
    occurrence) of a business object and returns this data to the calling program.
    • GetStatus
    The BAPI GetStatus is used to query the status of an SAP Business Object, for
    example, to display the processing status of a sales order. This BAPI is used only for
    displaying the status of an object and does not retrieve full details like the BAPI
    GetDetail.
    • ExistenceCheck
    The BAPI ExistenceCheck checks, whether an entry exists for an SAP Business Object,
    for example, whether the customer master has been created. You should implement
    this method as a workflow method and not as a BAPI (RFC capable function module).
    The method CompanyCode.ExistenceCheck of the business object CompanyCode
    (BUS0002) is an example of this. This workflow method is indirectly invoked when the
    calling program instantiates an object, for example, by using
    GetSAPObject("CompanyCode") from within Visual Basic.
    BAPIs for Creating or Changing Data
    The following BAPIs can create, change or delete instances of a business object: If required,
    you can implement these BAPIs so that, several instances of a business object can be created,
    deleted or modified simultaneously in the same call. In such cases "multiple" is added to the
    method name, for example ChangeMultiple.
    BAPIs that can create, change or delete instances are:
    • Create or CreateFromData
    The BAPI Create or CreateFromData creates an instance of an SAP Business Object,
    for example, a sales order. Create is the preferred name for this BAPI. Use the name
    CreateFromData only when a workflow method called Create already exists for the
    business object in question.
    [email protected]
    99
    • Change
    The BAPI Change changes an existing instance of a SAP Business Object, for example,
    a sales order.
    • Delete
    The BAPI Delete deletes an instance of a SAP Business Object, for example, sales
    order.
    BAPIs for Replicating Business Object Instances
    The BAPIs below can be implemented as methods of business objects that can be replicated.
    They enable specific instances of an object type to be copied to one or more different systems.
    These BAPIs are used mainly to transfer data between distributed systems within the context
    of Application Link Enabling (ALE).
    The method below must be implemented for each business object to be replicated.
    • Replicate
    The BAPI Replicate is called in the system, which contains the originals of the business
    object instances to be replicated. It is used to:
    • Identify the business objects to be replicated and to organize the required data.
    • Call the clone methods described below in the receiving system
    Moreover, at least one of the clone methods below must be implemented for each business
    object to be replicated.
    • Clone
    The BAPI Clone is used by a system to replicate one business object on another
    system or to modify one business object that has already been cloned.
    • CloneMultiple
    The BAPI CloneMultiple is used by a system to replicate several business objects on
    another system or to modify several business objects that have already been cloned.
    Defining and Implementing the BAPI
    Purpose
    Various components of the ABAP Workbench are used when you define and implement a BAPI.
    A BAPI is an API method of a business object and is defined as such in the Business Object
    Repository (BOR). However, a BAPI is implemented as an RFC capable function module, which
    is maintained in the Function Builder. The definitions and descriptions of the data structures
    used by the BAPI are stored in the ABAP Dictionary.
    For function modules that implement BAPIs, certain standards and rules must be adhered to
    over and above the standard programming rules for function modules. For example, COMMIT
    WORK commands must not be used in the function modules that a BAPI is based on.
    The following sections guide you through the steps involved in developing a BAPI. The sections
    contain information about the guidelines and conventions that you should adhere to when
    defining and implementing a BAPI. When implementing BAPIs follow the requirements below
    to ensure you achieve consistent behavior and representation of BAPIs as object oriented
    methods of SAP Business Objects.
    [email protected]
    100
    BAPI Programming
    BAPI Definition
    A Business Application Programming Interface (BAPI) is a precisely defined interface providing
    access to processes and data in business application systems such as R/3.
    BAPIs are defined as API methods of SAP Objects. These objects and their BAPIs are described
    and stored in the BOR (BOR).
    Use
    BAPIs can be called within the R/3 System from external application systems and other
    programs. A BAPI call can either be made as an object oriented method call or as a remote
    function call (RFC).
    BAPIs are a global communication standard for business applications.
    Examples of what BAPIs can be used for include:
    • R/3 satellite systems
    • Distributed R/3 scenarios using Application Link Enabling (ALE)
    • Connecting R/3 Systems to the Internet using Internet application components (IACs)
    • Visual Basic programs as front-end to R/3 Systems
    • Workflow applications that extend beyond system boundaries
    • Customers’ and partners’ own developments
    • Connections to non-SAP software
    • Connections to legacy systems
    BOR Definition
    The Business Object Repository (BOR) is the object-oriented repository in the R/3 System. It
    contains, among other objects, SAP Business Objects and their methods. In the BOR a
    Business Application Programming Interface (BAPI) is defined as an API method of an SAP
    Business Object. Thus defined, the BAPIs become standard with full stability guarantees as
    regards their content and interface.
    Use
    With regard to SAP Business Objects and their BAPIs, the BOR has the following functions:
    • Provides an object-oriented view of R/3 System data and processes.
    R/3 application functions are accessed using methods (BAPIs) of SAP Business
    Objects. Implementation information is encapsulated; only the interface functionality
    of the method is visible to the user.
    • Arranges the various interfaces in accordance with the component hierarchy, enabling
    functions to be searched and retrieved quickly and simply.
    • Manages BAPIs in release updates.
    BAPI interface enhancements made by adding parameters are recorded in the BOR.
    Previous interface versions can thus be reconstructed at any time. When a BAPI is
    created the release version of the new BAPI is recorded in the BOR. The same applies
    when any interface parameter is created.
    The version control of the function module that a BAPI is based on is managed in the
    Function Builder.
    • Ensures interface stability.
    Any interface changes that are carried out in the BOR, are automatically checked for
    syntax compatibility against the associated development objects in the ABAP
    Dictionary.
    [email protected]
    101
    Integration
    You should only define a BAPI as a SAP Business Object method in the BOR if the function
    module that the BAPI is based on has been fully implemented. Full access to the BOR is
    restricted to the persons responsible for the objects involved and for quality control.
    BOR-BAPI Wizard
    The BOR-BAPI Wizard assists with creating new BAPI methods in the BOR. It takes you
    through the creation process step by step.
    Transaction Model for Developing BAPIs Purpose
    The transaction model in which BAPIs are used determines how you have to program BAPIs.
    The transaction model described here has been used to develop BAPIs for R/3 Releases 3.1
    and 4.0A.
    Logical Unit of Work (LUW) and Statelessness
    Within the context of this transaction model a transaction represents one processing step or
    one logical unit of work (LUW). When a transaction is called, database operations are either
    fully executed or not at all. The whole transaction must be programmed to be stateless.
    This transaction model requires that:
    • No data is imported that may indirectly affect the result. If a transaction is called more
    than once, each call must have the same result. For BAPIs this means, for example,
    that Set or Get parameters cannot be used. However, you can keep Customizing data
    in a global memory, as this data remains unchanged even if transaction calls are
    repeated.
    • There must be no functional dependencies between two transactions.
    • Either all relevant data has to be changed in the database or none at all.
    Determining the SAP Business Object and Its Key Fields
    You have to identify the relevant SAP Business Object in the Business Object Repository (BOR)
    and determine whether the key fields of the Business Object are relevant for your BAPI.
    A key is defined in the BOR for most SAP Business Objects. This key can consist of several key
    fields. The content of these key fields uniquely identifies one individual instance of an SAP
    Business Object.
    You can differentiate between instance-dependent and instance-independent BAPI methods.
    Unlike instance-independent methods, instance-dependent methods relate to one instance
    (one specific occurrence) of an SAP Business Object type, for example to one specific sales
    order.
    In the case of instance-dependent BAPIs, the key fields of the corresponding SAP Business
    Object must be used as parameters in the function module the BAPI is based on so that the
    associated object instance can be identified. The names of the key fields in the SAP Business
    Object and the corresponding parameters in the BAPI function module must be the same,
    because the name links the key fields to the parameters.
    All the key fields defined in the BOR for the SAP Business Object in question must be used as
    the parameters in the function module.
    Example
    SAP Business Object Creditor has a key field named CreditorId.
    This key field must be defined as a parameter with the name CREDITORID in the function
    modules of the instant-dependent BAPIs for this Business Object.
    [email protected]
    102
    To display the Business Object and its key fields follow the steps below:
    1. Select Tools -> ABAP Workbench -> Overview -> Business Object Browser . The
    business objects are displayed in the order of the R/3 application hierarchy.
    2. Select the required SAP Business Object in the application hierarchy and double click it
    to open it.
    3. To display the Business Object’s key fields, expand the node Key fields.
    Defining the Interface Structure of the BAPI
    In this step you are going to define the BAPI interface, that is, the individual import, export
    and table parameters required for calling the BAPI.
    Caution
    You cannot use Changing and Exception parameters in a function module which implements a
    BAPI.
    Process Flow
    To define the interface parameters, proceed as follows:
    1. Check whether the key fields of the SAP Business Object are required in the interface. The
    key fields of the SAP Business Object are some of the most important BAPI parameters.
    If a key value is to be passed to the BAPI by the calling program, the key field must be set as
    an import parameter in the function module of the BAPI. That way a specific instance of the
    Business Object is identified.
    For example, this could be a customer number (CustomerNo) in the BAPIs Customer.GetDetail
    and Customer.CheckPassword, or the number of a sales document in the BAPI
    SalesOrder.GetStatus.
    For BAPIs that generate instances, for example, the BAPIs Create or CreateFromData, the key
    field of the Business Object should be set as an export parameter in the BAPI function module.
    These BAPIs return one key value, for example, an order number in the BAPI
    SalesOrder.CreateFromData.
    For BAPIs that are class methods a key field is neither set as an import nor as an export
    parameter in the BAPI function module. Class methods are instance-independent and are
    called without the use of key values. Usually they return a table with a selection of key values.
    2. Specify what other data is relevant as import, export or table parameters for the BAPI.
    Every BAPI must have an Export parameter return that reports messages back to the calling
    program.
    Example
    The BAPI to be developed is to read data from the SAP Business Object Creditor. To read
    creditor details, the calling program has to pass the ID of the creditor and the company code.
    The creditor data returned is to include general details, specific details and bank details.
    To map these requirements onto the BAPI interface, the following parameters must be set in
    the function module which the BAPI is based on:
    • The key field CreditorID of the SAP Business Object as an import parameter
    • An import parameter for the company code
    • A Return parameter that reports messages back to the calling program
    • A parameter for general details of the creditor
    • A parameter for specific details of the creditor
    • A parameter for bank details of the creditor
    for BAPI list
    refer www.sapbapi.com
    for FM's refer www.se37.com
    regards
    srinivas
    <b>*reward for useful answers*</b>

  • Types of functions cannot used in PL/SQL

    I'm trying to find out information on what types of functions cannot be used in PL/SQL. Can someone provide me with some directions and assistance?
    Thanks a lot.
    Tony

    its really depends upon your implementation way..
    if u are callinga pl/sql from a trigger, then you can't use any DDL or DML effecting on the same table.
    If u are calling a function then it must return only one value, it should not written more than one value.

  • Types of function Modules

    What are different types of function modules ??
    Please tell in detail about Normal function modules and RFC enabled functional modules ?
    I have searched other threads also but did not get the enough descriptions of the same.
    Please respond !

    Hi Shreya.
    Basically, RFC function modules deal with remote function call which means those ABAP programs can be run/executed from a remote SAP system.
    The best example for implementing the RFC Function modules are the BAPIs.
    In case of normal function module, The call is made within this SAP system.
    RFCs are more often used to establish link between two servers.
    Normal function modules provide linking localy that is with the same SAP server/environment.
    The calling of RFC function module depends on different client-server specifications.
    In case of normal one, the call is same client related call.
    Hence, In short RFC for Global
    and Normal Function module for Local.
    Good Luck.
    Harsh

  • How do i call a function within the jsp?

    Hi,
    What i am doing is now allow a user to type in comment and when the user click on "Add" button, it will call my function and write to a txt file.How can i call a custom jsp function within my jsp page or what is the correct way to do this?
    [My current codes]
    <form name="SubmitEvent" method="post" action="addComment()">
    </form>
    function addComment()
    System.out.println("Entered Add Comment function");
    Thanks for your help!

    You can define a Java Bean (I presume you know the rules to write a Java Bean) and send the read value as parameter to the Bean and then call a function in the Bean from the JSP.
    Contact me if you need more help!

  • JComboBox with type-ahead capabilities?

    Hi, guys:
    I have a JComboBox with a list of string items. Since the list is very long (with several hundred of items), I would like to implement someting like
    the following so that use does not have to scroll down the list to search for an item: when user types the starting letter of an item, it should locate the first item starting with this letter. IE address bar has this kind of type-ahead capability
    I am wondering how I can do the similar thing using Swing JComboBox?
    regards,

    Thanks for your sample, it works.
    Here is the "old code" I am talking about. I slightly modified it and add a main method. It looks fine, but it just does not work. I really have no clue why this one just does not work:
    import java.awt.event.KeyListener;
    import java.util.Vector;
    import javax.swing.ComboBoxModel;
    import javax.swing.JButton;
    import javax.swing.JComboBox;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JTextField;
    public class SelectableComboBox
        extends JComboBox
        protected boolean required;
        protected JLabel fieldLabel;
        public SelectableComboBox()
            super();
        public SelectableComboBox( final boolean required )
            super();
            this.required = required;
        public SelectableComboBox( final ComboBoxModel model )
            super( model );
        public SelectableComboBox( final Object[] objects )
            super( objects );
        public SelectableComboBox( final Vector v )
            super( v );
        public void setEnabled( final boolean b )
            super.setEnabled( b );
            if( this.fieldLabel != null )
                this.fieldLabel.setEnabled( b );
        public JLabel getLabel()
            return this.fieldLabel;
        public void setLabel( final JLabel l )
            this.fieldLabel = l;
        public JLabel createLabel( final String s )
            this.fieldLabel = new JLabel( s );
            return this.fieldLabel;
        public boolean isEquals( final String s )
            if( this.fieldLabel != null && this.fieldLabel.getText() != null
                    && s != null )
                return s.equals( this.fieldLabel.getText() );
            return false;
        public String toString()
            if( this.fieldLabel != null && this.fieldLabel.getText() != null
                    && this.fieldLabel.getText().length() > 0 )
                return this.fieldLabel.getText();
            return super.toString();
        public void setRequired( final boolean req )
            this.required = req;
        public boolean isRequired()
            return this.required;
        public JTextField getTextField()
            int total = getComponentCount();
            JTextField field = null;
            for( int i = 0; i < total; i++ )
                if( getComponent( i ) instanceof JTextField )
                    field = (JTextField) getComponent( i );
                    break;
            return field;
        public JButton getButton()
            int total = getComponentCount();
            JButton button = null;
            for( int i = 0; i < total; i++ )
                if( getComponent( i ) instanceof JButton )
                    button = (JButton) getComponent( i );
                    break;
            return button;
        public void addKeyListener( final KeyListener l )
            JTextField field = getTextField();
            if( field != null )
                field.addKeyListener( l );
        public void removeKeyListener( final KeyListener l )
            JTextField field = getTextField();
            if( field != null )
                field.removeKeyListener( l );
        public static void main( final String[] args )
            JFrame fr = new JFrame();
            fr.setSize(150,75);
              fr.setLocation(400,300);
              fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              JPanel jp = new JPanel();
              SelectableComboBox cb = new SelectableComboBox();
            cb.addItem( "Abc" );
            cb.addItem( "cbs" );
            cb.addItem( "nbc" );
            cb.addItem( "fox" );
            cb.addItem( "wb" );
            cb.addItem( "ycc" );
              jp.add(cb);
              fr.getContentPane().add(jp);
            fr.pack();
            fr.setVisible( true );
    }Appreciate your help.

  • Is Type Ahead search available in OOTB CRS

    After setting up OOTB CRS, I noticed that there is a search project visible in BCC called SearchSuggestions and also type-ahead files for the different sites of CRS have got generated in the 'auxilliary data' folder under localconfig. Does this mean the code required to generate type-ahead xmls is already present in CRS ? I could not find it in the documentation. Since I am planning to implement this in my project, any pointer to the CRS code will be appreciated.

    For an issue with Glims, better to ask the developers of the software.
    You can report a bug here >  http://www.machangout.com
    If you are a Facebook user, you can Like Glims then ask questions directly on their news feed. They will respond.
    For Safari, make sure:  Prevent search engine from providing suggestions is not selected in Preferences > Privacy
    And try this for Safari...
    Open the Finder. From the Finder menu bar click Go > Go to Folder
    Type of copy/paste:   ~/Library/Caches/com.apple.Safari
    Click Go then move the Cache.db file from the com.apple.Safari folder to the Trash.
    Quit and relaunch Safari to test.
    edited by:  cs

  • We had a MacBook Pro stolen from our home when we were out of town and I am pretty sure we never activated the LoJack type of function on it not sure if its called lojack but you get what I am saying is there any way we can activate such  hardware/app now

    to
    We had a MacBook Pro stolen from our home when we were out of town and I am pretty sure we never activated the LoJack type of function on it not sure if its called lojack but you get what I am saying is there any way we can activate such  hardware/app now so we can possibly recover our laptop? Any one who can point us in the right direction that would be great and we would be very grateful. Thanks So Much

    Lojack for laptops - if that is the product you purchased and installed, you will need to read the user manual or contact the manufacturer as it is 3rd party.  You did file a police report right?

Maybe you are looking for

  • Running new 10.8.2 on my pro 2x3 Ghz Quad core with 32 GB DDR2. everything seem to slow and frezze up some time

    I had fresh installed 10.8.2 on eight core with 32 GB of Ram. Everything seem to slow and frezze up sometime.  but running OSX 10.6.8 is fine. Can anyone help System Spec: Mac OSX 10.8.2 Pro: 2x3 Ghz Quad-core Intel Xeon Memory: 32 GB 667 MHz DDR2 Ha

  • Qm system status

    hi, pleas suggest me how to relese in system status in QA32 screen presently it shows a "CRTD CHCR SPRO" and "CRTD CHCR" Regards Maashish

  • Create a PDF file from DWG file

    I would like to know how I can create from a DWG file ( autocad 2006/ 2008) a PDF file, using a computer whitout autocad installated on it. I use already PDF COMPLETE : I can create with this programm a PDF file from a word document but not from a DW

  • Pushbutton in selection screen

    Hi all   i want to deactivate a pushbutton in selection screen.   please help me...its urgent    rewards assured..

  • Laptop always looking for e-printer? Using up all my memory!

    In the task manager window on my computer, I see that there is a process that does not end that keeps trying to find the e-printer when I'm away/undocked near the printer.  Is there a fix out there for this?  A way to turn it off?   I'm running out o