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

مشكلة ثقل وبطىء البرنامج بعده وضعه في السيرفر


samisalim

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

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

عملت جزئيين للبرنامج واجهة feوجداولbe لمشاركة في السيرفر

لكن بعد تشغيل البرنامج صار ثقيل وبطيء جدا

وبعد البحث عن حل للمشكلة في المنتدى في مشاركة استاذنا @jjafferr اتضح  إن دالة DLOOKUPهي السبب للمشكلة

وبعد التفتيش في البرنامج توصلت الى وجود استعلام باسم Q1 

يوجد به 3 أكواد باستخدام دالة dlookup

 

الماركة:

BRANDS: DLookUp("[BRANDS]";"[BRANDS]";"[BrID] =" & DLookUp("[BRANDS]";"[MODELS]";"[MODELS]![MOID]=" & DLookUp("[IDM]";"[DEVICE]";"[SERIAL] like  '" & [EMPDEV]![IDD] & "'")))

الموديل:

MODELS: DLookUp("[MODELS]";"[MODELS]";"[MOID] like  '" & DLookUp("[IDM]";"[DEVICE]";"[SERIAL] like  '" & [EMPDEV]![IDD] & "'") & "'")

النوع:

TYPE: DLookUp("[TYPE]";"[MODELS]";"[MOID] like  '" & DLookUp("[IDM]";"[DEVICE]";"[SERIAL] like  '" & [EMPDEV]![IDD] & "'") & "'")

هل ممكن أساتذتي إن تدلوني عن كيفية حل هذه المشكلة؟

IT_v2_fe.rar

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

بطي الاس سكيو سيرفر ليس له علاقة بدالة اللوك اب المشكلة غالبا في اعدادات

Obdcانظر مثلا

https://answers.microsoft.com/en-us/msoffice/forum/all/my-solution-to-access-being-slow-with-odbc/a5a6522f-a70f-421e-af1b-48327075e010

 

تم تعديل بواسطه محب العقيدة
  • Like 1
رابط هذا التعليق
شارك

اخي استاذ جعفر لا ينصح باستخدام دالة DLOOKUP حتى بالجداول وانت استخدمتها وايضا ينصبح بعدم استخدام المسميات العربيه للحقول وانت استخدمتها مع احترامي لك لكن لو كنت مكانك ساقوم باعادة البرنامج من الصفر لانك لم تهتم بالعلاقات ابدا وهو اهم شئ في برنامج الاكسس

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

3 ساعات مضت, ازهر عبد العزيز said:

اخي استاذ جعفر لا ينصح باستخدام دالة DLOOKUP حتى بالجداول وانت استخدمتها وايضا ينصبح بعدم استخدام المسميات العربيه للحقول وانت استخدمتها مع احترامي لك لكن لو كنت مكانك ساقوم باعادة البرنامج من الصفر لانك لم تهتم بالعلاقات ابدا وهو اهم شئ في برنامج الاكسس

نعم قرأت موضوع الاستاذ جعفر 

أخي بخصوص  مسميات الحقول باللغة الانجليزية 

4 ساعات مضت, محب العقيدة said:

بطي الاس سكيو سيرفر ليس له علاقة بدالة اللوك اب المشكلة غالبا في اعدادات

Obdcانظر مثلا

https://answers.microsoft.com/en-us/msoffice/forum/all/my-solution-to-access-being-slow-with-odbc/a5a6522f-a70f-421e-af1b-48327075e010

 

له علاقه أخي العزيز 

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

22 ساعات مضت, ازهر عبد العزيز said:

اخي استاذ جعفر لا ينصح باستخدام دالة DLOOKUP حتى بالجداول وانت استخدمتها وايضا ينصبح بعدم استخدام المسميات العربيه للحقول وانت استخدمتها مع احترامي لك لكن لو كنت مكانك ساقوم باعادة البرنامج من الصفر لانك لم تهتم بالعلاقات ابدا وهو اهم شئ في برنامج الاكسس

راح اخذ بنصيحتك اخي ازهر بإعادة بناء قاعدة البيانات من الصفر 

جزاك الله خيرا 

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

السلام عليكم 🙂

 

انا متابع الموضوع من البداية ، ونصيحة الاخوان في مكانها ، وبقية النصائح هنا:

 

.

كما عندي هذه الملاحظات في الكود:

1. لا تستخدم On Error Resume Next إلا في حالات جدا خاصة ، وانما استعمل رقم الخطأ وتعامل معاه:

Private Sub Form_Load()
On Error GoTo err_Form_Load


    Me.TNO.SetFocus
    DoCmd.FindRecord Forms!FRM_01!TNO, , , , , , True


No_FRM:

    'continue code here
    
Exit_Form_Load:

Exit Sub
err_Form_Load:

    If Err.Number = 1234 Then
        'ignore, 
        Resume Next

    ElseIf Err.Number = 2145 Then
        'ignore, No proper value from incoming Form
        Resume No_FRM

    Else
        MsgBox Err.Number & vbCrLf & Err.Description
        Resume Exit_Form_Load

    End If
    
End Sub

.

2. ولو انك تقدر تستخدم فلتر النموذج هكذا :

    myCriteria = ""
    myCriteria = myCriteria & "("
    myCriteria = myCriteria & "[BRANDS]= '" & Me.cmbBRANDS.Column(1) & "'"
    myCriteria = myCriteria & ")"

    Debug.Print myCriteria
    Me.Filter = myCriteria
    Me.FilterOn = True

.

وهذه نصائح على استعماله:

.

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

 

.

 

3. لا تستخدم Dim بدون ان تُعرّف نوع المتغير ، يعني اذا استخدمت (Dim i) فهذا معناه Dim i as Variant 

4. لما تستعمل الامر Set rs = CurrentDb.OpenRecordset ، فإنك تضع جميع البيانات الجدول/الاستعلام في ذاكرة الكمبيوتر Ram ، فيجب عليك حذف هذه البيانات في نهاية الكود ، هكذا:

rst.close: set rs = nothing

 

جعفر

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

13 ساعات مضت, jjafferr said:

السلام عليكم 🙂

 

انا متابع الموضوع من البداية ، ونصيحة الاخوان في مكانها ، وبقية النصائح هنا:

 

.

كما عندي هذه الملاحظات في الكود:

1. لا تستخدم On Error Resume Next إلا في حالات جدا خاصة ، وانما استعمل رقم الخطأ وتعامل معاه:

Private Sub Form_Load()
On Error GoTo err_Form_Load


    Me.TNO.SetFocus
    DoCmd.FindRecord Forms!FRM_01!TNO, , , , , , True


No_FRM:

    'continue code here
    
Exit_Form_Load:

Exit Sub
err_Form_Load:

    If Err.Number = 1234 Then
        'ignore, 
        Resume Next

    ElseIf Err.Number = 2145 Then
        'ignore, No proper value from incoming Form
        Resume No_FRM

    Else
        MsgBox Err.Number & vbCrLf & Err.Description
        Resume Exit_Form_Load

    End If
    
End Sub

.

2. ولو انك تقدر تستخدم فلتر النموذج هكذا :

    myCriteria = ""
    myCriteria = myCriteria & "("
    myCriteria = myCriteria & "[BRANDS]= '" & Me.cmbBRANDS.Column(1) & "'"
    myCriteria = myCriteria & ")"

    Debug.Print myCriteria
    Me.Filter = myCriteria
    Me.FilterOn = True

.

وهذه نصائح على استعماله:

.

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

 

.

 

3. لا تستخدم Dim بدون ان تُعرّف نوع المتغير ، يعني اذا استخدمت (Dim i) فهذا معناه Dim i as Variant 

4. لما تستعمل الامر Set rs = CurrentDb.OpenRecordset ، فإنك تضع جميع البيانات الجدول/الاستعلام في ذاكرة الكمبيوتر Ram ، فيجب عليك حذف هذه البيانات في نهاية الكود ، هكذا:

rst.close: set rs = nothing

 

جعفر

وعليكم السلام استاذي جعفر 

نصائحك وارشاداتك على محض أهتمامي 

راح أبدا خطوة بخطوة من جديد 

  • Thanks 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