بتاريخ: 11 سبتمبر 200916 سنة comment_169418 لدي تيكست على الفورم يحتوي ارقام الموظفين من جدول الموظفين ويفصل بين كل رقم والتاني بفاصلة مثال : 23;55;66;77;89;وهكذا اريد ان اخزن لكل رقم موجود في التيكست في جدول يعني من خلال هذا المثال سيتم انشاء خمس ريكورد كيف يمكنني ذلك تقديم بلاغ
بتاريخ: 11 سبتمبر 200916 سنة comment_169421 استخدمsubstrتقسم الكلمة الى عدة كلمات بالبحث عن الفاصلةثم اعمل لوب بعدد وجود الفاصلة واكتب جملة الانسرت تقديم بلاغ
بتاريخ: 12 سبتمبر 200916 سنة كاتب الموضوع comment_169433 كيف ؟؟؟ وعندي عدد غير محدد من النتائج تقديم بلاغ
بتاريخ: 12 سبتمبر 200916 سنة comment_169434 k:=1; while substr(word,1,instr(word,';')',k) is not null loop insert into values(substr(word,';',1,instr(word,';')',k) ; k:=k+1; end loop; دى الفكرة وظبطها انت تم تعديل 12 سبتمبر 200916 سنة بواسطة asd202 تقديم بلاغ
بتاريخ: 12 سبتمبر 200916 سنة كاتب الموضوع comment_169435 اخي الكريم ولا فهمت شي معلش اشرحلي تقديم بلاغ
بتاريخ: 12 سبتمبر 200916 سنة comment_169442 احنا نحتاج الاول نقسم الكلمة الكبيرة اللى فيها فاصلات كتير الى عده كلمات صغيرةبالبحث عن الفاصلةahmed;mohamed;adelناخد من اول حرف لحد الفاصلة تبقى احمد نعملها انسيرتوبعدين k=2 فنجيب تانى كلمة وهى محمد نعملها انسيرتوبعدين k تزيد تبقى 3ونجيب تالت كلمة عادل ونعمل انسيرتوبعدين نجيب رابع كلمة بعد الفاصلة تطلع فاضى فيخرجعلى فكرة زود فى instr kاعمل سيرش على عمل instr and substrفالمنتدى وحتلاقى العملية سهلة تقديم بلاغ
بتاريخ: 12 سبتمبر 200916 سنة كاتب الموضوع comment_169474 مش عارف اعمل الكود يا اخي مش زابط معي تقديم بلاغ
بتاريخ: 12 سبتمبر 200916 سنة comment_169475 مرحبا ماهر..كيفك ؟بعذ اذن اخي asd202 للتعديل على الكود...جرب وضعه على بروسيجر ونادي البروسيجر على زر وشوف النتيجه: PROCEDURE AAA IS K NUMBER; BEGIN k:=1; while substr(:BLK.UR_ITEM,1,instr(:BLK.UR_ITEM,';')',k) is not null loop insert into UR_TABLE values(substr(:BLK.UR_ITEM,';',1,instr(:BLK.UR_ITEM,';')',k); commit; k:=k+1; end loop; END; بالتوفيق تقديم بلاغ
بتاريخ: 12 سبتمبر 200916 سنة كاتب الموضوع comment_169486 while substr(:MESSAGES_NEW.send,1,instr(:MESSAGES_NEW.send,';'),k) is not nullwrong number of types of arguments in call to substr يعطيني هذا الخطأ تقديم بلاغ
بتاريخ: 13 سبتمبر 200916 سنة comment_169522 هو انا مش عارف ده عشان موضوع الفورمة بتاعة المسجات ؟؟؟انا رديت في الموضوع السابق بحل بسيط جداً ، انت ليه أصلا تاخد من التكست وانت عندك البيانات متقسمة جوه البلوك وعلى العموم لو انت عايز تعمله من على التكست بسيطة نفترض انك بتفصل بين الارقام بـ ;بقى الكود هيكون كده DECLARE V_WORD VARCHAR2(300) :=''; BEGIN FOR I IN 1..LENGTH(:YOUR_TEXT)+1 LOOP IF SUBSTR(:YOUR_TEXT ,I,1) =';' OR I = LENGTH (:YOUR_TEXT)+1 THEN INSERT INTO YOUR_TABLE VALUES (V_WORD); V_WORD :=''; ELSE V_WORD :=V_WORD || SUBSTR(:YOUR_TEXT ,I,1) ; END IF ; END LOOP ; COMMIT ; END ; جرب وقولي تقديم بلاغ
بتاريخ: 13 سبتمبر 200916 سنة comment_169538 ما زبط ليه ؟؟انا جربت عندي وشغال ميه ميه بيطلع ايرور ولا ايه بالظبط ؟؟ تقديم بلاغ
بتاريخ: 13 سبتمبر 200916 سنة comment_169549 الكود سليم وتم تنفيذه بنجاح يا أخ ماهروشكرا ل asd202 , PALI.ORACLE, abdu1_farعلى المشاركات الفعالةوده تطبيق لفورمة بسيطة فيها الكود اللي كتبوه الاخوه مع اختلاف بسيط للتوضيحالفورمة في المرفقات code_form6i.rar تقديم بلاغ
بتاريخ: 13 سبتمبر 200916 سنة كاتب الموضوع comment_169579 شكر للجميع لكل من ساهم في حل المشكلة واخيرا زبط الكود وهو كتالي : DECLARE V_WORD VARCHAR2(300) :=''; BEGIN FOR I IN 1..LENGTH(:sent_to)+1 LOOP IF SUBSTR(:sent_to ,I,1) =';' OR I = LENGTH (:sent_to)+1 THEN Message(v_word); INSERT INTO messages (SENT_BY,MESSAGE,READ_FLAG,MESSAGE_DATE, SENT_TO ,ID,MESSAGE_TITLE) VALUES (:SENT_BY,:MESSAGE,:READ_FLAG,:MESSAGE_DATE,V_WORD,msg_seq.nextval,:MESSAGE_TITL E); V_WORD :=''; ELSE V_WORD :=V_WORD || SUBSTR(:sent_to ,I,1) ; END IF ; END LOOP ; commit; END ; شكر للاخ العزيز ع قلبي كتير الاخ عبد الله وشكر وتقدير للاخ الكبير احمد حبيب قلبيوشكر للاخوان asd202 و Yasser-Khairalla... ما بتقصرو تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة comment_169651 العفو يافندم وربنا يوفقك وتنتهي من الشاشة ... وتفيد بيها اخوانك في المنتدىولو احتجت فيها مساعدة احنا موجودين تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة كاتب الموضوع comment_169655 مشكور اخ عبد الله ولكن عندي ملاحظة بسيطة اكتشفتها الان وهي ان اول ريكورد يتم تخزينه لا يوجد به رقم موظف لماذا ؟؟ يعني متلا ارسال رسالة الى ثلاثة موظفين يرسل الى اربعة ثلاثة موجودة ارقامهم والرابعة بدون رقم موظف ؟ تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة comment_169666 بص هو انا مش عارف المشكلة فين بس انا عندي شغال ومية ميه ، يعني بضيف 3 اسماء بينزل تحت في الداتا بيز 3 اسماء ممكن تعمل بريتن اسكرين في الرن تايم .... بعد ما دخلت البيانات في التكست وبعد كده تعمل بيرنت اسكرين للتريجر بتاع الزرار المسئول عن نقل البيانات للجدول ؟؟ويارب اقدر افيدك ... لاني مش لاقي اي سبب للي انت بتقوله ، انا قاعدت ابحلق وارجع في الكود مرة تانية اني ألاقي حاجة مش لاقي منتظرك ياباشا تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة comment_169681 تقريبا هو انا عرفت المشكلة فين لان الكود الاول اللي كان بينزل في التكست كان بيحط ; في الاول قبل اول كلمة فاحنا لما كنا بنجي نعمل انسرت في الجدول كنا بنقطع الكلمة اللي قبلها ;وبما ان اول حاجة في التكست كانت ; يبقى الكلمة اللي قبلها NULL وبالتالي كان بينزل ريكورد زيادة برقم موظف NULLعلى العموم انا رديت في الموضوع التاني لما ، تغير الكود بالكود اللي انا كتبته في الموضوع التاني ان شاء الله المشكلة هتختفي انا مكنتش بتظهر معايا لاني كنت بجرب على التود مش على الفورمة تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.