بتاريخ: 5 يونيو 201114 سنة كاتب الموضوع comment_212870 السلام عليكم ورحمة الله وبركاتهالدرس الثالث عشر : إجبار المستخدم على إدخال نصالغرض من هذا الدرس أنه إذا أدخل المستخدم رقم على حقل نص تظهر رسالة بأنه لايمكن إدخال رقم .تم تطبيق هذا الدرس على نموذج Emp اسكيما scott/tigerمن الحدث WHEN-VALIDATE-ITEM للبلوك نكتب الكود التالي : declare CH varchar2(30); begin if :emp.ename is not null then FOR I IN 1..LENGTH(:emp.ename) LOOP CH:=SUBSTR(:ename,I,1); IF CH BETWEEN '1' AND '9' THEN message('غير مسموح بإدخال رقم'); message('غير مسموح بإدخال رقم'); raise form_trigger_failure; end if; END LOOP; end if; end; اجبار المستخدم على ادخال نص.rar تقديم بلاغ
بتاريخ: 20 يونيو 201114 سنة كاتب الموضوع comment_213377 السلام عليكم ورحمة الله وبركاتهالدرس الرابع عشر : عمل ترقيم تلقائي مع إضافة تاريخ السنة بالهجريننشئ جدول باسم emp يحتوي على الأعمدة التالية :emp_count number لعمل ترقيم تلقائيdate_h varchar2 لإظهار التاريخ الهجريemp_ser varchar لااستعراض الرقم التلقائي مع التاريخ الهجريemp_name varchar2job varchar2ومن شاشة الفورم بلدر وبعد استدعاء البلوك نجعل emp_count & date_h visible = noوبعد ذلك ندرج button وعند الحدث WHEN-BUTTON-PRESSED نكتب الكود التالي : create_record; declare x number; begin select to_char(sysdate,'YYYY','NLS_CALENDAR = ''ARABIC HIJRAH'''), nvl(max(emp_COUNT),0)+1 into :date_h,x from dual,emp; :emp_count:=x; :emp_ser:=x ||'/'||:date_h; end; ولعرض التاريخ ميلادي بدلاً من الهجري نقوم بتغيير data type = date date_h ونكتب الكود التالي : create_record; declare x number; begin select to_date(sysdate,'dd-mm-yyyy'), nvl(max(emp_COUNT),0)+1 into :date_h,x from dual,emp; :emp_count:=x; :emp_ser:=x ||'/'||:date_h; end; ترقيم تلقائي مع تاريخ السنة.rar تقديم بلاغ
بتاريخ: 18 أغسطس 201114 سنة كاتب الموضوع comment_215109 السلام عليكم ورحمة الله وبركاته الدرس الخامس عشر : مهارات متقدمة في RECORD GROUP في هذا الدرس سنقوم بإنشاء 3 جداول : 1- جدول الطلاب بإسم STUD ويحتوي على عامودين STUD_ID , STUD_NAME ومن ثم ندخل البيانات .2- جدول المواد بإسم SUBJ_CODE ويحتوي على عامودين SUBJ_ID , SUBJ_NAME ومن ثم ندخل البيانات .3- جدول بإسم SUBJ ويحتوي على 3 أعمدة STUD_ID , SUBJ_ID , SUBJ_NAME ونتركه فارغاً لأن بياناته سندخلها من الشاشة .وبعد ذلك نعمل ربط CONSTRAINT بين الجدول SUTD و SUBJ من خلال الحقل STUD_ID في كلا الجدولين . ومن خلال الفورم بلدر سوف نبني شاشة مكونة من بلوك STUD وبلوك SUBJ ونربط البلوك الثاني بـ LOV للمواد SUBJ_CODE والفكرة في هذا الدرس أن أي مادة أدخلها لطالب معين لاتظهر في LOV وتعطيني فقط المواد التي لم يتم اختيارها , وتتم هذه الطريقة من خلال كتابة الكود التالي في RECORD GROUP SELECT ALL SUBJ_CODE.SUBJ_ID, SUBJ_CODE.SUBJ_NAME FROM SUBJ_CODE WHERE SUBJ_ID NOT IN (SELECT SUBJ_ID FROM SUBJ WHERE SUBJ.STUD_ID = :STUD.STUD_ID) خصائص متقدمة في RECORD GROUP.rar تقديم بلاغ
بتاريخ: 28 أغسطس 201114 سنة comment_215404 أنا كنت من شغلي القديم مجمعة كودات زي مانت عامل هون بس الفلاشه الي عليها كلشي صابها فيروس ولشي راح اتحرق دمي صراحه بالأول بس الحمدلله لقيت كودات شبهها الله يجزيك الخير تقديم بلاغ
بتاريخ: 28 أغسطس 201114 سنة comment_215406 شنو هاي الاقام الي تستخدمها بالكود زي<pre class="prettyprint">'واي اصدار من الاوركل عمل تشتغل</pre> تقديم بلاغ
بتاريخ: 7 سبتمبر 201114 سنة كاتب الموضوع comment_215584 شنو هاي الاقام الي تستخدمها بالكود زي<pre class="prettyprint">'واي اصدار من الاوركل عمل تشتغل</pre> آسف على التأخر في الرد , لي فترة مادخلت على المنتدى . بالتسبة للكود المذكور ماأدري انتي من وين جبتيه يعني ماليش دعوة فيه . وأنا استخدم 10g data base & dev 6i تقديم بلاغ
بتاريخ: 7 سبتمبر 201114 سنة comment_215590 create_record; declare x number; begin select to_date(sysdate,'dd-mm-yyyy'), nvl(max(emp_COUNT),0)+1 into :date_h,x from dual,emp; :emp_count:=x; :emp_ser:=x ||'/'||:date_h; end; والله هادا كود موجود بالمشاركه رقم 27شوف الأرقام 39# تقديم بلاغ
بتاريخ: 7 سبتمبر 201114 سنة comment_215591 لأ لأ في شي غلط الكود هلأ وضح بس مشاركاتك القديمه مش هيك بتظهر عندي هادا السطر emp_ser:=x ||'/'||:date_h; بيظهر هيك :emp_ser:=x || ' ; / ' ; ||:date_h تم تعديل 7 سبتمبر 201114 سنة بواسطة Sireen تقديم بلاغ
بتاريخ: 16 سبتمبر 201114 سنة كاتب الموضوع comment_215727 السلام عليكم ورحمة الله وبركاته وكل عام وانتم بخير الدرس السادس عشر : طريقة عمل LIST ديناميكية راح يكون شغلنا على الجدولين EMP & DEPT من اسكيما SCOTT/TIGER من الفورم بلدر ننزل حقل رقم القسم من جدول الاقسام ونضعه بالأعلى ومن ثم نضيف الحقول من جدول الموظفين على أن يكون البلوك تابلور طبعاً بعد ما نربطه بجدول الاقسام من خلال حقل DEPTNO . ثم نقوم بتحويل حقل رقم القسم في بلوك الاقسام الى LIST ITEM ومن الخاصية Elements in list نضع القيمة التالية ALL_DEPARTMENT ومن الحدث WHEN-LIST-CHANGED نكتب الكود التالي : GO_BLOCK('EMP'); EXECUTE_QUERY; GO_BLOCK('DEPT'); ومن الحدث الخاص بالقورم WHEN-NEW-FORM-INSTANCE نكتب الكود التالي : declare RR recordgroup; n number; begin RR:=create_group_from_query('QQ','select dname,to_char(deptno)from dept'); n:=populate_group(RR); populate_list('dept.deptno','QQ'); end; مع تمنياتي للجميع بالتوفيقوتقبلوا تحياتي LIST_DYNAMIC.rar تقديم بلاغ
بتاريخ: 15 ديسمبر 201114 سنة كاتب الموضوع comment_218615 السلام عليكم ورحمة الله وبركاته الدرس السابع عشر : طريقة إخفاء Url من خصائص shotcut الخاص بالمشروع أي برنامج للأوراكل يعمل له إختصار على سطح المكتب لسرعة الوصول ولايمكن الدخول عليه حتى يتم كتابة المسار و كتابة user_name و password التابعة لقاعدة البيانات في خصائص shotcut حتى نستطيع الدخول على الشاشة الرئيسية للبرنامج , ولكن عيب هذه الطريقة أنها تكون مكشوفة للعميل . وفي هذا الدرس سنتعلم الطريقة الأفضل والآمنة . من شاشة الدخول على النظام في الفورم بلدر نضيف trigger on_logon ثم نكتب الكود التالي : logon('scott','tiger'||'@'||'orcl'); وهذا الكود يفتح على اسكيما scott/tiger وقاعدة البيانات orcl . ومن خصائص shotcut الخاص بالمشروع وفي خانة targer أو الهدف نكتب مسار البرنامج , مثال C:\orant\BIN\ifdbg60.EXE D:\scott\logon.fmx تم تعديل 15 ديسمبر 201114 سنة بواسطة faa_100 تقديم بلاغ
بتاريخ: 28 ديسمبر 201114 سنة كاتب الموضوع comment_219079 السلام عليكم ورحمة الله وبركاته الدرس الثامن عشر : بناء شاشة استعلام في هذا الدرس سنقوم بعمل شاشة استعلام ندخل فيها رقم القسم لتظهر بيانات الموظفين التابعين للقسم . أولاً : من module في الفورم بلدر نضيف بلوك بإسم srsh غير متصل بقاعدة البيانات ثم نضيف فيه text_item بإسم deptno ومن النوع Number و Database item = no , ومن الحدث (trigerr : key-next-item) نكتب الكود التالي : next_block; execute_query; ثانياً : نضيف بلوك emp من الجدول emp في اسكيما scott نختار الحقول المطلوبة ومن ضمنها deptno ومن خصائص البلوك emp نذهب إلى الخاصية Where clause ونكتب بداخلها الشرط التالي : emp.deptno = :srsh.deptno وعند تنفيذ الفورم ندخل رقم القسم في البلوك srsh ثم enter ينتقل المؤشر إلى البلوك emp ثم تعرض البيانات . شاشة استعلام.rar تقديم بلاغ
بتاريخ: 14 نوفمبر 201213 سنة comment_229098 شكراً جزيلاًاتمنى ان يكون ذلك في ميزان حسناتكم تقديم بلاغ
بتاريخ: 5 أبريل 201510 سنة comment_261419 السلام عليكم ورحمة الله وبركاته الدرس الثامن عشر : بناء شاشة استعلام في هذا الدرس سنقوم بعمل شاشة استعلام ندخل فيها رقم القسم لتظهر بيانات الموظفين التابعين للقسم . أولاً : من module في الفورم بلدر نضيف بلوك بإسم srsh غير متصل بقاعدة البيانات ثم نضيف فيه text_item بإسم deptno ومن النوع Number و Database item = no , ومن الحدث (trigerr : key-next-item) نكتب الكود التالي : next_block; execute_query; ثانياً : نضيف بلوك emp من الجدول emp في اسكيما scott نختار الحقول المطلوبة ومن ضمنها deptno ومن خصائص البلوك emp نذهب إلى الخاصية Where clause ونكتب بداخلها الشرط التالي : emp.deptno = :srsh.deptno وعند تنفيذ الفورم ندخل رقم القسم في البلوك srsh ثم enter ينتقل المؤشر إلى البلوك emp ثم تعرض البيانات . مجهود رائع وشرح ممتاز تقديم بلاغ
بتاريخ: 5 أبريل 201510 سنة comment_261459 السلام عليكم ورحمة الله وبركاته أخوكم مبتدأ في الأوراكل ومن قبل كم شهر بدأت بالتطبيق والبركة بهذا المنتدى الكريم حيث استفدت كثيراً وأعطاني الثقة في نفسي وقد اتفقت مع إحدى الشركات لعمل نظام خاص بها وقد استعنت بأحد الإخوة المحترفين بهذا المجال بواسطة المنتدى وحبيت إني أنقل الفائدة للجميع وأرجو من الله أن يتقبلها مني صدقة جارية ولوالديي ولأسرتي ولكل من له علينا حق أخوكم/ فؤاد عبده بعد أربعه سنوات من المشاركة الاولى .... والإجتهاد والمساهمة في إفادة الأخوة الأعضاء من خلال عرض ثمانية عشر درسا ولازالت الدعوات مستمرة لك ولوالديك ... وسوف تستمر إن شاء الله اللهم تقبل عمله ... صدقة جارية منه ولوالدية ولأسرته ولكل من له حق علينا اللهم أمين اللهم تقبل عمل كل من ساهم بحرف أو كلمة أفاد وساعد بها الآخرين ونفع بها الأمة الإسلامية وبارك له في صحتة ورزقة وأهلة تقديم بلاغ
بتاريخ: 26 يونيو 201510 سنة comment_263383 بارك الله فيك وفي مجهودك الرائع واتمنى ان تستمر تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.