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

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

قام بنشر

الخبراء الافاضل

بعدالتحية

اريد كود برمجى لزر فى نموذج

كود اذا كان التقرير فارغ لايفتح ويعطى رسالة التقرير فارغ  واذا كان بة بيانات يفتح التقرير ويعطى رسالة هل تريد طباعة هذا التقرير ؟ والرسالة بها زر نعم و زر لا

خالص الشكر

  • Like 1
قام بنشر
48 دقائق مضت, jo_2010 said:

كود اذا كان التقرير فارغ لايفتح ويعطى رسالة التقرير فارغ  واذا كان بة بيانات يفتح التقرير ويعطى رسالة هل تريد طباعة هذا التقرير ؟ والرسالة بها زر نعم و زر لا

 

الموضوع ده قبل الرد لازم نكون عارفين ايه مصدر بيانات التقرير
وهل فيه فرز او تصفيه بتتم واللا لاء

يعنى ضع مرفقك بالحالة اللى انت عاوزها بالظبط

  • Like 1
قام بنشر

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

Dim strRptName As String
Dim strMsgNoData As String
Dim strMsgConfirm As String

'' --- اسم التقرير
strRptName = ""

'' --- الرسالة إذا لم توجد بيانات
strMsgNoData = "التقرير فارغ."

'' --- رسالة التأكيد
strMsgConfirm = "هل تريد طباعة هذا التقرير؟"


    '' === فتح التقرير بشكل غير ظاهر للمستخدم (يتم عرضه في الخلفية للتحقق) ===
    DoCmd.OpenReport strRptName, acViewPreview, , , acHidden

    '' === التحقق من وجود بيانات ===
    If Reports(strRptName).HasData Then
        '' --- توجد بيانات، نسأل المستخدم
        If MsgBox(strMsgConfirm, vbYesNo + vbQuestion + vbMsgBoxRtlReading + vbMsgBoxRight, "تأكيد الطباعة") = vbNo Then
            DoCmd.Close acReport, strRptName, acSaveNo
        Else
            '' --- إظهار التقرير لأنه كان مخفي
            DoCmd.SelectObject acReport, strRptName, True
        End If
    Else
        '' --- لا توجد بيانات، نغلق التقرير ونعرض رسالة
        DoCmd.Close acReport, strRptName, acSaveNo
        MsgBox strMsgNoData, vbExclamation + vbMsgBoxRtlReading + vbMsgBoxRight, "تنبيه"
    End If

    Exit Sub


 

قام بنشر

ودى فكرة لتحقيق طلبك بشكل مباشر 

ولكن لا احب اعادة استخدام الاكواد فى نماذج مختلفة

او تعديلها كل شوية

ان شاء الله تعالى سوف أقوم ببناء وحدة نمطية متخصصة للتحكم فى كل كبيرة وصغيرة :yes:

لمن يهتم بهذا الموضوع ينتظر ان شاء الله مفاجأه سارة :fff:

 

قام بنشر

وتم بحمد الله الذى تتم بنعمته الصالحات بعد خناقة كبيرة كبيرة كبيـــــــــرة مع بنات أفكارى :biggrin:

الكود فى الوحدى النمطية العامة 

كود ذكى وسحرى ومرن وابن حلال وحيفهمك ويريحك ويلبى كل متطلباتك تقريبا فى التعامل مع التقارير 

و .... هو انا لسه هاتلكم كتير 

ما تيجوا نشوف على طول :wink2:

 

 

 

قام بنشر

مع إحترامي لحل الأخ @ابو جودي فالمسألة أبسط من كذا

كل ماعليك فعله هو إضافة الكود التالي لحدث عند عدم وجود بياتات أو On No Data الخاص بالتقرير

'رسالة تنبيه
MsgBox "لايوجد أي بيانات في التقرير", vbMsgBoxRight + vbMsgBoxRtlReading, "تنبيه"

'إلغاء الأمر وعدم متابعة فتح التقرير
Cancel = -1

ليصبح بهذا الشكل

Private Sub Report_NoData(Cancel As Integer)

    'رسالة تنبيه
    MsgBox "لايوجد أي بيانات في التقرير", vbMsgBoxRight + vbMsgBoxRtlReading, "تنبيه"
    
    'إلغاء الأمر وعدم متابعة فتح التقرير
    Cancel = -1
    
End Sub

مع تحياتي

قام بنشر
2 دقائق مضت, منتصر الانسي said:

كل ماعليك فعله هو إضافة الكود التالي لحدث عند عدم وجود بياتات أو On No Data الخاص بالتقرير

يا هلا والله باستاذى القدير و معلمى الجليل الاستاذ @منتصر الانسي

هذا الحل ينفع بس فى حالة واحدة
فتح التقرير : DoCmd.OpenReport strRptName, acViewPreview

ولكن لو اردت الطباعة : DoCmd.OpenReport "Period Report", acViewNormal

للاسف لو ما فى بيانات سوف يتم طباعة ورقة بيضاء :yes:

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