04-10-12, 04:40 PM
الموضوع صاحبه هو الأخ أبو عبد الملك
رابط الموضوع على منتدى فيجوال بيسك العرب
http://vb4arab.com/vb/showthread.php?t=18398
أنا نقلت الموضوع لأنى شايف أنه مهم وشرحه بطريقه جميله
---------------------------------------------------
السلام عليكم ةرحمة الله وبركاته
في السعوديه نعاني من مشاكل استخدام التاريخ الهجري ومشاكل الويندوز..
بعض التواريخ لا تدخل كامله بينما في ام القرى كامله فعند ادخال 30/8 مثلا ستتحول الى 1/9
وفي بعض المسائل الدقيقه لا نريد ان تتحول
هذه محاوله بسيطه وعلى عجاله لحل المشكله
ويفترض ان يحفظ التاريخ في حقل رقمي ثم تتعامل مع الداله عن الحاجه على ان يدخل الى جدول البيانات عن طريق ثلاث حقول ويستقبل كذلك او يعالج بطريقة اخرى
اعمل مشروع جديد واضف فئه كالتالي
ثم من الفورم اعمل زر امر وأدخل الكود التالي
جرب واقرأ النتائج
طبعا الموضوع فكره ويحتاج الى تنقيح
شكرا وانتظر الاقتراحات
رابط الموضوع على منتدى فيجوال بيسك العرب
http://vb4arab.com/vb/showthread.php?t=18398
أنا نقلت الموضوع لأنى شايف أنه مهم وشرحه بطريقه جميله
---------------------------------------------------
السلام عليكم ةرحمة الله وبركاته
في السعوديه نعاني من مشاكل استخدام التاريخ الهجري ومشاكل الويندوز..
بعض التواريخ لا تدخل كامله بينما في ام القرى كامله فعند ادخال 30/8 مثلا ستتحول الى 1/9
وفي بعض المسائل الدقيقه لا نريد ان تتحول
هذه محاوله بسيطه وعلى عجاله لحل المشكله
ويفترض ان يحفظ التاريخ في حقل رقمي ثم تتعامل مع الداله عن الحاجه على ان يدخل الى جدول البيانات عن طريق ثلاث حقول ويستقبل كذلك او يعالج بطريقة اخرى
اعمل مشروع جديد واضف فئه كالتالي
PHP كود :
PublicClass ProssesDate
Public m_Day AsInteger
Public m_Mounth AsInteger
Public m_Year AsInteger
Public DateValue AsLong
PublicFunction compiledDatePart(ByVal dd AsInteger, ByVal mm AsInteger, ByVal yyyy AsInteger) AsLong
Dim dds AsString = dd.ToString
Dim mms AsString = mm.ToString
Dim yyyys AsString = yyyy.ToString
If dds.Length = 1 Then dds = "0" & dds
If mms.Length = 1 Then mms = "0" & mms
Dim c AsString = yyyys & mms & dds
compiledDatePart = CType(c, Long)
m_Day = dd
m_Mounth = mm
m_Year = yyyy
MakeDateValue(dd, mm, yyyy)
Return compiledDatePart
EndFunction
PublicFunction ReturnDateFromNumber(ByVal n AsLong) AsBoolean
Dim ns AsString
ns = CType(n, String)
m_Day = Right(ns, 2)
m_Mounth = Mid(ns, 5, 2)
m_Year = Left(ns, 4)
MakeDateValue(m_Day, m_Mounth, m_Year)
EndFunction
Sub MakeDateValue(ByVal dd AsInteger, ByVal mm AsInteger, ByVal yyyy AsInteger)
DateValue = dd + (mm * 30) + ((yyyy * 12) * 30)
EndSub
EndClass
ثم من الفورم اعمل زر امر وأدخل الكود التالي
PHP كود :
PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim aa AsNew ProssesDate
Dim ddd AsLong
Dim dd, mm, yyyy AsInteger
Dim dv AsLong
ddd = aa.compiledDatePart(1, 2, 1420)
aa.ReturnDateFromNumber(ddd)
dd = aa.m_Day
mm = aa.m_Mounth
yyyy = aa.m_Year
dv = aa.DateValue
EndSub
طبعا الموضوع فكره ويحتاج الى تنقيح
شكرا وانتظر الاقتراحات
http://www.elfouadsoft.com
mohamed_tegara@yahoo.com
mohamed_tegara@yahoo.com