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

كيفية عمل حقل فريد ضمن بلوك

Featured Replies

بتاريخ:

وذلك من خلال when_validate_item على نفس العنصر المطلوب عدم تكراره مجرد ان تدخل القيمة به وتخرج منه يعطيك رسالة هذه القيمة مكررة . والسؤال مطروح للجميع .
وللتشجيع فورم يحذف القيمة المكررة ويستخدم الwhen_validate_item والفورم غير مرتبط بجدول

check.fmx

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

6i ولكن ما الفرق

بتاريخ:

FRM-40011:FORM WAS CREATED BY AN OLD VERSION OF FORM BUILDER
مع اني استخدم 6i

ياريت ترفق السورس نعمل له كمبايل من غير ما نبص على الكود :)

محاولة
when_validate_item
لا يقبل FIRST_RECORD

لذلك يمكن تكوين تايمر في التريجر when_validate_item ونعمل كود الفحص في التريجر WHEN_TIMER_EXPIRED

على فكرة اخي مصطفى لازلنا منتظرين اجابة السؤال الاول الخاص ب(COMMIT_FORM)

بتاريخ:

tel3atlee nafs resalet el 2`7 Developer
FRM-40011:FORM WAS CREATED BY AN OLD VERSION OF FORM BUILDER

but try 2 use KEY-NEXT-ITEM instead of using when_validate_item

بتاريخ:

اثناء تشغيل الملف ظهرت هذه الرسالة

FRM-40011:FORM WAS CREATED BY AN OLD VERSION OF FORM BUILDER
مع اني استخدم 6i

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

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

يا عيني عليك يا developer بس لازم نشوف فورمة من تحت اديك تحل الموضوع هذا وموضوع ال commit_form

انا عملت الفورم على developer 2,1

وكما ترون في كل يوم نكتشف ان ال developer اداة عقيمة

والى الامام جميعاً

بتاريخ:

هذا ملف مرفق ... :)
منع عملية التكرار باستخدام when_validate_item و التايمر

CHECK.fmb

بتاريخ:

السلام عليكم
مشكور يا مستر Developer حتى من غير ما احمل الفورم واجربه كفاية انك تعبت وفكرت فيه ... بالمناسبة أعجبت جدااا بالحوارات الدائرة بين الاخوة في هذا الموضوع :) تعالوا نشوف كيف بدأ هذا الشات الجميل

Amgad
اي اصدار لل developer ???
6i - 9


mustafa76
6i ولكن ما الفرق


developer
FRM-40011:FORM WAS CREATED BY AN OLD VERSION OF FORM BUILDER
مع اني استخدم 6i
ياريت ترفق السورس نعمل له كمبايل من غير ما نبص على الكود 


huonikil
tel3atlee nafs resalet el 2`7 Developer
FRM-40011:FORM WAS CREATED BY AN OLD VERSION OF FORM BUILDER


mustafa76
انا عملت الفورم على developer 2,1
وكما ترون في كل يوم نكتشف ان ال developer اداة عقيمة
والى الامام جميعاً


واخيرا نجحنا في اثبات ان Developer أداة عقيمة :blink:
بتاريخ:
  • كاتب الموضوع

سلمت يداك يا developer تعبناك معانا عندي سؤال ما هي الفائدة من الاحتفاض برقم أخر سجل تم إدخاله الا يمكن الدوران على البلوك بدون معرفة رقم اخر سجل .

اما يا سيدي فنحن الان في عصر ال 9i ,10g وهذا يعني عدم الافراط بإستخدام التايمر الحل لغاية الان بالتايمر اوريد حلاً بدون استخدام التايمر .

وحتى يحمى الوطيس ويزداد الاخ احمد عزت فرحاً وسروراً هنالك حل آخر بإستخدام ال .... سوف اكتب الحل بالعربي
مجموعة السجلات .

والى الامام جميعاً

بتاريخ:
وحتى يحمى الوطيس ويزداد الاخ احمد عزت فرحاً وسروراً هنالك حل آخر بإستخدام ال .... سوف اكتب الحل بالعربي
مجموعة السجلات

نسيت تقولنا على أي Developer :D
بتاريخ:

تسلم اخي احمد عزت :D

شكرا اخي مصطفى (كلامك سليم :rolleyes: يمكننا الدوران في البلك بدون الاحتفاظ بقيمة آخر سجل وذلك عن طريق

:system.last_recod



وحتى يحمى الوطيس ويزداد الاخ احمد عزت فرحاً وسروراً هنالك حل آخر بإستخدام ال .... سوف اكتب الحل بالعربي
مجموعة السجلات .


في انتظار طرقتك

وكما ترون في كل يوم نكتشف ان ال developer اداة عقيمة


واخيرا نجحنا في اثبات ان Developer أداة عقيمة


شباب لا تخلوني اغير إسمي :( :(
بتاريخ:
  • كاتب الموضوع

يا سيدي اعمله على اي ديفيلوير تريده

developer لا تخاف فشركة اوراكل فيها من القوة مايكفيها لتدافع عن اي عيب فيها .

بإنتظاركم

والى الامام جميعا

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

يا شباب اين انتم

الحل بإستخدام
global record group

والى الامام جميعاً

بتاريخ:

موجودين بس خلينا نفكر شوية :D :(

شكرا لك اخ مصطفى على المساعدة


هذه الطريقة ممتازة جدا....وناجحة 100%

هذا ملف مرفق

منع عملية التكرار باستخدام ال record group

في انتظار المساعدة في عملية ال commit_form;

CHECK1.fmb

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

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

فكرك نير يا ديفيلوبر
ولكن برنامجك هذا لا يمنع التكرار
ادخل التالي
1
2
ثم ادخل
1
سوف يعترض مكرر
احذفه ال 1 وادخل 3 ثم احذف ال 1 في الاعلى اول سجل
ثم ادخل 1 سوف يعترض مع ان الواحد غير مكرر .

يا ديفيلوبر نريد حلاً لل commit_form;

والى الامام جميعاً

بتاريخ:

شكرا لك يا استاذ مصطفى على الملاحظات

هذا الفورم بعد التعديل

CHECK2.fmb

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

الرجاء بدون استاذ
مصطفى حاف بدون اي اشي

يا ديفيلوبر موضوع التكرار خلصنا منو احنا بدنا ال commit_form;

ماشي

بإنتظاركم

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

والى الامام جميعاً مشتركين وزوار واصحاب الموقع

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

الو الو الو هل من احد هنا

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

ال ال ال ال

TYPE state_rec IS RECORD ('your cullmon ');
type a is table of state_rec
index by binary_integer;

فهل تثلج صدري للمرة الثالثة بالملف صاحب الاسم CHECK3

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

وعذراً على العودة الى موضوع التكرار فقط اريد الإفادة والجزاء من الله .


والى الامام جميعاً

  • بعد 2 أسابيع...
بتاريخ:
  • كاتب الموضوع

اين الشباب ؟

  • بعد 5 أسابيع...
بتاريخ:
  • كاتب الموضوع

....................................................................?

  • بعد 1 شهر...
بتاريخ:

أظن أنه لدي فكرة عن جعل الديفيلوبر يقوم باختبار عدم التكرار على السجل المدخل . حيث أن الديفيلوبر لا يمكنه اختبار السجلات اذا لم يتم تسجيلها في قاعدة البيانات و عمل اختبار التكرار من قاعدة البيانات حسب pk,uk .
ممكن جعل الديفيلوبر يقوم بتخزين البيانات في القاعدة دون عمل commit باستخدام التعليمة post و بذلك يقوم بتخزين السجل و اجراء الاختبار , و يجب في نهاية العمل اجراء commit حتى يتم التخزين الفعلي.

بتاريخ:

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

declare x number (10);
cursor cur_accno is
select accno from coacc where accno=:accno;
begin
open cur_accno;
fetch cur_accno into x;
if cur_accno %found then
message ('الرقم موجود');
message ('الرقم موجود');
raise form_trigger_failure;
close cur_accno;
end if;
end;
وشكرا جزيلا لكم على هذه الحوارات الغنيه

اخوكم جمال

  • بعد 1 شهر...
بتاريخ:

والله ان الاخ mustafa76 لم يترك موضوع حساس الا وخاض فيه وبلا خوف كما يخاف بعضنا من نشر الخبرة التي لديه فهو لم يبخل علينا ابداً .

انظروا الى اخر مشاركاته

الو الو الو هل من احد هنا

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

ال ال ال ال

TYPE state_rec IS RECORD ('your cullmon ');
type a is table of state_rec
index by binary_integer;

فهل تثلج صدري للمرة الثالثة بالملف صاحب الاسم CHECK3

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

وعذراً على العودة الى موضوع التكرار فقط اريد الإفادة والجزاء من الله .


والى الامام جميعاً

وكما اخبرني هو هنالك امر جاهز في الفورم من خلاله نفحص التكرار وقال انه امر خاص فقط بمطوري اوراكل بنفس الشركة وهو امر غير معلن واوقفت اوراكل استخدامه في كل النسخ بعد ال 6i
وكعادته فهو لا يعطي الحل مباشرة فقط اعطاني طرف خيط فقال كيف تضع محتويات بلوك من الفورم في pl/sql tables .

وانا مازلت ابحث عن هذا الامر وفي حال اي جديد سوف اخبركم .

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

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

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

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

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

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.