private void btnSrcCliente_Click(object sender, EventArgs e) { string s = ""; for (int x = 0; x <= chKSucursal.CheckedItems.Count - 1; x++) { s += "'" + chKSucursal.CheckedItems[x].ToString() + "',"; } s = s.TrimEnd(','); ConexBD cnx = new ConexBD(); cnx.Conectar(); ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format( "SELECT o.idOrden,UPPER(nombreCliente) nombreCliente, SUBSTRING(fechaCreado,1,10) fechaCreado,SUBSTRING(fechaEntrega,1,10) fechaEntrega,u.sucursal,totalOrden,pago1,o.aplicaDscto,DATEDIFF(NOW(),o.fechaEntrega) diasAtraso,IF(o.`estado`=0, 'En tienda','Entregado') estado, (SELECT IF(tipoServicio=1, 'Al Seco','Al Agua') from OrdenLinea where idOrden=o.idOrden Limit 1) tipo FROM Orden o INNER JOIN Cliente c ON o.idCliente=c.idCliente INNER JOIN Pago p ON o.idOrden=p.idOrden INNER JOIN usuario u ON u.id=o.idUsuario AND u.sucursal IN(" + s + ") WHERE o.estado=0 AND u.id<>1 AND o.fechaEntrega BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' " + "order by o.idOrden DESC"), cnx.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "dsInventario"); cnx.cerrarConexion(); cryrep.Load(@"D:\lavanderia\Laundry\Reportes\crInventario.rpt"); cryrep.SetDataSource(ds); frmReporte rt = new frmReporte(); rt.Text = "Reporte de Inventario"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); }
private void btnSrcCliente_Click(object sender, EventArgs e) { // If so, loop through all checked items and print results. string s = ""; for (int x = 0; x <= chKSucursal.CheckedItems.Count - 1; x++) { s += "'" + chKSucursal.CheckedItems[x].ToString() + "',"; } s = s.TrimEnd(','); if (s != "") { ConexBD cnx = new ConexBD(); cnx.Conectar(); ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format("(SELECT pg.idOrden,UPPER(c.nombreCliente) nombreCliente,SUBSTRING(o.fechaCreado,1,10) AS fechaCreado,pg.fechaPago,o.idUsuario, u.sucursal,pg.pagoTotal,pg.pago1 AS pago," + " case tipoPago1 when 0 then 'Efectivo' when 1 then 'Tarjeta' when 3 then 'Yape/Deposito' end as modoPago,IF(o.Estado=0,'ENTREGA','RECOJO') Movimiento FROM " + " (SELECT * FROM Pago WHERE fechaPago BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' " + " AND pago1>0) pg INNER JOIN Orden o ON o.idOrden=pg.idOrden AND o.tipoPago IN(1) AND o.`estado`in(0,1) INNER JOIN usuario u ON o.idUsuario=u.id " + " INNER JOIN Cliente c ON o.idCliente=c.idCliente AND u.sucursal IN(" + s + ") ORDER BY modoPago) UNION ALL " + " (SELECT pg.idOrden,UPPER(c.nombreCliente) nombreCliente,SUBSTRING(o.fechaCreado,1,10) AS fechaCreado,pg.fechaActualizado AS fechaPago,o.idUsuario, u.sucursal,pg.pagoTotal,pg.pago1 AS pago,case tipoPago1 when 0 then 'Efectivo' when 1 then 'Tarjeta' when 3 then 'Yape/Deposito' end as modoPago," + " IF(o.Estado=0,'ENTREGA','RECOJO') Movimiento FROM (SELECT * FROM Pago WHERE fechaPago BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' " + " ) pg INNER JOIN Orden o ON o.idOrden=pg.idOrden AND o.tipoPago IN(2) AND o.`estado` IN(0,1) INNER JOIN usuario u ON o.idUsuario=u.id " + " INNER JOIN Cliente c ON o.idCliente=c.idCliente AND u.sucursal IN(" + s + ") ORDER BY modoPago) " + "UNION ALL " + " (SELECT pg.idOrden,UPPER(c.nombreCliente) nombreCliente,SUBSTRING(o.fechaCreado,1,10) AS fechaCreado,pg.fechaActualizado AS fechaPago,o.idUsuario, u.sucursal,pg.pagoTotal,pg.pago2 AS pago ,case tipoPago2 when 0 then 'Efectivo' when 1 then 'Tarjeta' when 3 then 'Yape/Deposito' end as modoPago, " + " IF(o.Estado=0,'ENTREGA','RECOJO') Movimiento FROM (SELECT * FROM Pago WHERE fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' " + " ) pg INNER JOIN Orden o ON o.idOrden=pg.idOrden AND o.tipoPago IN(2) AND o.`estado` IN(1) INNER JOIN usuario u ON o.idUsuario=u.id " + " INNER JOIN Cliente c ON o.idCliente=c.idCliente AND u.sucursal IN(" + s + ") ORDER BY modoPago) ORDER BY modopago,idOrden"), cnx.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "dsCierrePagos"); cryrep.Load(varGlobales.rutaReportes + "\\Reportes\\crSucursales.rpt"); cryrep.SetDataSource(ds); cnx.cerrarConexion(); frmReporte rt = new frmReporte(); rt.Text = "Reporte de Cierre"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); } else { MessageBox.Show("Debe seleccionar al menos una sucursal", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void clientesToolStripMenuItem_Click(object sender, EventArgs e) { ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format( "SELECT upper(nombreCliente) nombreCliente,dniCliente,direccionCliente,correoCliente,telefonoCliente,u.sucursal FROM Cliente c inner join usuario u on c.usuarioCreador=u.id order by sucursal,nombreCliente"), BdComun.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "Clientes"); cryrep.Load(varGlobales.rutaReportes + "\\Reportes\\crClientes.rpt"); cryrep.SetDataSource(ds); frmReporte rt = new frmReporte(); rt.Text = "Reporte de Clientes"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); }
private void prendasToolStripMenuItem_Click(object sender, EventArgs e) { ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format( "SELECT idPrenda, NombrePrenda, DescripcionPrenda, PrecioServicio FROM Prenda"), BdComun.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "Prendas"); cryrep.Load(@"D:\lavanderia\Laundry\Reportes\crPrendas.rpt"); cryrep.SetDataSource(ds); frmReporte rt = new frmReporte(); rt.Text = "Reporte de prendas"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); }
private void btnSrcCliente_Click(object sender, EventArgs e) { ConexBD cnx = new ConexBD(); cnx.Conectar(); ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format("(SELECT pg.idOrden,UPPER(c.nombreCliente) nombreCliente,SUBSTRING(o.fechaCreado,1,10) AS fechaCreado,pg.fechaPago,o.idUsuario,IF(delivery = 1, 'SI', 'NO') as delivery, u.sucursal,pg.pagoTotal,pg.pago1 AS pago," + "(SELECT IFNULL(SUM(monto),0) FROM egresos WHERE fechaEgreso BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND idUsuario=" + varGlobales.sessionUsuario + ") egreso, " + " case tipoPago1 when 0 then 'Efectivo' when 1 then 'Tarjeta' when 3 then 'Yape/Deposito' end as modoPago,IF(o.Estado=0,'Entrega','Recojo') Movimiento FROM " + " (SELECT * FROM Pago WHERE fechaPago BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 23:59:59' " + " AND pago1>0) pg INNER JOIN Orden o ON o.idOrden=pg.idOrden AND o.tipoPago IN(1) AND o.`estado` in(0,1) INNER JOIN usuario u ON o.idUsuario=u.id " + " INNER JOIN Cliente c ON o.idCliente=c.idCliente AND u.id=" + varGlobales.sessionUsuario + " ORDER BY modoPago) UNION ALL " + " (SELECT pg.idOrden,UPPER(c.nombreCliente) nombreCliente,SUBSTRING(o.fechaCreado,1,10) AS fechaCreado,pg.fechaActualizado AS fechaPago,o.idUsuario,IF(delivery = 1, 'SI', 'NO') as delivery, u.sucursal,pg.pagoTotal,pg.pago1 AS pago, " + "(SELECT IFNULL(SUM(monto),0) FROM egresos WHERE fechaEgreso BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND idUsuario=" + varGlobales.sessionUsuario + ") egreso, " + " case tipoPago1 when 0 then 'Efectivo' when 1 then 'Tarjeta' when 3 then 'Yape/Deposito' end as modoPago," + " IF(o.Estado=0,'Entrega','Recojo') Movimiento FROM (SELECT * FROM Pago WHERE fechaPago BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 23:59:59' " + " ) pg INNER JOIN Orden o ON o.idOrden=pg.idOrden AND o.tipoPago IN(2) AND o.`estado` IN(0,1) INNER JOIN usuario u ON o.idUsuario=u.id " + " INNER JOIN Cliente c ON o.idCliente=c.idCliente AND u.id=" + varGlobales.sessionUsuario + " ORDER BY modoPago) " + "UNION ALL " + " (SELECT pg.idOrden,UPPER(c.nombreCliente) nombreCliente,SUBSTRING(o.fechaCreado,1,10) AS fechaCreado,pg.fechaActualizado AS fechaPago,o.idUsuario,IF(delivery = 1, 'SI', 'NO') as delivery,u.sucursal,pg.pagoTotal, pg.pago2 AS pago ," + "(SELECT IFNULL(SUM(monto),0) FROM egresos WHERE fechaEgreso BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND idUsuario=" + varGlobales.sessionUsuario + ") egreso, " + " case tipoPago2 when 0 then 'Efectivo' when 1 then 'Tarjeta' when 3 then 'Yape/Deposito' end as modoPago, " + " IF(o.Estado=0,'Entrega','Recojo') Movimiento FROM (SELECT * FROM Pago WHERE fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 23:59:59' " + " ) pg INNER JOIN Orden o ON o.idOrden=pg.idOrden AND o.tipoPago IN(2) AND o.`estado` IN(1) INNER JOIN usuario u ON o.idUsuario=u.id " + " INNER JOIN Cliente c ON o.idCliente=c.idCliente AND u.id=" + varGlobales.sessionUsuario + " ORDER BY modoPago) ORDER BY modopago,idOrden"), cnx.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "dsCierrePagos"); cryrep.Load(varGlobales.rutaReportes + "\\Reportes\\cierreDiario.rpt"); cryrep.SetDataSource(ds); cnx.cerrarConexion(); frmReporte rt = new frmReporte(); rt.Text = "Reporte de Cierre"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); }
private void btnSrcCliente_Click(object sender, EventArgs e) { ConexBD cnx = new ConexBD(); cnx.Conectar(); ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format("SELECT idegresos,idUsuario,sucursal,fechaEgreso,motivo,monto FROM egresos e INNER JOIN usuario u ON e.idUsuario=u.id WHERE FechaEgreso BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:00'"), cnx.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "dsEgreso"); cryrep.Load(varGlobales.rutaReportes + "\\Reportes\\crEgresos.rpt"); cryrep.SetDataSource(ds); cnx.cerrarConexion(); frmReporte rt = new frmReporte(); rt.Text = "Reporte de Egresos"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); }
private void btn_pendientes_Click(object sender, EventArgs e) { ConexBD cnx = new ConexBD(); cnx.Conectar(); ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format("SELECT idOrden,fechaEntrega,nombreCliente,totalOrden FROM Orden o,Cliente c WHERE o.idCliente=c.idCliente and SUBSTRING(o.fechaEntrega,1,10)=SUBSTRING(NOW(),1,10) AND o.estado=0 AND o.idUsuario=" + varGlobales.sessionUsuario + ""), cnx.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "pendientes"); cryrep.Load(varGlobales.rutaReportes + "\\Reportes\\crPendientes.rpt"); cryrep.SetDataSource(ds); cnx.cerrarConexion(); frmReporte rt = new frmReporte(); rt.Text = "Reporte de Entregas"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); }
private void button1_Click(object sender, EventArgs e) { ConexBD cnx = new ConexBD(); cnx.Conectar(); ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format( "SELECT o.idOrden,c.dniCliente,c.nombreCliente,o.fechaCreado,o.fechaEntrega, o.totalOrden,l.cantidad,l.precio,l.descripcion,l.total,l.colorPrenda,l.marca,l.defecto,p.pago1,p.pago2,u.direccion,u.telefono FROM Orden o INNER JOIN Cliente c ON o.idCliente=c.idCliente INNER JOIN Pago p ON o.idOrden=p.idOrden INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN usuario u ON u.id=o.idUsuario WHERE o.idOrden={0}", txtTicket.Text), cnx.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "Ticket"); cryrep.Load(varGlobales.rutaReportes + "\\Reportes\\crTicket.rpt"); cryrep.SetDataSource(ds); //cryrep.PrintToPrinter(1, true, 0, 0); cnx.cerrarConexion(); frmReporte rt = new frmReporte(); rt.Text = "Ticket"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); }
private void cierreCajaToolStripMenuItem_Click(object sender, EventArgs e) { ReportDocument cryrep = new ReportDocument(); MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format( "SELECT al.idOrden,al.fechaCreado,if(al.tipoServicio=1, 'Al seco','Al Peso') tipo,al.pago1,al.pago2,(al.precio*al.cantidad) total from (SELECT l.tipoServicio,o.idOrden,o.fechaCreado,l.precio,l.cantidad,total,p.pago1,p.pago2 FROM Orden o inner join OrdenLinea l on o.idOrden=l.idOrden inner join Pago p on o.idOrden=p.idOrden where p.tipoPago in(1,2) and tipoPago1 in(0,1) and tipoPago2 in (0,1)) al where al.tipoServicio in(1,2);"), BdComun.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "sdAlseco"); cryrep.Load(@"D:\lavanderia\Laundry\Reportes\crCierre.rpt"); cryrep.SetDataSource(ds); frmReporte rt = new frmReporte(); rt.Text = "Reporte de Cierre al Seco"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); }
private void btnSrcCliente_Click(object sender, EventArgs e) { string s = ""; for (int x = 0; x <= chKSucursal.CheckedItems.Count - 1; x++) { s += "'" + chKSucursal.CheckedItems[x].ToString() + "',"; } s = s.TrimEnd(','); if (s != "") { ReportDocument cryrep = new ReportDocument(); string query = "SELECT al.idOrden,UPPER(al.nombreCliente) nombreCliente,al.sucursal,al.fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombrePrenda,al.marca,al.colorPrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Agua') tipoServicio,al.pago1,al.pago2,al.fechaActualizado,al.total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.tipoServicio,o.idOrden,c.`nombreCliente`,o.fechaCreado,o.`fechaEntrega`,pr.`nombrePrenda`,l.precio,l.`marca`,l.`colorPrenda`,l.cantidad,total,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,p.pago1,p.pago2,p.`fechaActualizado`,o.totalOrden, o.`tipoPago`,o.`aplicaDscto`, u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Prenda pr ON l.`idPrenda`=pr.`idPrenda`INNER JOIN `Cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON u.`id`=o.`idUsuario` AND u.sucursal IN(" + s + ") INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago=1 AND tipoPago1 IN(0,1)) al WHERE al.fechaCreado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio=1 UNION ALL SELECT al.idOrden,UPPER(al.nombreCliente) nombreCliente,al.sucursal,al.fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.marca,al.colorPrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Agua') tipoServicio,al.pago1,al.pago2,al.fechaActualizado,al.total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.tipoServicio,o.idOrden,c.`nombreCliente`,o.fechaCreado,o.fechaEntrega,pr.`nombreServicio`,l.precio,l.`marca`,l.`colorPrenda`,l.cantidad,total,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,p.`pago1`,p.`pago2`,p.`fechaActualizado`,o.`totalOrden`,o.`tipoPago`,o.`aplicaDscto`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `Cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON u.`id`=o.`idUsuario` AND u.sucursal IN(" + s + ") INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago IN(1) AND tipoPago1 IN(0,1) AND tipoPago2 IN (0,1)) al WHERE al.fechaCreado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio=2 UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.marca,al.colorPrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipoServicio,al.pago1,al.pago2,al.fechaActualizado,(al.precio*al.cantidad) total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.fechaCreado,o.`fechaEntrega`,pr.nombreServicio,l.`marca`,l.`colorPrenda`,l.precio,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,p.`fechaActualizado`,o.`totalOrden`,o.`tipoPago`,o.aplicaDscto,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `Cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON u.`id`=o.`idUsuario` AND u.sucursal IN(" + s + ") INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago IN(2) AND tipoPago1 IN(0,1) AND tipoPago2 IN (0,1) AND p.`Estado`=0) al WHERE al.fechaCreado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(2) UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaActualizado fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombrePrenda,al.marca,al.colorPrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipoServicio,al.pago1,al.pago2,al.fechaActualizado, total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.`fechaEntrega`,p.fechaActualizado,pr.`nombrePrenda`,l.precio,l.`marca`,l.`colorPrenda`,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.aplicaDscto,o.`tipoPago`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Prenda pr ON l.`idPrenda`=pr.`idPrenda`INNER JOIN `Cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON u.`id`=o.`idUsuario` AND u.sucursal IN(" + s + ") INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago IN(2) AND tipoPago1 IN(0,1) AND tipoPago2 IN (0,1) AND p.`Estado` IN(0,1)) al WHERE al.fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(1) UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaActualizado fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.marca,al.colorPrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipoServicio,al.pago1,al.pago2,al.fechaActualizado,(al.precio*al.cantidad) total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.`fechaEntrega`,p.fechaActualizado,pr.nombreServicio,l.`marca`,l.`colorPrenda`,l.precio,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.aplicaDscto,o.`tipoPago`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `Cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON u.`id`=o.`idUsuario` AND u.sucursal IN(" + s + ") INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago=2 AND tipoPago1=0 AND tipoPago2=0 AND p.`Estado`=1) al WHERE al.fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(2) UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaActualizado fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.marca,al.colorPrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipoServicio,al.pago1,al.pago2,al.fechaActualizado,(al.pago2) total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.`fechaEntrega`,p.fechaActualizado,pr.nombreServicio,l.`marca`,l.`colorPrenda`,l.precio,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago2=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.aplicaDscto,o.`tipoPago`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `Cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON u.`id`=o.`idUsuario` AND u.sucursal IN(" + s + ") INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.pago1>0 AND p.tipoPago=2 AND tipoPago1=0 AND tipoPago2 IN(0,1) AND p.`Estado`=1) al WHERE al.fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(2) ORDER BY idOrden"; // "SELECT al.idOrden,UPPER(al.nombreCliente) nombreCliente,al.sucursal,al.fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombrePrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Agua') tipoServicio,al.total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.tipoServicio,o.idOrden,c.`nombreCliente`,o.fechaCreado,o.`fechaEntrega`,pr.`nombrePrenda`,l.precio,l.cantidad,total,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,o.totalOrden, o.`tipoPago`,o.`aplicaDscto`, u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Prenda pr ON l.`idPrenda`=pr.`idPrenda`INNER JOIN `Cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON u.`id`=o.`idUsuario` INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago=1 AND tipoPago1 IN(0,1)) al WHERE al.fechaCreado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio=1 UNION ALL SELECT al.idOrden,UPPER(al.nombreCliente) nombreCliente,al.sucursal,al.fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Agua') tipoServicio,al.total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.tipoServicio,o.idOrden,c.`nombreCliente`,o.fechaCreado,o.fechaEntrega,pr.`nombreServicio`,l.precio,l.cantidad,total,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.`tipoPago`,o.`aplicaDscto`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `Cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON u.`id`=o.`idUsuario` INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago IN(1) AND tipoPago1 IN(0,1) AND tipoPago2 IN (0,1)) al WHERE al.fechaCreado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio=2 UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipo,(al.pago1) total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.fechaCreado,o.`fechaEntrega`,pr.nombreServicio,l.precio,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.`tipoPago`,o.aplicaDscto,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON U.`id`=O.`idUsuario` INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago IN(2) AND tipoPago1 IN(0,1) AND tipoPago2 IN (0,1) AND p.`Estado`=0) al WHERE al.fechaCreado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(2) UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaActualizado fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombrePrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipo,(al.pago1+al.pago2) total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.`fechaEntrega`,p.fechaActualizado,pr.`nombrePrenda`,l.precio,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.aplicaDscto,o.`tipoPago`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN Prenda pr ON l.`idPrenda`=pr.`idPrenda`INNER JOIN `cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON U.`id`=O.`idUsuario` INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago IN(2) AND tipoPago1 IN(0,1) AND tipoPago2 IN (0,1) AND p.`Estado`=0) al WHERE al.fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(1) UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaActualizado fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipo,(al.precio*al.cantidad) total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.`fechaEntrega`,p.fechaActualizado,pr.nombreServicio,l.precio,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago1=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.aplicaDscto,o.`tipoPago`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON U.`id`=O.`idUsuario` INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago=2 AND tipoPago1=0 AND tipoPago2=0 AND p.`Estado`=1) al WHERE al.fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(2)UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaActualizado fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipo,(al.pago2) total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.`fechaEntrega`,p.fechaActualizado,pr.nombreServicio,l.precio,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago2=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.aplicaDscto,o.`tipoPago`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON U.`id`=O.`idUsuario` INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.pago1>0 AND p.tipoPago=2 AND tipoPago1=0 AND tipoPago2=1 AND p.`Estado`=1) al WHERE al.fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(2) UNION ALL SELECT al.idOrden,al.nombreCliente,al.sucursal,al.fechaActualizado fechaCreado,SUBSTRING(al.fechaEntrega,1,10) fechaEntrega,al.nombreServicio nombrePrenda,al.precio,al.cantidad,IF(al.tipoServicio=1, 'Al seco','Al Peso') tipo,(al.pago1) total,al.modoPago,al.totalOrden,al.tipoPago coutas,al.aplicaDscto FROM (SELECT l.`item`,l.tipoServicio,o.idOrden,c.`nombreCliente`,o.`fechaEntrega`,p.fechaActualizado,pr.nombreServicio,l.precio,l.cantidad,total,p.pago1,p.pago2,IF(tipoPago2=0,'Efectivo','Tarjeta') modoPago,o.`totalOrden`,o.aplicaDscto,o.`tipoPago`,u.`sucursal` FROM Orden o INNER JOIN OrdenLinea l ON o.idOrden=l.idOrden INNER JOIN servicio pr ON l.`idPrenda`=pr.`idServicio`INNER JOIN `cliente` c ON o.`idCliente`=c.`idCliente` INNER JOIN `usuario` u ON U.`id`=O.`idUsuario` INNER JOIN Pago p ON o.idOrden=p.idOrden WHERE p.tipoPago=2 AND tipoPago1=0 AND tipoPago2=1 AND p.`Estado`=1) al WHERE al.fechaActualizado BETWEEN '" + dtFechaInicial.Value.ToString("yyyy-MM-dd") + " 00:00:00' AND '" + dtFechaFin.Value.ToString("yyyy-MM-dd") + " 23:59:59' AND al.tipoServicio IN(2) ORDER BY idOrden" MySqlDataAdapter myadap = new MySqlDataAdapter(String.Format(query), BdComun.ObtenerConexion()); DataSet ds = new DataSet(); myadap.Fill(ds, "dtDetalleOrdenes"); cryrep.Load(varGlobales.rutaReportes + "\\Reportes\\crReporteDetalle.rpt"); cryrep.SetDataSource(ds); frmReporte rt = new frmReporte(); rt.Text = "Reporte de Cierre"; rt.crystalReportViewer1.ReportSource = cryrep; rt.Show(); } else { MessageBox.Show("Debe seleccionar al menos una sucursal", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Error); } }