الانتقال إلى المحتوى

Insert Many Rows In Viewobject From Other Viewobject


mo7asb

Recommended Posts

I have screen  oracle forms and i need to convert to Oracle ADF 
the business of this form is search criteria in master get many rows data when u press button Search 
 go to block Detail and make loop for this table to fetch all rows this table 
 

  how insert many rows in viewobject1 from other viewobject 2

-----------------------

search criteria get data from many table different than the table i want to show data first in view and after save this data to deatil table 

good example in oracle forms 

Delare 
cursor is get_emp_detail_cur  select emp_id, emp_name,hire_dte , from table1,table2

where....,

begin 

go_block(detail_yes_database)

 

for i in get_emp_detail_cur   loop 

block.item:=i.emp_id  ;

block.item2=i.hiredate;

 next_record  ;

end loop;

end ;
 

رابط هذا التعليق
شارك

  • بعد 2 أسابيع...

بنفس الطريقة بالضبط

- استخدم Query panel with Table للبحث،

- أضف Bean

- ستكتب فيها Method تأخذ نتائج البحث

  وتعمل عليها Loop

  وتضيفها في Record جديد.

رابط هذا التعليق
شارك

  • بعد 2 سنة...

بنفس الطريقة بالضبط

- استخدم Query panel with Table للبحث،

- أضف Bean

- ستكتب فيها Method تأخذ نتائج البحث

  وتعمل عليها Loop

  وتضيفها في Record جديد.

معليش ممكن توضح اكتر

رابط هذا التعليق
شارك

الى حضرتك هذا الكود واتمنى من المهندس مصطفى يراجعنى فيه وهو متجرب    

 

ده  viewobject   بجيب منه صفوف ال details      من خلال زرار فى الشاشة  ويفتح صفوف فى ال details   

 

    public String insert_exp_action() {
        // Add event code here...
        DCBindingContainer dcbc1 =  (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();                                
                Row[] rows =dcbc1.findIteratorBinding("ExpInsertView1Iterator").getAllRowsInRange();
                System.out.println("xxxxx_addid1 ");
                if (rows!=null){                         
                    int sum=0;
                    for (int i=0 ;i<rows.length;i++){
                        Row row2=rows;                                                                        
                        System.out.println("bal= "+(BigDecimal)row2.getAttribute("Bal"));                        
                        ii_bal=(BigDecimal)row2.getAttribute("Bal");
                        ii_qty=(Number)row2.getAttribute("Qty");
                        ii_b_no=(String)row2.getAttribute("BNo");
                        ii_disc=(String)row2.getAttribute("Disc");
                        ii_prodid=(Number)row2.getAttribute("ProdId");
                        ii_exp_date=(Date)row2.getAttribute("ExpDate");
                        add_det_action();
                    }
                } 
    return null;
    }
 
 
 
ده زرار الاضافى لل details
 
    public String add_det_action() {
        BindingContainer bindings = getBindings();
        OperationBinding operationBinding = bindings.getOperationBinding("CreateInsert1");
        Object result = operationBinding.execute();
        if (!operationBinding.getErrors().isEmpty()) {
            return null;
        }
        System.out.println("Before DCBindingContainer");
             DCBindingContainer dcbc =  (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
             Row row =dcbc.findIteratorBinding("ProdExpOutView4Iterator").getCurrentRow();        
             if (row!=null){    
             }                   
                System.out.println("Add Insert  "+ii_disc);  
                 row.setAttribute("BAL",ii_bal);
                 row.setAttribute("Qty",ii_qty);
                 row.setAttribute("B_NO",ii_b_no);
                 row.setAttribute("Disc", ii_disc);
                 row.setAttribute("ExpDate", ii_exp_date);                  
                 row.setAttribute("ProdId",ii_prodid);
                 row.setAttribute("PRODID2",ii_prodid);
             System.out.println("after DCBindingContainer ");
         
        return null;
    }
 
ومنتظر تعلقاتكم وارائكم  وشكرا
رابط هذا التعليق
شارك

اشكرك يا باشمهندس  وده نتاج جهود حضرتك من خلال فيديوهاتك التعليمية او من ردود حضرتك فى هذا المنتدى   وكذلك الاخوة الافاضل فى المنتدى

رابط هذا التعليق
شارك

  • بعد 1 سنة...

 

الى حضرتك هذا الكود واتمنى من المهندس مصطفى يراجعنى فيه وهو متجرب    

 

ده  viewobject   بجيب منه صفوف ال details      من خلال زرار فى الشاشة  ويفتح صفوف فى ال details   

 

    public String insert_exp_action() {
        // Add event code here...
        DCBindingContainer dcbc1 =  (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();                                
                Row[] rows =dcbc1.findIteratorBinding("ExpInsertView1Iterator").getAllRowsInRange();
                System.out.println("xxxxx_addid1 ");
                if (rows!=null){                         
                    int sum=0;
                    for (int i=0 ;i<rows.length;i++){
                        Row row2=rows;                                                                        
                        System.out.println("bal= "+(BigDecimal)row2.getAttribute("Bal"));                        
                        ii_bal=(BigDecimal)row2.getAttribute("Bal");
                        ii_qty=(Number)row2.getAttribute("Qty");
                        ii_b_no=(String)row2.getAttribute("BNo");
                        ii_disc=(String)row2.getAttribute("Disc");
                        ii_prodid=(Number)row2.getAttribute("ProdId");
                        ii_exp_date=(Date)row2.getAttribute("ExpDate");
                        add_det_action();
                    }
                } 
    return null;
    }
 
 
 
ده زرار الاضافى لل details
 

    public String add_det_action() {
        BindingContainer bindings = getBindings();
        OperationBinding operationBinding = bindings.getOperationBinding("CreateInsert1");
        Object result = operationBinding.execute();
        if (!operationBinding.getErrors().isEmpty()) {
            return null;
        }
        System.out.println("Before DCBindingContainer");
             DCBindingContainer dcbc =  (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
             Row row =dcbc.findIteratorBinding("ProdExpOutView4Iterator").getCurrentRow();        
             if (row!=null){    
             }                   
                System.out.println("Add Insert  "+ii_disc);  
                 row.setAttribute("BAL",ii_bal);
                 row.setAttribute("Qty",ii_qty);
                 row.setAttribute("B_NO",ii_b_no);
                 row.setAttribute("Disc", ii_disc);
                 row.setAttribute("ExpDate", ii_exp_date);                  
                 row.setAttribute("ProdId",ii_prodid);
                 row.setAttribute("PRODID2",ii_prodid);
             System.out.println("after DCBindingContainer ");
         
        return null;
    }
 
ومنتظر تعلقاتكم وارائكم  وشكرا

 

لو عايذ الكود استرجع البيانت من ViewObject بشرط معين بدلا من الiterator في insert_exp_action

شكرا علي المجهود

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية