الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

combo لما يكون رقم

مغلق
بدأه POWER _GIRL في 14 مارس 2005 · 9 رد · 733 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
rs.Open ("select Stf_Name from Stuff where Stf_No=" & Combo5 & ""), cn, adOpenKeyset, adLockOptimistic

aa_1432005443360.1804621.JPG

اخواني ابغا حل للاستعلام انا لاحظت ان الاستعلام يمشي صح لما تكون القيم نص لكن لما يكون رقم تطلعلي مشاكل اذا ماكان فيها تحديد

يعني لما تكون بالعكس :blink: تمشي صح

rs.Open ("select Stf_No from Stuff where  Stf_Name ='" & Combo5 & "'"), cn, adOpenKeyset, adLockOptimistic

تم تعديل هذه المشاركة بواسطة POWER _GIRL في 14 مارس 2005 في 15:43

<< CLICK TO START>>

post-41869-046528000%201305052277.jpg

ليس أن تجد حلا بل أن تجد الافضل

أن تصـــنع الخـيال هذا هوا الأفضل</span>

#2

الحل يعتمد على نوعية الحقل ...

أي إذا كان الحقل من نوع Number يمكنك استخدام جملة استعلام من دون تحديد أو بتحديد لا مشكلة في ذلك.

أما إذا كان الحقل من نوع Text فلا يمكن إنشاء استعلام من دون تحديد حتى ولو كانت القيمة المسندة للاستعلام هي رقم .

#3

انت تقصد ان الناتج المطلوب اظهاره من الاستعلام لو كان (من حقل نوعه نص)يجب ان يعيد قيمه !؟؟

لو كان كذلك فكيف احل المشكله للكود السابق! وشكراا

تم تعديل هذه المشاركة بواسطة POWER _GIRL في 14 مارس 2005 في 16:09

<< CLICK TO START>>

post-41869-046528000%201305052277.jpg

ليس أن تجد حلا بل أن تجد الافضل

أن تصـــنع الخـيال هذا هوا الأفضل</span>

#4

لا الذي اقصدة هو إن القيمة التي سوف تسند للاستعلام تعتمد على نوع الحقل فمثلا لا يمكننا اسناد قيمة حرفية إلى حقل من نوع Number.

وللتعامل مع الحقل من نوع Number في جملة الأستعلام، نستخدم الجملة التالية وهي نفس الجملة الموجودة في مشاركتك :

rs.Open ("SELECT Stf_Name FROM Stuff WHERE Stf_No=" & Combo5 & ""), cn, adOpenKeyset, adLockOptimistic

وهي بدون تحديد للفاصلة، وإيضا يمكن تحديد الفاصلة كالتالي ،

 rs.Open ("SELECT Stf_Name FROM Stuff WHERE Stf_No='" & Combo5 & "'"), cn, adOpenKeyset, adLockOptimistic

ولا تظهر إي مشكلة عند النتفيذ . ولكن ...

التعامل مع الحقل من نوع Text يكون فقط من خلال جملة استعلام مع تحديد فاصلة ما بين القيمة المسندة للستعلام وهي كالتالي :

 rs.Open ("SELECT Stf_Name FROM Stuff WHERE Stf_No='" & Combo5 & "'"), cn, adOpenKeyset, adLockOptimistic

بهذا يتبين إن الحقل من نوع Text لا يقبل إي قيمة تسند له بدون وضع فاصة، وهذا ما عنيته من التعليق في الرد السابق ..

والحل يكون بمراجعة الحقول والتأكد من انواعها فبهذا يمكن تجاهل الأخطاء أو المشاكل ..

#5

المشكله عندي اعتقد ان الجمله لاتقبل ان يكون الشرط null =

=SELECT Stf_Name FROM Stuff WHERE Stf_No

Combo5 عندما تكون فارغه يصدر رساله خطاء والغريب ان المشكله تقع عندما يكون

Stf_No=Combo5

لكن في الاستعلام الاخر حتى ولو اعاد null فلا مشكله مع Stf_Name=Combo5

----------------------------------------------------------------------------------

تم تعديل هذه المشاركة بواسطة POWER _GIRL في 14 مارس 2005 في 17:52

<< CLICK TO START>>

post-41869-046528000%201305052277.jpg

ليس أن تجد حلا بل أن تجد الافضل

أن تصـــنع الخـيال هذا هوا الأفضل</span>

#6

أقترح أن يتم التشييك على قيمة Combo5 بحيث إذا كانت قيمة رقمية يتم إستخدام الإستعلام الأول و إذا كانت غير ذلك يتم استخدام الإستعلام الثاني

مثلا

If IsNumeric(Combo5.Text)=True Then
     rs.Open ("select Stf_Name from Stuff where Stf_No=" & Combo5 & ""), cn, adOpenKeyset, adLockOptimistic
Else
     rs.Open ("select Stf_No from Stuff where  Stf_Name ='" & Combo5 & "'"), cn,dOpenKeyset, adLockOptimistic

End If

والله أعلم

اللهم اغفر لي و لوالدي و للمؤمنين يوم يقوم الحساب

لا إله إلا الله عدد ما كان و عدد ما يكون و عدد الحركات و السكون

#7

السلام عليكم ورحمة الله وبركاته

تعقيبا على كلام الأخت

اقتباس
لمشكله عندي اعتقد ان الجمله لاتقبل ان يكون الشرط null =

حل مشكلة Null هو أن تضيفى علامتى تنصيص قبل إسناد القيمة للحقل عند الإدخال وعند السترجاع

يعنى مثلا تقولى Stf_Name="" & Combo5.Text

وعند الاسترجاع تقولى Combo5.Text = "" & Rs!Stf_Name

وإذا كانت القيمة رقمية فالأفضل استخدام Val("" & Combo5.Text)

لأن هناك فرق بين الـ Null و الـ Zero Lingth String

هذا هو الحل السحرى لمشكلة الـ Null

وأحب أن أضيف تأييدى لكلام الأخ Visitor_OM

بأن سبب مشكلتك أكيد فى نسيانك لعلامة التنصيص المفردة Single Quote (') فى القيم النصية - أو استخدامها فى القيمة العددية

وهناك شيئا لاحظته فى أول مشاركة

وهى أن جملة الاعتراض على شئ آخر غير الجملة التى كتبتيها

أى أنه يعترض على Emp_No وليس Stf_No أم أنك تسردين هذا على سبيل المثال؟

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

رواه الطبراني في الكبير

#8

وتعقيب آخر يؤكد كلامى

اقتباس
لكن في الاستعلام الاخر حتى ولو اعاد null فلا مشكله مع Stf_Name=Combo5

سبب عدم حدوث مشكلة هو أن التكست والكمبو لا يمكن أن تكون قيمتها Null ولكن فقط سلسة نصية ذات طول صفرى Zero Length String

لهذا أنصحك باستخدام Val("" & Combo5.Text) مع القيم العددية ليحول النص الفارغ لقيمته العددية وهى صفر أو يعيد الأرقام التى يجدها فى أول هذا الكمبو

تم تعديل هذه المشاركة بواسطة abulyaman في 15 مارس 2005 في 09:00

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

رواه الطبراني في الكبير

#9

فكره ممتازه اخي بن ملعاط اشكرك..

<< CLICK TO START>>

post-41869-046528000%201305052277.jpg

ليس أن تجد حلا بل أن تجد الافضل

أن تصـــنع الخـيال هذا هوا الأفضل</span>

#10

افكار ممتازه انا بصدد تجربتها الان لانها لم تكن في حساباتي سؤجربها واعلمك بالنتائج اشكرك اخي abulyaman على المعلومات المفيده..

<< CLICK TO START>>

post-41869-046528000%201305052277.jpg

ليس أن تجد حلا بل أن تجد الافضل

أن تصـــنع الخـيال هذا هوا الأفضل</span>

هذا الموضوع مغلق.

مواضيع مشابهة