
نوشته شده توسط
mazoolagh
شما باید در رخداد Report_NoData سابریپورت (subreport5) کد بنویسین

نوشته شده توسط
mehdi-gh
سلام
دوست عزیز پیشنهاد شما جواب نمیده . علتش هم اینه که subreport زمانی که فاقد دیتای متناظر با report اصلی باشه اصلاً نمایش داده نمیشه حالا مشکل اینجاست که به هر حال چطور میتونیم به برنامه بفهمونیم در صورتیکه یکی از subrport ها فاقد رکورد متناظر با report بود اونوقت یک واکنشی اعم از پیغام ،caption و یا هر عمل دیگری رو انجام بده متاسانه بلحاظ محدودیت رویه ها در report ، اجرای این موضوع یخورده مشکله و قاعدتاً باید براش یک ترفند پیدا کرد .
بله، شما درست میفرمایید و من به موضوع دقت نکرده بودم. البته دوستمون میتونن با گروه بندی هم به خواسته شون برسن (بجای ساب ریپورت) ولی برای اینکه تاپیک به سرانجام برسه و بر پایه نمونه ای که شما گذاشتین:
میشه در Detail_Format ریپورت اصلی چک کرد که اگر ساب ریپورت رکورد نداره نمایش داده نشه.
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
If DCount("F1", "TABLE2", "F1='" & Me.Controls("F1") & "'") = 0 Then
Me.TABLE1_SUB.Visible = False
Me.MESSAGE.Visible = True
Else
Me.TABLE1_SUB.Visible = True
Me.MESSAGE.Visible = False
End If
End Sub