コード例 #1
0
        private void BtnMostrar_Click(object sender, EventArgs e)
        {
            Cursor = Cursors.WaitCursor;
            try
            {
                CrvVentasCliente.ReportSource          = null;
                CrvVentasClienteDetallado.ReportSource = null;
                if (c1cboCia.SelectedIndex != -1 & DtpFechaIni.Value != null & DtpFechaFin.Value != null)
                {
                    EmpresaID = c1cboCia.SelectedValue.ToString();

                    DateTime fechaini = Convert.ToDateTime(DtpFechaIni.Value.ToShortDateString());
                    DateTime fechafin = Convert.ToDateTime(DtpFechaFin.Value.ToShortDateString());


                    ReportDocument ObjCrVentasCliente = new ReportDocument();
                    if (TcVentasCliente.SelectedIndex == 0)
                    {
                        DtVentasCliente    = ObjCL_Venta.GetVentasCliente(1, fechaini, fechafin, Convert.ToInt32(useCliente1.cbCliente.SelectedValue), EmpresaID);
                        ObjCrVentasCliente = new Halley.Presentacion.CrystalReports.CrVentasCliente();
                    }
                    else if (TcVentasCliente.SelectedIndex == 1)
                    {
                        DtVentasCliente    = ObjCL_Venta.GetVentasCliente(2, fechaini, fechafin, Convert.ToInt32(useCliente1.cbCliente.SelectedValue), EmpresaID);
                        ObjCrVentasCliente = new Halley.Presentacion.CrystalReports.CrVentasClienteDetallado();
                    }

                    //pasar datos directo al crystal reports
                    TextObject txt;
                    txt      = (TextObject)ObjCrVentasCliente.ReportDefinition.ReportObjects["TxtTitulo"];
                    txt.Text = "DATOS DESDE " + DtpFechaIni.Value.Date.ToShortDateString().ToString() + " A " + DtpFechaFin.Value.Date.ToShortDateString().ToString();

                    DataSet   Ds = new DataSet();
                    DataTable Dt = new DataTable("Logo");
                    Dt.Columns.Add("Logo", typeof(byte[]));
                    Dt.Columns.Add("NomEmpresa", typeof(string));
                    DataRow Dr = Dt.NewRow();
                    // El campo productImage primero se almacena en un buffer
                    DataRow[] customerRow = UTI_Datatables.DtEmpresas.Select("EmpresaID = '" + c1cboCia.SelectedValue.ToString() + "'");
                    if (customerRow[0]["Logo"] != DBNull.Value)
                    {
                        Dr["Logo"] = customerRow[0]["Logo"];
                    }
                    else
                    {
                        Dr["Logo"] = DBNull.Value;
                    }
                    Dr["NomEmpresa"] = customerRow[0]["NomEmpresa"];

                    Dt.Rows.Add(Dr);
                    DtVentasCliente.TableName = "GetCierreDiario";
                    Ds.Tables.Add(Dt);
                    Ds.Tables.Add(DtVentasCliente);

                    ObjCrVentasCliente.SetDataSource(Ds);
                    if (TcVentasCliente.SelectedIndex == 0)
                    {
                        CrvVentasCliente.ReportSource = ObjCrVentasCliente;
                    }
                    else if (TcVentasCliente.SelectedIndex == 1)
                    {
                        CrvVentasClienteDetallado.ReportSource = ObjCrVentasCliente;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            Cursor = Cursors.Default;
        }