بتاريخ: 14 سبتمبر 200916 سنة comment_169650 اخوي عبدالله الكود شغال تمام ولكن اوجه بعض المشاكل في حالات معينة بالكود لذلك ارى ان الكود التالي عند وضعه if :CHECK_BOX234 = 1 then:send:= :send || ';' ||:list.id;يعطينينا نفس المطلوب وبطريقة اسهل ومختصرة ولكن مشكلة هذا الكود هو عند ازالة اشارة الصح عنه لا يحذف رقم الموظف من التيكست اذا كان في طريقة لحذف الرقم من التيكست عند ازالة الصح يكون احسن اما اذا لا يوجد سأشرح لك مشاكل الكود الذي كتبته ارجو الرد ؟ وشكرا كيفك اخ ماهرهو انا مش عارف الرد ده على الموضوع الاصلي ، يعني ازاي تجمع ارقام الموظفين في تكست واحد وتفصل بينهم بعلامة ، ولا على كود الاضافة في الجدول ؟؟؟يعني ردك ده على الموضوع الاصلي ، ولا على اخر رد لي أرجو التوضيح تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة كاتب الموضوع comment_169657 اخي عبدالله انتا اعطيتني الكود اللي فوق والذي يحتوي على loop وااضافة الارقام لماذا لا نستخدم هذا الكود :send:= :send || ';' ||:list.id;when checkbox changedلما تكون القيمة 1 بيضيف تمام يعني معلم على الرقم باشارة صحولكن لما تتغير القيمة ويشيل الصح نحذف الرقم من التيكست ؟ اتمنى ان تكون وصلت الفكرة تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة comment_169664 ما احنا قلنا السبب قبل كده افرض الاخ اليوسر عمال يلعب ، كل شوية يحط علامة ، كده يضيف ، وبعد كده يشيلها ، وبعد كده يحطها تاني يبقى هيضيفه تانيإلا لو انت عايز اول لما يشيل العلامة يحذف رقم الموظف من التكست لو انت عايز كده ... هعملهاك ...بس يعني حاسس انها ملهاش زلامة اوي يعنيبس هعملها ... ويكون عندك الحلين واختا انت براحتك تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة كاتب الموضوع comment_169665 بالضبط انا عاوز كده اذا مافيش غلبة يا اخوي عبدالله ؟؟؟ ممنونك شكرا لك تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة comment_169680 اتفضل يافندمبس انا كنت بشتغل على اسكيمة عندي ... يعني انا قيمة الحاجة اللي كنت عايز اضيفها عندي في التكست اسمها USER_IDبالنسبة لك انت مش عارف اسمها EMP_CODE ولا EMP_ID ولا ايهعلى العموم هتغير كل كلمة USER_ID باسم الحقل اللي فيه رقم الموظف ... واضحها ياباشا ؟؟ DECLARE v_word VARCHAR2 (300); V_SUB_STR VARCHAR2(300); BEGIN IF :chk = 1 THEN IF :send IS NULL THEN :send := :user_id; ELSE :send := :send || ';' || :user_id; END IF; ELSE v_word := :send; :send := ''; FOR i IN 1 .. LENGTH (v_word) + 1 LOOP IF SUBSTR (v_word, i, 1) = ';' OR i = LENGTH (v_word) + 1 THEN IF V_SUB_STR <> :user_id THEN :SEND := :SEND || ';' || V_SUB_STR; END IF ; V_SUB_STR := ''; ELSE V_SUB_STR := V_SUB_STR|| SUBSTR (v_word, i, 1); END IF; END LOOP; END IF; END; جرب وقولي تقديم بلاغ
بتاريخ: 14 سبتمبر 200916 سنة كاتب الموضوع comment_169685 اخوي عبدالله مشكور ع الكودكود جميل ورائع ويستحق التأمل فعلا الكود شغال تمام و100 \100 ولكن بقيت مشكلة الريكورد الذي null حتى بعد هذا الكود تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة comment_169754 أولاً : الحمد لله ان الكود ادى الغرض المطلوبثانيا : ممكن تعمل بيرنت اسكرين زي ما قولت لك في وقت الرن تايم ، بعد ما تختار من الشيك بوكس وترمي قيم في التكست وبرينت سكرين تانية من الكود اللي في الزرار الخاص بعملية الاضافة في الجدول ، الكود اللي بيعمل INSERT يعني تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة كاتب الموضوع comment_169755 اخوي عبدالله تم رفع الصورتين صورة الاضافة صورة الكود للادخال وشكرا لاهتمامك تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة comment_169757 الصورة الاول ... مفيش حاجة اترمت في التكست اللي تحت لسه ( مش التكست ده برضه اللي هيترمي فيه أرقام الموظفين اللي هيتبعت لهم الرسالة ؟؟) تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة كاتب الموضوع comment_169758 نعم كلام سليم هذا هو التيكست ولكن المشكلة في كود الانسيرت تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة comment_169760 لا المشكلة في كود الانسرت بص كده على الصورة الاولى ، التكست بتاع إرسال إلي هتلاقي سيمي كولن ; زيادة موجوده في اول اول في اخر التكست ، انا مش عندي كده خالص يعني المفروض وفقا للكود اللي عملناه واللي بيرمي في التكستتكست إرسال إلى هيكون فيه كده (107;100;24) ..... لكن انت عندك في أول السطر سيمي كولن زيادة ... جت منين ؟؟؟؟؟السيمي كولن الزيادة ده ، بتخللي كود الانسرت يعتبر ان فيه قيمة قبلها والقيمة ده NULL وبالتالي بيضيف هنا ريكورد زيادة بقيمة NULL لرقم الموظف تم تعديل 15 سبتمبر 200916 سنة بواسطة abdu1_far تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة كاتب الموضوع comment_169761 والله ما بعرف هي الكود زي ما هوي في الفورم كود اضافة الى التيكست DECLARE v_word VARCHAR2 (300); V_SUB_STR VARCHAR2(300); BEGIN IF :CHECK_BOX234= 1 THEN IF :send IS NULL THEN :send := :list.id; ELSE :send := :send || ';' || :list.id; END IF; ELSE v_word := :send; :send := ''; FOR i IN 1 .. LENGTH (v_word) + 1 LOOP IF SUBSTR (v_word, i, 1) = ';' OR i = LENGTH (v_word) + 1 THEN IF V_SUB_STR <> :list.id THEN :SEND := :SEND || ';' || V_SUB_STR; END IF ; V_SUB_STR := ''; ELSE V_SUB_STR := V_SUB_STR|| SUBSTR (v_word, i, 1); END IF; END LOOP; END IF; END; تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة comment_169764 انت متأكد ان ده الكود اللي انت مستخدمه ؟؟؟؟ده انا خدته زي ماهو وعملته على الفورمة بتاعتي ، ومش بنزل السيمي الكولن الزيادة ده طيب معلش جرب انك تعمل تشيك على رقمين بس ، وبص هتنزل كام سيمي كولن في التكست ، المفروض ينزل واحدة بس ، شوف كده وقولي تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة كاتب الموضوع comment_169765 عبدالله انا عرفت السبب الان الكود شغال زي ما انتا حكيت بدون زيادة ولكن المشكلة تبقى السيمي الزيادة لما تشيل صح عن رقم ينحذف الرقم وتبقى السييمي اتمنى ان تكون وصلت الفكرة تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة comment_169768 اتفضل ياباشا ..... ده الكود بعد التعديل DECLARE v_word VARCHAR2 (300); V_SUB_STR VARCHAR2(300); BEGIN IF :chk = 1 THEN IF :send IS NULL THEN :send := :LIST.ID; ELSE :send := :send || ';' || :LIST.ID; END IF; ELSE v_word := :send; :send := ''; FOR i IN 1 .. LENGTH (v_word) + 1 LOOP IF SUBSTR (v_word, i, 1) = ';' OR i = LENGTH (v_word) + 1 THEN IF V_SUB_STR <> :LIST.ID THEN IF :SEND IS NULL THEN :SEND := V_SUB_STR; ELSE :SEND := :SEND || ';' || V_SUB_STR; END IF ; END IF ; V_SUB_STR := ''; ELSE V_SUB_STR := V_SUB_STR|| SUBSTR (v_word, i, 1); END IF; END LOOP; END IF; END; جرب وقولي تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة كاتب الموضوع comment_169769 يا سلام عليك يا اخوي عبدالله الكود اشتغل تمام وراحت مشكلة الاضاااااااااافة وكل المشاكل بخصوص هذا الموضوع انحلت طبعا انتا عارف انني سابقى عاجز عن شكرك ولكن لابد اناقول لك شكرا وجعلك الله من عتقاء هذا الشهر الكريم تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة comment_169770 ربنا يكرمك يافندم ... وأسأل الله عز وجل ان يجيب دعوتك ، ويعطيك أكثر مما دعوت لي بيه وجميع احبائنا اعضاء المنتدى وجميع المسلمين .. اللهم ءامينيعني نقدر نقول انا الفورمة هتترفع قريب على المنتدى ان شاء الله ؟؟ تقديم بلاغ
بتاريخ: 15 سبتمبر 200916 سنة كاتب الموضوع comment_169772 نعم اخي عبدالله اليوم او غدا ستكون على المنتدى ان شاء الله عزوجل وهذا كله بجهودك الله يكرمك شكرا لك تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.