بتاريخ: 13 ديسمبر 200916 سنة comment_179147 السلام عليكم انا عندي حقل وهو رمز معين 1/109 بمعنى ان الرقم 109 ثابت والرقم والرقم 1 هو التسلسل بمعنى يزيد كتبت هذه الجملة ولكن بلا فائدة SELECT '109/'||rpad(nvl(max(substr(kd,5,2)),0)+1,1,'0') into :kd from nT; ارجوووووو المساعدة تقديم بلاغ
بتاريخ: 13 ديسمبر 200916 سنة comment_179160 السلام عليكمانت بامكانك اولا احضار اكبر قيمة ثم اضافة المطقع لها: Select Max(Kd) Into :Kd From Nt; New_Value := '109/'||:Kd; تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة كاتب الموضوع comment_179175 ممكن توضح اكثر لانني جربت الكود وما نفع شكرا تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة comment_179189 هو المفروض kd ده اسم كولم؟؟؟ تم تعديل 14 ديسمبر 200916 سنة بواسطة abdu1_far تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة comment_179205 DECLARE V_MAXNUM NUMBER(10);BEGINSELECT NVL(MAX(SUBSTR(KD,INSTR(KD,'/')+1)),0)+1INTO V_MAXNUMFROM NT;:KD := '109/'||V_MAXNUM;END; تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة comment_179211 هو بغض النظر عن اجابات اخوانا الاعضاء .... انهم يجعلوا الكود على مرحلتينانا مش شايف اي مشكلة في كودك وبيجيب داتا صح لما جربته على جدول تاني عنديممكن تقولنا ايه المشكلة بالظبط اللي بتطلع معاك ؟؟؟ تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة كاتب الموضوع comment_179215 يا اخيلقد قمت بتجربة الكود ولكن يصل الرقم الى 10 وبعد ذلك يكتب 10 ولا يزيد عن رقم 10 ارجوووووووووو المساعدة تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة comment_179218 and in case if you removed the 'rpad' you'll have to divide your code as stated before تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة كاتب الموضوع comment_179219 يا اخي لقد قمت بتجربة نفس الكود الذي كتبته DECLARE V_MAXNUM NUMBER(10); BEGIN SELECT NVL(MAX(SUBSTR(KD,INSTR(KD,'/')+1)),0)+1 INTO V_MAXNUM FROM NT; :KD := '109/'||V_MAXNUM; END; ولكن بصل الى الرقم 10 ولا يزيد واذا زاد كتب 10 مرة اخرى تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة comment_179221 REPLACE THIS LINE IN SELECT STATEMENT: NVL(MAX(TO_NUMBER(SUBSTR(KD,INSTR(KD,'/')+1))),0)+1In this statement I turned the cut number to number as your database feild is char تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة كاتب الموضوع comment_179222 المشكلة لما اضع قبل الكود create_record العد يقف عند الرقم 10 create_record; DECLARE V_MAXNUM NUMBER(10); BEGIN SELECT NVL(MAX(SUBSTR(n,INSTR(n,'/')+1)),0)+1 INTO V_MAXNUM FROM nn; :n := '107/'||V_MAXNUM; END; commit; اما اذاكان بدون create_recordيكمل العد بدون مشاكل لا ادري مالسبب تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة كاتب الموضوع comment_179241 المشكلة انحلت عندما غيرت نوع الcolumn الى number جات معي بس المشكلة انا اريدها varchar2 مالحل تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة comment_179255 ما تغيرش نوع الكولوم ان اقصد ضيف to_number function بعد substr function كما بالكود الاخير الذي ارسلته تقديم بلاغ
بتاريخ: 14 ديسمبر 200916 سنة كاتب الموضوع comment_179272 ضفت to_number ولكن بلا فائدةارجووو تجربة الكود create_record; DECLARE V_MAXNUM NUMBER(10); BEGIN SELECT NVL(MAX(SUBSTR(n,INSTR(n,'/')+1)),0)+1 INTO V_MAXNUM FROM nn; :n := '107/'||V_MAXNUM; END; commit; وستلاحظون انه يقف عند الرقم 10 تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.