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

استعلام يعمل من خلال النموج العادي ولا يعمل من خلال نموذج التنقل... أين الخلل ؟


abofayez1

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

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

أخوتي الكرام

لدي جدول به بيانات ويوجد استعلام  مشروط يبحث عن البيانات بين تاريخين من نفس الجدول  ... هناك نموذج خاص بالبحث عند فتح النموذج والبحث بين تاريخين يعمل الاستعلام تمام

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

المثال في المرفقات

 

مثال استعلام.rar

تم تعديل بواسطه abofayez1
تعديل في العنوان
رابط هذا التعليق
شارك

السلام عليكم اخي العزيز

اكيد لن يعمل لانه مصدر المعايير في الاستعلام هو النموذج mmm وليس نموذج التنقل

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

ملاحظة المعيار سيكون كالتالي

[ forms]![main form name]![subform name].[form]![textbox]

رابط هذا التعليق
شارك

منذ ساعه, husamwahab said:

السلام عليكم اخي العزيز

اكيد لن يعمل لانه مصدر المعايير في الاستعلام هو النموذج mmm وليس نموذج التنقل

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

ملاحظة المعيار سيكون كالتالي

[ forms]![main form name]![subform name].[form]![textbox]

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

رابط هذا التعليق
شارك

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

 

6 ساعات مضت, husamwahab said:

1. اكيد لن يعمل لانه مصدر المعايير في الاستعلام هو النموذج mmm وليس نموذج التنقل

2. الحل هو انشاء استعلام اخر مشابه لاستعلام bbb ولكن مصدر المعايير هو نموذج التنقل

1. هذا الكلام صحيح :rol:

2. وهذا كذلك ، ولكن عندي بديل:

 

في النموذج mmm ، اعمل حدث بعد التحديث للحقلين d1 و d2:

279.Clipboard01.jpg.066fb887709e96d51108

 


Private Sub d1_AfterUpdate()

    d_F = Me.d1
End Sub

Private Sub d2_AfterUpdate()

    d_T = Me.d2
End Sub

 

ثم نعمل الوحدة النمطية:

Option Compare Database

Public d_F As Date
Public d_T As Date
'

Function d_From()

    d_From = d_F
End Function

Function d_To()

    d_To = d_T
End Function

 

وعليه نجعل الاستعلام يأخذ القيم من الوحدة النمطية بدلا عن النموذج مباشرة (لاحظ ان لدينا وحدتين نمطيتين ، لذلك نأخذ القيم من الاثنين):

279.Clipboard02.jpg.fe67cbf9babe4a29ebc2

 

وصلى الله وبارك :rol:

 

 

جعفر

279.مثال استعلام.accdb.zip

  • Like 3
رابط هذا التعليق
شارك

أخي الكريم 

jjafferr

 

أشهد لك إنك خبير في الأكسس ...وكفيت ووفيت  ... ووالله لو تدري أنك حليت لي مشكلة استعصت علي من أشهر ... فبارك الله فيك وزادك الله علما وجزاك عني وعن كل من استفاد خير الجزاء .

كما أشكر أخي 

husamwahab

فقد صدق في إجابته غير أني لم أستطع تطبيق ما اقترحه في رده...فبارك الله فيه

شكرا لكم جميعا

 

 

رابط هذا التعليق
شارك

8 دقائق مضت, abofayez1 said:

أشهد لك إنك خبير في الأكسس

حياك الله وعلى راسي :rol:

 

بس لو تعرف ، ترى القائمين على هذا الصرح والمنتدى العظيم ، هم اللي شرفوني بهذا الوسام وهذه التسمية ، بينما انا لا املك اي شهادة في الكمبيوتر ولا حتى شهادة الرخصة الدولية لقيادة الحاسب الآلي ICDL :rol:

 

في الرابط التالي كان في سؤال شبيه ، ولكن لطباعة التقرير ، وتم حله بطريقة اخرى كذلك:

http://www.officena.net/ib/topic/64830-مشكلة-طباعة-مع-النموذج-الفرعي/?do=findComment&comment=421820

 

 

جعفر

  • Like 1
رابط هذا التعليق
شارك

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

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

أجريت بعض التعديلات الخفيفة ووقعت في نفس المشكلة السابقة ولكن بطريقة مختلفة 

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

بين التاريخين المحددين وعند عدم التفعيل أريده يبحث في الجميع كما فعلت اليوم .

حاولت أفعل كما فعلت وأعمل وحدة نمطية شبيهة لكن خلها على الله بس :biggrin:

لو تكرمت تساعدني الله يوفقك ويبارك فيك

والنموذج في المرفقات جاهز

 

279.مثال استعلام.rar

رابط هذا التعليق
شارك

29 دقائق مضت, abofayez1 said:

حاولت أفعل كما فعلت وأعمل وحدة نمطية شبيهة لكن خلها على الله بس :biggrin:

يا رجال ، كنت احسبك بتطلب مني اعمل لك كبسة دجاج او لحم ، وكنت بخبصها , وخلها على الله :rol:

غالي والطلب رخيص (بس مو كل مرة تسافر وتيجي بفكرة جديدة:wavetowel:)

 

الاستعلام صار:

279.Clipboard03.jpg.16059a898bae48ccbdb0

.

نقول فيه:

1. اذا الوحدة النمطية حقّت الاسم F_Name فاضية ،

2. استعمل قيم الحقل name من الاستعلام ،

3. وإلا ، فاستعمل قيمة F_Name() من الوحدة النمطية.

الكود: len(F_Name() & '')=0 في الاستعلام (واما اذا كان في الكود العادي للنماذج ، تغير ' وتخليه " : len(F_Name() & "")=0

بدل عمليتين ، وانا دائما استعمله في برامجي ، والعمليتين:

if isnull(F_Name)

والثانية

if F_Name=""

 

والكود في نموذج الاسم اصبح:


Private Sub Form_Close()

    'close name as nothing
    f_n = ""
End Sub

Private Sub Form_Load()

    'initilize name as nothing
    f_n = ""
End Sub

Private Sub print_AfterUpdate()

    'if selected, assign the name to f_n, otherwise don't
    'so f_n will only have the last value selected, NO multiple selections
    If Me!print = -1 Then
        f_n = Me!name
    Else
        f_n = ""
    End If
    
End Sub

 

والوحدة النمطية:

Option Compare Database

Public d_F As Date
Public d_T As Date
Public f_n As String
'

Function d_From()

    d_From = d_F
End Function

Function d_To()

    d_To = d_T
End Function

Function F_Name()

    F_Name = f_n
End Function

 

279.1.مثال استعلام.accdb.zip

  • Like 1
رابط هذا التعليق
شارك

9 دقائق مضت, jjafferr said:

يا رجال ، كنت احسبك بتطلب مني اعمل لك كبسة دجاج او لحم ، وكنت بخبصها , وخلها على الله :rol:

غالي والطلب رخيص (بس مو كل مرة تسافر وتيجي بفكرة جديدة:wavetowel:)

 

9 دقائق مضت, jjafferr said:

والله الكبسة أسهل من الوحدات النمطية 

:clapping::clapping::clapping:

الله يوفقك دنيا وآخرة

لن أجد والله أفضل من هذه الدعوة

قدمت لي خدمة لن أنساها ولن أوفيك حقك لأننا طلاب بين يديك والطالب يتعلم من معلمه دائما 

جزاك الله خير الجزاء ونفع بك ورزقك الذرية الصالحة الطيبة

وسامحني فقد أكثرت الأسئلة وأخذت من وقتك الكثير 

تقبل تحياتي وتقديري واحترامي

أبو فايز

 

 

رابط هذا التعليق
شارك

14 دقائق مضت, abofayez1 said:

الله يوفقك دنيا وآخرة

لن أجد والله أفضل من هذه الدعوة

جزيت ووفيت ، ولا اطلب اكثر من هذا ، فجزاك الله خيرا ، ووالديك دنيا وآخرة ان شاء الله :rol:

 

 

جعفر

رابط هذا التعليق
شارك

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

حاولت أيضا باستخدام

[ forms]![main form name]![subform name].[form]![textbox]    والذي ذكره أخونا 

husamwahab

 

لكن برضه لم أنجح 

فنريده للفائدة لأهميته في رأيي لأن استخدامه قد يكون أسهل من الوحدات النمطية عند الكثير

رابط هذا التعليق
شارك

أخوي أبوفايز :rol:

 

طريقتي مرنه وتشتغل على جميع النماذج الرئيسية والفرعية ، ومن الكود كذلك :rol:

ونعم هناك طرق اخرى ان تنادي المعايير من عدة نماذج لإستعلام واحد ،

مثلا:

انا في معظم برامجي عندي نموذج واجهة البرنامج ، وهذا النموذج دائما مفتوح اثناء استعمال البرنامج (وطبعا تقدر تستخدم نموذج مخفي اذا اردت) ،

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

ثم ترسل قيمة المعايير الى هذه الحقول في نموذج الواجهة ، 

تغير معيار الاستعلام ، بحيث يشير الى هذه الحقول.

 

 

جعفر

رابط هذا التعليق
شارك

السلام عليكم 

هناك الكائن tempvars  والجديد في 2007 وما فوق ! وهو مفيد جدا لمثل هذه الحالة !

ساقوم بكتابة موضوع جديد حول هذا  وقريبا باذن الله ! 

بالتوفيق

رابط هذا التعليق
شارك

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