# Native Code > برنامه نویسی در 6 VB > ابزارهای گزارشگیری در VB6 >  سوال در مورد کریستال ریپورت؟

## ahp_online

سلام
دوستان من یک ریپورت با کریستال ریپورت ساختم و رکوردها Details برابر با 12 می باشد.حالا چطوری می توانم تعداد رکوردها را کم کنم؟؟

----------


## ahp_online

چطور میشه تعداد ریکورد در یک صفحه ریپورت را تعیین کرد؟؟؟
مثلا تعداد رکورد در قسمت detail که نمایش می دهد 12 رکورد است حالا من میخوام اینو بکنم 9 رکورد.چجوری میشه اینکار رو کرد؟؟

----------


## ahp_online

سلام
انگار کسی متوجه مشکل من نشده که جواب ندادید.من همراه عکس توضیح میدم که دوستان راحت تر متوجه بشوند.
ببیند من ریپورتی که ساختم در قسمت details آن 20 آیتم چپ شده که من می خوام 9 آیتم در هر صفحه وجود داشته باشه.حالا نمی دونم اینکار رو چطوری باشد انجام بدم؟؟
لطفا به عکس دقت کنید که متوجه حرف من شوید؟؟اگر در عکس دقت کنید Print Footer پایین صفحه در صفحه اول جای نگرفته ؟؟ 
شکر

----------


## ahp_online

سلام
آقا لطفا یکی مشکل منو حل کنه !!! هرکار میکنم اطلاعات من چندین بار چاپ میشه.دقت کنید به قسمت Details می بینید اطلاعات جدول مدام تکرار شده!!!

سوال 2 : من توسط کدنویسی ریپورت مورد نظر رو از بانک می گیرم و روی کریستال ریپورت میفرستم که این کد می باشد:
Set crrept = crapp.OpenReport(App.Path & "\Report\IVR.Rpt")
crrept.RecordSelectionFormula = "{DCC.SIVRNo} = '" & prin & "'"
CrystalActiveXReportViewer1.ReportSource = crrept
CrystalActiveXReportViewer1.ViewReport
crrept.DiscardSavedDataولی یک مشکل دارم.این ریپورت مال جدول Page Header می باشدکه اطلاعات روی فرم به نمایش در میاد ولی وقتی می خوام اطلاعات مورد نظر رو روی Reprot Headeb نمایش بدم نمایش نمیده!!!
چطور می تونم اطلاعات رو روی Report Header b نمایش بدم؟؟؟
در عکس قسمت Reprot Heade b و Page Report مشخص می باشد اگر دقت فرمائید!!

----------


## m.4.r.m

شما مشکل دستوری در ارسال اطلاعات به کریستال رو داری قبلش یه دستور SQL بگیر بعد نتیجه رو ارسال کن یا اینکه فرم رو نشون بده بعد یه تکست باکس بزار مقدار تکست باکس رو در کریستا نشون بده صبر کن یه نمونه بهت بدم با این کارت راه میوفته

Dim crApp As New CRAXDDRT.Application
Dim crRept As New CRAXDDRT.Report
Dim crDBTab As CRAXDDRT.DatabaseTable

Private Sub Cmd_SetData_Click()

   Set crRept = crApp.OpenReport(App.Path & "\Reports\Sample_Report.Rpt")
   
   If Val(Text1) > 0 Then
      crRept.RecordSelectionFormula = "{Person.ID}>" & Val(Text1)
   End If
   
   If Trim(Text2) <> "" Then
      crRept.FormulaFields.GetItemByName("DateBox").Text = "'" & Trim(Text2) & "'"
   End If
   
   For Each crDBTab In crRept.Database.Tables
       crDBTab.ConnectionProperties.Item("Data Source") = App.Path & "\DataBase\Sample_db.mdb"
       crDBTab.ConnectionProperties.Item("Jet Database Password") = "iran"
   Next
   
   CrystalReport.ReportSource = crRept
   CrystalReport.ViewReport
   crRept.DiscardSavedData
   
End Sub

----------


## ahp_online

این قسمت برنامه میشه بگید چی کار میکنه؟؟
For Each crDBTab In crRept.Database.Tables
crDBTab.ConnectionProperties.Item("Data Source") = App.Path & "\DataBase\Sample_db.mdb"
crDBTab.ConnectionProperties.Item("Jet Database Password") = "iran"
Next

من در صفحه اول Report Footer رو ندارم.دلیلش هم اینه که قسمت Details تا انتهای صفحه مدام تکرار شده؟؟ (در عکس مشخصه) میشه این مشکلم رو حل کنید؟؟

----------


## ahp_online

سلام 
سوال 3 : چرا در صفحه دوم  دیگه Report Header چاپ نمیشه؟؟ مگه نباید در تمام صفحات مثل report footer وجود داشته باشه؟؟

----------


## ahp_online

کسی نیست به سوالات و مشکلات من پاسخ بده!! کارم هلد شده بابت این مشکلات!!!
لطفا اگه کسی بلده جواب بده.
تشکر

----------


## vbhamed

سلام

 خب معلومه، اون Page Header و Page Footer هستن كه در همه صفحات چاپ ميشه نه Report Header
ضمنا Report Footer هم فقط در آخرين صفحه چاپ ميشه

----------


## ahp_online

سلام
آقا قسمت details وقتی اطلاعات رو از بانک میخونم و میفرستم مدام تکرار میشه.به عکس های بالا دقت کنید؟؟چه باید بکنم؟؟میشه به این سوالم هم جواب بدید؟

----------


## vbhamed

سلام

خب حتما اطلاعات تو بانكتون اين شكليه كه تكرار ميشه
براي بررسي بيشتر فايل بانك و گزارش رو بفرستيد

----------


## ahp_online

سلام
دوست عزیز اینم فایل کریستال ریپورت و بانک اطلاعاتی ...
لطفا راهنمایی کنید!!؟؟ هر کاری میکنم درست نمیشه !!!
واقعا دیگه نمی دونم مشکل کارم کجاست
تشکر

http://uplod.ir/lul2xg515s8m/Database___Report.rar.htm

----------


## vbhamed

سلام

اساس كار يك گزارش و زير گزارش ارتباط بين جداول بانك هست كه در بانك شما هيچ ارتباط يا همون Relationship اي تعريف نشده، در يك جدول شما 12 ركورد و در جدول ديگر 6 ركورد وجود داره كه حاضلضرب اونا ميشه 72 ركورد و گزارش شما هم به درستي 72 ركورد رو نشون مي‌ده
فكر مي‌كنم با استفاده از فيلد SIVRNo و IVR بايد ارتباط رو انجام بدين

----------


## ahp_online

سلام
چطوری میشه این ارتباط رو برقرار کرد؟؟؟میشه بیشتر توضیح بدید؟؟
میشه با فایل هایی که براتون گذاشتم و کریستال ریپورتی که ساختم یک مثال بنویسید و برام بزارید؟؟ فرض کنید شماره IVR یک را می خواهید ریپورت بگیرید؟؟
تشکر

----------


## ahp_online

سلام
آقا چی شد؟؟ لطفا جواب بدید چون شدیدا گیرم و کارم هلد شده !!!!

----------


## vbhamed

سلام

براي اين كار در مورد بانكهاي اطلاعاتي رابطه اي جستجو كنيد و Relationship ها
ضمن ارتباط جداول بانك شما رو در نرم افزار اكسس ميشه برقرار كرد
ولي اينكه من الان به همچين كاري انجام بدم فايده اي نداره چون ارتباط رو هم كه برقرار كنم بازم وقتي اصل مطلب رو ندونيد تو استفاده و درج و حذف ركورد به مشكل برخورد مي‌كنيد

----------


## ahp_online

سلام
ببینید من با دستورات اس کیو ال آشنایی دارم. و با دستور select اطلاعاتی که می خوام از بانک انتخاب میکنم و به کریستال ریپورت میفرستم ولی مدام در چند صفحه ریپورت تکرار میشه!!!
حالا می خوام این مشکل رو حل کنم؟؟ لطفا راهنمایی کنید دقیقا باید چی کار کنم؟؟
من متوجه منظور شما اصلا نشدم؟؟
ممنون

----------


## ahp_online

سلام
دوستان چطور میتونم یک عکس رو که در بانک اطلاعاتی می باشد رو به کریستال ریپورت بفرستم و پرینت بگیرم؟؟؟

----------


## vbhamed

سلام

اگر تو همين سايت جستجو كنيد من چند بار نمونه اين رو گذاشتم

----------

