تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشكلة صيغة التاريخ
#1
السلام عليكم يا احباب

عندي مشكلة في كود (((البحث عن التاريخ غير المنتهي)))  داخل الملف المرفق

عندما احفظ سجل جديد يتم حفظة وعرضه داخل الفلكس قريد بصورة سليمة

ولكن عندما ابحث عن تاريخ يتم اعطاء نتيجة سليمة على الفلكس قريد ولكن صيغة التاريخ تكون عكس
يعنى مثلا    18/12/2018      يتم عرضها   12/18/2018

واعتذر والله  اعرف ان مثل هذه الاسئلة قد لاتكون ذات معنى لطرحها عند اصحاب الخبرة ولكن لحاجتي لهذا العمل اضطر لدخول المنتدى هذا بحثا عن اجابة لاني اجد غايتي هنا دايما والله بعطيكم العافيه على جهودكم


الملفات المرفقة
.rar   TESST.rar (الحجم : 47.17 ك ب / التحميلات : 8)
الرد
تم الشكر بواسطة:
#2
وعليكم السلام ورحمة الله وبركاته

فقط كل ما عليك استخدام الكود التالى لتحويل هيئة التاريخ
كود :
Format(Now, "dd/MM/yyyy")

بدلاً من كلمة Now استبدلها بقيمة التاريخ

قمت بمراجعة السورس المرفق
ولاحظت انك تستخدم هذا الشكل لهذا السطر
كود :
Rs.Open "SELECT * from TA where DA  >= #" & CDate(MyDate) & "#; ", DB, adOpenStatic, adLockOptimistic

وكود الاستعلام الكلى قبل عمل البحث سيتخدم هذا الشكل
كود :
ID,NA,Format(DA,'dd/MM/yyyy') as DA

السؤال هنا لماذا لم تجعل الفلتر كما هو موجود فى الاستعلام الكلى من حيث تستبدل * بما هو بالاعلى ليصبح الشكل النهائي
كود :
Rs.Open "SELECT ID,NA,Format(DA,'dd/MM/yyyy') as DA from TA where DA  >= #" & CDate(MyDate) & "#; ", DB, adOpenStatic, adLockOptimistic

بمجرد فعل ذلك ستكون انهيت العمل واصبح التاريخ يعرض يوم شهر سنة 

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد
تم الشكر بواسطة: دهشوش1 , دهشوش1
#3
شكرا اخي الجوكر على سرعة ردك

سأراجع ردك واوافيك بالنتيجة
الرد
تم الشكر بواسطة: elgokr
#4
فعلا اخي الجوكر  كلامك سليم بعد الاطلاع عليه وجدت ان مشكلتي في بناء جملة SELECT لاني كنت اتصور استدعاء جميع عناصر الجدول لا تتم الا في الفورم الكلي

فحاولت استخدام الصيغة هذي على الفلتر

كود :
Rs.Open " SELECT * from TA where Format(DA,'dd/mm/yyyy') as DA  >= #" & CDate(MyDate) & "#; ", DB, adOpenStatic, adLockOptimistic

بدلا من هذي
كود :
Rs.Open " SELECT * from TA where  DA  >= #" & CDate(MyDate) & "#; ", DB, adOpenStatic, adLockOptimistic

ولكن لم انجح فكان اعتقادي لقلة خبرتي ان المشكلة في صيغة تاريخ العمود داخل الفلكس قريد فحاولت مدة 3 ساعات ولم انجح

واستفدت من شرحك والله حيث تعلمت ايضا ان تقديم وتاخير FROM و WHERE  في الجملة حسب حاجتك في صياغة الجملة

شكرا اخي الجوووكر جزاك الله خيرا عني وزادك الله علما ونفع بك

-------------------------------------------------------------
واتمنى تجاوبني على هذا الاستفسار الله يحفظك

لو عندي جدول كالتالي  ID , PR, EXP,MA,TD   بحيث EXP تمثل تاريخ وايضا TD تاريخ
سؤالي ماهو تركيب جملة الاستعلام في الفورم بالنسبة لل EXP و TD

Rs.Open "Select .....................

وحتى لا اطيل سأفسر سبب هذا السؤال بعد ردك او رد الاخوة ان شاء الله
الرد
تم الشكر بواسطة: elgokr , princeofislam
#5
الشكر لله والحمد لله
والحمد لله على كل حال

اولاً الامر طبعاً يمكنك فعله من خلال الفلكس عن تخصيص العمود
بدلاً من الاستعلام فكلاهما واحد ولكن با ان الاستعلام صغي وعدد الاعمدة قيلة
فاحبت اى امشى معك بناءاً على طريقتك الاولى فى كود الاستعلام لجلب جميع النتائج

ثانياً طريتك فى تخصيص شكل ظهور التاريخ اجبرت انت على فعلها
لكون جهازك نفسه يعرض التاريخ شهر يوم سنة فمن الممكن عند تشغيل البرنامج
عى جهاز اخر بدون تعديل وتخصيص طريقة لشكل طباعة التاريخ تجده انه يوم و شهر و سنة
فالتخصيص فى الشكل العرض هو لتجبره مهما كان الشكل على جهاز المستخدم يكون الامر للشل الذى خصصته له

ثالثاً بخصوص طريقة الاستعلام فكما شرحت بالاعى لا يلزم ان تجرب فى الاستعلام
فيمكنك ان تجعل الاستعلام بشكل SELECT * FROM
وعند عرض القيمة وليكن كمثال
كود :
Text1.Text = Exp
ستجعلها
كود :
Text1.Text = Format(Exp,'dd/mm/yyyy')

ولكن حتى توضح فكرة الاستعلام الذى تم استخدامه ليك فى الكود بالردود السابقة فسيكون الشكل على هذا النحو

التقليدي / الافتراضى
كود :
SELECT ID , PR, EXP,MA,TD FROM ....

بتخصيص شكل التاريخ
كود :
SELECT ID , PR, Format(EXP,'dd/mm/yyyy') as EXP,MA,Format(TD,'dd/mm/yyyy') as TD FROM ....

طيب الفكرة من شكل لاستعلام
لاحظ بين كلاً من
PHP كود :
EXP
و
Format
(EXP,'dd/mm/yyyy') as EXP 

فالاول هو الاسم الافتراضى للعمود

والثانى وهو اعادة تهيئة صيغة شكل التاريخ واعادة تسمية له للتوضيح اكتر

إقتباس :Format(EXP,'dd/mm/yyyy') as EXP

ما باللون الازرق هو اسم العمود الرئيسي فى الجدول وما باللون الاخضر هو المسمي الذي تم تسميته / تعريفه به

فيمكنك تغيير الجملة التى باللون الاخضر لتجعله اى جملة اخرى وليكن كمثال

إقتباس :Format(EXP,'dd/mm/yyyy') as ExTry

لاحظ هنا تم جعل التسمية ExTry وهذا الاسم سيستخدم كا تعريف وجلب القيمة فى الكود

طيب ابسط الامر فى مسال اخر
إقتباس :SELECT ID  as ProjectID, NamePro FROM ....

لاحظ الاستعلام هنا بقاعدة البيانات تم عمل اسم العمود ID ولكن اريد عند عرض وجلب القيمة
يقوم بتعريف اسمه كا ProjectID بدلاً من ID 

فجملة As وما يليها من اسم تعنى تغيير المسمى الى الاسم الذى تريد استخدامه وعرضه
اتمنى ان لا يكون الشرح معقد وان الامور مبسطة لديك فى الشرح وان الامور وضحت معك

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد
تم الشكر بواسطة: princeofislam



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم