TAREK ALHAMAD بتاريخ: 21 فبراير 2004 تقديم بلاغ مشاركة بتاريخ: 21 فبراير 2004 (معدل) هذا ال PROCEDURE خاص بتقسيم أرقام التليفونجرب أحسن كثير من الشرحهذا ال PRODEDURE------------------------------من على SQL PLUS ضع الكود التالى كما هو PASTE & COPY CREATE OR REPLACE PROCEDURE format_phone (v_phone_no IN OUT VARCHAR2) IS BEGIN v_phone_no := '(' || SUBSTR(v_phone_no,1,3) || ')' || SUBSTR(v_phone_no,4,3) || '-' || SUBSTR(v_phone_no,7); END format_phone; / للتجريب من الفورم المرفق الخاص بالعملاءأدخل بيانات أى عميل وليكن رقم العميل واسم العميل ورقم التليفون واعمل SAVE ولاحظ التغير فى حقل التليفون------------------------------------------------------------------------------------أذا اردت أستخدامة على اى حقل تليفون فى اى فورمضع ال TRIGGER على حقل التليفون WHEN-VALIDATE-ITEM if :phone is not null then format_phone(:phone); end if; phone: -----------> أسم حقل التليفون format_phone -------> أسم ال procedure FORMAT_PHONE.fmb تم تعديل 21 فبراير 2004 بواسطة khaled اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
khaled بتاريخ: 21 فبراير 2004 تقديم بلاغ مشاركة بتاريخ: 21 فبراير 2004 (معدل) فكره رائعه بس لو تعملها على شكل function سوف يكون احسن لان الفنكشن سف تاخذ الرقم وترجعه على شكل phone fromat بحيث نستطيع ان نستخدمها في الformula calculation الخاص بالحقل الموجود في الفورم تم تعديل 21 فبراير 2004 بواسطة khaled اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
arab20002000 بتاريخ: 21 فبراير 2004 تقديم بلاغ مشاركة بتاريخ: 21 فبراير 2004 مشكور على الكود اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
salama11433 بتاريخ: 21 فبراير 2004 تقديم بلاغ مشاركة بتاريخ: 21 فبراير 2004 شكراااااااا اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
John بتاريخ: 22 فبراير 2004 تقديم بلاغ مشاركة بتاريخ: 22 فبراير 2004 شكراً اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
TAREK ALHAMAD بتاريخ: 22 فبراير 2004 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 22 فبراير 2004 هى هى يا أستاذ خالد مش هتفرق خالص بالعكس الprocedure سوف ينفذ أسرع خصوصا فى حالة وجود عدد كبير من ال procedures وال functions على الداتابيز وهى البيئة الفعلية والعملية لاى مشروعلذلك ان أرى ان procedures عمله أسرع من الفنكشن عموما اذا كان يؤدى نفس الوظيفة والرأى الاخير لك طبعا فانت أستاذى وكثيرا ما أستفدت من خبرتكورجاء خاص منك أن تكمل دروس pl/sql التى كنت قد بداتها حتى اتمكن منها لانها القسم الوحيد فى أوراكل ديفلوبر الذى أجد نفسى فيه ضعيف ما عدا ما كنت قد قمت بشرحةفى دروسك السابقة بعد شرحك له وجدت نفسى متمكن منه ومستوعب له نظرا لاسلوبك الرائع فى الشرح وتبسيط الامور وايضاح المعنى وتوصيل الفكرة ... أرجو الاهتمام يا أستاذ خالد اذا سمح وقتك بمتابعة الدروس وشكرا لكم جميعايا أجمل أعضاء لاروع منتدى اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
جلال شواقفه بتاريخ: 1 نوفمبر 2007 تقديم بلاغ مشاركة بتاريخ: 1 نوفمبر 2007 شكرا لك يا اخ طارق اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sydra ali hamza بتاريخ: 4 أغسطس 2008 تقديم بلاغ مشاركة بتاريخ: 4 أغسطس 2008 (معدل) السلام عليكم ليه فى procedure دهمعملناش الvariable declare v_phone_no varchar2 ؟؟؟؟؟؟؟؟ممعلش عشان أنا متلخبطه أوى فى ال varaibles و ميش بعرف أفرق بنهم تم تعديل 4 أغسطس 2008 بواسطة sydra ali hamza اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Ahmad.Hasan بتاريخ: 16 أغسطس 2009 تقديم بلاغ مشاركة بتاريخ: 16 أغسطس 2009 (معدل) السلام عليكممشكور أخي على البروسيجر..ولكن هذا في حال كان رقم التلفون فقط 10 ارقام..ولكن عند كتابته مع الكود الدولي لا يعمل...قمت بالتعديل على البروسيجر بحيث يقبل كلتا الحالتين: PROCEDURE format_phone (v_phone_no IN OUT VARCHAR2) IS BEGIN v_phone_no := '(' || SUBSTR(v_phone_no,1,3) || ')' || SUBSTR(v_phone_no,4,2) || '-' || SUBSTR(v_phone_no,7); END format_phone; بالتوفيق تم تعديل 16 أغسطس 2009 بواسطة PALI.ORACLE 2 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.