الانتقال إلى المحتوى
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.

مشكلة في Output Lable والعمليات الحسابية

Featured Replies

بتاريخ:

السلام عليكم 

عملت صفحة وضعت فيها جدول الرواتب على شكل فورم

قسم من الحقول على شكل inputtext

وقسم من الحقول على شكل lov

وقسم من الحقول على شكل outputtext

وعملت عمليات حسابية بالجافا في vo الخاص بجدول الرواتب واعتمدت على دورة (المشروع) للاستاذ مصطفى 

والكود يعمل بطريقة مضبوطة على الصفحة 

المشكلة هي عند الحفظ فقط الحقول التي على شكل inputtext و lov تحفظ القيم في قاعدة البيانات

اما التي على شكل outputtext لا تحفظ في قاعدة البيانات 

علما ان العمليات الحسابية تجري على كل inpottext,lov,outputtext واذا تغير قيمة اي منهم تتغير باقي القيم

تم تعديل بواسطة محمد_العراقي

  • الردود 33
  • المشاهدات 2.2k
  • البداية
  • اخر رد

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

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

بتاريخ:

كيف تقوم بتغيير القيم؟

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

كيف تقوم بتغيير القيم؟

شكرا لك استاذ مصطفى 

عملت كود بالجافا كما بالفيديو رقم 14 من المشورع

https://youtu.be/IAciA78pTmQ?t=410

وكما مبين بالصور ادناه

post-156798-0-77432600-1530217923_thumb.jpg

post-156798-0-97174800-1530217950_thumb.jpg

post-156798-0-56465400-1530217980_thumb.jpg

بتاريخ:

هذا لا يقوم بالتغيير

هذا يقوم بالإرجاع فقط

يجب التنفيذ داخل setter

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

هذا لا يقوم بالتغيير

هذا يقوم بالإرجاع فقط

يجب التنفيذ داخل setter

جزاك الله خير استاذا العزيز ممكن الطريقة لاني كتبتها ولم ينفذ 

كتبت في setter

this.MMANSEP=MMANSEP 
ولم تنفذ وكتبت 
this.seTMMansep() = getMMansep()

ايضا كتبت في setter 

this.setMMansep(getMMansep()) 

تم تعديل بواسطة محمد_العراقي

بتاريخ:

نفذ الكود اللى فى getter    انقله فى ال setter

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

نفذ الكود اللى فى getter    انقله فى ال setter

شكرا لك استاذ ربيع لمتابعتكم

 

نفذت نفس الكود الذي في getter نفذته في setter

    /**
     * Gets the attribute value for M_MANSEP using the alias name MMansep.
     * @return the M_MANSEP
     */
    public Number getMMansep() {
     
            if (getSalaryName()==null ||
                getMMansepNesba()==null)
            {
                return null;
            }
            double dMMansep =  getSalaryName().doubleValue()*getMMansepNesba().doubleValue();
            try {
                Number nMMansep = new Number(dMMansep);
                return nMMansep ;
            } catch (SQLException e) {
                System.err.println(e);
            } 
        return (Number) getAttributeInternal(MMANSEP);
    }

    /**
     * Sets <code>value</code> as attribute value for M_MANSEP using the alias name MMansep.
     * @param value value to set the M_MANSEP
     */
    public void setMMansep(Number value) {
     
            if (getSalaryName()==null ||
                getMMansepNesba()==null)
            {
                return null;
            }
            double dMMansep =  getSalaryName().doubleValue()*getMMansepNesba().doubleValue();
            try {
                Number nMMansep = new Number(dMMansep);
                return nMMansep ;
            } catch (SQLException e) {
                System.err.println(e);
            } 
        setAttributeInternal(MMANSEP, value);
    }
 

ولكن طلع عندي الخطا التالي 

post-156798-0-79352200-1530436638_thumb.jpg

بتاريخ:

الغى السطر return null

والغى السطر return nMMansep

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

الغى السطر return null

والغى السطر return nMMansep

لغيت الاسطر ولكن لا يرجع قيمة الى قاعدة البيانات

post-156798-0-81187100-1530518850_thumb.jpg

بتاريخ:

اطبع قيمة المتغير 

 

double dMMansep = getSalaryName().doubleValue()*getMMansepNesba().doubleValue();

 

ضع امر الطباعىة هنا وتأكد ان القيمة تغيرت 

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

اطبع قيمة المتغير 

 

double dMMansep = getSalaryName().doubleValue()*getMMansepNesba().doubleValue();

 

ضع امر الطباعىة هنا وتأكد ان القيمة تغيرت 

اشكر متابعتكم استاذ ربيع ولكن لم تتغير القيمة في الداتابيز 

      public void setMMansep(Number value) {
        double dMMansep =  getSalaryName().doubleValue()*getMMansepNesba().doubleValue();
        System.out.println(dMMansep);
    
        setAttributeInternal(MMANSEP, value);
    }

بتاريخ:

اظهر القيمة  من ال log

 

اكتب   System.out.println(dMMansep);

 

عند الحقظ  EntityEmpl

 

اظهر قيمة ال Log

بتاريخ:

لم تقم بتغيير القيمة

أنت فقط قمت بالإرجاع

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

اظهر القيمة  من ال log

 

اكتب   System.out.println(dMMansep);

 

عند الحقظ  EntityEmpl

 

اظهر قيمة ال Log

لا يقوم بأرجاع اي قيمة لافي الداتابيرز ولا في log

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

لم تقم بتغيير القيمة

أنت فقط قمت بالإرجاع

استاذ مصطفى ممكن الطريقة لخزن القيمة في الداتابيز

بتاريخ:

استخدم setAttribute

بتاريخ:

public void setMMansep(Number value) {
double dMMansep = getSalaryName().doubleValue()*getMMansepNesba().doubleValue();
System.out.println(dMMansep);

setAttributeInternal(MMANSEP, value);
}

 

اسم العمود الخاص بالمتغير dMManse

set Column name ( dMManse) ;

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

استخدم setAttribute

 

public void setMMansep(Number value) {

double dMMansep = getSalaryName().doubleValue()*getMMansepNesba().doubleValue();

System.out.println(dMMansep);

 

setAttributeInternal(MMANSEP, value);

}

 

اسم العمود الخاص بالمتغير dMManse

set Column name ( dMManse) ;

استاذ مصطفى واستاذ ربيع شكرا لمتابعتكم ولكن لم تحفظ في قاعدة البيانات

وضعت المتغير في setAttributeInternal ولكن طلع الخطا التالي

post-156798-0-90477900-1530802782_thumb.jpg

ووضعت اسم العمود ولم يحفظ

post-156798-0-92307400-1530802796_thumb.jpg

بتاريخ:

الكتابة خطأ طبعاً

انظر للصيغة في متغير أخر وستعرف الطريقة الصحيحة

بتاريخ:

الغى هذا السطر       setAttributeInternal(MMANSEP, value);

}

 
 
واكتب بدلا منه
set dMManse ( dMManse) ;
 

 

 

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

الكتابة خطأ طبعاً

انظر للصيغة في متغير أخر وستعرف الطريقة الصحيحة

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

 

post-156798-0-27700800-1531032210_thumb.jpg

 

اين الخطا انا كتبت فقط كود

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

 

الغى هذا السطر       setAttributeInternal(MMANSEP, value);

}

 
 
واكتب بدلا منه
set dMManse ( dMManse) ;
 

 

 

 

 

استاذ ربيع ايضا اشكركم لسعة صدركم ولمتابعتكم

كتب الكود مثل ما تفضلت ولكن طلعت المشكلة التالية 

post-156798-0-10767900-1531032319_thumb.jpg

 

فعدلت الكود الى 

    public void setMMansep(Number value) {
       double dMMansep =  getSalaryName().doubleValue()*getMMansepNesba().doubleValue();
       System.out.println(dMMansep);
       //setAttributeInternal(MMANSEP, value);
        setdMMansep(dMMansep);
    }   
 تم عمل مثود setdMMansep عمل المثود التالية وحسب الصورة ادناه
 private void setdMMansep(double dMMansep) {
        
    }

post-156798-0-78625900-1531032649_thumb.jpg

بتاريخ:

عدل على هذا النحو    

double dMMansep = getSalaryName().doubleValue()*getMMansepNesba().doubleValue();
System.out.println(dMMansep);



setdMManse(dMMansep);
System.out.println(getdMManse();
 
اسم المتغير اللى فى double   لابد ان يكون اسمه مختلف عن اسم العمود  فهل الفرق حرف ال p   ام  جضرتك كتبت اسم العمود خطأ
بتاريخ:
  • كاتب الموضوع

 

عدل على هذا النحو    

double dMMansep = getSalaryName().doubleValue()*getMMansepNesba().doubleValue();

System.out.println(dMMansep);

 

setdMManse(dMMansep);
System.out.println(getdMManse();
 
اسم المتغير اللى فى double   لابد ان يكون اسمه مختلف عن اسم العمود  فهل الفرق حرف ال p   ام  جضرتك كتبت اسم العمود خطأ

 

استاذ ربيع عدلت وفق ما طلبت ونفس المشكلة 

حرف ال p موجود صحيح 

استاذ هل ممكن ان تجرب من طرفك جمع اي عددين من حقلين وخزنهما في حقل ثالث في الداتابيز ربما تكون مشكلة في نسخة ال jdev

بتاريخ:

يمكنك الاطلاع على المثال في المشروع

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

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

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

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

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

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.