محمود القيسي قام بنشر ديسمبر 7 قام بنشر ديسمبر 7 (معدل) يعطيكم العافيه اصداقي انا في صدد عمل برنامج صادر ووراد خاص في قسمي داخل احد المستشفيات وذلك للحصول على ترقيه ولكنني اواجه مشكلة صغيره وهي انه البرنامج سيكون على الشبكة ويكون اكثر من مستخدم يعمل عليه ولكنني اريد انه اذا قام المستخدم بادخال بيانات لكتاب وارد او صادر وقام مستخدم ثاني بادخال البيانات قبله بفتره بسيطه ان يظهر له رساله انه تم حجز الرقم وان يخبره بالرسالة ما هو رقمه الخاص به الجديد ويحفظ البيانات علما انه لا يمككني استخدام الترقيم التلقائي لانه اذا قام احد المستخدمين بمحاولة ادخال بيانات لكتاب ما ومن ثم قام قرر الغاء ادخال البيانات سيتم حجز الرقم من دون بيانات ولن يظهر بالجدول وانا التسلسل مطلوب مني مرفق نسخة من البرنامج لتوضيح الفكرة بشكل افضل ارجو منكم فتح نموذج سجل الوارد وتعبئة البيانات فيه وقبل الضغط على زر حفظ فتح جدول سجل الوارد وادخال البيانات بشكل يدوي ومن قم حفظ الجدول واغلاقه وبعدها الضغط على حفظ في النموذج لم استطع تحميل الملف ولكن قمت برفعه على الرابط التالي https://top4top.io/downloadf-3263ok0ie1-rar.html تم تعديل ديسمبر 7 بواسطه محمود القيسي
ابوخليل قام بنشر ديسمبر 7 قام بنشر ديسمبر 7 اخي محمد .. الترقيم عبر الشبكة ليس له علاج الا الترقيم التلقائي يمكن تعمل ضوابط للتسجيل بحيث لا يتم الحفظ الا بعد اكتمال البيانات .. ومعلوم ان من سينقر على زر الحفظ ستكون بيانات الكتاب مكتملة من الضوابط .. تعيين احد الحقول مطلوب .. فلو لم يدخل بيانات فيه وخرج لن يتم ادراج الرقم التلقائي من الطرق : اعمل حقل نصي او رقمي او تاريخ ووقت فارغ في الجدول وعند النقر على زر الحفظ يتم تحديث الحقل وادخال قيمة فيه مثلا حرف A او رقم واحد او تاريخ اليوم وافضل من ذلك .. اجعل كافة الحقول المهمة مطلوبة هنا سيقبل النموذج الحفظ .. وتحافظ على تسلسل الترقيم التلقائي
عمر ضاحى قام بنشر ديسمبر 9 قام بنشر ديسمبر 9 ممكن مداخله بعد اذن استاذي الجليل @ابوخليل واستكمال لفكرة استاذى الجليل فى نقطة (الترقيم التلقائى) هناك فكره لهذا الموضوع ان تعمل جداول مؤقته فى الواجهه الامامية وبها تخزن جميع البيانات وزر الحفظ يقوم بنقل البيانات الى الجداول الاساسية المرتبطه وواثناء النقل هيتم اعطاء رقم لهذا السجل وبهذا مش هيكون فى اتصال دائم بالقاعده غير لحظه الحفظ وان شاء الله مش هيكون فى مشاكل (والله اعلم) طبعا مع تفريغ الجداول المؤقته بعد الحفظ
Moosak قام بنشر ديسمبر 9 قام بنشر ديسمبر 9 وكفكرة إضافية أيضا .. قم بإضافة حقل للترقيم التلقائي (وهو مهم للجداول للفرز والربط بالجداول الفرعية ووو...) ... وحقل آخر لترقيم الخطابات يمكنك التحكم به كما تشاء ... ولن تكون ملزم بالترقيم التلقائي لترقيم الخطابات .. 🙂
ابوخليل قام بنشر ديسمبر 9 قام بنشر ديسمبر 9 5 ساعات مضت, عمر ضاحى said: هناك فكره لهذا الموضوع ان تعمل جداول مؤقته فى الواجهه الامامية وبها تخزن جميع البيانات الفكرة جميلة .. ايضا من فوائدها تخطي مشكلة التزامن انا حتى استخدمها في قاعدة البيانات الوحيدة .. خاصة في البرامج المالية .. لمعالجة مشاكل النموذج الفرعي 3 ساعات مضت, Moosak said: وكفكرة إضافية أيضا .. وحقل آخر لترقيم الخطابات يمكنك التحكم به كما تشاء ... ولن تكون ملزم بالترقيم التلقائي لترقيم الخطابات .. 🙂 كيف يتم التحكم بهذا الترقيم ؟ افدنا بارك الله فيك لأن الترقيم في هذه الحالة سيكون صادر من النموذج الذي اعمل عليه
Moosak قام بنشر ديسمبر 9 قام بنشر ديسمبر 9 26 دقائق مضت, ابوخليل said: كيف يتم التحكم بهذا الترقيم ؟ هناك أفكار وطرق كثيرة ومتنوعة .. وأشهرها دالة DMax والتي تأتي بآخر ترقيم في الجدول وتضيف عليه +1 كما هو معلوم لديكم .. ويمكن إسناد الرقم لحقل رقم الخطاب في حدث بعد الإدراج ( عند حفظ السجل لأول مرة ) .. إذا كنت تريد مثال تطبيقي عليه فأنا رهن إشارتك 🙂🌷
ابوخليل قام بنشر ديسمبر 9 قام بنشر ديسمبر 9 1 ساعه مضت, Moosak said: إذا كنت تريد مثال تطبيقي عليه فأنا رهن إشارتك 🙂🌷 واضح لا يحتاج لمثال ولكن هذه الطريقة لا تجلب القيمة في (الوقت الحقيقي) اقصد انها وحسب التجربة لا بد من حدوث خلل في وقت ما لأن هذا الحدث او الامر يصدر من عدة نماذج فرعية متصلة ، والجدول في هذه الحالة بحاجة الى تحديث لأخذ القيمة جعل الترقيم هي مسؤولية الجدول لا شك اقوى وأسرع .. ونسبة الخطأ صفر %
Moosak قام بنشر ديسمبر 9 قام بنشر ديسمبر 9 1 ساعه مضت, ابوخليل said: جعل الترقيم هي مسؤولية الجدول لا شك اقوى وأسرع .. ونسبة الخطأ صفر % لاشك .. ولكن القضية هي أنه يعتمد على هذا الترقيم لإعطاء المراسلة رقم له معنى .. وقد سمعت من أحد الخبراء مرة أنه يقول : في الأصل أن رقم الآيدي التلقائي يخدم المبرمج أو البرنامج بمعنى أصح ( لفلترة البيانات ولربط الجداول ببعضها... إلخ ) ولا ينبغي أن يكون هو الترقيم المعتمد لشيء يمثل لك قيمة كالرقم الوظيفي أو رقم مراسلة أو رقم مهمة أو رقم الجلوس أو ... أو .... وهناك طرق كثيرة للتأكد من جودة الترقيم وترتيبه وتتابعه .. يمكن العناية بها عن طريق الأكواد .. وقد كنت أطلعت منذ مدة على نقاش متعلق بتضارب الترقيم بين المستخدمين في نفس اللحظة حسب ما أذكر .. فطرح أستاذنا العود @jjafferr احد الحلول وهو عمل حلقة تكرارية تفحص الجدول لتتأكد من الحصول على آخر قيمة لتخطي مشاكل بطيء الشبكة أو كثرة المستخدمين وكثرة المعاملات .. هذه الخلاصة ولا يحضرني الرابط الآن .. بعد البحث وجدت مشاركة أستاذنا @jjafferr 🙂 :
ابوخليل قام بنشر ديسمبر 9 قام بنشر ديسمبر 9 45 دقائق مضت, Moosak said: وقد سمعت من أحد الخبراء مرة أنه يقول : في الأصل أن رقم الآيدي التلقائي يخدم المبرمج أو البرنامج نعم معك قلبا وقالبا ، ولكن للضرورات احكام اقتباس ولكن القضية هي أنه يعتمد على هذا الترقيم لإعطاء المراسلة رقم له معنى .. هنا مربط الفرس .. بعضهم يريد لكل عملية ترقيما خاصا يميزها .. وايضا يريد نوع الحقل نصي بحيث تكون البادئة حرف وموضوع الاستاذ جعفر مناسب جدا لمثل هذه الحالاات .. ولكني _ واتحدث عن نفسي_ : لا انكر ان البرمجة لا يقف امامها شيء .. ويمكن تحقيق ما اجمع الكل على استحالته ، ولكني لا احب كثرة العمليات البرمجية وما تستصحبه من ادوات ، لاستخراج نتيجة هي قريبة جدا مني .. ناهيك فيما لو كان نوع حقول الترقيم نصية .. طبعا ستزيد المعالجة . يوجد طريقة سهلة بدائية تستفيد من الترقيم التلقائي ولا تعتمده ، وتصلح للترقيم الخاص سواء كان نوع الحقل رقميا او نصيا وهي عمل حقل ترقيم يتم اضافة الترقيم التلقائي اليه عند كل عملية مثلا تكون القيمة الافتراضية للحقل 1000 أو A000 ستكون النتيجة في السجل الأول 1001 او A001 وستتزايد القيمة في السجلات التالية تبعا لقيمة الترقيم التلقائي . شايب راسه ناشف .. عندنا مثل يقول .. كلٍ بعقله راضي الا ماله لا ... 1
Moosak قام بنشر ديسمبر 9 قام بنشر ديسمبر 9 جميع الإجابات صحيحة .. وكل حالة لها حكمها .. ولا نهاية للإبداع 😊👌 1
عمر ضاحى قام بنشر ديسمبر 10 قام بنشر ديسمبر 10 استاذي الجليل @ابوخليل ممكن تسمحلى اقترح عليك فى فكره ان تجعل لكل مستخدم ترقيم خاص به مثل الاعتماد على رقم معرف المستخدم الحالى لنفترض ان المستخدم الحالى رقمه 1 ممكن تعتمد عليه او تضيف حرف للتفرقه مثل 1A10 حيث 1A ترمز ان المستخدم رقم 1 و10 لرقم السجل الحالى او الاعتماد على رقم مميز عبارة عن الفورمات (yyyymmddhhmmss) وممكن تضيف عليه رقم المستخدم فى بدايته لزيادة التمييز معتقدش ان ممكن يحصل ان 2 فى نفس الثانيه واذا حدث هيكون هناك رقم المستخدم لفصل هذا
ابوخليل قام بنشر ديسمبر 10 قام بنشر ديسمبر 10 1 ساعه مضت, عمر ضاحى said: فكره ان تجعل لكل مستخدم ترقيم خاص به مثل الاعتماد على رقم معرف المستخدم الحالى اعتقد المطلوب وهو رغبة السائل ان يكون الترقيم موحد بما يشبه الترقيم التلقائي
Foksh قام بنشر ديسمبر 10 قام بنشر ديسمبر 10 مداخلة سريعة متأخرة بالنسبة لي دائماً وفي أي مشروع اعتمد على عدة عوامل لأستفيد منها من ناحية اختلاف سرعة الاتصال اللحظة بالشبكة بين جهاز وآخر ( ممكن يكون السبب اختلاف الكمبيوتر أو كرت الشبكة وظريقة الاتصال بها ، موزع الشبكة ... إلخ ) وهذه الاستفادة تأتي لي دائماً بنتيجة خالية من المشاكل وهي كما ذكر أستاذ موسى استخدام الدالة DMAX ولكني اجعلها في آآآآآخر مرحلة وهي عند النقر على الزر حفظ ، فأجعل الترقيم للحقل يأتي كأول إجراء يقوم به النموذج وهو جلب آخر ترقيم وإضافة 1 له ، وهنا تأتيني الإستفادة من اختلاف سرعة الاتصال بالشبكة .
محمود القيسي قام بنشر ديسمبر 12 الكاتب قام بنشر ديسمبر 12 ما شاء الله عليكم مبدعين بالفكرة وماهرين مشكورين ما قصرتم بس بواجه مشكلة ثانيه هلأ عند الخروج من النموذج لانه الحقول انا حاطها مطلوبة بعطيني رسالة انه يجب ادخال قيمة كيف ممكن احلها .
Foksh قام بنشر ديسمبر 12 قام بنشر ديسمبر 12 2 ساعات مضت, محمود القيسي said: بس بواجه مشكلة ثانيه هلأ عند الخروج من النموذج لانه الحقول انا حاطها مطلوبة بعطيني رسالة انه يجب ادخال قيمة كيف ممكن احلها من وجهة نظري .. أيضاً اتبع فكرة قديمة وهي :- 1. أنشئ مربع نص باسم C1 مثلاُ . 2. في حدث عند الشوائب اجعل قيمته = 0 Private Sub Form_Dirty(Cancel As Integer) Me.C1 = 0 End Sub 3. في حدث عند الإغلاق أو إذا كان لدي زر خاص بالإغلاق للنموذج DoCmd.CancelEvent If Me.C1 = 0 Then Me.Undo End If بالنسبة لي هذا يمنع الحفظ التلقائي للسجلات الغير مكتملة أولاً ، ثم يجعلني أتحكم في - متى أحفظ أو لا - السجلات في النموذج . 1
محمود القيسي قام بنشر ديسمبر 12 الكاتب قام بنشر ديسمبر 12 2 ساعات مضت, Foksh said: من وجهة نظري .. أيضاً اتبع فكرة قديمة وهي :- 1. أنشئ مربع نص باسم C1 مثلاُ . 2. في حدث عند الشوائب اجعل قيمته = 0 Private Sub Form_Dirty(Cancel As Integer) Me.C1 = 0 End Sub 3. في حدث عند الإغلاق أو إذا كان لدي زر خاص بالإغلاق للنموذج DoCmd.CancelEvent If Me.C1 = 0 Then Me.Undo End If بالنسبة لي هذا يمنع الحفظ التلقائي للسجلات الغير مكتملة أولاً ، ثم يجعلني أتحكم في - متى أحفظ أو لا - السجلات في النموذج . مشكووووووووووووووووووور صديقي كل الشكر 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.