سلام دوستان عزیز :
برای اینکه شما در گزارشگیریهای که انجام میدهید توسط CrystalReport و از طریق Visual Basic بدون اینکه برنامه کاربردیتان را شلوغ کنید ، من راه حلی را برای اینکه فایل گزارش شما از خارج برنامه نمایش داده شود ارائه میدهم ، به تزتیب مراحل زیر را انجام دهید :
1- گزارش مورد نظر را در CrystalReport طراحی نمائید.
2- از قسمت کامپونتها " Crystal Report Control " را انتخاب نمائید و پروژه خودتان اضافه کنید.
3- این کنترل را به روی فرم اضافه کنید ، نام این کنترل در Properties مشخص است.
4- حال از طریق کد زیر می توانید این گزارش را فراخوانی نمائید ، بدون اینکه نیازی به اضافه کردن این گزارش به برنامه کاربردیتان باشد.
With CrystalReport1
.ReportFileName = App.Path & "\Report\Rep_List_Cal2.rpt"
.Connect = CNN.Cnn1
.DiscardSavedData = True
.RetrieveDataFiles
.ReportSource = 0
.SQLQuery = "SELECT * FROM tblName WHERE پارامترهای شرط"
Menu_Rep.txt_sql.Text = .SQLQuery
.ReportTitle = "گزارش 1"
.Destination = crptToWindow
.PrintFileType = crptCrystal
.WindowState = crptMaximized
.WindowMaxButton = False
.WindowMinButton = False
.WindowShowExportBtn = False
.WindowShowProgressCtls = True
.WindowShowSearchBtn = True
.WindowShowRefreshBtn = True
.WindowShowGroupTree = False
.Action = 1
End With
CNN = برای ارتباط برنامه با SQL Server هستش ، اگر در مورد اتصال به Sql Server مشکل دارید ، من قبلاً این موضوع را توضیح داده ام ، پس لطفاً خودتون زحمت بکشید و از توی بخش Sql مطالعه کنید.
حال شما باید مسیر فایل گزارش را به ReportFileName انتساب دهید و همچنین با دستورات SQL که مشخص هستن در این برنامه ، کد مربوطه را طراحی نمائید با توجه به گزارشی که قبلاً طراحی کرده اید.
vbstar@andimeshk.com