بتاريخ: 4 يوليو 200718 سنة comment_104115 الأخوة الأعزاء بارك الله فيكم أرجو منكم أن تجيبوا على هذا السؤالعندي حقل TEXT ITEM يتكون من ثلاثة مقاطع كالتالي (FW-20107) حيث أن :1-(FW-) يمثل ثابت أي لا يتغير له مدلول خاص في البرنامج2- (201) هذا هو الرقم الذي أريده أن يتولد ديناميكياً 201,202,203,204……….. وهكذا ليس شرطاً أن يبدأ من 201 3- (07) هذا المقطع عبارة عن السنة الحالية وإذا كانت السنة 2008 فإن هذا المقطع يكون (08) وهكذا..........أي يكون معنى المقطع بالكامل ( الطلب رقم 201 للسنة 2007)علماً بأن هذا الحقل مفتاح أساسي ..... أرجوا من إخواني إعطائي الكود لجعل هذا الحقل يتولد ديناميكياً تقديم بلاغ
بتاريخ: 5 يوليو 200718 سنة comment_104142 الاخ الكريمالموضوع ان شاء الله بسيطin pre-insert trigger DECLAREX NUMBER;BEGINBEGINSELECT MAX(TO_NUMBER(SUBSTR(COLUMN_NAME,3,LENGTH(COLUMN_NAME-2))))+1INTO XFROM TABLE_NAME;EXCEPTIONWHEN NO_DATA_FOUND THENX:=1;END;:COLUMN_NAME:='FW-'||TO_CHAR(X)||TO_CHAR(SYSDATE,'YY');END;يارب يكون ده المطلوبسلام تقديم بلاغ
بتاريخ: 5 يوليو 200718 سنة كاتب الموضوع comment_104182 الأخ الكريم الف الف شكر لك اظن ان الكود 90% المطلوب وبارك الله فيك يأخي على هذا التجاوب تقديم بلاغ
بتاريخ: 6 يوليو 200718 سنة كاتب الموضوع comment_104195 أشكرك مرة أخرى يا أخ تيمور من أعماق قلبي الكود صحيح 100% ولكن أجريت عليه التعديلات كالتالي :DECLAREX NUMBER;BEGINBEGINSELECT MAX(TO_NUMBER(SUBSTR(INDENT_ID,4,LENGTH(SUBSTR(INDENT_ID,4,LENGTH(INDENT_ID)-2))-2))) +1 INTO XFROM ORDERS_DETAILS;EXCEPTIONWHEN NO_DATA_FOUND THENX:=1;END;:INDENT_ID:='FW-'||TO_CHAR(X)||TO_CHAR(SYSDATE,'YY');END; أود ان أوضح لك أن هذا الحقل في كتلة تفصيلية DETAIL BOLOCK وتتكون من عدة سجلات أي الفريم بتاعها من نوع TABULAR وعندما أقف على السجل الأول يتنفذ الكود بشكل صحيح وعندما اذهب إلى السجل الثاني ولم اعمل حفظ يأخذ السجل الثاني نفس الرقم للسجل الأول (انأ عارف لماذا .....لأنه لم يتم حفظ السجل الأول حتى يعيد لنا رقمه) وعندما ادخل السجل الأول ثم أضغط مفتاح حفظ تسير الأمور بشكل طبيعي علماً بأن الكود تحت الزناد WHEN-CREATE-RECORD لنفس الكتلة وليس في الزناد PRE-INSERT كما أشرت. ** أريد أن ادخل السجل الأول ثم انتقل إلى الجل الثاني فيأخذ السجل الرقم التلقائي مباشرة من دون أن اضغط زر حفظ** عندما أضع الكود في الزناد PRE-INSERT وفي وقت الإدخال اترك هذا الحقل فارغ فان المؤشر لن ينتقل إلى الحقل الثاني لأنه مفتاح أساسي ...وقد غيرت الخاصية VALIDATION UNIT = FORM ولم ينفع ذلك ؟؟؟؟** هل دالة التحويل في جملة SELECT السابقة ضروريةأرجوك أخي أن تأخذ في يدي لأني في البداية وأنت تعلم كم لك من الأجر .........۩ اللهـــــــــــــم صلي وسلم على سيدنا محمد وعلى آله وصحبه أجميعن ۩. سبحان الله وبحمده سبحان الله العظيم تقديم بلاغ
بتاريخ: 6 يوليو 200718 سنة comment_104196 الأخ / صقر محمديفضل التعامل مع الرقم التلقائى قبل انشاء السجل فى قاعدة البيانات كما ذكر الاخ / تيمور ... مع امر الpre-insert لسبب اساسى .. وهو بفرض انه يوجد أكثر من موظف يضيف سجل جديد فى نفس الشاشة فى نفس الوقت ومع افتراض استخدام تريجير when-create-record الذى استخدمته فى تجهيز الرقم التلقائى ... فى هذه الحاله سيتكرر نفس الرقم التلقائى .. وسيتم ادخال سجل واحد فقط .. وستظهر رساله خطأ للموظفين الاخرين .استكمالا للحل اجعل هذا الحقل محمى من الكتابة ... ولاتضع عليه شرط ضرورة الادخال .. لانه سيأخذ رقم تلقائى مع امر pre-insert......................كنت اريد ان اعرف ما فائدة تثبيت حرفى FW داخل مفتاح الجدول .. طالما انها قيمة ثابته ؟ أم ان هناك حروف اخرى سوف تستخدمها مع الجدول ؟لماذا فضلت ان تستخدم حقل واحد كمفتاح للجدول ..ولم تستخدم حقلين كمفتاح للجدول مثل .. حقل السنه الحالية و حقل أخر للمسلسل ( تلقائى ) تصميمك للحقل الواحد .. يدل على انك لن تبدأ مسلسل جديد مع بدايه كل سنه جديده ارجوا الايضاح .. وشكرا لك تقديم بلاغ
بتاريخ: 7 يوليو 200718 سنة كاتب الموضوع comment_104292 أخي / أستاذي AMGAD أشكرك على هذا التفاعل .......- ليس ظروري ان أثبت -FW في مفتاح الحقل الأساسي واذا كان بالإمكان ان افصلهم هذا شي جميل ولكن هل يمكنني ان اتعامل معهم بعد الفصل بسهولة ؟ لاني اريد ان يظهر الرقم هكذاFW-20507 على سبيل المثال. في شاشة الادخال وكذلك في التقرير. نعم ياخي هي حروف ثابتة ولايوجد حروف غيرها .-نعم اريد ان أبدأ مسلسل جديد مع بداية كل سنة ....لم انتبه لهذا من قبل ياخي الف شكر وارجوا ان توضح لي اكثر...۩ اللهـــــــــــــم صلي وسلم على سيدنا محمد وعلى آله وصحبه أجميعن ۩. سبحان الله وبحمده سبحان الله العظيم تقديم بلاغ
بتاريخ: 7 يوليو 200718 سنة كاتب الموضوع comment_104294 اشكرك ياخي امجد على هذة المعلومة القيمة pre-insert لاني بحاجة قصوى الى مثل هذه المعلومات۩ اللهـــــــــــــم صلي وسلم على سيدنا محمد وعلى آله وصحبه أجميعن ۩. سبحان الله وبحمده سبحان الله العظيم تقديم بلاغ
بتاريخ: 7 يوليو 200718 سنة comment_104305 الأخ / صقر من الافضل ان يكون حقل مفتاح الجدول الرئيسى للطلبات ال order 1 رقم السنه 4 ارقام 2 رقم الطلب 5 ارقام مثلا ثم اضف حقول اخرى على مستوى الطلبيه مثل نوع الطلب >>> مثال FWتاريخ الطلب رقم العميل ....اقترح ان يكون الجدول التفصيلى للطلبات Order_detailsمفتاح الجدول1 رقم السنه 2 رقم الطلب 3 رقم الصنفثم اضف حقول اخرى مثل الكمية السعر بالنسبة لاظهار رقم الطلب بشكل مركب .. هكذاFW-20507هذه بسيطه جدا ويستخدم معها اوامر جاهزه من اوامر الsqlمثل Substr >>> لتجزئة الحقل والحصول على جزء من الاسم بطول معين وعلامه التجميع || Concatination >>> لدمج الحقول تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.