You are on page 1of 13

nzzng dzn tzo bo co dzng Crysta| keport vz| Store

rocedure C# Vs 200S
C lr vl kh rc chr do cc ngurn Lhong Lln hlrm hol horc khng al rnh m hrrng drn cr Lhr nn mlnh
xln hrrng drn chl LlrL vlrc Lro crysLal reporL vrl sLore procedure nhr cc brn blrL sLore n cng c
drng khng Lruyrn Lham sr no ( cch ny reporL qu dr ) cch 2 l c Lruyrn Lham sr dr lrc ra cc gl
Lrr ( Lul sr hrrng drn llen qua phrn ny) ngol ra crysLal reporL c cc cch khc nhau dr Lruyrn Lham
sr c ngrrl dung parameLer fleld ( da sr cc Lhng Lln hrrng drn Lon cl ny) c ngrrl dung formula
lleld ( lL al hrrng drn cl ny) v xln Lhong bo Lul chr hrrng drn formula vl n nrm Lrong cl Lul Llm
hlru

Cn dy sr l urng mlnh murn lm yu cru nhr sau 1l c danh sch cc ha drn Lhanh Lon Ll
murn lrc ra cc Pa drn chra dng Llrn Lr ngy 20/11/2000 drn ngy 20/11/2010 PrL !
1hlrL kr glao dlrn
+ 2 cl daLeLlmeplcker
+2 buLLon ( cl buLLon Lrp bo co l dr Ll lru bo co ny xurng CSuL ko dlnh gl crysLal nn khrl quan
Lm)
+ 1 crysLalreporLvlewer
+ mry cl label drng quan Lm
Plnh nhr sau




Sau dy Ll sr demo Lrlnh Lr cc brrc Lhrc hlrn
8rrc 1
1ro 1 daLabase c Ln l Poauon1hanh1oan" 1 brng chra Lhng Lln vl dr LblPoauon1hanh1oan"
nhr hlnh sau


8rrc 2
1ro krL nrl server Lrong vS2003 cl ny chrc khrl chr cho dr mrL cng nhr al khng blrL c Lhr Llm
chr no d hrrng drn Plnh mlnh krL nrl sever explorer l dy

8rrc 3
1hlrL kr cl form y nhr cl hlnh yu cru ( Lru y chr c nhrng al c cl crysLal reporL Lhl Lrong Loolbox
mrl hlrn Lool crysLal reporL Lhl nhe ko Lhl 1 l col Lrong dla c ko 2 l Lr down vr )

8rrc 4 LhlrL kr sLore procedure Lao mrl 1 sLore Lrong SCL hay vS2003 dru drrc


urng c m copy lun cr cl AL1L8 8CCLuu8L dboSLoredrocedure2" nhe vl cl ny chr dung cho
sLored d drrc Lro copy chra ra cl ny dum kro nl mlnh chr sal
Sau khl xong rrl Lhlch Lhl cr execuLe chry Lhr ngay Lrong vS2003
ALTER PRJCEDURE dbo.StoredProcedure2

@TuNgay datetime,
@DenNgay datetime

AS
/ SET NJCJUNT JN /
/ DECLARE @TuNgay datetime
DECLARE @DenNgay datetime/
SELECT HoaDonThanhToan.SoHoaDon, HoaDonThanhToan.MSTKV,
HoaDonThanhToan.DaThanhToan, HoaDonThanhToan.HanChot
FRJM HoaDonThanhToan
WHERE (HoaDonThanhToan.DaThanhToan = 0) and
(HoaDonThanhToan.HanChot <= @DenNgay) and (HoaDonThanhToan.HanChot =
@TuNgay)
RETURN


8rrc 3 LhlrL kr uaLaSeL Lhl chrc chr lun dr khrl al Lhrc mrc srn cho nhrng al mrl lm quen lun

Sau d chrn uaLaSeL


kr Llrp La add sLore mrl Lro vo Lrong uaLaSeL ny



Chrn nexL chrn use exlsLlng SLored rocedures chrn selecL combox chrn cl sLored mlnh mrl
Lro


8rl chrn nexL nexL llnlsh urn dy La d c daLaseL chra sLore Lrong d c cc brng m La murn
hlrn rrl

8rrc 6 1ro CrysLal reporL




Cra Ll l 8aoCao1lenhaLrpL ( al drL Ln gl Lhl nhr lry )
Sau khl La nhrn nuL Add" chrn nhr hlnh sau


1lrp Lheo La sr add dr llru sLore cra chung La vo nhr sau




Ck drn brrc ny La crn nghr ngrl nghe Ll glrl Lhlch Ll cho r drn dy SLored cra chung La d drrc
add vo CrysLal 8eporL nru chung La ko crn Lruyrn Lham sr Lhl cr vlrc keo cc lleld vo Lrong SecLlon3
ueLall


nhrng Lrrrng hrp chung La crn phrl Lruyrn Lham sr Lr daLe1lmelcker m chung La d LhlrL kr Lhl
chung La ko lm Lrrc Llrp dc vrl cch ny m chung La phrl lm gln Llrp sau d vlrL code Lhl mrl drrc
nhr d nl c cc cch nhr dung 8lrn ro Lhurc arameLer lleld horc lormula llelds nhr hlnh Lrn bn
Lrl cc brn Lhry r dy Ll dung lormula ( Luy ngrrl c ngrrl cho l arameLer dr cn Ll Lhl lormula
dr xl ) Ck Llrp Lrc Ll sr new cc blrn Lrong lormula lleld brng cch 8lghL_cllck ln lormula lleld
chrn new ( khuyrn co cc brn dang Llm hlru nn drL Lheo cch Ll vr sau al rnh Lhl cr drl Lr do ) r
dy Ll drL l l1 l2 l3 l4 rng vrl 4 cl lleld Lrong SLored m La Lro ( Plnh r Lrn l do phrn cra Ll n
c lln quan 2 Lable nn c Lrl 7 fleld cng ko quan Lrrng lrm nru cc brn hlru r ny glr mlnh dang
lm gl ) khl new cc brn cr chrn use LdlLor horc use LxperL Luy ko quan Lrrng Sau d keo cc fleld
Lrong lormula lleld vo Lrong SecLlon3 ueLall cc brn sr Lhry nhr hlnh Lrn xong Lrrrc khl cc brn
Llrp cc brn vo SecLlon2 ( age Peader ) cllck Lrl vo l1 qua roperLles name n l 1exL1
Lrrng Lr l21exL2 l31exL3 vl sao Ll nl cc brn dr y cl ny brl vl lL vlrL code chung La sr drl chung
Lhnh cc name Lrrng rng vrl cc fleld Lhurc SLore vl dr 1exL1SoPoauon 1exL2 MS1kv

Pon LrL CrysLal glr chung La qua lorm LhlrL kr r brrc 3
8rrc Curl cung

Chung La sr chr c nhlu dy code Lhl


nhln rrl nhr drng lo Ll sr glrl Lhlch chl LlrL lun
uru Lln chung La sr crn lry dr llru Lr uaLaseL chra SLore m chung La Lro
8aoCao1SLoredrocedure2uaLa1able baocao
baocao new 8aoCao11ableAdapLersSLoredrocedure21ableAdapLer()CeLuaLa(daLe1ungayvalue
daLeuenngayvalue)// Cl ny sr lrc ra dr llru dra vo 2 cl daLe1lmelcker chung La LhlrL kr r Lrn rrl
lry dr llru gn vo baocao

documenLSeLuaLaSource((uaLa1able)baocao) // 1hlrL lrp uaLaSoucre cho reporL cra chung La Lr cl
baocao
Clrl Lhlru Ll vr sLrlng lormaL lun
sLrlnglormaL(1exL0 1) // khl xurL ra chung La sr c 1exL1
sLrlnglormaL(1exL0 2) // khl xurL ra chung La sr c 1exL2


((CrysLalueclslonsCrysLal8eporLsLnglne1exLCb[ecL)documenL8eporLueflnlLlon8eporLCb[ecLssLrlnglo
rmaL(1exL0 l + 1))1exL baocaoColumnslColumnname // Cl ny kh glrl Lhlch chrc al glrl ln
MSun sr r cc lrp drl Lrrng ny nl chung r dy chung La sr Lhay drl Llu dr cc fleld SecLlon2 Peader
l1l2l3 dra vo baocaoColumnslColumnname ( SoPoauon MS1kvua1hanh1oan PanChoL)


documenLuaLaueflnlLlonlormulalleldsl1exL sLrlnglormaL(SLoredrocedure20
baocaoColumnslColumnname)/// ulrn LrL cr cc dr llru Lhurc Lrrrng no d vo lleld l chrc phrl
glrl Lhlch r Ll chr ny cc brn dr y SLoredrocedure20 glr sr l1 nru xurL ra messageboxshow
La sr c krL qur SLoredrocedure2SoPoauonnghla l khl La lrc ra La c cc SoPoauon nhr 1234
Lheo 1 hng drc ( crL ) sau d gn cl crL ny vo lormula lleld Lhr l rng vrl [l1[l2[l3

vl dr drn glrn nhr documenLuaLaueflnlLlonlormulallelds01exL A8C" Lhl Lrong reporL ngay chr
[l1 sr c 1 churl A8C ( cr Lro 1 pro[ecL 1esL rrl Lhr code sr r )

Curl cung gn documenL ny glr La lm vo crysLalreporLvlewer Lrn lorm l xong
aoCaoTP.StoredProcedure2DataTable baocao;
private void bttHienThi_Click(object sender, EventArgs e)
,
aoCaoTienPhat document = new aoCaoTienPhat();
baocao = new
aoCaoTPTableAdapters.StoredProcedure2TableAdapter().GetData(dateTuNgay.Value,
dateDenNgay.Value);
document.SetDataSource((DataTable)baocao);
for (int i = 0; i < baocao.Columns.Count; i++)
,
document.DataDefinition.FormulaFieldsi,.Text =
string.Format(",,StoredProcedure2.,0,,,", baocao.Columnsi,.ColumnName);

((CrystalDecisions.CrystalReports.Engine.TextJbject)document.ReportDefinition.Report
Jbjectsstring.Format("Text,0,", i + 1),).Text = baocao.Columnsi,.ColumnName;
,
crystalReportViewer1.ReportSource = document;
,
crysLal8eporLvlewer18eporLSource documenL

Cng vlrc by glr l bull dr n cra chung La ln v chry chung 8rL dru chry Lhl Py Lhrrng Lhrc Lhnh
qur mlnh vra lm ra

23h28 rrl Lrn 2h ngrl vlrL cl ny cng mong cho al dang crn c Lhr Llm drrc nh sang nrl curl chn
Lrrl Chuc ngr ngrn everybody !

You might also like