Reputation: 93
I'm having some trouble in CrystalReport ASP.NET.
I'm creating a DataSet
in ASP.NET and I want to export it to CrystalReport.rpt
using ADO.NET(xml). But it fails. When I make a new connection and put an attribute column in the report, the Main Report Viewer
in Crystal Report shows the wrong result. I compile the sql query in Oraclesqldevelop
, the result is fine and doesn't have any problems. I want to click a button and show the report.
This is my code :
protected void btnsumbit_Click(object sender, EventArgs e)
{
lblerror.Text = "";
if (txtdari.Text == "" || txtdari.Text == null || txtsampai.Text == "" || txtsampai.Text == null)
{
lblerror.Text = "Tanggal Harus Diisi !!!";
}
else
{
DateTime dt1 = Convert.ToDateTime(txtdari.Text);
DateTime dt2 = Convert.ToDateTime(txtsampai.Text);
if (dt1.Date > dt2.Date)
{
lblerror.Text = "Format Tanggal yang Dimasukkan Salah !!!";
}
else
{
OracleConnection conn = new OracleConnection();
conn.ConnectionString = connectionstring;
conn.Open();
string sql = "SELECT c.SUB_DISTRIBUTOR , c.MID , c.REKNO , b.ID, b.TERMINAL_ID , b.TANGGAL , b.KETERANGAN , b.DEBIT , b.KREDIT , b.SALDO , b.REFF_NO,b.PRODUK,b.NO_PELANGGAN, b.SN_ID , b.STATUS from MERCHANT c JOIN DAILY b ON (b.REKENING_NO = c.REKNO) where TANGGAL between TO_DATE('"+txtdari.Text+"','mm-dd-yyyy') AND TO_DATE('"+txtsampai.Text+"','mm-dd-yyyy')";
OracleCommand cmd = new OracleCommand(sql, conn);
OracleDataAdapter da = new OracleDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
da.Dispose();
DataSet ds = new DataSet();
ds.Tables.Add(dt);
ds.WriteXmlSchema("C:\\Users\\Henz\\Documents\\Visual Studio 2012\\Projects\\LPI\\LPI\\Files\\Sample.xml");
conn.Close();
Response.Redirect("plot.aspx");
}
}
}
Upvotes: 0
Views: 728
Reputation: 1030
As your description, I can understand that there is not any error happened. The main issue is your result is not like your expectation. So I think you should check again Parameter of your command. Please try with below code :
DateTime dt1 = Convert.ToDateTime(txtdari.Text);
DateTime dt2 = Convert.ToDateTime(txtsampai.Text);
////////ARI DATE/////////
OracleParameter fromDateParameter = new OracleParameter();
fromDateParameter.OracleDbType = OracleDbType.Date;
fromDateParameter.Value = dt1;
////////SAMPAI DATE/////////
OracleParameter toDateParameter = new OracleParameter();
toDateParameter.OracleDbType = OracleDbType.Date;
toDateParameter.Value = dt2;
this.oracleDataAdapter4.SelectCommand = new OracleCommand("SELECT c.SUB_DISTRIBUTOR , c.MID , c.REKNO , b.ID, b.TERMINAL_ID , b.TANGGAL, b.KETERANGAN , b.DEBIT , b.KREDIT , b.SALDO , b.REFF_NO,b.PRODUK,b.NO_PELANGGAN, b.SN_ID , b.STATUS from MERCHANT c JOIN DAILY b ON (b.REKENING_NO = c.REKNO) where TANGGAL BETWEEN :fromDateParameter AND :fromDateParameter)”, conn);
OracleDataAdapter da = new OracleDataAdapter(cmd);
da.SelectCommand.Parameters.Add(fromDateParameter);
da.SelectCommand.Parameters.Add(toDateParameter);
DataTable dt = new DataTable();
da.Fill(dt);
Upvotes: 1