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

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

قام بنشر

 

 

- frm_dataentry          ــــــــــــــــــــــــــــــــــــــ   ده ولله الحمد النموذج الجديد الى تم حل مشكلتى فيه 

 

انتظر رأى اساتذتى الكرام بعد التجربه 

 

السلام عليكم أخي محمد  :smile:

 

انا لن اتطرق لطريقة عمل النموذج الجديد ، "لأننا" لم نلحظ المشكلة في النموذج الاصل  :smile:

 

ولكني دخلت في كود Combopn_AfterUpdate :

pn = DLookup("pn", "code", "[pn]=forms!frm_dataentry!Combopn")
size = DLookup("Size", "code", "[pn]=forms!frm_dataentry!Combopn")
vendor = DLookup("Vendor", "code", "[pn]=forms!frm_dataentry!Combopn")
Description = DLookup("Description", "code", "[pn]=forms!frm_dataentry!Combopn")
Maxrl = DLookup("Maxrl", "code", "[pn]=forms!frm_dataentry!Combopn")
Maxrlegyptair = DLookup("Maxrlegyptair", "code", "[pn]=forms!frm_dataentry!Combopn")
ACType = DLookup("actype", "code", "[pn]=forms!frm_dataentry!Combopn")
Pos = DLookup("pos", "code", "[pn]=forms!frm_dataentry!Combopn")
BiasRadial = DLookup("biasradial", "code", "[pn]=forms!frm_dataentry!Combopn")
code = DLookup("code", "code", "[pn]=forms!frm_dataentry!Combopn")

لاحظت انك تنادي الجدول (اي تعمل استعلام للجدول) 10 مرات !!

 

انا دائما لما اعمل برامجي ، اعمل البرنامج على اساس انه سيكون عبارة عن جزئين ، الواجهة FE ، والجداول BE ، 

وان الجداول BE ، ستكون في شبكة ،

وان الواجهة FE ستكون لأكثر من مستخدم.

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

 

لذلك ، فانا هنا اعطيك احد البدائل (والتي لا يعرفها الكثير ، لأنها تعمل على الاكسس 2003 فما فوق) ،

فالكود التالي ، يقوم بزيارة/استعلام الجدول عن طريق DLookup مرة واحدة ، ويأخذ 10 بيانات مرة واحدة ، فلذا يمكن ان يستبدل كودك اعلاه:

    Dim x() As String
    
    A = DLookup("[pn] & '|' & [Size] & '|' & [Vendor] & '|' & [Description] & '|' & [Maxrl] & '|' & [Maxrlegyptair] & '|' & [actype] & '|' & [pos] & '|' & [biasradial] & '|' & [code]", "code", "[pn]=forms!frm_dataentry!Combopn")
    
    x = Split(A, "|")
'    For i = LBound(x) To UBound(x)
'        Debug.Print x(i)
'    Next i
    
    Me.pn = x(0)
    Me.size = x(1)
    Me.vendor = x(2)
    Me.Description = x(3)
    Me.Maxrl = x(4)
    Me.Maxrlegyptair = x(5)
    Me.ACType = x(6)
    Me.Pos = x(7)
    Me.BiasRadial = x(8)
    Me.code = x(9)

جعفر

 

كل كلمات الشكر لا تعبر عما احس به نحوك استاذى الكريم ومعلمى الجليل فعلا فنان  :yes: 

جزاكم الله خير الجزاء ان شاء الله

  • 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