اخي العزيز
في هذه الحالة يبدو انك تقوم بحفظ الجدول وهو يحتوي على بيانات لذا يجب القيام باحد امرين
- التأكد من ان جميع السجلات تحتوي علي بيانات في حقل التاريخ
أو
- حذف جميع السجلات قبل اجراء التعديل
جرب واخبرني
مع تحياتي,,,
اخي العزيز
عندما يطلب منك ارفاق مثال لايقصد ان ترفق نسخة من البرنامج .
ولكن المقصود هو ان تعمل قاعدة بيانات صغيرة تحتوي على النموذج او التقرير الذي فيه المشكلة والجدول والاستعلام المرتبط به بعد حذف مافيه من بيانات وابقاء بيانات بسيطة
يمكن من خلالها توضيح مشكلتك
اخي العزيز
اهلآ وسهلآ بك في منتدانا وأرجو ان تتحصل من خلاله على اكبر استفادة ممكنة.
للعلم فإن الرسالة لا تظهر الا عند انتقالك لسجل اخر اي انك بعد ان تقوم يادخال رقم الموظف تقوم بالانتقال للسجل التالي
لذا عليك اعادة ترتيب الإدخال للحقول ( الرقم---->التاريخ---->.....الخ)
او ان تقوم بانشاء حقل جديد من نوع (ترقيم تلقائي) باسم (رقم الاجازة) مثلا ليكون هو المفتاح الرئيسي.
مع تحياتي,,,
اخي العزيز
تفضل التعديل .
وارجو منك ان تنتبه الى مسميات الحقول فلا تجعل المسميات تتطابق مع مسميات الثوابت في فيجوال.
مثلا فإن الأكسس يتعرف على مسمى Name على انك تقصد به اسم النموذج او التقرير .
واعتقد ان هناك درس للاستاذ محمد طاهر يوضح طريقة اعداد مسميات الحقول ابحث عنه وسأحاول ان ابحث عنه من جهتي كذلك.
مع تحياتي,,,
TaReQ.rar
كلام في محله
99% من البرامج المرتبطة بقواعد البيانات (الاكثر طلبآ) لابد ان ترتبط بطريقة او بأخرى بتاريخ الجهاز
وبالتالي ما الفائدة من فتح برنامج لا تستطيع العمل به
اخي العزيز
الله يبارك فيك دائما مايطلب ارفاق مثال توضيحي للسؤال حتى يسهل الرد .
فالاسئلة التي بدون مرفقات تتطلب من الذي يرد عليها القيام بانشاء قاعدة بيانات جديدة وانشاء جداول وتعبئتها بالبيانات حتى يستطيع توصيل الفكرة مما يتطلب جهد ووقت يسبب الى تقاعس من يريد الرد .
ونتيجة لذلك تلاحظ عدم التجاوب مع هذا النوع من الاستفسارات .
يرجى ارفاق مثال ليسهل الرد عليك...
مع تحياتي,,,
اخي العزيز
مرفق اليك المثال بعد تعديل المسميات التالية
- اسم جدول المكافات
- مسمى حقول رقم التوظيف- المبلغ -التاريخ-الرقم-الملاحظات في الجدول والنموذج
حيث من الافضل وضع مسميات بحروف انجليزية للتعامل معها في الاوامر البرمجية ولتتمكن من فهم الطريقة
مع تحياتي,,,
Copy_of_____________________.rar
لو بحثت قليلا في المنتدى لوجدت ارشيف كامل هنـــا
ولكن لن تجد من يشفي غليلك افضل من استاذتنا الكبيرة زهرة الله لا غيبها (المشاركة في موقع الفريق العربي نظرا لعدم ظهور الصور في مشاركتها في هذا المنتدى)
الرابط هنـــا
مع تحياتي,,,
اخي العزيز
مشكلتك كانت مكونة من شقين :-
أولآ العلاقات بين الجداول في الاستعلام : فالعلاقة التي كنت واضع لها كانت تشترط وجود ناجحين وراسبين في الصف حتى تظهر له نتائج في الاستعلام لذا يتم تعديل العلاقة كما في الصور .
1- الوضع قبل
2- بالنقر المزدوج على الرابط ستظهر رسالة لتحديد نوع العلاقة قم بتحديد الخيار الذي يشمل جميع السجلات في الجدول الاساسي وتلك السجلات فقط التي في الجدول الفرعي.
3- ستظهر النتيجة كالتالي
ثانيآ نوع البيانات في الحقلين (Nag - Ras) كانت من النوع "نص" لذا يتم تحويلها الى رقم عن طريق الدالة Clng فيتم انشاء حقلين جديدين هما (Ngah - Rsoob) كالتالي :
Ngah:Clng(nz([Nag];0))
Rsoob:Clng(nz([Ras];0))
أرجو أن أكون قد أوضحت ... والمعذرة إذا كان هناك تقصير في الشرح..
مع تحياتي,,,
اخي العزيز
مرفق مثالك السابق وعمل مايلي:
- قم بكتابة اي بيانات في الحقول التي سيتم نسخها
- قم بتصغير النموذج والذهاب الى الاستعلامات
):- ستجد استعلام Query1
- قم بفتحه وسيوضح لك القيم التي كتبتها في النموذج
- استعرضه في وضع التصميم لترى طريقة اضهار بيانات النموذج
):- ستجد استعلام Query2 نفس الاستعلام السابق الا انه يقوم بالحاق (إضافة) سجل جديد يحتوي على القيم المحددة في النموذج وذلك الى جدول المكافات
- قم بفتح الاستعلام في وضع التصميم للتعرف على طريقة ربط كل عنصر في النموذج مع الحقل في الجدول
- افتح نافذة SQL وانسخ الجملة كاملة
الان كل ماعليك هو القيام بلصق جملة SQL بين حاصرتين " " بعد الامر DoCmd.RunSql
ارجو ان يكون الشرح واضحـآ ...
مع تحياتي,,,
Copy_of_____________________.rar
اخي العزيز
التحديث موجود اصلا فالاحتساب يتم بين التاريخ المدخل مع تاريخ اليوم في جهازك وهذا التاريخ يتحدث يوميا
للتوضيح ... مرفق مثالك بعد التعديل ليستمد بياناته من جدول قم بما يلي:
- افتح المثال واكتب الفارق الموجود في النموذج (سنة-شهر-يوم) ميلادي وهجري واغلق المثال
- عدل تاريخ الجهاز (من لوحة التحكم) باضافة يوم واعد فتح المثال وشاهد النتيجة
هاااااه هل ازداد العمر يوم ....؟
اذا لا تنسى تصحيح التاريخ في الجهاز
مع تحياتي,,,
___________________________.rar
اخي العزيز
الموضوع ومافيه انك كنت تقوم بعمل مايشبه نسخ ولصق البيانات فقط وبالتالي فالبرنامج يقوم باللصق في اول سجل .
اما طريقتي فتقوم على اساس اضافة سجل جديد بواسطة عبارة Sql .
بصورة اوضح كاننا نقوم بعمل استعلام الحاقي بالبيانات الموجودة في النموذج .
ارجو ان اكون قد اوضحت ..
مع تحياتي,,,
تصدق يا اخي ان طلبك اصابني بالارق بعد قرائتي له بالامس نظرآ للإلحاح الذي ابديته مما يدل على مدى حاجتك لحل.
وتصدق كمان...! اعتقد اني توصلت للحل.
ولكن حتى لا اتسرع ارجو منك ان توفر الاتي:-
- اعادة ارسال نسخة ولو مصغرة لبرنامجك بحيث يحتوي على فاتورة او اثنتين ببيانات صحيحة.
- تحديد اسم التقرير الذي تستخدمه كفاتورة
- تحديد اسم الحقل الذي في الفاتورة والذي سيتم عن طريقة توزيع الفواتير على الطابعات
- ذكر اسم طابعتين او ثلاثة من التي لديك لارد لك مثال تستطيع تطبيقه مباشرة.
وارجو من الله ان يكون الحل الذي توصلت اليه هو ما اردته .
مع تحياتي,,,
اعتقد ان المشكلة تكمن في الكتابة العربية داخل محرر فيجوال فاذا قمت بفتح محرر فيجوال ستجد ان الاحرف العربية تحولت الى علامات استفهام
والحل هو ان تستبدل المسميات العربية الى انجليزية ( على ما اعتقد )