اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

نموذج سند القبض لايحفظ البيانات في الجدول


qathi

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

وعليكم السلام:smile:

 

انت عملت علاقة بين الجداول ، مما يعني ان السجل في الجدول Sand_T يجب ان يحتوي على قيم جميع الحقول المرتبطة في الجداول الاخرى.

 

1. انت عملت علاقة بين جدولي Sand_T و ExpenseName ،

2. مما يعني ان قيمة الحقل ExpeneseID يجب ان تُدخلها في النموذج "سند صرف" ، بغض النظر عن نوع السند ،

3. وهذه الرسالة تُخبرنا عن سبب عدم الحفظ ، بسبب 1 و 2 اعلاه

958.Clipboard01.jpg.d1fd9cfb080b2d9e6ddee893ed9cf085.jpg

.

جعفر

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

أستاذنا الكبير @jjafferr جعفر  شكرا على ردك ومرورك الكريم

هل ممكن أن تقوم بتعديل الملف حتى تكتمل الرؤية

لأني حاولت وقمت بألغاء العلاقة ونفس المشكلة ... وكذلك لا أريد أن يتم أدخال رقم المصروف في النموذج لأني أعتمد على عدة جداول وأنما يدخل رقم الحركة  SnID من جدول Sand_T

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

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

شكرا على كلماتك الجميله:smile:

 

انت كنت حاط هذه الحقول على بعضها (طبعا تقدر ترجعها مكانها مرة ثانية ، وما في داعي لتغيير اي شيء آخر).

 

 

وتفضل المرفق:smile:

 

جعفر

958.سند قبض.accdb.zip

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

16 ساعات مضت, ابو ياسين المشولي said:

[جرب


DoCmd.OpenForm "frm2 ", acNormal
Me.tr.SetFocus

 

انا اعتذر كان قصدي الرد بهذا الموضع ولا اعرف كيف تلخبطت

 

تم تعديل بواسطه ابو ياسين المشولي
  • Like 2
رابط هذا التعليق
شارك

17 دقائق مضت, qathi said:

أخ @ابو ياسين المشولي

 مهما كان شيء رائع ان يساعد كل واحد منا الاخر 

اتفضل اخي

عدلت لك ظهور الاسم

 

958.سند قبض.accdb

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

37 دقائق مضت, qathi said:

شكرا أخي @ابو ياسين المشولي

على ردك وجهدك الرائع فعلاً هذا هو المطلوب .. بارك الله فيك

بالتوفيق اخي

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

أستاذ @jjafferr واخي @ابو ياسين المشولي  

عند التجريب لاحظت أمرين هامين وهما:

1- عند الانتقال للتالي والسابق لا يتم ظهور الاسم فكيف يتم اظهاره
2- كيف يمكن أضهار الاسم (المستفيد) في حقل [ExpenseName] في التقرير

بارك الله فيكما .. وزادكم الله علماً ونفعاً للجميع

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

958.سند قبض.rar

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

أستاذنا @jjafferr هذا هو المطلوب أشكرك على جهدك الرائع .. أستاذنا ورزقك الله رضاه والجنة  

أستاذنا حتى تعم الفائدة أكثر ونستفيد من علمكم ، ممكن شرح الكود المضاف في الطلب رقم (1- عند الانتقال للتالي والسابق لا يتم ظهور الاسم فكيف يتم اظهاره)  حتى نفهم ألية عمله

وكذلك الكود المضافة .Column(1) الخاص بأظهار الاسم عند تحديد المستفيد في النموذج ، لماذا تم تحديد رقم 1 رغم أن الاسم في الجدول هو في الحقل الثاني من ترتيب الجدول 

واعذرني أن أشغلتك أستاذنا

 

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

بعد اذن اخي جعفر 

سوف اشرح ماتم عمله من قبل الاخ جعفر

تم عمل داله وهي كالاتي

Function make_visible()
On Error GoTo err_make_visible

    [EmployeeID].Visible = False
    [SuppliersID].Visible = False
    [CustomersID].Visible = False
    [ExpenseID].Visible = False

    If [Stype] = "سند صرف موظف" Then
        [EmployeeID].Visible = True
        Me![الاسم] = Me![EmployeeID].Column(1)

    ElseIf [Stype] = "سند صرف مورد" Then
        [SuppliersID].Visible = True
        Me![الاسم] = Me![SuppliersID].Column(1)

    ElseIf [Stype] = "سند صرف المصروفات" Then
        [ExpenseID].Visible = True
        Me![الاسم] = Me![ExpenseID].Column(1)

    ElseIf [Stype] = "سند صرف عميل" Then
        [CustomersID].Visible = True
        Me![الاسم] = Me![CustomersID].Column(1)

    End If

Exit_Function:

Exit Function
err_make_visible:

    If err.Number = 2165 Then
        'cannot hide a control which has focus
        'ignore it
        Resume Next
    Else
        MsgBox err.Number & vbCrLf & err.Description
    End If
    
End Function
    
ثم تم استدعها عند التالي والسابق والاو والاخير
هكذا
Call make_visible

 

شرح.jpg

تم تعديل بواسطه ابو ياسين المشولي
  • Thanks 2
رابط هذا التعليق
شارك

أستاذ @jjafferr واخي @ابو ياسين المشولي  

كلمات الشكر والتقدير لن تفي حقكما علينا .. بارك الله فيكما .. ونفع الله المسلمين بكما .. وجعل الله علمكما منازل عليا ترتقوا بها في الجنة

تم مراجعة الكود وفهم الية عملة

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

شكرا اخوي ابو ياسين على الشرح:smile:

 

لما نعمل الكود ، نقوم بوضعه في الاحداث الصحيحة (مثل ما قمت انت بعمله) ،
ولكن بعد اكتمال الكود ، نلقي نظرة على الكود ، ونحاول ان لا نجعل فيه تكرار لأسطر معينه (خصوصا بعدد الاسطر في كودك) ، وانما نحاول ان نضع هذه الاسطر المتكررة في دالة منفصله ونناديها من كل حدث ، وسبب قيامنا بهذه العملية هي في الواقع ليس لتفادي التكرار ، وانما اذا اردنا تعديل هذه الجزئية ، فلا نضطر الى تعديلها في كل الاحداث ، وانما هي دالة واحدة نعدلها والحمدلله:smile:

 

14 ساعات مضت, ابو ياسين المشولي said:

ثم تم استدعها عند التالي والسابق والاو والاخير هكذا

لا وانت الصادق ابو ياسين ، انا لم المس كود هذه الاحداث ،

ولكن في حقيقة الامر ، ان هذه الاحداث تغير السجل الحالي ، لهذا السبب فقد تم مناداة دالة الكود في حدث "الحالي" في النموذج ، فيقوم بهذه الطريقة التعامل مع كل سجل حالي عليه التركيز في النموذج:smile:

 

جعفر

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

اخي جعفر

نعم هي كما قلت في حدث الحالي

انا حاولت اوصله المعلومه

ومنتظر ردك كي نستفيد اكثر واكثر

دائما اقولها 

نحن تلميذكم

منكم نستفيد

ونحاول نتعلم ونفهم

ولهذا المنتدى والمشرفين والاعضاء الخير الكثير من ماتعلمناه

تحياتي لك اخي جعفر

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

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information