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

ما هو الحل مع التاريخ وهل عجزوا المبرمجين المحترفين عن إيجاد حل جذري له 0

مغلق
بدأه مصلح الحريصي في 4 مايو 2002 · 12 رد · 1,170 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

يا ناس ما هو الحل مع التاريخ وهل عجزوا المبرمجين عن إيجاد حل جذري له 0

بصراحة اصبحت مشاكل التاريخ في أكسيس شبح يطاردني في عملي في بيتي في نومي في سفري في كل ثانية في حياتي استخدمة عدة طرق ولم أصل لحل وسوف أسرد المشاكل في التالي:

1__ استخدمت التاريخ الهجري عن طريق خيارات وظهرت المشكلة التالية:

__ عندما أقوم بتسجيل 30/12/ فيبدأسنة جديدة مثلاً 30/12/1423 يحولها الجهاز إلى 1/1/1424 استخدمة التنسيق yyyy/mm/dd وقناع الإدخال دون فائدة 0

2__ استخدمت التاريخ الميلادي عن طريق خيارات وأنحلت مشكلة 30/12 وظهرت المشكلة التالية:

عندما أقوم بتسجيل 29/2 أو 30/2 من كل سنة تظهر رسالة " القيمة التي أدخلتها غير صالحة لهذا الحقل " مثلاً 29/2/1423 أو 30/2/1423 يرفض أكسيس تقبل هذا التاريخ في هذا الشهر بالذات " 2 "0

3_ استخدمت نوع حقل التاريخ " نص " أنحلت المشكلتين السابقتين لكن ظهرت مشكلة التالية:

عندما يكون نوع حقل التاريخ نص ويستخدم معه Between And لا يقوم أكسيس بالبحث بمعنى لو عندي نموذج مستمر وعليه مربعي نص في رأس النموذج الأول عنوانه من تاريخ والثاني إلى تاريخ فمثلاً لو أريد عرض البيانات الخاصة بالموظفين الذين تم تعيينهم من تاريخ 1/1/1420 إلى 30/12/1422 لا تظهر لأن أكسيس لا يعتبر ذلك فترة " أي تاريخ "

المشكلة أنني عملت اكثر من برنامج تستخدم تلك البرامج في مجال العمل الذي أعمل به ومن ظمن تلك البرامج برنامج أعمل عليه وكلها تعتمد على التاريخ0

فهل من أحد يعرف طريقة يفزع لنا به فالموضوع في غاية الأهمية لأننا نقوم بإستخراج إصائيات سنوية وشهرية وأسبوعية وعمل مقارنات وكلها بواسطة التاريخ0

لو نجد طريقة بواسطتها يُقبل التاريخ 29 /2 و30/2 عندما يكون التاريخ ميلادي لكانت المشلة أنحلة كلياً بالنسبة لي0

ارجوا ممن لديه ولو فكرة بسيطة أن يساعدنا0

لكم تحياتي0

#2

أرجو من الأخوة الأعضاء والمشرفين اللذين يجيدون اللغة الإنجليزية أن يدخلوا على المواقع الإنجليزية وإن كان هناك موقع لأكسيس خاص بشركة مايكروسوفت ومسائلتهم فربما هناك طريقة قد تفيد 0

المشكلة أنني لا أجيد اللغة الإنجليزية ولذلك طلبت منكم ذلك 0

والله الموضوع مهم بالنسبة لي فالفزعة يا رجال0

أتمنا عند دخولي للأنترنت المرة القادمة أن أجد الردود التي تثلج الصدر وتطيب الخاطر0

#3

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

أحد الحلول التي أراها هي:

1- أستخدام حقل التاريخ على أنه حقل نصي أو رقمي ...

2- أو أستخدم ثلاثة مربعات نص ( اليوم ) ( الشهر ) ( السنه ) ثم بأمانك أن تقوم بجمعها في حقل واحد

.. والله أعلم ..

mk17481_26bccea871.gif
#4

الأخ مصلح : موضوع تقويم أم القرى لا زال مع قدم طرحه في هذا المنتدى من المواضيع التي تستجد فيها المشاركات ، والحلول المطروحة تجدها في موضوع تقويم أم القرى كيف .

وأظن أن أفضل الحلول إن لم يكن هو الحل الوحيد هو استخدام معادلة لتحويل التاريخ من الهجري إلى الميلادي ثم تخزين التاريخ الميلادي عوضا عن التاريخ الهجري ، ثم عرض التاريخ الهجري عوضا عن التاريخ الميلادي .

والمشكلة بالنسبة للتاريخ ليست في أكسس بل في الويندوز ، ولهذا نفس المشكلة في برنامج الأوتلوك وغيره .

للأسف شركة ميكروسوفت لم تضمن هذا التاريخ في ويندوز xp ، والذي أعرفه أن وكيلها في المملكة حصل على معادلة تقويم أم القرى مع إذن باستخدامها ، وهو يخاطب الشركة لإضافة هذا التاريخ في الإصدارات القادمة . لكن هل يستجيبون له ؟

#5

الأخوة الكرام

شكراً لكم وهل أفهم من ردودكم أنه لا يوجد أي حل إذا كان الجواب بنعم فمعنى ذلك أنني لم أستفيد من الأكسيس نهائيا0

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

لا حول ولا قوة إلا بالله

#6

أخوي : مصلح الحريصي

أنا أعمل على برنامج في الأكسس 97 ويوجد لدي عدد كبير من الموظفين يفوق الألف موظف ومع ذلك لم أشتكي من التاريخ فهو يعمل معي كما أريده دون أي تقصير أو أي مشاكل

________

الطريقة التي استخدمها هي :

حقل التاريخ : مربع نص وليس وقت/تاريخ

ليس له أي تنسيق أو قناع إدخال

أقوم بكتابة التاريخ فيه كما يكتب في حقل التاريخ تماماً

مثلاً

1/1/1423

أكتبها أنا في حقل النص هكذا

01/01/1423

أي وضع صفر قبل رقم واحد وهاكذا

________

بهذه الطريقة أحصل على أي شيئ أريده من التاريخ وهو يعمل أيضاً مع المعادلة Between And

فيطلب مني مثلاً المستحقين للترقية من تاريخ معين إلى تاريخ معين

فأستخدم معادلة Between And

فأحصل على ما أريد دون أي مشاكل

_________

أرجو أن تطبق هذه الطريقة .. وأخبرني

واترك عنك صدقة مايكروسوفت وغيرها .. فالمضطر يركب الصعاب

__________

#7

طريقة حفظ التاريخ كنص كافية وجيدة .

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

#8

الأخوة الكرام .. بعد التحية :

ملاحظة سريعة ( على الطاير ) :

نعم أن التاريخ بنوع نص يعمل مع Between ولكن لا يمكن أن يعطي نتائج صحيحة إذا كان حسب الشكل "2002/01/01" وإذا أردنا أن يعطي النتائج الصحية يجب أن يكون كالآتي : "01/01/2002" أي يبدأ بالسنة (يسار) ثم الشهر ثم اليوم .

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

عموما الحل كان باستخدام دالة تحول التاريخ إلى شكل يمكن الإستفادة منه في المقارنة والترتيب والفلترة بحيث يظهر الشكل كالتالي : "20020101" .

اسمحوا لي فلن أكتب الدالة مرة أخرى .. ابحثوا عنها ففيها الحل إن شاء الله .

تحياتي .

#9

الأخوة الأفاضل والله شاكراً لكم وصراحة تفاعلكم مع الموضوع شرح صدري ولو كنت في ضيق 0 لكم أن تتخيلوا كماً هائلاً من البيانات الهامة " هامة جداً " تعتمد كلها على التاريخ حيث يتم عمل تصفية ومقارنة وإستخراج بيانات خلال فترات معينه كما أسلفت والتاريخ لم يعمل معي جيداً هذا ولد لدي شعور بالإحباط 0

عموماً جهودكم طيبة ولا أملك إلا الشكر الجزيل لكل من شارك في هذا الموضوع وعلى العموم سأحاول الإستفادة من ما قدمتم وأرجو أن أتوصل لحل ولو بسيط0أكرر الشكر 0

#10

الأخ أبو هادي :

في البداية أود أن أشكرك على ما طرحته وتطرحه في هذا المنتدى من فوائد جمة ، وأنا شخصيا كل ما أستخدمه الآن حول التاريخ مستمد مما طرحته في هذا المنتدى، فجزاك الله كل خير وجعلها في موازين حسناتك .

أما بالنسبة للدالة التي طرحتها فالذي أذكره أنها كانت لتاريخ مكون من ثلاثة حقول ، حقل لليوم وحقل للشهر وحقل للسنة في الرابط:

http://arabteam.nicmatic.com/vb/showthread...=&threadid=3242

فأين أجد الدالة التي تشير إليها حول التاريخ المحفوظ في حقل واحد نصي ؟

#11

أخجلتني يا حارث

هذه دالة بشرط أن يكون طول التاريخ 10 ويحتوي على "/" بين اليوم والشهر والسنة ولا يهم أن تكون السنة باليمين أو اليسار .

Function Hijri2Text(Hijri As String) As String

  Dim Pos As Byte

  

  Pos = InStr(1, Hijri, "/")

  

  Select Case Pos

    Case 3

      Hijri2Text = Right(Hijri, 4) & Mid(Hijri, 4, 2) & Left(Hijri, 2)

    Case 5

      Hijri2Text = Left(Hijri, 4) & Mid(Hijri, 6, 2) & Right(Hijri, 2)

    Case Else

      Hijri2Text = ""

  End Select

End Function

إذا لم الكود بالشكل الصحيح فهذه نفس الدالة بالشكل العادي :

Function Hijri2Text(Hijri As String) As String

Dim Pos As Byte

Pos = InStr(1, Hijri, "/")

Select Case Pos

Case 3

Hijri2Text = Right(Hijri, 4) & Mid(Hijri, 4, 2) & Left(Hijri, 2)

Case 5

Hijri2Text = Left(Hijri, 4) & Mid(Hijri, 6, 2) & Right(Hijri, 2)

Case Else

Hijri2Text = ""

End Select

End Function

تحياتي .

#13

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

استخدمت نوع التاريخ ر قمي انحلت المشكلة

فقط ضع في قناع حقول الإدخال في النماذج وحقول العرض في التقاريع القناع التالي 0000/00/00

مع العلم أن النوع الرقمي يمكن إجراء عليه أي عملية مقارنة

او أي عملية حسابية اخرى من العمليات التي تتم على حقل نوعه تاريخ..

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…