Doubt about Component binding....

I have a doubt about component binding because I am also using component binding in my application, in my application each page has more than 20 components and each page is session scope, at one point I am getting message like perm space(this is because of lack of memory, actually I have 4gb ram). So my is
"does the jsf creates new object for every reload, because of that my jvm filling with all the objects?".
Another question is "what is the difference between value binding and component bindings?, and drawbacks of each other" please tell me the differences between them up to the very low level(up to memory usage for each approach).
Please clarify this doubt...........

JNaveen wrote:
I have a doubt about component binding because I am also using component binding in my application, in my application each page has more than 20 components and each page is session scope, at one point I am getting message like perm space(this is because of lack of memory, actually I have 4gb ram). So my is
"does the jsf creates new object for every reload, because of that my jvm filling with all the objects?".This is regardless of the component binding. JSF creates a component tree and stores it in the session. With component binding you can link between the backing bean and the component without the need for UIViewRoot#findComponent().
Think your problem lies somewhere else. Use a profiler.
Another question is "what is the difference between value binding and component bindings?, and drawbacks of each other" please tell me the differences between them up to the very low level(up to memory usage for each approach).With the component binding you can get hold of the whole component from the tree in the backing bean. Useful if you want to do a bit more than only holding the component's value, with which you usually do with the value binding.

Similar Messages

  • COMPONENT binding

    Folks,
    does anybody know about detailed descriptions (with samples) of the Component binding feature in JSF? I would like to get my hands on a more detailed example than the one in the J2EE tutorial. The books I've seen so far put their focus on value and method binding but rarely anybody talks about component binding.
    Every (meaningful) response gets a DD!
    Thanks.

    http://jsftutorials.com/components/step5.html
    Probably, it is not very detailed, but with the example :-)
    You can assign the variable with the type of the component in the backing bean. This allows you to manipulate with all bunch on the component attributes.

  • Doubt about SMS SITE COMPONENT MANAGER

    Please, I'm having doubt about my SMS_SITE_COMPONENT_MANAGER, my print:
    Is this a problem or no?How to solve this?In this case not problem how to identify or why display message: Component not Installed by Site Component Manager.
    I read this link: http://www.informit.com/articles/article.aspx?p=1926197&seqNum=5 and I have more confusing about this.Thanks.

    This is normal. No action is required.
    Gerry Hampson | Blog:
    www.gerryhampsoncm.blogspot.ie | LinkedIn:
    Gerry Hampson | Twitter:
    @gerryhampson
    Thanks Hampson,but in your environment do you have same case? These options are : Component not Installed by Site Component Manager? Thanks.

  • JClient Component Binding Demo

    Hi,
    I've a question about the JClient Component Binding Demo.
    If I look at the JUNavbar/JUStatusBar binding demo, and the Panel Binding pane,
    I see NO way how to add a new Line Item if the Order doesn't have already one.
    I understand that the problem is because no one of the Line Item entry fields gets the focus.
    What was your intention on how to add a row in an emty table?
    Thanks

    One way folks on OTN reported they've worked around this issue is to add an combo implementing iterator picker on the NavBar. Then when they end up in this situation, the users can select the right iterator and add rows to it by binding the navbar to that iterator (which is not focus-able due to no rows in it in a table display).
    Another way I would suggest is to trap a mouse-click event on the table and if clicked upon, make the navbar focus on the iterator that the table was bound to.

  • Component binding setting

    Hi, I am trying to understand the setting of component binding during the JSF phases. From the specification, I understand the following (JSF 1.2, Section 2.2.1) Restore View -
    "For each component in the component tree, determine if a ValueExpression for “binding” is present. If so, call the setValue() method on this ValueExpression, passing the component instance on which it was found."
    So, from the above, it seems that after every Restore View phase for a ViewId, setXX() for the component binding should be called. However, at runtime, I dont see this. Is my understanding correct? Excatly, when will the setXX() for the component bindings be called?
    Thanks.

    Hi , thanks for your response. I had done some tests, before posting my original question. Here were my observations - I had created two views View 1 and View 2. From View 1, I can navigate to View 2 and vice versa. XXX is a component binding in View 1.
    Managed bean is on Pageflow Scope.
    1) When View 1 is launched the first time, I see that getXXX() is called, I return null here, so, setXXX() called initializing the component. This happens in the Restore View phase of View 1.
    2) Then, I navigate to View 2. Again, I see that setXXX() of View 1 is called and then View 2 is initialized. Again, this is in the Restore View phase, but that of View 2.
    3) I then navigate back to View 1. I dont see any setXXX() call at this time. Why is setXXX() not called in the Restore View phase?
    4) I then again navigate back to View 2. I see setXXX() again during Restore View phase of View 2.
    My understanding of this is that the UIViewRoot is initialized when the View is first shown. During its initialization (createView in ViewHandler), the components are initialized and component bindings on the managed beans are set. This is done in step 1. UIViewRoot may then be stored in the session (but I dont think this is mandated by spec and probably is implementation dependent). During a subsequent postback (as in step 3), UIViewRoot is retrieved by the ViewHandler (restoreView), and setXXX() should be called here again. After this it continues on with the remaining JSF phases. RestoreView itself may retrieve UIRootView from the session, or probably build it up using the State handling mechanism - StateHolder and its cronies.
    My confusion is - Why is setXXX() called during Restore View phase of View 2? At this time, it should not even bother about the UIViewRoot going out.
    Thanks again for your patience explaining the finer things of ADF/JSF.
    Kind regards.
    Edited by: user10624779 on Oct 11, 2010 8:37 PM

  • Component binding table

    Hi,
    can someone give me an example of component binding with dataTable?
    In my app i must use this, because i don't know number of columns - so i must make table in my java code. Each column consists of checkbox and inputText and under the table is submit button which submits entire table. Values of checkbox and inputText in one column are bind to BackBean (this bean has selected value and price value).
    In my jsp, i use something like this:
    <h:dataTable var="table" binding="#{model.table}" value="#{model.data}" />
    I'm working on this for a week and I stil don't know how to do it.
    Thanks in advance,
    jarin

    Hi,
    yes U understand my problem. I have in my jsp only:
    <h:dataTable binding="#{model.table}"/>
    <h:commandButton action="#{model.set} value="submit"/>
    I use client state saving,
    model is managed bean ModelBean in request scope
    my two classes, which do all work - they should work if you get them into any app, I removed any unnecessary pieces of code:
    /* class ModelBean -------------------------------*/
    package backing.divadlo;
    import backing.divadlo.SedadloBack;
    import javax.faces.component.html.*;
    import java.util.*;
    import javax.faces.el.ValueBinding;
    import javax.faces.context.FacesContext;
    import javax.faces.component.*;
    public class ModelBean  {
      private UIData table;
      private ArrayList data;
      private int colNumber, rowNumber;
      public ModelBean() {
        table = new UIData();
        data = new ArrayList();
        colNumber = 0;
        rowNumber = 0;
      public void setData(ArrayList d) {
        this.data = d;
      public ArrayList getData() {
        return this.data;
      public void setTable(UIData tbl) {
        this.table = tbl;
      public UIData getTable() {
        init(); // normaly I call init() in another bean, if I select which auditorium will be shown
        return this.table;
      public void pripravData() {
        data.clear();
        // prepair of auditorium - get rows and number of cols
        rowNumber = 2;  // after all works, here will be rows of auditorium
        colNumber = 20; // seats in row, each row can have another number of seats
        // loop trough rows of auditorium
        for (int i = 0; i < rowNumber; i++) {
          ArrayList novaRada = new ArrayList();  // new row with seats
          // insert seats (SedadloBack) into new row
          for (int k = 0; k < colNumber; k++) {
            SedadloBack sedB = new SedadloBack(); // new seat
            sedB.setRada(k);      // set number of row
            sedB.setSedadlo(k);   // set number of seat
            sedB.setProdej(true); // is free or not
            sedB.setPrice(k);     // set price
            // insert seat into new row
            novaRada.add(sedB);
          // insert new row into auditorium
          data.add(novaRada);
      public void init() {
        FacesContext context = FacesContext.getCurrentInstance();
        List list = table.getChildren();
        list.clear();
        pripravData();
        if(data != null) {
          table.setValue(data);
          table.setRows(data.size());
          table.setRowIndex(0);
          table.setVar("dTable");
          UIColumn column;
          HtmlInputText priceText;
          HtmlSelectBooleanCheckbox checkbox;
          HtmlOutputText br1,br2,cislo;
          for (int i = 0; i < colNumber; i++) {
            column = new UIColumn();                    // new column
            priceText = new HtmlInputText();            // input for price
            checkbox = new HtmlSelectBooleanCheckbox(); // is free or not
            br1 = new HtmlOutputText();                 // <br>
            br2 = new HtmlOutputText();                 // <br>
            cislo = new HtmlOutputText();               // position of seat in row
            br1.setValue(new String("<br />"));
            br2.setValue(new String("<br />"));
            br2.setEscape(false);
            br1.setEscape(false);
            // prepare outText of position in row
            String cisloExp = "#{"+table.getVar()+"["+i+"].sedadlo}";
            ValueBinding vbCislo = context.getApplication().createValueBinding(cisloExp);
            cislo.setValueBinding("value",vbCislo);
            // prepare checkbox - if seat is free or not
            String expCheckbox = "#{"+table.getVar()+"["+i+"].prodej}";
            ValueBinding vbCheckbox = context.getApplication().createValueBinding(expCheckbox);
            checkbox.setValueBinding("value",vbCheckbox);
            // prepare inputText - price of seat
            priceText.setTitle("Cena");
            priceText.setStyleClass("cenaInput");
            String vbSIn = "#{"+table.getVar()+"["+i+"].price}";
            ValueBinding vbI = context.getApplication().createValueBinding(vbSIn);
            priceText.setValueBinding("value", vbI);
            // prepare column
            column.getChildren().add(cislo);
            column.getChildren().add(br1);
            column.getChildren().add(priceText);
            column.getChildren().add(br2);
            column.getChildren().add(checkbox);
            list.add(column);
      public String set() {
        // for now just print out price with position of seat
        for(int j=0; j < table.getRowCount(); j++) {
          table.setRowIndex(j);
          if(table.isRowAvailable()) {
            ArrayList data = (ArrayList)table.getRowData();
            for(int i=0; i < data.size(); i++) {
              SedadloBack sedadlo = (SedadloBack)data.get(i);
              System.out.println(sedadlo.getRada()+"/"+sedadlo.getSedadlo()
                                 +" - "+sedadlo.getPrice());
        return "null";
    /* class SedadloBack -------------------------------*/
    package backing.divadlo;
    import java.io.Serializable;
    public class SedadloBack implements Serializable {
      private int id;
      private int rada;
      private int sedadlo;
      private int price;
      private boolean prodej;
      public void setId(int id) {
        this.id = id;
      public int getId() {
        return this.id;
      public void setRada(int rada) {
        this.rada = rada;
      public int getRada() {
        return this.rada;
      public void setSedadlo(int sedadlo) {
        this.sedadlo = sedadlo;
      public int getSedadlo() {
        return this.sedadlo;
      public void setProdej(boolean pr) {
        this.prodej = pr;
      public boolean getProdej() {
        return this.prodej;
      public void setPrice(int price) {
        this.price = price;
      public int getPrice() {
        return this.price;
    } I realy appreciate your help, this is my first app in jsf - i make it as my dissertation and I am starting be little late.
    If you need more info or code i give you what you want. Preparing war is little complicated - I use postgres and hibernate and i doubt if you want install this db only to test my case.
    jarin

  • Doubts about Temporary Table.

    Hi,
    I am using Temporary Table.
    But the insert command takes too much time compare to insert in Normal table.
    One more doubt about Temporary Table is:
    Suppose there are two different users. They connect and first insert rows of their use .Now they go for select.
    Does select of one user goes to check the rows of second user also or the temporary table treats 2 users data as inserted in 2 different tables?
    Help!!!

    Nested structure (not deep - deep means their a string or a table as a component)
    TYPES: BEGIN OF tp_header_type,
             BEGIN OF d,
               empresa TYPE ...
               num_docsap TYPE ...
            END OF d,
            awkey TYPE ...
          END OF tp_header_type.
    matt

  • Doubt about Fitting

    Hi everybody 
    i have a little doubt about the "Linear Fit .vi"; i see the help page and i undestand that it takes a set of value X and Y and makes out the best fitting of the Y value. I tried to use it in a project and:
    In the first block (the upper one) it takes a data set (X,Y) and makes the fit..ok!
    In the second one (the lower one) it takes a ramp signal + noise data in the Y input and just the ramp signal in the X input.. how can he makes the fit? 
    It takes the same signal, how can it read the x value and the y value ? If i have a waveform in "dynamic data set" how can i separate the X and Y component? can i put the same signal in the X and Y input ?
    I hope to be clear.. i just want to know how can the .vi read several kind o input.
    Thank you
    Nigeltorque
    Attachments:
    STATIC ResponseMOD.vi ‏30 KB

    I post the attachement in older version too..
    Nigeltorque
    Attachments:
    STATIC ResponseMOD 8.6.zip ‏39 KB

  • Doubt about webDynpro windows

    HI Experts,
    I have small doubt about webdynpro windows.
    1) If i have only one application in webdynpro DC , what is use of using multiple windows.
    2) If i have multiple windows in a DC which has single application, how i can i navigate between windows?
    3)if i have multiple applications with multiple windows, then how will i know which window belongs to which application.
    4)If i have multiple windows and multiple applications, then how can we navigate between windows? It means navigation betn windows and navigation betn applications...?
    Please explain me, i browsed in SDN, i found the threads but they are explaining my doubts exactly
    Thanks in advance.
    Regards,
    Bala

    Hi.
    Simply the Window is part of Web Dynpros public interfaces, and are needed whenever you want to access a graphic component from outside of your web dynpro component.
    Web Dynpro uses the MVC design pattern. Model View Control.
    In order to reuse components, Web Dynpro exposes the View and Controller to the outside world.
    Internally the View and Control in MVC is just that:
    Views
    Component Controller and Custom Controller.
    Externally the View and Control are exposed as
    Interface Controller and Interface Views. The Interface View is the external part of a Window. (When a Window is created, an associated Interface View is created).
    So, to be able to actually see anything from a Web Dynpro application. The browser would access a Interface View that opens the Window with some view in it.
    An other example is that you have two Web Dynpro projects, where the first one have a View with an integrated view from the second Web Dynpro. The integration would be through the Interface View again.
    Internally in your Web Dynpro component, you can use the views directly (i.e. navigate between views).
    Opening an external popup would generate a new browser window. In order for the new browser window to display anything it would need to access an interface view. That's why you need to create a separate Window when you want to use a popup.
    Regards.
    Edited by: Mikael Löwgren on Feb 15, 2008 12:58 PM

  • Doubtful about security of oracle's Wrap code!

    Dears
    I am little bit doubtful about security of oracle's own Wrap code like package "sys.utl_smtp" .
    Someone can easily Unwrap it without source code?
    How it possible? whats your opinion about this? please can anybody clear me.
    Regards
    Abdul Halim
    Edited by: Abdul Halim on May 31, 2013 8:14 PM

    Halm, you are operating under the mistaken belief that your code deserves hiding from the customer and competitors to begin with. Why? All you are doing in the code is performing DML. It is not like your application is the only one in the world that performs its function.
    If someone really wanted to they could figure out what your code is basically doing just by looking at the table and file data before and after running the code. By careful manipulation of the data and studying the results they can figure out what is being done and then develop their own specific of the how it is done. One can also look at Oracle's internals as the code is being processed both using Oracle provided views and direct peaking at Oracle's shared memory. Then there are tools like sql trace which will captute the SQL, waits, and binds for the process.
    But all of this is kind of mute in that most shops do not have the talent to write their own unwrapper nor has the shop purchased an unwrapper so if you wrap the code it is going to be secured from most users and competitiors. I would just recommend that potential customers not purchase your product becuase the customer is going to need access to the code either for debugging (bugs will exist in the code) or tuning. Likely both.
    IMHO -- Mark D Powell --

  • Doubt about  a null value assigned to a String variable

    Hi,
    I have a doubt about a behavior when assigning a null value to a string variable and then seeing the output, the code is the next one:
    public static void main(String[] args) {
            String total = null;
            System.out.println(total);
            total = total+"one";
            System.out.println(total);
    }the doubt comes when i see the output, the output i get is this:
    null
    nulloneA variable with null value means it does not contains a reference to an object in memory, so the question is why the null is printed when i concatenate the total variable which has a null value with the string "one".
    Is the null value converted to string ??
    Please clarify
    Regards and thanks!
    Carlos

    null is a keyword to inform compiler that the reference contain nothingNo. 'null' is not a keyword, it is a literal. Beyond that the compiler doesn't care. It has a runtime value as well.
    total contains null value means it does not have memory,No, it means it refers to nothing, as opposed to referring to an object.
    for representation purpose it contain "null"No. println(String) has special behaviour if the argument is null. This is documented and has already been described above. Your handwaving about 'for representation purpose' is meaningless. The compiler and the JVM don't know the purpose of the code.
    e.g. this keyword shows a hash value instead of memory addressNo it doesn't: it depends entirely on the actual class of the object referred to by 'this', and specifically what its toString() method does.
    similarly "total" maps null as a literal.Completely meaningless. "total" doesn't 'map' anything, it is just a literal. The behaviour you describe is a property of the string concatenation operator, not of string literals.
    I hope you can understand this.Nobody could understand it. It is compete nonsense. The correct answer has already been given. Please read the thread before you contribute.

  • Component binding inside h:dataTable fails

    Hi,
    I'd like to create a component binding for each commandLink to a distinct child bean inside an h:dataTable like so:
    <h:dataTable value="#{parent.children}" var="child">
        <h:column>
            <h:commandLink binding="#{child.command1}" value="do it to it for #{child}" action="#{child.action}"/>
        </h:column>
    </h:dataTable>But whenever I try to render this page I get an exception stating that "child is null" and binding cannot be performed. If I remove 'binding="#{child.command1}"', however, everything works fine. I guess this is happening because 'var="child"' in h:dataTable gets evaluated after bindings are created. How can I get around that - I really need to be able to refer distinctly refer to UIComponents in each row.
    Confused...
    thanks
    -nikita

    I created a seperate class to handle the requests ActivationRequestBuilder and put the code in there .
    if you want to refer to each row in the backing bean .
    create a variable of type HtmlDataTable .
    private HtmlDataTable tenantDataTable;
    set up accessor and mutator methods for this variable.
    In your jsp in the DataTable
    <h:dataTable binding="#{activationRequestBuilder.tenantDataTable}"
    <h:commandLink title="Delete Tenant section"
    immediate="true" action="#{activationRequestBuilder.deleteTenantLocationSection}">
    public String deleteTenantLocationSection(){
    (TenantLocationRecordBean) this.getTenantDataTable().getRowData();
    This is just snippets of code but you should get the idea of what I have done here .I had multiple sections in a page so each row was a TenantLocationRecordBean .

  • h:dataTable with component binding not rendering

    Hello,
    I am developing an application with several ad-hoc queries that need to be displayed in data table elements. The number and label values of the columns are not known until runtime. I am attempting to use a component binding mechanism to intercept the UIData and add columns to it at runtime, depending on the data currently held in a backing bean instance (such as an ad-hoc query result).
    I'm not sure where I can actually intercept the table and add the columns. I've got the following code example to compile and run without error, but nothing gets rendered properly - I get an opening <table> tag in the HTML source and nothing else follows.
    I have compared the structure of the table created with the following binding method to a table created with simple <h:dataTable> tags, and I see only one difference. The datatable created with tags has a single attribute in its attribute map called "javax.faces.webapp.COMPONENT_IDS" that maps to an ArrayList of the component IDs of the h:column elements I specify on the JSF page. The datatable I attempt to create in the binding method does not have this attribute in its map, and I can't seem to manually add it in without creating further havoc. (the child count, types of children, etc all seem to be equivalent).
    From the JSF perspective this is how I've defined the h:dataTable tag instance...
    <h:dataTable id="categoryTable" rendered="true"
            binding="#{backingBeanInstance.table}"
                value="#{backingBeanInstance.rows}"
                    var="row"  border="2" />This is basically the code in the backingBeanInstance....
        private UIData table;
        public void setTable(UIData table){
            this.table = table;
           //initTable();   //tried this but seems not to work either?
        public UIData getTable(){
            if(table!=null){
                initTable(); //build the columns and add to the table
            return table
        private void initTable(int categoryIndex){
                //This block is just a way to calculate the number of columns
                int colCount = <depends on data held in bean>
                //Resolve the var string for the data table
                String item = table.getVar();
                System.out.println("item: " + item);  //this is always null the 1st time through?? why?
                UIColumn col;
                UIOutput out;
                FacesContext context = FacesContext.getCurrentInstance();
                Application app = context.getApplication();
                //For each column in the data, create a UIColumn as child of the
                //data table.  Create a UIOutput as child of the UIColumn and bind
                //the value of the UIOutput to the data with an EL expression
                for (int j = 0; j < colCount; j++) {
                    //create an instance of UIOutput to display the value for this cell
                    out = new UIOutput();
                    out.setRendererType("Text");
                    //create an instance of UIColumn
                    col = new UIColumn();
                    //construct the value binding string as an EL expression
                    String valueBindingString = "#{" + item + "[" + j + "]}";
                    //create the value binding
                    ValueBinding vb = app.createValueBinding(valueBindingString);
                    //set the value binding on the UIOutput object
                    out.setValueBinding("value", vb);
                    //add the UIOutput component to the UIColumn as a child
                    col.getChildren().add(out);
                    //add the UIColumn to the data table as a child
                    table.getChildren().add(col);
        }

    <bump>

  • Doubt about Select statement.

    Hi folks!!
                 I have a few doubts about the select statements, it may be a silly things but its useful for me.
    what is   difference between below statment.
    1)SELECT * FROM TABLE.
    2)SELECT SINGLE * FROM TABLE
    3)SELECT SINGLE FROM TABLE.
    Hope i will get answer,thanks in advance.
    Regards
    Richie..

    Hi,
    try this and if possible use sap help.i mean place the cursor on select and press F1.
                 Types of select statements:
    1.     select * from ztxlfa1 into table it.
                 This is simple select statement to fetch all the data of db table into internal table it.
       2.   select * from ztxlfa1 into table it where lifnr between 'V2' and 'V5'.
            Thisis using where condition between v2 and v5.
      4. select * from ztxlfa1 where land1 = 'DE'. "row goes into default table work Area
      5. select lifnr land1 from ztxlfa1
            into corresponding fields of it   "notice 'table' is omitted
             where land1 = 'DE'.
              append it.
               endselect.
         Now data will go into work area. and then u will add it to internal table by     
            append statement.
      6.   Table 13.2 contains a list of the various forms of select as it is used with internal tables and their relative efficiency. They are in descending order of most-to-least efficient.
    Table 13.2  Various Forms of SELECT when Filling an Internal Table
    Statement(s)                                   Writes To
    select into table it                                    Body
    select into corresponding fields of table it   Body
    select into it                                    Header line
    select into corresponding fields of it           Header line
    7. SELECT VBRK~VBELN
           VBRK~VKORG
           VBRK~FKDAT
           VBRK~NETWR
           VBRK~WAERK
           TVKOT~VTEXT
           T001~BUKRS
           T001~BUTXT
        INTO CORRESPONDING FIELDS OF TABLE IT_FINAL
        FROM VBRK
        INNER JOIN TVKOT ON VBRKVKORG = TVKOTVKORG
        INNER JOIN T001 ON VBRKBUKRS = T001BUKRS
        WHERE VBELN IN DOCNUM AND VBRK~FKSTO = ''
       AND VBRK~FKDAT in date.
    Select statement using inner joins for vbrk and t001 and tvkot table for this case based on the conditions
    8. SELECT T001W~NAME1 INTO  TABLE IT1_T001W
    FROM T001W INNER JOIN EKPO ON T001WWERKS = EKPOWERKS
    WHERE EKPO~EBELN = PURORD.
    here selecting a single field into table it1_t001winner join on ekpo.
    9. SELECT BUKRS LIFNR EBELN FROM EKKO INTO CORRESPONDING FIELDS OF IT_EKKO WHERE     EBELN IN P_O_NO.
    ENDSELECT.
    SELECT BUTXT   FROM T001 INTO  IT_T001 FOR ALL ENTRIES IN IT_EKKO WHERE BUKRS = IT_EKKO-BUKRS.
    ENDSELECT.
    APPEND IT_T001.
    here I am using for all entries statement with select statement. Both joins and for all entries used to fetch the data on condition but for all entries is the best one.
    10. SELECT AVBELN BVTEXT AFKDAT CBUTXT ANETWR AWAERK INTO TABLE ITAB
                 FROM  VBRK AS A
                 INNER JOIN TVKOT AS B ON
                 AVKORG EQ BVKORG
                 INNER JOIN T001 AS C ON
                 ABUKRS EQ CBUKRS
                 WHERE  AVBELN IN BDOCU AND AFKSTO EQ ' ' AND B~SPRAS EQ
                 SY-LANGU
                 AND AFKDAT IN BDATE AND AVBELN EQ ANY ( SELECT VBELN FROM
                VBRP WHERE VBRP~MATNR EQ ITEMS ).
        Here we are using sub query in inner join specified in brackets.
    Thanks,
    chandu.

  • Doubt about Bulk Collect with LIMIT

    Hi
    I have a Doubt about Bulk collect , When is done Commit
    I Get a example in PSOUG
    http://psoug.org/reference/array_processing.html
    CREATE TABLE servers2 AS
    SELECT *
    FROM servers
    WHERE 1=2;
    DECLARE
    CURSOR s_cur IS
    SELECT *
    FROM servers;
    TYPE fetch_array IS TABLE OF s_cur%ROWTYPE;
    s_array fetch_array;
    BEGIN
      OPEN s_cur;
      LOOP
        FETCH s_cur BULK COLLECT INTO s_array LIMIT 1000;
        FORALL i IN 1..s_array.COUNT
        INSERT INTO servers2 VALUES s_array(i);
        EXIT WHEN s_cur%NOTFOUND;
      END LOOP;
      CLOSE s_cur;
      COMMIT;
    END;If my table Servers have 3 000 000 records , when is done commit ? when insert all records ?
    could crash redo log ?
    using 9.2.08

    muttleychess wrote:
    If my table Servers have 3 000 000 records , when is done commit ? Commit point has nothing to do with how many rows you process. It is purely business driven. Your code implements some business transaction, right? So if you commit before whole trancaction (from business standpoint) is complete other sessions will already see changes that are (from business standpoint) incomplete. Also, what if rest of trancaction (from business standpoint) fails?
    SY.

Maybe you are looking for

  • BOL - creation of MarketingProject root object failed

    Dear All, I'm trying to create MarketingProject root object in ABAP. I think the problem is with some parameters, but I've tried to provide the same parameters as an existing Marketing Project has, but still got 'creation failed'. Part of code: DATA:

  • SAP R/3 4.6 C to ECC 6.0 Upgrade using CU &UC method- Unicode conversion

    Basis Gurus    I am working on upgrade from R/3 4.6C to ECC 6.0. ECC 6.0 upgrade completed( still in non Unicode).  Now I am in the process of Unicode conversion. I have used following methods for the upgrade. 1. Combined Upgrade & Unicode conversion

  • Configuring remote/testing server

    Hello Adobe users! I am currently creating an e-commerce website (I'll be creating .asp pages) for my year-end project, and I want to configure my Dreamweaver CS3 in order to have a remote/testing server folder (so that I can preview the pages). I'm

  • Report Painter not showing totals for some cells

    Hi, We're developing a report painter that will give us a total of all the columns. This total uses a set of variables and a set which essentially is a grouping of the profit centers. The problem is it is not showing any value on the cell. Despite th

  • Playing .dcr files on linux-based server

    Hi there. So I've got situation like this: I would like to present .dcr files on my site (modified Coppermine gallery). And it would be great if I could play these files with internal player (or sth like this) and not count that my visitors have a pl