الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Bindvariable Programiticaly (runtime)

Featured Replies

بتاريخ:

هل يمكن اعطاء قيمة لل bind variable  فى ال رن تيم  runtime    -  (programiticaly)

وليس من خلال ادخال ال parameter   من الشاشة

حتى يمكن ربطه بمتغير من شاشة سابقة مثل userId

  • الردود 25
  • المشاهدات 2.5k
  • البداية
  • اخر رد

أكثر المشاركين في هذا الموضوع

الصور المنشورة

بتاريخ:
  • كاتب الموضوع

هل هذا الطريقة صحيحة والجزء الفاضى نكتب فيه ايه

    public VmenuImpl() {
        ViewObjectImpl view =             ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟     ;
                VariableValueManager vm = view.ensureVariableManager();
                vm.setVariableValue("user_id", 1);
                view.executeQuery();
بتاريخ:
  • كاتب الموضوع

 

هل هذا الطريقة صحيحة والجزء الفاضى نكتب فيه ايه



    public VmenuImpl() {
        ViewObjectImpl view =             ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟     ;
                VariableValueManager vm = view.ensureVariableManager();
                vm.setVariableValue("user_id", 1);
                view.executeQuery();

 

بتاريخ:

public void searchEmployee() {



ViewObjectImpl vo = getEmployeesView1();
ViewCriteria vc = vo.getViewCriteria("findEmployeeVC");
vo.applyViewCriteria(vc);


vo.setNamedWhereClauseParam("pEmployeeId", 20);
vo.executeQuery();


}
بتاريخ:
  • كاتب الموضوع

الكود ده حاكتبه فين 

 

المطلوب لما ال page تقوم الجدول يظهر بال critirea اتومالتيك

بتاريخ:

 

you can do this in several ways, one of them : 

drag drop call method component in task flow see pic # 1

then write on method this code

 

    note by this code not use bind variable


 public  String loadPage_action ( ) {       

String xxx ;// set your value

ViewCriteria vc = VO.createViewCriteria();

vcRow.setAttribute("attr_name", xxx);

ViewCriteriaRow vcRow = vc.createViewCriteriaRow();           

vc.addRow(vcRow);            

VO.applyViewCriteria(vc);      

VO.executeQuery();

return "startPage"; // this string must same navigation name in task flow   

 }

post-134681-0-14823100-1454324070_thumb.png

تم تعديل بواسطة orosmith24

بتاريخ:
  • كاتب الموضوع

اشكرك على تجاوبكم معى 

 

وحاولت اطبق الكود السابق ولكن اعترض على هذا الجزء

 

VO.createViewCriteria

بتاريخ:

اخي العزيز استدعي اسم الفيو اوبجكت الموجود عندك وضعه بدلا من VO

تم تعديل بواسطة orosmith24

بتاريخ:
  • كاتب الموضوع

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

بتاريخ:
  • كاتب الموضوع

للاسف ادى الكود  لسه فى حاجة غلط 

 

 

package view.backing;

 
import oracle.jbo.ViewCriteria;
import oracle.jbo.ViewCriteriaRow;
import oracle.jbo.server.ViewObjectImpl;
 
public class GetUserId {
    public GetUserId() {
        Number  user_id ;// set your value
        ViewObjectImpl vo = getEmployeesView1();       
        ViewCriteria vc = VO.createViewCriteria();
        vcRow.setAttribute("user_id",1);
        ViewCriteriaRow vcRow = vc.createViewCriteriaRow();           
        vc.addRow(vcRow);            
        VO.applyViewCriteria(vc);      
        VO.executeQuery();
        return "menu.jsf"; // this string must same navigation name in task flow   
         }
    }
بتاريخ:

قمت بتعريف ViewObjectImpl vo 

حسب السطر التالي 

 ViewObjectImpl vo = getEmployeesView1();

حسناً في بقية الكود لماذا مكتوب VO  بشكل Capital Letter ؟!

إكتبها vo وإن شاء الله تحل المشكلة 

بتاريخ:
  • كاتب الموضوع

لسه بتعطى خطأ

 

  • Error(16,29): cannot find method getMenuView1() 

 

package view;
 
import oracle.jbo.ViewCriteria;
import oracle.jbo.ViewCriteriaRow;
import oracle.jbo.server.ViewObjectImpl;
 
 
public class GetUserId {
    public GetUserId() {
 
    }
 
    public void GetUserId1() { 
        // Add event code here...
        Number  user_id ;// set your value
        ViewObjectImpl vo = getMenuView1();       
        ViewCriteria vc = vo.createViewCriteria();            
        vcRow.setAttribute(user_id, 1);            
        ViewCriteriaRow vcRow = vc.createViewCriteriaRow();           
        vc.addRow(vcRow);            
        vo.applyViewCriteria(vc);      
        vo.executeQuery();
        return "menu"; // this string must same navigation name in task flow   
         }
    }
بتاريخ:

لديك getMenuView1 قم بعمل لها generate كي يتعرف عليها 

بتاريخ:
  • كاتب الموضوع

ال page defintion

 

<?xml version="1.0" encoding="UTF-8" ?>

                version="11.1.2.64.36" id="menuPageDef" Package="view.pageDefs">
  <parameters/>
  <executables>
    <variableIterator id="variables"/>
    <iterator Binds="MenuView1" RangeSize="25"
              DataControl="AppModuleDataControl" id="MenuView1Iterator"/>
    <searchRegion Criteria="MenuVC"
                  Customizer="oracle.jbo.uicli.binding.JUSearchBindingCustomizer"
                  Binds="MenuView1Iterator" id="MenuVCQuery"/>
    <iterator Binds="MenuView1" RangeSize="10"
              DataControl="AppModuleDataControl" id="MenuView1Iterator1"/>
  </executables>
  <bindings>
    <tree IterBinding="MenuView1Iterator" id="MenuView1">
      <nodeDefinition DefName="view.MenuView" Name="MenuView10">
        <AttrNames>
          <Item Value="Mlevel"/>
          <Item Value="Disc"/>
          <Item Value="SubLevel"/>
          <Item Value="Formname"/>
          <Item Value="LevelNo"/>
          <Item Value="UserId1"/>
          <Item Value="UserId2"/>
        </AttrNames>
      </nodeDefinition>
    </tree>
    <attributeValues IterBinding="MenuView1Iterator1" id="UserId1">
      <AttrNames>
        <Item Value="UserId1"/>
      </AttrNames>
    </attributeValues>
  </bindings>
</pageDefinition>
بتاريخ:

مثل ما عملت generate للـ EmployeesView1 التي بالكود الذي كتبته لنا أعلاه أعمل للـ MenuView1 

بتاريخ:
  • كاتب الموضوع

شكرا يا أستاذة على تواصلك

 

لكن ال generate الموضح اعلاه هو لل menuview1

بتاريخ:

أليس الإعتراض كان على menuview1 حسناً قم بعمل generate له

بتاريخ:
  • كاتب الموضوع

عملته وهى دى ال pagedefi ntion

لكن المشكلة لا زالت موجودة 

 

ل page defintion

 

<?xml version="1.0" encoding="UTF-8" ?>

                version="11.1.2.64.36" id="menuPageDef" Package="view.pageDefs">
  <parameters/>
  <executables>
    <variableIterator id="variables"/>
    <iterator Binds="MenuView1" RangeSize="25"
              DataControl="AppModuleDataControl" id="MenuView1Iterator"/>
    <searchRegion Criteria="MenuVC"
                  Customizer="oracle.jbo.uicli.binding.JUSearchBindingCustomizer"
                  Binds="MenuView1Iterator" id="MenuVCQuery"/>
    <iterator Binds="MenuView1" RangeSize="10"
              DataControl="AppModuleDataControl" id="MenuView1Iterator1"/>
  </executables>
  <bindings>
    <tree IterBinding="MenuView1Iterator" id="MenuView1">
      <nodeDefinition DefName="view.MenuView" Name="MenuView10">
        <AttrNames>
          <Item Value="Mlevel"/>
          <Item Value="Disc"/>
          <Item Value="SubLevel"/>
          <Item Value="Formname"/>
          <Item Value="LevelNo"/>
          <Item Value="UserId1"/>
          <Item Value="UserId2"/>
        </AttrNames>
      </nodeDefinition>
    </tree>
    <attributeValues IterBinding="MenuView1Iterator1" id="UserId1">
      <AttrNames>
        <Item Value="UserId1"/>
      </AttrNames>
    </attributeValues>
  </bindings>
</pageDefinition>
  •  
بتاريخ:
  • كاتب الموضوع

عملته وهى دى ال pagedefi ntion

لكن المشكلة لا زالت موجودة 

 

ل page defintion

 

<?xml version="1.0" encoding="UTF-8" ?>

                version="11.1.2.64.36" id="menuPageDef" Package="view.pageDefs">
  <parameters/>
  <executables>
    <variableIterator id="variables"/>
    <iterator Binds="MenuView1" RangeSize="25"
              DataControl="AppModuleDataControl" id="MenuView1Iterator"/>
    <searchRegion Criteria="MenuVC"
                  Customizer="oracle.jbo.uicli.binding.JUSearchBindingCustomizer"
                  Binds="MenuView1Iterator" id="MenuVCQuery"/>
    <iterator Binds="MenuView1" RangeSize="10"
              DataControl="AppModuleDataControl" id="MenuView1Iterator1"/>
  </executables>
  <bindings>
    <tree IterBinding="MenuView1Iterator" id="MenuView1">
      <nodeDefinition DefName="view.MenuView" Name="MenuView10">
        <AttrNames>
          <Item Value="Mlevel"/>
          <Item Value="Disc"/>
          <Item Value="SubLevel"/>
          <Item Value="Formname"/>
          <Item Value="LevelNo"/>
          <Item Value="UserId1"/>
          <Item Value="UserId2"/>
        </AttrNames>
      </nodeDefinition>
    </tree>
    <attributeValues IterBinding="MenuView1Iterator1" id="UserId1">
      <AttrNames>
        <Item Value="UserId1"/>
      </AttrNames>
    </attributeValues>
  </bindings>
</pageDefinition>
بتاريخ:

لعمل generate  

double click عليها  بعدها إختر java  ومنها icon edit (ايكونة القلم) بعدها قم بعمل generate للمطلوب لديك

بتاريخ:
  • كاتب الموضوع

ملحوظة ال generate  نشأت من  method call

اريخ المشاركة أمس, 10:27 AM

لسه بتعطى خطأ

 

  • Error(16,29): cannot find method getMenuView1() 

 

package view;
 
import oracle.jbo.ViewCriteria;
import oracle.jbo.ViewCriteriaRow;
import oracle.jbo.server.ViewObjectImpl;
 
 
public class GetUserId {
    public GetUserId() {
 
    }
 
    public void GetUserId1() { 
        // Add event code here...
        Number  user_id ;// set your value
        ViewObjectImpl vo = getMenuView1();       
        ViewCriteria vc = vo.createViewCriteria();            
        vcRow.setAttribute(user_id, 1);            
        ViewCriteriaRow vcRow = vc.createViewCriteriaRow();           
        vc.addRow(vcRow);            
        vo.applyViewCriteria(vc);      
        vo.executeQuery();
        return "menu"; // this string must same navigation name in task flow   
         }
    }
بتاريخ:

ملوحظة أتت متأخرة

 

الكود الذي مكتوب أعلاه يتحدث عن viewobject   وما إلى ذلك 

وعليه ذكرت لحضرتك أنه يتوجب عمل generate  كما بينت في أعلاه 

بتاريخ:
  • كاتب الموضوع

طيب فى حالة ال calling method  قبل ما اروح للصفحة اللى عايز اعطى فيها قيمة متغير  ال viewcritiria   تتعمل ازاى

بتاريخ:

طالما تستخدم call method  إذن يتوجب عمل create page definition  عملت هذه الخطوة جيد 

في bean نعمل method  للقيام بالوظيفة التي تريدها في action  التابعة للـ call method  تشير الى إسم الـ method  التي عملتها للتو لإنجاز الوظيفة المعنية 

بتاريخ:
  • كاتب الموضوع

لو فيه مثال للموضوع ده

او يا ريت شرح الخطوات بالتفصيل

وجزاكم الله كل خير

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

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

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

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

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

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.