01.
Sub
print_report(
ByVal
qt_no
As
string)
02.
Dim
doc
As
String
=
"test"
03.
Dim
sql
As
String
=
"select entry_date from qt_policy where qt_no ='"
& st_no &
"'"
04.
Dim
var(1)
As
String
, l(1)
As
String
05.
var(0) =
"@qt_no"
: l(0) =
"QNº: "
& st_no
06.
Exportport(sql, doc, var, l, CrystalReportViewer1)
07.
08.
End
Sub
09.
10.
11.
12.
13.
Public
Sub
Exportport(
ByVal
sql
As
String
,
ByVal
DOC_name
As
String
,
ByVal
PV()
As
String
,
ByVal
P_VAL()
As
String
,
ByVal
crs
As
CrystalDecisions.Web.CrystalReportViewer)
14.
15.
Dim
sqlConn
As
New
SqlConnection(
"............."
)
16.
Dim
b
As
New
SqlDataAdapter(sql, sqlConn)
17.
Dim
dst
As
New
DataSet
18.
b.Fill(dst,
"table"
)
19.
Dim
rpt
As
New
ReportDocument()
20.
rpt.Load(Server.MapPath(
"~/Reports/"
& DOC_name &
".rpt"
))
21.
rpt.SetDataSource(dst.Tables(0))
22.
23.
If
PV IsNot
Nothing
Or
P_VAL IsNot
Nothing
Then
24.
Dim
PAR(UBound(PV))
As
ParameterDiscreteValue
25.
Dim
PAR_F
As
ParameterFieldDefinitions
26.
Dim
VAL(UBound(PV))
As
ParameterValues
27.
Dim
cr(UBound(PV))
As
ParameterFieldDefinition
28.
PAR_F = rpt.DataDefinition.ParameterFields
29.
30.
For
i
As
Integer
= 0
To
UBound(PV)
31.
cr(i) = PAR_F.Item(PV(i))
32.
VAL(i) = cr(i).CurrentValues
33.
PAR(i) =
New
ParameterDiscreteValue
34.
PAR(i).Value = P_VAL(i)
35.
VAL(i).Add(PAR(i))
36.
cr(i).ApplyCurrentValues(VAL(i))
37.
rpt.SetParameterValue(PV(i), P_VAL(i))
38.
Next
39.
End
If
40.
41.
Try
42.
With
crs
43.
.DisplayToolbar =
True
44.
.HasExportButton =
False
45.
.HasRefreshButton =
False
46.
.HasToggleParameterPanelButton =
False
47.
.PrintMode = CrystalDecisions.Web.PrintMode.ActiveX
48.
.ToolPanelView = CrystalDecisions.Web.ToolPanelViewType.None
49.
.ReportSource = rpt
50.
.DataBind()
51.
End
With
52.
53.
Catch
ex
As
Exception
54.
Console.WriteLine(ex.Message)
55.
ex =
Nothing
56.
Finally
57.
sqlConn.Close()
58.
dst.Dispose()
59.
sqlConn =
Nothing
60.
dst =
Nothing
61.
End
Try
62.
End
Sub