اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

السلام عليكم
حياكم الله اخواني

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

image.png.ea5cf574f30ec88bebb59bd467e96e3e.png

ATM222.accdb

قام بنشر

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

اذا كنت مصر على طريقتك اترك رد بذلك واجب عن التالى :

-هل تريد ان اول سجل فى الاستعلام يكون اول سجل فى النموذج من اليسار والثانى فى الاستعلام يكون هو الثانى من اليسار وهكذا ؟

-انت عامل 6 حقول نصية ماذا ان زادت نتيجة الاستعلام عن 6 سجلات ؟

-على ماذا يعتمد الترتيب فى الاستعلام هل هو أبجدى ؟ ام لا فارق لديك ؟

 

قام بنشر

وعليكم السلام اخي عمرو

ماذا ستستفيد من هذه الطريقة ؟
كما بالمرفق عندي مجموعة نماذج فرعية تعرض بياناتها بناء علي القيمة بالتكست بوكس وأيضا لكي يتم عرضها لمعرفة بيانات كل مغذي
لو غيرت الطريقة للأسف هاغير شغل كتير

____
- هل تريد ان اول سجل في الاستعلام يكون اول سجل في النموذج من اليسار والثاني في الاستعلام يكون هو الثاني من اليسار وهكذا ؟
نعم بالفعل اول تكست بوكس من اليسار في النموذج يكون اول سجل ( مغذي ) في الاستعلام ... 
وهكذا

-انت عامل 6 حقول نصية ماذا ان زادت نتيجة الاستعلام عن 6 سجلات ؟
اذ زادت النتيجة في الاستعلام عن 6 سجلات لا مشكلة المهم اول 6 سجلات بدون تكرار اسم المغذي فقط

 

-على ماذا يعتمد الترتيب فى الاستعلام هل هو أبجدى ؟ ام لا فارق لديك ؟
ما راح تفرق معي بالترتيب او بدون




image.png.29c1bfff9928eea558b9582cb99b69da.png

قام بنشر

تمام فلنعتمد طريقتك

اولا نحتاج الى محدد رقمى لترتيب السجلات فى الاستعلام وذلك لاستخدامه فى استدعاء البيانات من الاستعلام الخاص بيك الى النموذج بالترتيب المطلوب ولذلك قمت بعمل موديول جديد

Function rownum(dummy) As Integer
Static firstdummy, row&
If firstdummy = "" Then firstdummy = dummy
If dummy = firstdummy Then row = 0
row = row + 1
rownum = row
End Function

وظيفتها هو ترقيم الصفوف دون الاعتماد على اى معطيات اخرى فقط رقم الصف .

وقمت باستخدامها فى استعلام جديد اسميته Qry2

SELECT TOP 6 Query1.المغذي, rownum([المغذي]) AS [Row Number]
FROM Query1;

الاستعلام الجديد يأخذ اول 6 صفوف فى استعلامك ويضيف ارقام متسلسلة من 1 الى 6 طبقاً لترتيب استعلامك الاصلى Query1

البيانات فى استعلامك :

1.PNG.a7320c8ea9258cd67ffbdffcffd779af.PNG

البيانات فى الاستعلام الجديد :

2.PNG.83c8b0f0799344d2e78bd48ebf091a23.PNG

طبعا لن تزيد عن 6 سجلات فقط كما اتفقنا , الآن الى استدعاء البيانات من الاستعلام الجديد الى النموذج :

=DLookUp("[المغذي]","Qry2","[Row Number]=1")

استخدمت دالة Dlookup ولكل حقل فى النموذج اخذت رقم من 1 الى 6

النتيجة كما تريد :

3.PNG.d6f54ebb6928a33fa4122711609ef8ac.PNG

مرفق القاعدة .

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

 

 

 

ATM222-Amr.accdb

قام بنشر

احييك على الفكرة
ولكن للأسف عند حذف بيانات من الجدول ( جرب تحذف المغذي طاهر بالكامل ) تختفي البيانات من التكست بوكس
لان الجدول قابل للتعديل والحذف على مدار الوقت

قام بنشر
1 دقيقه مضت, ahmed s metwally said:

ولكن للأسف عند حذف بيانات من الجدول ( جرب تحذف المغذي طاهر بالكامل ) تختفي البيانات من التكست بوكس

سؤال أخى الكريم اذا لم يكن هناك 6 سجلات فى الاستعلام الخاص بيك أكيد النموذج هيكون فيه فراغات !!

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

1.PNG.6416a48ce59f1c453f54d7b44e5e04d7.PNG

يعنى 3 سجلات فقط بالتالى النموذج هيكون كالتالى :

2.PNG.73b6c0bb4278d01a38274100022f73db.PNG

وهى نتيجة صحيحة 100% لأن استعلامك الاساسى فيه 3 سجلات فقط , وضح مقصدك ان لم يكن هكذا .

قام بنشر

ما اود توضيحه كما بالصورة 1 تم حذف الجميع ما عدا المغذي عبدالرحمن لم يظهر أي بيانات بالنموذج
ولكن عند اقفال قاعدة البيانات وإعادة تشغيلها كما بالصورة 2 تكون الأمور بالشكل المطلوب وعلى ما يرام

 

image.png.dcead4536b1b0010563cff3c2f574f9a.png

image.png.91a34e381c770eb2f4e3800b09219c04.png

قام بنشر (معدل)
13 دقائق مضت, ahmed s metwally said:

ولكن عند اقفال قاعدة البيانات وإعادة تشغيلها كما بالصورة 2 تكون الأمور بالشكل المطلوب وعلى ما يرام

وهذا طبيعى اخى الكريم لأنك طلبت ان النموذج يكون غير مرتبط بالجدول او الاستعلام الآخ وبالتالى عملناه يحضر بياناته برمجياً من الاستعلام وعندما تقوم انت بحذف البيانات من الجدول يجب عمل تحديث للاستعلام لتحميل النتائج الجديدة بعد الحذف , وبالتالى يجب  غلق النموذج و اعادة فتحه وليس غلق القاعدة كلها وفتحها .

هناك حلين لهذا الموضوع الاول انه عندما تحذف البيانات والنموذج مفتوح اضغط F5 هيتم تحديث النموذج اذا لم تريد غلق النموذج وفتحه .

الحل الثانى حل برمجى هيتم وضح حدث On time بحيث يقوم بتحديث النموذج كل 10 ثوانى مثلا لتحميل النتائج الجديدة وهو حل لا أفضله لأنه هيؤدى الى بطء فى الاداء فى اغلب الاحوال.

تم تعديل بواسطه Amr Ashraf
توضيح اكثر
قام بنشر

ليس لدى القدرة على مشاهدة فيديوهات حالياً الافضل تحاول ترفق النموذج كامل اخى الكريم حتى نستطيع مساعدتك , غير ذلك انتظر من احد الاخوة مساعدتك بطريقة اخرى .

1 دقيقه مضت, ahmed s metwally said:

الي محتاج تحديث بجانب الفورم طبعا هو ( المديول )

الموديول يتم تحديثه مع فتح الاستعلام الجديد , وهو ما يتم عند فتح النموذج اذا كان مغلق او ضغط F5 لتحديث البيانات

  • Like 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information