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

رقم الفاتورة من المصدر

بدأه sweety78 في 17 يوليو 2009 · 11 رد · 662 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

في الصورة المفرقة لقاعدة البيانات أود من الاخوة والاخوات مساعدتي في :

اريد عند اضافة سجل جديد ان اضغط على زر (احصل على رقم فاتورة) ان يقوم بأخذ رقم الفاتورة من الجدول (Invoice no) وعمل تحديث للرقم الموجود داخل الجدول +1

مثال: الرقم داخل الجدول 5 واريد عندما اضغط على زر (احصل على رقم فاتورة) ان احصل على رقم 5 في الحقل (Invoice no) وبعدها يقوم بتحديث الجدول +1 في الجدول (Invoice no) ليصبح الرقم 6

الفكرة هي كلما قمت بإضافة سجل جديد داخل النموذج (Table 1) ان احصل على رقم فاتورة جديد متسلسل.

اتمنى ان يكون المطلوب واضح كما اتمنى ان اجد الحل لدى الاخوة والاخوات

مع خالص تحياتي

post-145478-1247835853_thumb.jpg

db1.rar

#2

اخي العزيز...سؤال واسمح لي لان الملفات لا تفتح لدي..

1-الجدول InvoiceNo به فقط قيمة واحدة هي اخر رقم للفاتورة ام جميع الارقام المتسلسلة السابقة لكل الفواتير.؟؟

2-هل جربت دالة Dlast لاخذ القيمة منه؟

الفكرة انه يمكنك كتابة دالة Dlast لتاخذ اخر قيمة من جدول الفواتير طبعا في حال كون هناك اكثر من رقم...

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#3

الاستاذ الفاضل/ همام ابو عقرب

القيمة الموجودة في الجدول Invoice no هي آخر رقم فاتورة، والفكرة هو انه في كل مرة اقوم بفتح سجل جديد يضاف رقم +1 الى الرقم الموجود في الجدول Invoice no يعني عملية تحديث وليست الحاق.

وبالنسبة لـ دالة Dlast فأنا لم اجربها لاني اقل من مبتدأ في الحقيقة وادخل المنتدى لأتعلم منكم

تحياااتي

#4
sweety78 كتب:
الاستاذ الفاضل/ همام ابو عقرب

القيمة الموجودة في الجدول Invoice no هي آخر رقم فاتورة، والفكرة هو انه في كل مرة اقوم بفتح سجل جديد يضاف رقم +1 الى الرقم الموجود في الجدول Invoice no يعني عملية تحديث وليست الحاق.

وبالنسبة لـ دالة Dlast فأنا لم اجربها لاني اقل من مبتدأ في الحقيقة وادخل المنتدى لأتعلم منكم

تحياااتي

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

المهم

انا في طور التعديل على المرفق اعطني وقتا وسارفقه باذن الله..

تحياتي

تحديث..الكود

تفضل اخي الكريم

في حدث الزر اكتب مايلي..

Docmd.SetWarnings "False"
Me.Invoice_no = DLast("[Invoiceno]", "[Invoiceno]") + 1
Docmd.RunSQL "Update Invoiceno Set Invoiceno.Invoiceno=forms![Table1]![Invoiceno]"

كما تلاحظ عزيزي

السطر الاول حتى لا تظهر رسائل اكسس المزعجة لتعلمك بالتحديث

بالناسبة هي مفيدة في حال اردت التاكيد من الحل.. فبدل False ب True

السطر الثاني

ياخذ قيمة الحقل من الجدول .. طبعا اخر قيمة وهي هنا وحيدة

يضيف اليها 1 ثم يعيدها الى الجدول

وهكذا...

ملاحظات

1-تاكد من المفاتيح الرئيسة للجداول

2-لا تستخدم المسافات ابدا في تسمية الحقول والجداول.. لانني متاكد من ان الكود لن يعمل ابدا الا اذا عدلت اسماء الجداول والحقول وازلت المسافات..

3-ابحث في المنتدى.. انه زاخر بالامثلة..

تحياتي

تم تعديل هذه المشاركة بواسطة همام ابوعرقوب في 18 يوليو 2009 في 09:52

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#5

الشكر الجزيل لك اخي الكريم همام ابوعرقوب والمعذرة على الخطأ المطبعي

انتظر منك الاجابة مع وافر التحيات

#6

عزيزي الاجابة موجودة في المشاركة السابقة.. ولكن غير اسماء الجداول والحقول حسبما قلت بحذف المسافة..

تحياتي

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#7

استاذي الفاضل/ همام ابوعرقوب

حاولت ان اطبق الحل واخذت بعين الاعتبار الملاحظلات التي اشرت لها لكنني لم اوفق

هل من الممكن ان تقوم بتعديل الملف مع تطبيق الملاحظات التي ذكرتها؟

مع جزيل الشكر

#8

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

اخي العزيز اتمنى من بقية الاخوة الكرام المساعدة.. لان المشكلة لدي لم تحل، وقد اضطر لازالة الاوفيس كاملا.

تحياتي

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#9

استاذي الفاضل همام ابو عرقوب

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

كما انني ارتجي من الاخوة والاخوات المساهمة في الموضوع.

تحيااااتي للجميع

#10

عزيزي.. اسف على تاخري وقد حللت المشكلة بالعودة لاوفيس XP ولكن خايف ارجع اخر اليوم الى 97...

ما علينا..

مشكلة عدم وضوح ايهما حقل وايهما جدول واضحة لان الاسماء اصلا متشابهة..!!

اذن.. عليك اولا ان يتسع صدرك للتعديلات التالية واملي انها ستكون مهمة ومفيدة لك..

1- غير اسم الحقل Invoice no بازالة المسافة اولا ثم تغييرخ الى اسم مختصر تسهيلا،، وياسيدي ليكن LastInvo..او اي اسم تختاره..

2-نفس الشي بخصوص الجدول.. احذف المسافة من الاسم

3-لماذا تحتاج الى جلب رقم الفاتورة من جدول خارجي..؟؟ هذا تعقيد قد لا يكون له لزوم.. رجائي منك ان توضح السبب وراء هذه الفكرة..

4-العلاقات بين الجداول والمفاتيح الرئيسة سببت مشكلة في اضافة سجلات جديدة،، وخاصة ان رقم الجدول الثاني ليس به مفاتيح،، ليس مرتبطا بشكل سليم بالجدول الاول "الفواتير"

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

همام

وَمِنَ النَّاسِ مَن يُعْجِبُكَ قَوْلُهُ فِي الْحَيَاةِ الدُّنْيَا وَيُشْهِدُ الله عَلَى مَا فِي قَلْبِهِ وَهُوَ أَلَدُّ الْخِصَامِ

مواضيعي ومشاركاتي

#11

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

تفضل اخي التعديل المطلوب على حسب حل استاذي همام

مع النصيحة باخذ راي استاذي همام في الاعتبار

اخوك محمد المسيفري

db1.rar

#12

الاستاذ الفاضل مشارف

شكراً لك على تقديم المساعدة فهذا ما طلبته بالظبط

كما لا يفوفتني ان اشكر كذلك الاستاذ همام على سعه صدره وعلى مبادراته في تقديم المساعدة وان شاء الله تنتهي معاناته مع جهازه

شكرا لكم

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