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

مساعده فى تقرير


إذهب إلى الإجابة الإجابة بواسطة Foksh,

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

قام بنشر

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

هل النموذج Room History موجود أولاً في المرفق ؟؟؟؟؟؟؟؟؟؟؟؟؟

هل يوجد أمر في آكسيس Me.Close

هل تحاول استخدام أوامر ودوال تخص VB.NET وليست لـ VBA آكسيس !!!!!!!!!!!!

طريقة الإتصال بقاعدة البيانات غير صحيحة ( New OleDbConnection ) ، لأن VBA آكسيس على ما اعتقد لا يدعم OleDbConnection بشكل مباشر  :excl:

 

 

محاولة لفهم الموضوع بالتصحيح :-

استخدم CreateObject("ADODB.Connection") بدلاً من New OleDbConnection لأن VBA لا يدعم OleDbConnection مباشرة كما أخبرتك سابقاً .

استخدام cboRoomNumber.AddItem لإضافة القيم إلى ComboBox في VBA آكسيس .

تأكد من إغلاق rs و conn بعد الانتهاء لتجنب أي أخطاء أو تسرب للذاكرة .

تعيين ListIndex = 0 فقط إذا كان هناك بيانات في ComboBox .

استخدام Date بدلاً من Today لأن Today غير موجود في VBA :blink: ، و Date هو الصحيح .

 

💡 ملاحظة ، تم التعديل برمجياً ولم يتم تجربة نتيجة التعديل لعدم وجود التقرير .... وخلافه

قاعدة بيانات جديد ‫(2)‬.zip

قام بنشر
22 دقائق مضت, alaa111 said:

شكرا لحضرتك 

عند تجربه يوجد خطأ لا يفتح التقرير

قاعدة بيانات جديد ‫(2)‬.rar 34.67 kB · 0 downloads

ما الجديد في مرفقك ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

الجزء الذي يظهر فيه الخطأ

    If Not IsLoaded("frmReports") Then
        MsgBox "frmReports غير مفتوح!", vbExclamation, "تحذير"
        Exit Sub
    End If

ناتج عن عدم وجود الدالة IsLoaded التي تتحقق من ان النموذج مفتوح أم لا .

وما زال في مرفقك التقرير غير موجود يا صديقي ، فأكيد سيظهر لك أخطاء ( على افتراض أن الملف المرفق هو جزء من مشروعك:rol:

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

المشكلة يا صديقي انه عند اختيار "All Rooms" من الكومبوبوكس cboRoomNumber ، فإن الشرط في جملة WHERE يصبح :

WHERE Transactions.RoomNumber = "All Rooms"

ولا اعتقد انه عندك غرفة بهذا الاسم أو الرقم ، صحيح ؟؟
لازم تعديل الشرط بحيث إذا كان قيمة الكومبوبوكس cboRoomNumber تساوي "All Rooms" يتم تجاهل شرط رقم الغرفة، أي يتم عرض جميع الغرف بحيث يصبح الاستعلام هكذا :-

SELECT Transactions.RoomNumber, [FirstName] & " " & [LastName] AS Name, [DateIn] & " - " & [DateOut] AS [Date], Transactions.Days, Transactions.AmountPaid, Transactions.DateIn, Transactions.DateOut
FROM Transactions INNER JOIN Customers ON Transactions.CustomerID = Customers.CustomerID
WHERE (([Forms]![frmRPTRoomHistory]![cboRoomNumber] = 'All Rooms') 
    OR (Transactions.RoomNumber = [Forms]![frmRPTRoomHistory]![cboRoomNumber]))
AND 
   ((Transactions.DateIn) Between [Forms]![frmRPTRoomHistory]![dtpCheckIn] 
    And [Forms]![frmRPTRoomHistory]![dtpCheckout]);

في المرفق التالي ، تم انشاء استعلام جديد وجعله مصدر سجلات التقرير للتجربة ..

Microsoft Access قاعدة بيانات جديد ‫(2)‬.accdb

  • 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