Runtime Behavior in a Logical database

Hi all,
I read this articl in SAP's help [http://help.sap.com/saphelp_nw70/helpdata/en/9f/db9bb935c111d1829f0000e829fbfe/frameset.htm] but I didn't know how to use these Subroutines:
FORM par_VAL.
FORM selop_VAL.
FORM selop-LOW_VAL.
FORM selop-HIGH_VAL.
I declared a
parameters p_kunnr like kna1-kunnr.
and I put this subroutine in the include where I put INIT, PBO and PAI subroutines
FORM p_kunnr_VAL.
break-point.
ENFORM.
But the system doesn't execute it!!
Can any one help me to understand why?

I believe that the online help is referring to the forms & events that will be invoked within the logical database code, not within your own code that references the LDB.  For example, have a look at the PNP database (Tcode SLDB) and display the database program source code, and in include  DBPNP_PNPCE_F4_FORMS you'll see pnporgeh-low_val, pnporgeh-high_val etc.
For your own fields that you define in addition to the ones "free" with the LDB, you should be able to just code the value help yourself e.g.
at selection-screen on value-request for p_parm1.
  perform f4_parm1.
form f4_parm1.
  message s398(00) with 'Reached my F4 help here'.
endform.
Jonathan

Similar Messages

  • Runtime error while creating logical database report pgm

    Hi,
        I have started doing pgm on Logical Database report using VBAK,VBAP and MARA. I took VBAK as the root node and VBAP& MARA  as subnodes. The actual requirement is:-  I am trying to place these tables in Application server for perfromance issue using Logical database. Based on sales, the items need to be be displayed. And based on Items, the material data should be displayed.So root node here is VBAK.
    I have created these 3 nodes in SE36 tx.code. when I go back to se36 main screen and under "subobjects"  ,I've selected "selections". I got a dialog box saying that "Nodes for which free selections are to be made". I have clicked on the radio buttons.And then clicked on "transfer" . I am getting a runtime error . Please let me know the solution.
        Please do send me the actual process to goon with logical database reporting.

    Hello
    Logically speaking, a company code can have more than one FSV as long as they share the same chart of accounts.
    When COA is common, the FSV pattern can be designed seperatly to serve the purpose of varied reporting.
    The dump you are getting is a temporary snag. Take a screen shot from SM54 after you execute the report and pass it to BASIS for analysis. They would fix that.
    Reg
    assign points if useful

  • What are structures of logical database.

    hi
    what are structures of logical database.

    Dear Chaitanya,
    The structure of LDB can be divided into three sections:
    >Structure
    >Selection
    >Database Program
    STRUCTURE:
    The structure defines the data view of the logical database. It adopts the hierarchy of the database tables defined by their foreign key relationships. This also controls the sequence in which the tables are accessed. It determines the structure of the other components and the behavior of the logical database at runtime.
    The structure of a logical database is usually based on the foreign key relationships between hierarchical tables in the SAP System. Logical databases have a tree-like structure, which can be defined as follows:
    · There is a single node at the highest level. This is known as the root node.
    · Each node can have one or several branches.
    · Each node is derived from one other node.
    The nodes must be structures defined in the ABAP Dictionary or data types from a type group. Normally, these are the structures of database tables which the logical database reads and passes to the user for further evaluation. However, it is also possible, and sometimes useful, to use ABAP Dictionary structures without an underlying database. For technical reasons, the maximum number of nodes allowed in the structure of a logical database is 300.
    Any executable ABAP program that has a logical database linked to it can contain a GET statement for each node of the structure. When you run the program, the corresponding event blocks are processed in the sequence prescribed by the hierarchical structure of the logical database. If a program does not contain a GET statement for every node of a logical database, the processing passes through all the nodes that lie in the path from the root to the nodes specified by GET statements.
    If you call a logical database using the function module LDB_PROCESS, the depth to which the system reads is controlled by an interface parameter.
    SELECTIONS:
    The selections define a selection screen, which forms the user interface of the executable programs that use the logical database. Its layout is usually determined by the structure. You can adapt the selections to your own requirements and also add new ones. When you link a logical database to an executable program, the selections of the logical database become part of the standard selection screen of the program (screen number 1000). If you call a logical database using the function module LDB_PROCESS, the selections are filled using interface parameters.
    The selections in a logical database are defined using the normal statements for defining selection screens, that is, PARAMETERS, SELECT-OPTIONS and SELECTION-SCREEN. In a logical database, you can also use the additions VALUE-REQUEST and HELP-REQUEST to define specific input and value help. You define the selection screen in a special include program known as the selection include.
    When you write programs using a logical database, you can also add your own program specific selections. The standard selection screen then contains the database-specific selections, followed by the program-specific selections that you have defined.
    When the system generates the selection screen for an executable program, database-specific selection criteria and parameters are only displayed if you have declared an interface work area for them in your program using the NODES or TABLES statement.
    Suppose you have a selection include containing the following lines:
    SELECT-OPTIONS slifnr FOR lfa1-lifnr.
    PARAMETERS pbukrs LIKE lfb1-bukrs FOR TABLE lfb1.
    The selection criterion SLIFNR is linked to table LFA1, the parameter PBUKRS to table LFB1. If the TABLES statement in an executable program (report) declares LFA1 but not LFB1, SLIFNR is displayed on the selection screen, but PBUKRS does not appear.
    The selection screen of a logical database can contain dynamic selections as well as static ones. Dynamic selections are extra, user-defined selections that the user can make as well as using the static selections defined in the selection include. To improve performance, you should always use this option instead of reading more data than you need and then sorting it out in the application program.
    To make dynamic selections available for the node nodeof a logical database, the selection include must contain the following statement:
    SELECTION-SCREEN DYNAMIC SELECTIONS FOR NODE|TABLE node.
    If the node node is requested by the user of the logical databases, the dynamic selections are included in the selection screen. A user can then choose Dynamic selections to enter extra selections for the corresponding fields. If you call the logical database using the function module LDB_PROCESS, you can pass a corresponding parameter. You can use these selections in dynamic statements in the logical database program to read data. The values of the program-specific selection criteria that you defined for a node for which dynamic selections were available are also passed to the logical database. The user can also define the fields for dynamic selections as a selection view for the logical database.
    The selection screen of a logical database is part of the standard selection screen (number 1000) of the executable program to which the logical database is attached. It has a standardized layout - the selection criteria and parameters appear on separate lines in the order in which they were declared. You can change the layout using the SELECTION-SCREENstatement.
    The runtime environment generates the selection screen with number 1000 for every program in which the attributes do not contain a different selection screen version. You can prevent certain input fields from the selection screen of a logical database from appearing on the selection screen by defining selection screen versions with a screen number lower than 1000 in the selection include, and entering this version number in the program attributes. By pressing F4 there, you can get an overview of the selection screen versions defined in the logical database concerned. To define a selection screen version, use the statements SELECTION-SCREEN BEGIN|END OF VERSION. Within these statements you can use SELECTION-SCREEN EXCLUDEto specify fields that you do not want to appear on the selection screen.
    If the attributes of an executable program contain the number of a selection screen version, the version is used in the standard selection screen. Although the input fields that you excluded from the selection screen are not displayed, the corresponding selections still exist, and you can still edit them in the program or by calling the function module LDB_PROCESS.
    DATABASE PROGRAM:
    The database program contains the ABAP statements used to read the data and pass it to the user of the logical database. There is a container for special subroutines into which, amongst other things, the data from the database tables is read. These subroutines are called by the reporting processor in the runtime environment in a sequence that has been predefined by the structure. The database program is determined by the structure and selections and can be adapted or expanded to meet your requirements.
    The name of the database program of a logical database ldbconforms to the naming convention SAPDBldb. It serves as a container for subroutines, which the ABAP runtime environment calls when a logical database is processed. The sequence of the calls and their interaction with the events in executable programs or the function module LDB_PROCESS depends on the structure of the logical database.
    A logical database program usually contains the following subroutines:
    · FORM LDB_PROCESS_INIT
    Called once only before the logical database is processed. It prepares it to be called more than once by the function module LDB_PROCESS.
    · FORM INIT
    Called once only before the selection screen is processed.
    · FORM PBO
    Called before the selection screen is displayed, each time it is displayed. Consequently, it is only called when you use the logical database with an executable program, not with the function module LDB_PROCESS.
    · FORM PAI
    Called when the user interacts with the selection screen. Consequently, it is only called when you use the logical database with an executable program, not with the function module LDB_PROCESS. The interface parameters FNAME and MARK are passed to the subroutine.
    FNAME contains the name of a selection criterion or parameter on the selection screen.
    MARK describes the selection made by the user: MARK = space means that the user has entered a simple single value or range selection. MARK = '*' means that the user has also made entries on the Multiple Selection screen.
    · FORM LDB_PROCESS_CHECK_SELECTIONS
    Called instead of the subroutine PAI if the logical database is called using the function module LDB_PROCESS without a selection screen. This subroutine can check the selections passed in the function module interface.
    · FORM PUT_node
    Called in the sequence defined in the structure. Reads the data from the node nodeand uses the
    PUT node.
    statement to trigger a corresponding GETevent in the ABAP runtime environment. The PUT statement is the central statement in this subroutine: It can only be used within a subroutine of a logical database. The logical database must contain the node node, and the subroutine name must begin with PUT_node. The PUT statement directs the program flow according to the structure of the logical database. The depth to which the logical database is read is determined by the GET statements in the application program or the interface parameter CALLBACK of the function module LDB_PROCESS.
    First, the subroutine PUT_root is executed for the root node. The PUT statement then directs the program flow as follows:
    i. If the database program contains the subroutine AUTHORITY_CHECK_node, the first thing the PUT_node statement does is to call it.
    ii. Next, the PUT statement triggers a GET event in the runtime environment. If there is a corresponding GET nodestatement in the executable program to which the logical database is linked, the associated event block is processed. If the CALLBACK parameter of the function module LDB_PROCESS is filled accordingly, the corresponding callback routine is called.
    iii. The PUT statement directs the program flow
    (a) To the next subroutine of a node that follows directly, if a lower-level node (not necessarily the very next) in the same subtree is requested by GET in the executable program or in the function module.
    (b) To the subroutine of a node at the same level, if the preceding node branches to such a node and if a GET statement exists for such a node in the executable program or the function module.
    The PUT statement in that subroutine starts again at step (i). In the subroutine of the lowest node in a subtree to be processed using GET, the program control does not branch further. Instead, the current subroutine is processed further. When a subroutine PUT_node has been executed in its entirety, the program flow returns to the PUTstatement from which it branched to the subroutine PUT_node.
    iv. When control has returned from a lower-level subroutine PUT_node, the PUTstatement triggers the event GET node LATEin the runtime environment.
    · FORM AUTHORITY_CHECK_node
    Called automatically by the PUT node statement. In this subroutine, you can specify authorization checks for the appropriate node node from the structure of the logical database.
    · FORM PUT_ldb_SP
    Called when the user makes a selection using a search help to process the key chosen in the search help. ldb is the name of the logical database. From this subroutine, you can use the entries in the search help tables to read the relevant entries from the root node root. The processing in the program can then be triggered using PUT root. The subroutine PUT_root is then not called automatically.
    · FORM BEFORE_EVENT
    Called before an event, the name of which is passed in the parameter EVENT. Currently, the EVENT field can only contain the value START-OF-SELECTION, to call a subroutine before this event.
    · FORM AFTER_EVENT
    Called after an event, the name of which is passed in the parameter EVENT. Currently, the EVENT field can only contain the value END-OF-SELECTION, to call a subroutine after this event.
    · FORM par_VAL, selop_VAL, selop-LOW_VAL, selop-HIGH_VAL
    Called when the user calls possible values help for the parameter par or the selection criterion selop. These must belong to the selections in the logical database.
    · FORM par_HLP, selop_HLP, selop-LOW_HLP, selop-HIGH_HLP
    Called when the user calls possible values help for the parameter par or the selection criterion selop. These must belong to the selections in the logical database.
    Example
    Suppose that in the logical database structure, LFB1 is a branch of LFA1.
    and that the following selection criteria are defined in the selection include:
    SELECT-OPTIONS: slifnr FOR lfa1-lifnr,
    sbukrs FOR lfb1-bukrs.
    A section of the database program would then read:
    FORM put_lfa1.
    SELECT * FROM lfa1
    WHERE lifnr IN slifnr.
    PUT lfa1.
    ENDSELECT.
    ENDFORM.
    FORM put_lfb1.
    SELECT * FROM lfb1
    WHERE lifnr = lfa1-lifnr.
    AND bukrs IN sbukrs.
    PUT lfb1.
    ENDSELECT.
    ENDFORM.
    An executable program (report) linked to the logical database could contain the lines:
    GET lfa1.
    WRITE lfa1-lifnr.
    GET lfb1.
    WRITE lfb1-bukrs.
    In this example, the runtime environment calls the routine put_lfa1 after the event START-OF-SELECTION. The event GET lfa1 is triggered by the statement PUT lfa1.
    Once the corresponding event block in the program is complete, PUT lfa1 branches to the subroutine put_lfb1.
    From this subroutine, the event GET lfb1 is triggered in the application program. If LFB1 is the last node to be read, processing resumes with the SELECTloop in put_lfb1. Otherwise, the program flow moves to the subroutine put_node of the next node. At the end of the SELECT loop of the last node, processing resumes in the SELECTloop of the node at the next level up. The example of programming using nested SELECT loops is only used to make the program flow clearer. In a real logical database, you would avoid doing this in order to minimize the number of database accesses.
    Regards,
    Rajesh K Soman
    Please reward points if helpful.

  • Logical Database PGQ structure usage

    Hello Everyone,
    I have a question regarding Logical Database(LDB) usage...How to use the structure defined in LDB. We are using PGQ Logical database in one of custom programs. The structure of the LDB as hierarchy or tree is:
      QALS
          QAVE
          QMFEL
          QAPO
               AFFHD
               QAMV
                    QAMR
                         QASE  ---> From this table
                    QASV
                         QASR  ---> From this table
    and etc
    The code was something like this in the program:
    GET QALS.
    GET QAPO.
    GET QAMV.
    GET QAMR.
    Now, my requirement is to get data additionally from QASE and QASR tables..So, I tried modifying the code according to the hierarchy structure defined in the PGQ LDB(check bold statements):
    GET QALS.
    GET QAPO.
    GET QAMV.
    GET QAMR.
    <b>GET QASE.
    GET QASV.
    GET QASR.</b>
    But in runtime I see that QAMR and QASE is filled up with # data ...I am not sure if is right way to do....Is this the way to use the structure defined in the Logical database? QAMV and QASV lie in the same level of hierarchy and I have to use them to get QASE and QASR data...Let me know, if I am not clear...
    Thanks for taking your time and I appreciate if some one can help me.
    --- Ashley

    Hi Ankur
    You can use program SAPDBPGQ that is program created to test logical database PGQ. Then you can get only part responsible for nodes QALS, QAPO and QAMV
    Best regards

  • Report Parameters with logical database

    Hello
    I have to read some HR infotypes that are provided with the logical database PNPCE.
    Fort his i have written a report that will use my logical database and get some information.
    What i need,are some new input parameters on the screen that are added by my report:
    parameters: p_persnr type person-pernr,
                        p_name type p0002-nachn,
                        p_sname type p0002-vorna.
    The problem is that i do not know how to link these parameters to my logical database reading.
    When i try to call "get <node>" ,my report is not returning anything.
    Is there a way to send  my parameters as selection parameters to the logical database?
    thank you

    The selection screen 1000 is created dynamically during runtime. I doubt change done by SE51 will solve the issue. In fact there is some code which can help on this.
    INITIALIZATION.
    To restrict the range of PERNRs
      PERFORM z_seloption_restrict USING 'PNPPERNR'.
    *&      Form  Z_Seloption_Restrict
    * Restrict range in select option
    *      -->VALUE(SOP_NAME)  Name of select option as string
    FORM z_seloption_restrict USING value(pv_sop_name).
      IF st_restrict-opt_list_tab[] IS INITIAL.
        CLEAR st_opt_list.
        MOVE: 'EQ' TO st_opt_list-name,
              'X'  TO st_opt_list-options-eq.
        APPEND st_opt_list TO st_restrict-opt_list_tab.
      ENDIF.
      REFRESH : st_restrict-***_tab.
    *  READ TABLE st_restrict-***_tab INTO st_asst
    *                        WITH KEY name = pv_sop_name.
    *  IF sy-subrc NE 0.
      CLEAR st_asst.
      MOVE: 'S'         TO st_asst-kind,
            pv_sop_name TO st_asst-name,
            'I'         TO st_asst-sg_main,
            ' '         TO st_asst-sg_addy,
            'EQ'        TO st_asst-op_main.
      APPEND st_asst TO st_restrict-***_tab.
    *  ENDIF.
      CALL FUNCTION 'SELECT_OPTIONS_RESTRICT'
        EXPORTING
          restriction = st_restrict.
    ENDFORM.                    "Z_Seloption_Restrict

  • Logical Database for MD04

    I have been using Logical Database DBM to get the MRP Lists for materials (MD05). Is there a similar Logical database for the MD04 counterpart?
    Problem with MRP lists, the data is static until I run MRP, with MD04, I see the realtime result every time.

    Fernando,
    You are very fortunate to be able to use DBM.  The last system I worked on in which MDTB table was being populated was a 3.1H R/3 system in 2002, MDTB table is by default not populated in recent SAP releases, although as you have seen, this behavior can be changed through configuration, at the expense of MRP performance, .
    I am not aware of any single LDB that contains all the elements of MD04.  As you mention, most of the data in MD04 is extracted or calculated dynamically at run time, and is not stored in any tables in the same way that MRP stores data in MDKP and MDTB.  If you need to see 'current' information, then just use MD04, or create a custom report.
    Best Regards,
    DB49

  • Exclude one field from Logical Database's dynamic selection screen

    Hi Guru,
    I have a requirement to amend a program to exclude the document number field (bsik-belnr) from the dynamic selection-screen of the logical database KDF(Vendor Database) so that the program will not filter according to the document number.
    I have use the below syntax in my zprogram.
      selection-screen exclude select-options: doc-no.
    However I get syntax error "The addition EXCLUDE is only allowed in INCLUDE DBKDFSEL".
    Please advice.
    Best Regards,
    Fung

    The selection part of the logical database defines input fields for selecting data.
              The runtime environment displays these on the selection screen when you run an executable program linked to the logical database.
              Include called DB<ldbname>SEL.
            SELECTION-SCREEN BEGIN OF VERSION ver TEXT-xxx.
                                                                    SELECTION-SCREEN EXCLUDE ... .
                                                    SELECTION-SCREEN END OF VERSION ver.
    Defines a selection screen version (with a three-character name ver ). Between BEGIN OF VERSION and END OF VERSION , you can exclude selection screen objects for the version ver , i.e. remove them from the selection screen with SELECTION-SCREEN EXCLUDE.
              SELECTION-SCREEN DYNAMIC SELECTIONS FOR TABLE dbtab
    If one of these tables is active in the report (i.e. it is declared under TABLES or lies somewhere on the path from the root of the database hierarchy to a table declared with TABLES ), a pushbutton called 'Dynamic selections' appears on the selection screen.

  • How to get the selection parameters from logical database into one of the t

    Hi Sap ABAP Champians,
    How to get the selection parameters from logical database into one of the tab in the tabstrip selection-screen.
    Please help me for this
    Thanks
    Basu

    Hi
    Thanks, that will work, but then I'll have to insert code into all my reports.
    I can see that "Application Server Control Console" is able to rerun a report.
    This must mean that the Report Server has access to the runtime parameters.
    But how?
    Cheers
    Nils Peter

  • Query regarding Logical Database reports

    Hi,
    I have started doing pgm on Logical Database report using VBAK,VBAP and MARA. I took VBAK as the root node and VBAP& MARA as subnodes. The actual requirement is:- I am trying to place these tables in Application server for perfromance issue using Logical database. Based on sales, the items need to be be displayed. And based on Items, the material data should be displayed.So root node here is VBAK.
    I have created these 3 nodes in SE36 tx.code. when I go back to se36 main screen and under "subobjects" ,I've selected "selections". I got a dialog box saying that "Nodes for which free selections are to be made". I have clicked on the radio buttons.And then clicked on "transfer" . I am getting a runtime error . Please let me know the solution.
    Please do send me the actual process to go on with logical database reporting.

    hi,
    look here <a href="http://help.sap.com/saphelp_47x200/helpdata/en/9f/db9bed35c111d1829f0000e829fbfe/frameset.htm">Editing Logical Databases</a>
    pls reward usefuls answers
    thx.
    Andreas

  • Creation of logical database

    hi all.....
    i was created LDB and i created KNA1 as node and in that VBAK as child node and VBAP as child node for VBAK.
    in the selection option i choosed all fields ,
    in the selection i written as
    selection-option: cust no for kna1-kunnr,
    selection-option: ordno for vbak-vbeln.
    and in the source code
    in  KNA1 include..
    select * from kna1 where  kunnr in custno .
    endselect.
    in VBAK include...
    select * from vbak where vbeln in ordno and kunnr = kna1-kunnr.
    endselect.
    in VBAP include...
    select * from vbap where vbeln = vbak-vbeln.
    end select.
    when i checked there is no syntax mistakes but i test that program im gettign runtime error i.e convertion is not possible..........
    please solve my problem...

    Hi Ramprasad,
    your efforts to create a logical database are highly admirable.
    But if you want to stay up-to-date, you might consider using something else. Starting with ABAP 600 release, SAP lists this in the Obsolete Techniques section of ABAP that may appear in older programs but should no longer be used..
    look here: <a href="http://help.sap.com/printdocu/core/Print46c/en/Data/Index_en.htm">http://help.sap.com/saphelp_erp2005vp/helpdata/en/fc/eb2d4d358411d1829f0000e829fbfe/frameset.htm</a>
    Regards,
    Clemens

  • Optimization of DDF logical database

    Hi,
    I'm working on a program that uses DDF logical database to list accounting documents. In order to do this, we use three get sentences to loop into KNB1, BSID and BKPF tables.
    It's something like that:
    GET bkpf.
    gjahr is a range with several values
      CHECK bkpf-gjahr IN gjahr.
    checta is a range with several values
      CHECK bkpf-blart IN checta. "1
    GET bseg.
      CHECK bseg-bschl EQ '01' OR bseg-bschl EQ '11' OR  "2
            bseg-bschl EQ '12' OR bseg-bschl EQ '02'.
    GET gseg.
      PERFORM list_document.
    But my problem with this code is that it takes too much time to generate the report. Doing some performance analysis on execution, I've determined that the problem is with the access to tables of logical database (the "get" sentences).
    So I need to improve report performance, but I don't know how can I do this, maybe if the get returns only the fields I need for execution instead of all table fields runtime would be better, but I'm not very sure if this is possible.
    Another option could be changing GET sentences for SELECT, but looking into LDB code I see that as well as hard to change probably it will be useless.
    So any information about LDB optimization, or how to improve this kind of reports would be very appreciated.
    Thanks in advance
    Best regards

    Hi Raymond,
    first of all thanks for your answer, as you say it'd be better to use selection screen instead of check sentences, and I'll also use "GET bkpf FIELDS ..." to get only those fields that I need.
    I've tested this improvements but I believe that it doesn't decrease too much execution time, so I need to find more solutions to optimize access to logical databases.
    For Rob, maybe you're right and using LDB isn't the best solution, but I got this program done and I can't modify its way of retrieving data, only optimize it. To sum up, I can't erase LDB only optimize its execution.
    So any help in LDB optimization would be very appreciated.
    Thank you very much to both

  • Idea about Logical DataBase

    Hi,
    <u>Can, programming with LDB, be considered as an object programming.. just VB, which is an object programming language.</u>
    That is we r creating an Object directly and using when ever we want. It is different from OOP where we create a class and instantiate the class to create an object.
    My next question is:
    There are 2 transactions which we will create, which are basically same except for a text field.
    <i>First transaction is posting. And the second one is a reverse posting. In the second transaction we have the reason for reverse posting.</i>
    I think in this case we can use LDB and it is the typical scenario where we can apply LDB concept.
    Please evaluate me.
    -Naveen.

    <b>Hi NaveenKumar,</b>
           Logical databases are special ABAP programs that retrieve data and make it available to application programs. The most common use of logical databases is  to read data from database tables by linking them to executable ABAP programs.
           However, from Release 4.5A, it has also been possible to call logical databases using the function module LDB_PROCESS. This allows you to call several logical databases from any ABAP program, nested in any way. It is also possible to call a logical database more than once in a program, if it has been programmed to allow this.
           Logical databases contain Open SQL statements that read data from the database. You do not therefore need to use SQL in your own programs. The logical database reads the program, stores them in the program if necessary, and then passes them line by line to the application program or the function module LDB_PROCESS using an interface work area.
    <b>Tasks of Logical Databases</b>
    1.Reading the same data for several programs.
    2.Defining the same user interface for several programs.
    3.Central authorization checks
    4.Improving performance
    <b>First part of your question</b>
    <b>
         So,if i am not wrong, LDB cannot be completely considered as object oriented programmming.</b>
         I have highlighted some important points above
    For understanding this in detail you can go through the sap help .(if you donot know go through the below path
    sap library
      + Basis Components
          -Abap Programing and runtime enviornment
               -BC-ABAP Programming(noe serach for ldb 
    <b>Now your second part of question</b>.
         In the scenario which you have mentioned we can use ldb.But i am not sure whether it is a typical scenario of ldb.LDB is just a specific access routine to support database access for some application (report generation) needs.We can define a logical database to shorten our ABAP coding .
         Here I am mentioning a link which shows a complete implementation of an LDB.
    <b>http://homepages.wmich.edu/~r2raviko/HandsOnQuest/HO9.doc</b>
         I suppose after going through the  reply(or sap help) and the link mentioned above all your doubts regarding LDB will be cleared.   
    Thanks & Regards
    <b>Pawan P. Khilari
    *Please Mark Helpful Answer</b>

  • Logical Database in Abap Objects

    Hi to All
    I want do it a program report using a Logical Database.
    Is this possible ??? But when I make a GET <node>, occurs the following error:
             "" Statement "ENDMETHOD" missing.  ""
    I'm doing the following:
    CLASS MONFIN IMPLEMENTATION.
           METHOD TRAER_DATOS.
                   GET VBRK.
           ENDMETHOD.
    ENDCLASS.
    Please, somebody tell me how I use the logical database in Abap Objects.
    Thank you very much
    Regards
    Dario R.

    Hi there
    Logical databases whilst of "some use" are not really part of OO.
    If you want to use a logical database in an abap OO program I would create a special class which just does the get data from your DB and pass this either at record or table level.
    Techniques such as GET XXXX LATE aren't really part of any OO type of application since at Object Instantiation time you should be able to access ALL the attributes of that object.
    As far as OO is concerned Logical databases are a throwback to "Dinosaur Technology".
    Since however modules such as SD and FI are still heavily reliant on relational structures (i.e linked tables etc)  then there is still some limited life in this stuff but for OO try and solve it by another method.
    If you really must use this stuff in OO then do it via a FMOD call and save the data in a table which your method will pass back to your application program.
    You can't issue a GET command directly in a method.
    Cheers
    Jimbo

  • Logical Database in Webdynpro

    Hello,
    I have a program in R/3 that is based on a logical database. I don't want to have to write the program all over again in Webdynpro.
    Is there a way to use the logical database in Webdynpro for ABAP.

    Basically WDA calls a FM and then the following help is a good starting point:
    "Calling a Logical Database Using a Function Module"
    http://help.sap.com/saphelp_nw04/helpdata/en/64/237f8cd43711d1950b0000e8353423/content.htm
    Kindly close the thread and award appropriate a points to the answer given.
    Sergio

  • Logical database in adhoc query

    Hello All,
    Can anyone tell me what is the logical database in adhoc query?

    Hi
    When you create a query , you have to select an infoset. Infoset can be considered as a source from which data is populated in the Query Fields.
    Infosets are created from Transaction SQ02.
    There can be four methods through which an Infoset can become a source of data:
    1.  Table join ( By joining two or more tables from Data dictionary)
         example: Joining tables PA0001 and PA0006 on Pernr to get a one resultant dataset
    2. Direct read of Basis Table ( Like PA0001 as a source for data in Infoset )
    3. Logical Database ( A Pre-written Program by SAP that extract data from clusters, tables taking care of authorizations and validity periods)
    Example : Logical database PNP, PNPCE (Concurrent Employement),PCH ( LDB for Personnel Development Data)
    Custom Logical DBs can be created in T_Code SE-36.
    4. Data Retrieval by a Program ( Custom code written by ABAP developers which will collect and process data) . This program has a corresponding Structure in data dictionary and the fields of this structure will be used in query)
    Reward Points, if helpful.
    Regards
    Waseem Imran

Maybe you are looking for

  • 500-281 monitor connection

    Just bought an HP 500-281 and plan to connect it to a Dell UZ2315H multimedia monitor with speakers and webcam.  As I understand it, the 500-281 does not have an HDMI port, but instead an DVI-D or VGA port.  The monitor only has HDMI, VGA, USB 2.0, U

  • OVI NEW VERSION 2.10.87 - DO NOT USE - I REPEAT DO...

    Nokia N97 mini - using both XP [office] Vista [home]. Downloaded new version of ovi suite 2.10.87, completely wiped existing contacts in outlook and then re-installed 30% in the phone and then same 30% to Outlook wiped the rest ......................

  • How to Remove CSS from One Link?

    My links are all the same color. I do not want a color on one link. Is there a SIMPLE way to REMOVE that CSS style from the one link?

  • How to create xpi file for my own extension?

    I have created my own extension and directly added profile extension folder in my system.its working fine. but while installing extension using .xpi file its produce error "Install script not found -204".Please explian me how to create .xpi file for

  • Customer master Upload

    HI, Iam doing Customer master Upload.............My proble is... Some of my Customers are GOvt customers...Lets say..R&B Karnataka....having 50 customer masters in Diff branches.....like R&B(Bangalore/mysore/Etc...) Some times Bangalore branch may gi