طالب علم2002

اريد عداد يزيد رقم واحد عند كل ارسال ويصفر في بداية العام الهجري

9 ردود في هذا الموضوع

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

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

لدي تقرير اقوم بارسالة بالبريد الالكتروني مرة واحده في اليوم الى مستلم البريد

السؤال

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

مرفق مثال لتوضيح السؤال

ولكم خالص التحية والتقدير

اخوكم ابو بندر

export2snap.zip

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أخي الكريم أبا بندر

السلام عليكم

تحتاج إلى إضافة حقل لتاريخ الإرسال أو العام حتى يتم فحصه قبل زيادة الرقم لمعرفة متى تم آخر إرسال

تحياتي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

خذ هذه الدالة واستخدمها في هذه القاعدة، وقاعدة الصادر والوارد.

ObjectName_CurrentForm()

Dim Mydate

Mydate=dmax("YourCounterFaild","YourDomain","Year(YourDateFaild)=Year(Date())")

Me!YourCounterFaild.DefaultValue=IIf(isnull(Mydate),1,Mydate +1)

كيف تعمل هذه الدالة:

بداية توضع هذه الدالة في حدث (في الحالي) وذلك لضمان وقوع الحدث في السجل المعروض الآن (الحالي).

المتغير Mydate متغير عام، المقصود منه حمل قيمة الدالة DMax ، والمقصود منها أي الدالة إرجاع أعلى قيمة للحقل العداد بناءً على الشرط المذكور في الدالة، والتي معناها إيجاد أعلى قيمة لحقل العداد عند مساوات سنة التاريخ الحالي لسنة تاريخ السجل.

بعد ذلك نقوم بفحص المتغير Mydate بالدالة المنطقية IIf ؛

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

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

ملاحظة:

فحصنا Mydate بالدالة ()IsNull لأن الشرط في دالة Dmax لا ترجع القيمة صفر، بل ترجع قيمة خالية

لا تضع العداد في حقل تعداد تلقائي، بل في حقل رقم Integer

لا تحاول أن تعرف المتغير myDate بغير المتغير العام، والإ أرجعت الدالة خطأً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

طيب يا اخ Gaham

فيه سوأل عن دالة DMax بس بدون ربط بتاريخ

هذه الدالة

nz(DMax("[fild1]";"[tabl1]"))+1

تعمل الاتي

اذا كان الجدول خالي من سجلات فانه يبدا برقم 1

المطلوب ان لا يبدأ اول سجل بالرقم 1 وانما بالرقم 10000 مثلا

هل يمكن ذلك

شكرا لك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

نعم إذا وضعت بدل الرقم (1) في الدالة المنطقية IIf الرقم (10000)، في الحد الأول منها، كالتالي:

Fld1.defaultvalue=IIf(Fld1,10000

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أعدت لك قاعدة البيانات بعد إصلاحها.

جربها.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخي الكريم ابو هاجر اخي العزيز Gaham الاخوة الافاضل

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

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

ثانيا سوف اعيد السؤال لان الكشكلة مازالت قائمة لدي ولم اجد لها حل مقنع

لقد حاولت تصفير العداد بطريقة تلقائية مع بداية العام الهجري ولكن لم اتمكن من ذلك

المشكلة انه عند تصفير العداد يجب ان نعتمد على التاريخ في ذلك وهنا تكمن المشكلة لدي حيثان النموذج namemoz عمله متابعة الموظفين بشكل يومي والتاريخ به ماخوذ من الجهاز مباشرة dat() فاذا اردنا ان نعمل مقارنة بين التاريخين فستكون النتيجة واحده كذلك فكرت ان اعمل كود انه اذا كان اليوم = 1 والشهر = 1 فيقوم بتصفير العداد ولكني استدركت لانه قد يوافق هذا اليوم يوم خميس او جمعة فعندئذٍ لن تنفع هذه الطريقة

اخيرا لجأت الى اخوتنا واساتذتنا في المنتدى لايجاد حل لهذه المشكلة التي حيرتني راجيا من الله ان اجد الحل لديكم

قمت بارفاق ملف موجود به المشكلة

اخوكم ابو بندر

mtaba.zip

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

يا اخ Gaham

عذرا على الازعاج

حربت الدالة وهي غير مكتملة وواضح انك تريد دمج الدالة iff و dmax

امل وضع الدالة كاملة إذا ما عليك امر

معليش اصبر على غشامتنا :o

اخوك علي

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الاخوة الافاضل

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

لكم مني خالص التحية والتقدير

اخوكم طالب علم 2002

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
زوار
This topic is now closed to further replies.

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .