![]() |
|
مساعدة البحث بين تاريخين - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182) +--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183) +--- الموضوع : مساعدة البحث بين تاريخين (/showthread.php?tid=50067) |
مساعدة البحث بين تاريخين - أبووسم - 15-08-24 السلام عليكم اواجه مشكلة في البحث بين تاريخين المشروع في المرفقات مع الشكر مقدماً للجميع RE: مساعدة البحث بين تاريخين - Taha Okla - 15-08-24 وعليكم السلام ورحمة الله وبركاته الحقل عندك في قاعدة البيانات من نوع نصي وليس تاريخ وأنت تخزن فيه القيمة بحسب ما يوجد بداخل أداة عرض التاريخ والوقت.. فكلما اختلف تنسيق الجهاز سيختلف تنسيق القيمة المخزنة وهذا سيسبب مشاكل بالبحث فإما أن تبقيه حقل نصي وتصنع دالة تقوم بأخذ التاريخ من الأداة وتحوله لتنسيق رقمي بحيث السنة من اليسار ثم الشهر ثم اليوم.. مثلاً : 1425/01/25 ويجب أن يكون حفظك للتاريخ في قاعدة البيانات بنفس الصيغة.. لا أن تخزنه من الأداة مباشرة .. بالتالي إن بحثت بطريقة التاريخ عليك أن تجعل الدالة أيضاً تأخذ التاريخ من الأداتين قبل وبعد.. وتحول صيغ التاريخ إلى نفس الصيغة .. وستحصل على نتائج كما تتوقع وأكثر.. --------- أو تجعل الحقل من نوع (تاريخ و وقت) وتتعامل معه بالكود على أنه حقل تاريخ ومهما كانت تنسيق التخزين سيتم البحث عن القيم بين التاريخين كما هو في تفكيرك دون الحاجة لصنع أداة تنسق التاريخ قبل الحفظ وقبل البحث .. RE: مساعدة البحث بين تاريخين - Taha Okla - 16-08-24 التعامل مع الأمر كـ حقل نصي : مثلا نصنع الدالة التي تعيد التاريخ بطريقة الصيغة الرقمية : القيمة الأكبر من اليسار ثم الأصغر عن يمينها فـ الأصغر.. أقصد السنين ثم الشهور ثم الأيام .. كود : Public Function ReFormatDate(pDate As DateTime) As Stringنحتاج التعديل على أكواد الحفظ والبحث .. كود زر الحفظ يصبح : كود : Private Sub BtnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSave.Clickكود زر البحث يصبح : كود : Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Clickكود البحث يصبح (قارن بين الأكواد التي تم تعطيلها وبين الأكواد التي حلت محلها): كود : 'Public Sub SEARCH2DATE(ByVal DateG As Date, ByVal DateG2 As Date)بالرغم من أنك كتبت أكواد خطأ - لكن الفيجول بيزك دوت نت لم ينبهك لها وحاول أن يغيرها ويصححها لما يناسب البرنامج ومع ذلك لم تحصل على ما تريد .. فالخطأ تجاوز حدود الفيجول بيزك.. (لأنه لا يستطيع أن يصحح كل شيء). وهذه من مشاكل الفيجول بيزك .. مقارنة بلغات برمجة أخرى كـ السي شارب (كمثال من نفس البيئة) حيث أن السي شارب تمنعك من إكمال كتابة الكود إن أخطأت بنوع المتغير الذي تستخدمه .. (فكل شيء يجب أن يكون في محله).. إن كنت لازلت تحت الثلاثين من عمرك، نصيحة توجه لـ السي شارب.. ولا تضيع وقتك بحصر خبرتك في تعلم الفيجول بيزك .. ومع ذلك فكل شيء تنفذه على السي شارب ستستطيع تنفيذه على الفيجول بيزك(يعني لن تفقد مهارتك في هذه اللغة).. في البداية ستواجه صعوبات كثيرة وكبيرة، ولكن خلال فترة ستجد كل شيء أبسط وأسهل وأسلسل بالتعلم. التحسينات والتسهيلات الدورية التي تزود بها السي شارب تجاوزت بساطة الفيجول بيزك بمراحل كبيرة جداً.. ولم تعد مايكروسوفت تزود الفيجول بيزك بها .. فقد توقفت عن دعمها من هذه الناحية.. نصيحة / أغتنم وقتك من الآن .. RE: مساعدة البحث بين تاريخين - أبووسم - 16-08-24 يعجز لساني عن شكرك يا أخي طلبت منك حل مشكلة الكود فقط ،، فقدمت الحل و قدمت الطريقة و سهلت فهم المشكلة و طريقة حلها اسأل الله العظيم في يوم هذا الجمعة ان يرزقك حتى يغنيك و يعطيك حتى يرضيك الف شكر ولك تحياتي |