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

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

قام بنشر

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

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

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

يبحث اذا كان قد سبق اضافة هذه الفاتورة (رقم الفاتورة وتاريخ الفاتورة متطابقين) يظهر لى رساله 

جربت اعملها بهذا الشكل 

    Dim invNoCh As String
    Dim invDateCh As Date
    	invNoCh = DLookup("[InvNo]", "[TblBPCash]", "[InvNo] ='" & [Forms]![frmAddPatyCash]![SubfrmPatyCash]![txtInvNo] & "'")
    	invDateCh = DLookup("[InvDate]", "[TblBPCash]", "[InvDate] =#" & [Forms]![frmAddPatyCash]![SubfrmPatyCash]![txtInvDate] & "# And [InvNo] ='" & [Forms]![frmAddPatyCash]![SubfrmPatyCash]![txtInvNo] & "' ")
    Debug.Print invNoCh
    Debug.Print invDateCh
        If txtInvNo = invNoCh And txtInvDate = invDateCh Then
            MsgBox "هذه الفاتورة موجوده قبل سابق", 0, ""
            txtInvNo = ""
    	End If

لكن بيظهر لى خطأ فى دالة التاريخ  invDateCh ومش عارف فين الغلط

قام بنشر (معدل)
28 دقائق مضت, عمر ضاحى said:
[Forms]![frmAddPatyCash]![SubfrmPatyCash]![txtInvDate]

وعليكم السلام ورحمة الله وبركاته أخي عمر .. 🙂 

أعتقد أن عليك كتابة هذه بالطريقة التالية :

[Forms]![frmAddPatyCash]![SubfrmPatyCash].[Form]![txtInvDate]

وذلك في حال الإشارة لعنصر موجود في النموذج الفرعي ..

invDateCh = DLookup("[InvDate]", "[TblBPCash]", "[InvDate] =#" & [Forms]![frmAddPatyCash]![SubfrmPatyCash].[Form]![txtInvDate] & "# And [InvNo] ='" & [Forms]![frmAddPatyCash]![SubfrmPatyCash].[Form]![txtInvNo] & "' ")

 

تم تعديل بواسطه Moosak
قام بنشر
37 دقائق مضت, Moosak said:

وعليكم السلام ورحمة الله وبركاته أخي عمر .. 🙂 

أعتقد أن عليك كتابة هذه بالطريقة التالية :

[Forms]![frmAddPatyCash]![SubfrmPatyCash].[Form]![txtInvDate]

وذلك في حال الإشارة لعنصر موجود في النموذج الفرعي ..

invDateCh = DLookup("[InvDate]", "[TblBPCash]", "[InvDate] =#" & [Forms]![frmAddPatyCash]![SubfrmPatyCash].[Form]![txtInvDate] & "# And [InvNo] ='" & [Forms]![frmAddPatyCash]![SubfrmPatyCash].[Form]![txtInvNo] & "' ")

 

اولا اشكرك على تعليقك استاذي @Moosak

جربت هذه الحل وايضا لم يصلح 

Eg2UtYe.png

يبدو ان من الممكن ان يكون هناك خطأ اخر 

قام بنشر

هذا ملف للتجربه عليه 

For Test.rar

هناك ايضا ملاحظه 

انه اذا توافق التاريخ (اى كان هناك تاريخ موجود لا يحدث خطأ لكن اذا كان لا يحدث الخطأ

 

  • تمت الإجابة
قام بنشر

وممكن تستبدل الكود بالكود التالي

    Dim x As Byte
    x = DCount("*", "[TblFFF111]", "[InvNo] ='" & [Forms]![FFF111]![FFF222]![txtInvNo] & "' And [InvDate] =#" & [Forms]![FFF111]![FFF222]![txtInvDate] & "# ")
    If x > 0 Then
   
     MsgBox "هذه الفاتورة مسجلة مسبقا", 0, ""
    txtInvNo = ""
 
    End If

 

For Test2.accdb

  • Thanks 1
قام بنشر
1 ساعه مضت, مبرمج متقاعد said:

وممكن تستبدل الكود بالكود التالي

    Dim x As Byte
    x = DCount("*", "[TblFFF111]", "[InvNo] ='" & [Forms]![FFF111]![FFF222]![txtInvNo] & "' And [InvDate] =#" & [Forms]![FFF111]![FFF222]![txtInvDate] & "# ")
    If x > 0 Then
   
     MsgBox "هذه الفاتورة مسجلة مسبقا", 0, ""
    txtInvNo = ""
 
    End If

 

For Test2.accdb 640 kB · 3 downloads

هذا هو المطلوب

بارك الله فيك

  • Like 1

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

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

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

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

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

Important Information