Hi,
A ver si alguien tiene solución a esto. Resulta ser que tengo un reporte Crystal Reports,
el cual esta funcionando bien, el problema biene cuando al Query, le quito un filtro(lo
cual me regresa mas registros) con lo cual el reporte me aparece en blanco. El quuery me
regresa datos, pero al parecer el DataSet simplemente no se llena.
Estoy usando C#, Oracle y Crystal Reports. Las pruebas que hice fue con el ancho de las
columas. Tengo 4 columnas de texto, lo que hice fue hacer un SUBSTR() para reducir la
cantidad de datos en las columas y funcionó.
Dichas columnas son VARCHAR2 de 50, 200, 200 y 255, las reduje a 5 caracteres con
el SUBSTR... ver código...
Código:
....
SELECT
CTR_CONTRATO.con_numcontrato con_numcontrato,
SUBSTR(CTR_CONTRATO.con_descripcion, 0, 5) con_descripcion,
SUBSTR(CTR_CONTRATO.con_compania, 0, 5) con_compania,
SUBSTR(CTR_CONTRATO.con_observacion, 0, 5) con_observacion,
....
Hasta aqui parecia ser ese el problema, que de cierta forma se resolvia, pero al momento
de quitar otro filtro, dejó de funcionar de nuevo.
Lo extraño es que estamos hablando de cuando mas 200 registros, con 20 columnas. Ya intente
poner un DataGrid, pero es el mismo resultado... no se llena el DataGrid.
Aqui esta parte del código C# que estoy usando...
Código:
OracleCommand oOracleCmd;
oOracleCmd = new OracleCommand();
oOracleCmd.Connection = oOracleConx;
oOracleCmd.CommandText = "PKG_CONTRATOS.sp_rep_contratos";
oOracleCmd.CommandType = CommandType.StoredProcedure;
oOracleCmd.Parameters.Add(new OracleParameter("IO_CURSOR", OracleType.Cursor)).Direction =
ParameterDirection.Output;
oOracleCmd.Parameters.Add(new OracleParameter("pSQL", OracleType.VarChar, 10000)).Direction =
ParameterDirection.Output;
OracleDataAdapter oOracleAdapter = new OracleDataAdapter(oOracleCmd);
DataSet ods = new dsRepctr(); // DataSet
oOracleAdapter.Fill(ods,"CTR_CONTRATO");
dgTemp.DataSource = ods;
dgTemp.DataBind();
.....
.....
Cualquier idea es buena,
Saludos!!