<?php include 'include/util.php'; print '<h1>Listado de ventas por clientes</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; $Opciones = array(array('valor' => 'clientes.razon', 'nombre' => 'Cliente'), array('valor' => 'cantidad', 'nombre' => 'Cantidad'), array('valor' => 'total', 'nombre' => 'Total')); include 'include/form_parametros.php'; } else { print '<h2>Desde el ' . $_REQUEST['fecha-inicio'] . ' al ' . $_REQUEST['fecha-fin'] . '</h2>'; } $query = "\n SELECT\n clientes.razon,\n SUM(ventas_detalle.cantidad) 'cantidad',\n SUM(ventas_detalle.cantidad * ventas_detalle.precio) 'total' \n FROM\n ventas_detalle,\n articulos,\n clientes,\n ventas \n WHERE\n ventas_detalle.venta IN (\n SELECT\n ventas.codigo\n FROM\n ventas\n WHERE\n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' \n ) \n AND\n ventas_detalle.articulo = articulos.codigo\n AND\n ventas.cliente = clientes.codigo\n AND\n ventas_detalle.venta = ventas.codigo \n GROUP BY\n clientes.razon "; if (isset($_REQUEST['filtro']) && !empty($_REQUEST['filtro']) && isset($_REQUEST['valor']) && !empty($_REQUEST['valor'])) { $query .= " HAVING " . $_REQUEST['filtro'] . " " . $_REQUEST['comparacion'] . " '" . $_REQUEST['valor'] . ""; if ($_REQUEST['comparacion'] = 'LIKE') { $query .= "%"; } $query .= "' "; } if (isset($_REQUEST['orden']) && isset($_REQUEST['direccion'])) { $query .= " ORDER BY " . $_REQUEST['orden'] . " " . $_REQUEST['direccion']; } $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Cliente', 'Cantidad de artículos', 'Monto de las ventas'); $Alineacion = array('left', 'right', 'right'); $AnchoCelda = array('60%', '20%', '20%'); listadoLineal($query, $NombreCampos, $Alineacion, $AnchoCelda);
<?php include 'include/util.php'; print '<h1>Listado de compras</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; include 'include/form_fechas.php'; } else { print '<h2>Desde el ' . $_REQUEST['fecha-inicio'] . ' al ' . $_REQUEST['fecha-fin'] . '</h2>'; } $query = "\n SELECT\n compras.codigo\n FROM\n compras\n WHERE\n compras.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n compras.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59'"; $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $query1 = "\n SELECT\n LPAD(compras.codigo, 12, 0),\n compras.factura, \n CONCAT_WS(' ', DATE_FORMAT(compras.fecha, '%d/%m/%Y'),\n DATE_FORMAT(compras.fecha, '%H:%i:%S')),\n proveedores.razon, \n CONCAT('\$', compras.monto) \n FROM\n compras,\n proveedores \n WHERE\n proveedores.codigo = compras.proveedor \n AND \n compras.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n compras.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $query2 = "\n SELECT\n LPAD(compras_detalle.articulo, 12, 0),\n articulos.descripcion,\n SUM(compras_detalle.cantidad),\n SUM(compras_detalle.precio * compras_detalle.cantidad) \n FROM\n compras_detalle,\n articulos \n WHERE\n articulos.codigo = compras_detalle.articulo\n AND\n compras_detalle.compra = |*-*| \n GROUP BY\n compras_detalle.articulo"; $Etiquetas = array('Código de operación', 'Número de factura', 'Fecha', 'Proveedor', 'Monto'); $NombreCampos = array('Código', 'Descripción', 'Cantidad', 'Total'); $Alineacion = array('left', 'left', 'right', 'right'); $AnchoCelda = array('20%', '30%', '30%', '20%'); listadoDetalles($query1, $query2, $Etiquetas, $NombreCampos, $Alineacion, $AnchoCelda);
$Data[$i]['value'] += $Compras[$IndiceCompra]['monto']; $IndiceCompra--; } if ($IndicePago >= 0 && !strcmp($Pagos[$IndicePago]['fecha'], rotateDate($Data[$i]['label']))) { $Data[$i]['value'] += $Pagos[$IndicePago]['monto']; $IndicePago--; } if ($IndiceCobro >= 0 && !strcmp($Cobros[$IndiceCobro]['fecha'], rotateDate($Data[$i]['label']))) { $Data[$i]['value'] -= $Cobros[$IndiceCobro]['monto']; $IndiceCobro--; } if ($IndiceCredito >= 0 && !strcmp($Creditos[$IndiceCredito]['fecha'], rotateDate($Data[$i]['label']))) { $Data[$i]['value'] -= $Creditos[$IndiceCredito]['monto']; $IndiceCredito--; } if ($IndiceDebito >= 0 && !strcmp($Debitos[$IndiceDebito]['fecha'], rotateDate($Data[$i]['label']))) { $Data[$i]['value'] += $Debitos[$IndiceDebito]['monto']; $IndiceDebito--; } } while ($i > 0); $Data = array_reverse($Data); $Datos = ""; foreach ($Data as $Value) { $Datos .= $Value['value'] . ","; } $Datos = substr($Datos, 0, strlen($Datos) - 1); ?> <script> $(function () {
while ($Row = mysql_fetch_array($Result)) { array_push($Opciones, array('valor' => $Row[0], 'nombre' => $Row[1])); } include 'include/form_valor.php'; ?> </div> <div id="grafico1" class="grafico"> <!-- AQUI VA EL GRAFICO GENERADO --> </div> <div id="grafico2" class="grafico"> <!-- AQUI VA EL GRAFICO GENERADO --> </div> <?php $ConsultaGrafico = "\n SELECT\n DATE_FORMAT(ventas.fecha, '%Y-%m-%d'), \n ventas_detalle.cantidad, \n ventas_detalle.precio \n FROM\n ventas_detalle,\n ventas\n WHERE \n ventas_detalle.venta = ventas.codigo\n AND \n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' \n AND \n ventas_detalle.articulo = " . $_REQUEST['valor']; $TituloGrafico1 = 'Cantidad de artículos vendidos por fecha'; $TituloEjeX1 = 'Fecha'; $TituloEjeY1 = 'Cantidad'; $TituloData1 = 'Cantidad vendida'; $TituloGrafico2 = 'Monto facturado por fecha'; $TituloEjeX2 = 'Fecha'; $TituloEjeY2 = 'Monto'; $TituloData2 = 'Monto facturado'; include_once 'include/grafico_lineal_fechas_doble.php';
<?php include 'include/util.php'; print '<h1>Listado de artículos comprados por cliente</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; include 'include/form_fechas.php'; } else { print '<h2>Desde el ' . $_REQUEST['fecha-inicio'] . ' al ' . $_REQUEST['fecha-fin'] . '</h2>'; } $query1 = "\n SELECT DISTINCT\n LPAD(clientes.codigo, 12, 0),\n clientes.razon\n FROM\n clientes,\n ventas\n WHERE\n ventas.cliente = clientes.codigo\n AND\n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' \n "; $query2 = "\n SELECT\n LPAD(articulos.codigo, 12, 0),\n articulos.descripcion,\n categorias.categoria, \n SUM(ventas_detalle.cantidad),\n SUM(ventas_detalle.cantidad * ventas_detalle.precio) \n FROM\n ventas_detalle,\n ventas,\n articulos,\n categorias \n WHERE\n ventas_detalle.venta = ventas.codigo\n AND \n categorias.codigo = articulos.categoria \n AND\n ventas_detalle.articulo = articulos.codigo\n AND\n ventas.cliente = |*-*| \n AND \n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' \n GROUP BY\n ventas_detalle.articulo"; $Registros = mysql_num_rows(mysql_query($query1)); include_once 'include/cantidad_registros.php'; $Etiquetas = array('Código', 'Razón social'); $NombreCampos = array('Código de artículo', 'Descripción', 'Categoría', 'Cantidad', 'Total'); $Alineacion = array('left', 'left', 'left', 'right', 'right'); $AnchoCelda = array('20%', '30%', '20%', '15%', '15%'); listadoDetalles($query1, $query2, $Etiquetas, $NombreCampos, $Alineacion, $AnchoCelda);
include 'include/form_parametros.php'; } else { print '<h2>Desde el ' . $_REQUEST['fecha-inicio'] . ' al ' . $_REQUEST['fecha-fin'] . '</h2>'; } $CriterioOrden = 'descripcion'; $query = "\n SELECT\n fondos.descripcion,\n fondos_creditos.fecha,\n fondos_creditos.monto,\n 'Crédito' \n FROM \n fondos,\n fondos_creditos \n WHERE \n fondos.codigo = fondos_creditos.fondo \n AND \n fondos_creditos.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n fondos_creditos.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $query .= criterioFiltro(); $query .= " UNION\n \n SELECT\n fondos.descripcion,\n fondos_debitos.fecha,\n fondos_debitos.monto,\n 'Débito' \n FROM \n fondos,\n fondos_debitos \n WHERE \n fondos.codigo = fondos_debitos.fondo \n AND \n fondos_debitos.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n fondos_debitos.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $query .= criterioFiltro(); $query .= " UNION\n \n SELECT\n fondos.descripcion,\n cobros.fecha,\n cobros.monto,\n 'Cobro a cliente' \n FROM \n fondos,\n cobros \n WHERE \n fondos.codigo = cobros.fondo \n AND \n cobros.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n cobros.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $query .= criterioFiltro(); $query .= " UNION\n \n SELECT\n fondos.descripcion,\n pagos.fecha,\n pagos.monto,\n 'Pago a proveedor' \n FROM \n fondos,\n pagos \n WHERE \n fondos.codigo = pagos.fondo \n AND \n pagos.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n pagos.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $query .= criterioFiltro(); $query .= " UNION\n \n SELECT\n fondos.descripcion,\n compras.fecha,\n compras.monto,\n 'Compra a proveedor' \n FROM \n fondos,\n compras \n WHERE \n fondos.codigo = compras.fondo \n AND \n compras.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n compras.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $query .= criterioFiltro(); $query .= " UNION\n \n SELECT\n fondos.descripcion,\n ventas.fecha,\n ventas.monto,\n 'Venta a cliente' \n FROM \n fondos,\n ventas \n WHERE \n fondos.codigo = ventas.fondo \n AND \n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' \n "; include_once 'include/orden_informe.php'; $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Fondo', 'Fecha', 'Monto', 'Detalle'); $Alineacion = array('left', 'center', 'right', 'center'); $AnchoCelda = array('35%', '20%', '15%', '30%'); listadoLineal($query, $NombreCampos, $Alineacion, $AnchoCelda); function criterioFiltro() { $query = ""; if (isset($_REQUEST['filtro']) && !empty($_REQUEST['filtro']) && isset($_REQUEST['valor']) && !empty($_REQUEST['valor'])) { $query .= " AND " . $_REQUEST['filtro'] . " " . $_REQUEST['comparacion'] . " '" . $_REQUEST['valor'] . ""; if ($_REQUEST['comparacion'] == 'LIKE') { $query .= "%"; }
<?php /* * PERMITE CREAR UN GRAFICO EN LA PANTALLA. * * $ConsultaGrafico contiene la consulta SQL con los datos: * * Fecha * Parametro grafico 1 * Parametro grafico 2 */ $FechaInicio = date(rotateDate($_REQUEST['fecha-inicio'])); $FechaFin = date(rotateDate($_REQUEST['fecha-fin'])); $Intervalo = strtotime($FechaFin) - strtotime($FechaInicio); if ($Intervalo < 0) { return; } $Result = mysql_query($ConsultaGrafico); if (!$Result) { sql_error_msg(); return; } if (mysql_numrows($Result) > 0) { $Row = mysql_fetch_array($Result); $i = 0; $Fecha = strtotime($FechaInicio); $Fin = strtotime($FechaFin); $Data1 = ""; $Data2 = ""; while ($Fecha <= $Fin) { if ($i > 0) {
<?php include 'include/util.php'; print '<h1>Listado de compras por categorías</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; $Opciones = array(array('valor' => 'categorias.categoria', 'nombre' => 'Categoría'), array('valor' => 'cantidad', 'nombre' => 'Cantidad'), array('valor' => 'total', 'nombre' => 'Total')); include 'include/form_parametros.php'; } else { print '<h2>Desde el ' . $_REQUEST['fecha-inicio'] . ' al ' . $_REQUEST['fecha-fin'] . '</h2>'; } $query = "\n SELECT\n categorias.categoria,\n SUM(compras_detalle.cantidad) 'cantidad',\n SUM(compras_detalle.cantidad * compras_detalle.precio) 'total'\n FROM\n compras_detalle,\n articulos,\n categorias\n WHERE\n compras_detalle.compra IN (\n SELECT\n compras.codigo\n FROM\n compras\n WHERE\n compras.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n compras.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' \n ) \n AND\n compras_detalle.articulo = articulos.codigo\n AND\n articulos.categoria = categorias.codigo \n GROUP BY \n categorias.categoria "; if (isset($_REQUEST['filtro']) && !empty($_REQUEST['filtro']) && isset($_REQUEST['valor']) && !empty($_REQUEST['valor'])) { $query .= " HAVING " . $_REQUEST['filtro'] . " " . $_REQUEST['comparacion'] . " '" . $_REQUEST['valor'] . ""; if ($_REQUEST['comparacion'] = 'LIKE') { $query .= "%"; } $query .= "' "; } if (isset($_REQUEST['orden']) && isset($_REQUEST['direccion'])) { $query .= " ORDER BY " . $_REQUEST['orden'] . " " . $_REQUEST['direccion']; } $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Categoría', 'Cantidad de artículos', 'Monto de las compras'); $Alineacion = array('left', 'right', 'right'); $AnchoCelda = array('40%', '30%', '30%'); listadoLineal($query, $NombreCampos, $Alineacion, $AnchoCelda);
sql_error_msg(); return; } if (mysql_numrows($Result) > 0) { print '<h2 class="titulo-grafico">Los diez mayores clientes</h2>'; print '<div id="mayores-clientes" class="lista-tabla">'; $i = 0; $Data = array(); while ($Row = mysql_fetch_array($Result)) { $Data[$i]['codigo'] = $Row[0]; $Data[$i]['razon'] = $Row[1]; $Data[$i]['monto'] = $Row[2]; $Data[$i]['porcentaje'] = 0; $i++; } $query = "\n SELECT\n SUM(ventas.monto)\n FROM\n ventas \n WHERE\n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59'"; $Result = mysql_query($query); if (!$Result) { sql_error_msg(); return; } if (mysql_numrows($Result) > 0) { $Row = mysql_fetch_array($Result); $Tabla = '<table class="mini-listado" cellpadding="0" cellspacing="0"> <thead> <tr> <th>Código</th> <th>Razón social</th> <th>Monto comprado</th> <th>Porcentaje del total</th> </tr>
print '<h1>$' . number_format($Row[0] / $Intervalo / (24 * 60 * 60), 2) . ' por día</h1>'; } ?> </div> </div> <div> <div id="promedio-pago" class="totales-informe total-derecha"> <h3 class="titulo-total">Promedio de pagos</h3> <?php $ConsultaGrafico = "\n SELECT \n SUM(pagos.monto)\n FROM \n pagos, \n compras \n WHERE \n pagos.operacion = compras.codigo \n AND \n compras.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n compras.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59'"; $Result = mysql_query($ConsultaGrafico); if ($Result) { $Row = mysql_fetch_array($Result); print '<h1>$' . number_format($Row[0] / $Intervalo / (24 * 60 * 60), 2) . ' por día</h1>'; } ?> </div> </div> <div> <?php $query = "\n SELECT\n LPAD(articulos.codigo, 12, 0),\n articulos.descripcion,\n categorias.categoria,\n proveedores.razon,\n SUM(compras_detalle.cantidad * compras_detalle.precio) 'monto'\n FROM\n articulos,\n categorias,\n proveedores,\n compras_detalle,\n compras \n WHERE\n articulos.categoria = categorias.codigo\n AND\n articulos.proveedor = proveedores.codigo\n AND \n articulos.codigo = compras_detalle.articulo\n AND\n compras.codigo = compras_detalle.compra\n AND\n compras.fecha >= '" . date('Y-m-d', $FechaInicio) . " 00:00:00' \n AND\n compras.fecha <= '" . date('Y-m-d', $FechaFin) . " 23:59:59' \n GROUP BY\n compras_detalle.articulo \n ORDER BY\n monto DESC\n LIMIT\n 0, 10";
*/ $i = 0; $Data = array(); /* PARA PHP >= 5.3.0: $FechaInicio = date_create(rotateDate($_REQUEST['fecha-inicio'])); $FechaFin = date_create(rotateDate($_REQUEST['fecha-fin'])); $Intervalo = $FechaFin->diff($FechaInicio); if (strcmp($Intervalo->format('%R'), '-')) { return; }*/ /* PARA PHP < 5.3.0: */ $FechaInicio = date(rotateDate($_REQUEST['fecha-inicio']) . '00:00:00'); $FechaFin = date(rotateDate($_REQUEST['fecha-fin']) . '00:00:00'); $Intervalo = strtotime($FechaFin) - strtotime($FechaInicio); if ($Intervalo < 0) { return; } /* FIN FECHAS */ $Result = mysql_query($ConsultaGrafico); if (!$Result) { sql_error_msg(); return; } if (mysql_numrows($Result) > 0) { $Row = mysql_fetch_array($Result); $Fecha = strtotime($FechaInicio); $Fin = strtotime($FechaFin); while ($Fecha <= $Fin) {
<?php include 'include/util.php'; print '<h1>Listado de facturas por cobrar a clientes</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; $Opciones = array(array('valor' => 'ventas.codigo', 'nombre' => 'Código'), array('valor' => 'ventas.factura', 'nombre' => 'Factura'), array('valor' => 'ventas.fecha', 'nombre' => 'Fecha'), array('valor' => 'clientes.razon', 'nombre' => 'Cliente'), array('valor' => 'ventas.monto', 'nombre' => 'Monto')); include 'include/form_parametros.php'; } $query = "\n SELECT\n LPAD(ventas.codigo, 12, 0),\n LPAD(ventas.factura, 12, 0),\n ventas.fecha,\n clientes.razon,\n ventas.monto \n FROM \n ventas,\n clientes \n WHERE \n ventas.cliente = clientes.codigo \n AND \n ventas.saldo > 0 \n AND \n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $CriterioOrden = 'ventas.codigo'; include_once 'include/orden_informe.php'; $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Código de la operación', 'Número de factura', 'Fecha de facturación', 'Razón social', 'Monto'); $Alineacion = array('left', 'left', 'left', 'left', 'right'); $AnchoCelda = array('15%', '15%', '20%', '40%', '10%'); listadoLineal($query, $NombreCampos, $Alineacion, $AnchoCelda);
<?php include 'include/util.php'; print '<h1>Listado de facturas por pagar a proveedores</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; $Opciones = array(array('valor' => 'compras.codigo', 'nombre' => 'Código'), array('valor' => 'compras.factura', 'nombre' => 'Factura'), array('valor' => 'compras.fecha', 'nombre' => 'Fecha'), array('valor' => 'proveedores.razon', 'nombre' => 'Proveedor'), array('valor' => 'compras.monto', 'nombre' => 'Monto')); include 'include/form_parametros.php'; } $query = "\n SELECT\n LPAD(compras.codigo, 12, 0),\n LPAD(compras.factura, 12, 0),\n compras.fecha,\n proveedores.razon,\n compras.monto \n FROM \n compras,\n proveedores \n WHERE \n compras.proveedor = proveedores.codigo \n AND \n compras.saldo > 0 \n AND \n compras.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n compras.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $CriterioOrden = 'compras.codigo'; include_once 'include/orden_informe.php'; $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Código de la operación', 'Número de factura', 'Fecha de facturación', 'Razón social', 'Monto'); $Alineacion = array('left', 'left', 'left', 'left', 'right'); $AnchoCelda = array('15%', '15%', '20%', '40%', '10%'); listadoLineal($query, $NombreCampos, $Alineacion, $AnchoCelda);
<?php include 'include/util.php'; print '<h1>Listado de artículos que no se han vendido</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; $Opciones = array(array('valor' => 'articulos.codigo', 'nombre' => 'Código'), array('valor' => 'articulos.descripcion', 'nombre' => 'Descripción'), array('valor' => 'categorias.categoria', 'nombre' => 'Categoría'), array('valor' => 'proveedores.razon', 'nombre' => 'Proveedor')); include 'include/form_parametros.php'; } else { print '<h2>Desde el ' . $_REQUEST['fecha-inicio'] . ' al ' . $_REQUEST['fecha-fin'] . '</h2>'; } $query = "\n SELECT\n LPAD(articulos.codigo, 12, 0),\n articulos.descripcion,\n categorias.categoria,\n proveedores.razon \n FROM\n articulos,\n categorias,\n proveedores\n WHERE\n categorias.codigo = articulos.categoria \n AND \n proveedores.codigo = articulos.proveedor \n AND \n articulos.codigo NOT IN (\n SELECT\n ventas_detalle.articulo\n FROM\n ventas_detalle,\n ventas\n WHERE\n ventas_detalle.venta = ventas.codigo \n AND\n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . "' \n AND\n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . "' \n ) "; if (isset($_REQUEST['filtro']) && !empty($_REQUEST['filtro']) && isset($_REQUEST['valor']) && !empty($_REQUEST['valor'])) { $query .= " AND " . $_REQUEST['filtro'] . " " . $_REQUEST['comparacion'] . " '" . $_REQUEST['valor'] . ""; if ($_REQUEST['comparacion'] = 'LIKE') { $query .= "%"; } $query .= "' "; } $query .= " ORDER BY " . $_REQUEST['orden']; if (isset($_REQUEST['direccion'])) { $query .= " " . $_REQUEST['direccion']; } if (isset($_REQUEST['orden']) && $_REQUEST['orden'] != 'articulos.codigo') { $query .= ", articulos.codigo"; } $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Código', 'Descripción', 'Categoría', 'Proveedor'); $Alineacion = array('left', 'left', 'left', 'left'); $AnchoCelda = array('20%', '30%', '20%', '20%', '10%');
$i = 0; while ($Row = mysql_fetch_array($Result)) { $Ventas[$i]['fecha'] = rotateDate($Row[0]); $Ventas[$i]['monto'] = $Row[1]; $i++; } $query = "\n SELECT\n DATE_FORMAT(cobros.fecha, '%Y-%m-%d') orden, \n SUM(cobros.monto) \n FROM\n cobros\n WHERE \n cobros.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n cobros.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' \n AND \n cobros.cliente = " . $_REQUEST['valor'] . "\n GROUP BY\n orden"; $Result = mysql_query($query); if (!$Result) { sql_error_msg(); return; } $Pagos = array(); $i = 0; while ($Row = mysql_fetch_array($Result)) { $Pagos[$i]['fecha'] = rotateDate($Row[0]); $Pagos[$i]['monto'] = $Row[1]; $i++; } $IndiceVenta = sizeof($Ventas) - 1; $IndicePago = sizeof($Pagos) - 1; $i = $Intervalo->format('%a') - 1; $Data = array(); $Data[$i] = $Saldo[0]; do { $i--; $Fecha->sub(new DateInterval('P1D')); $Data[$i] = $Data[$i + 1]; if ($IndiceVenta >= 0 && !strcmp($Ventas[$IndiceVenta]['fecha'], $Fecha->format('d-m-Y'))) { $Data[$i] -= $Ventas[$IndiceVenta]['monto']; $IndiceVenta--;
<?php include 'include/util.php'; print '<h1>Listado de ventas</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; include 'include/form_fechas.php'; } else { print '<h2>Desde el ' . $_REQUEST['fecha-inicio'] . ' al ' . $_REQUEST['fecha-fin'] . '</h2>'; } $query = "\n SELECT\n LPAD(ventas.codigo, 12, 0),\n ventas.factura, \n CONCAT_WS(' ', DATE_FORMAT(ventas.fecha, '%d/%m/%Y'),\n DATE_FORMAT(ventas.fecha, '%H:%i:%S')),\n clientes.razon,\n ventas.monto \n FROM\n ventas,\n clientes \n WHERE\n clientes.codigo = ventas.cliente \n AND \n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Código', 'Factura', 'Fecha', 'Cliente', 'Total'); $Alineacion = array('left', 'left', 'center', 'left', 'right'); $AnchoCelda = array('15%', '15%', '20%', '40%', '10%'); listadoLineal($query, $NombreCampos, $Alineacion, $AnchoCelda);
function listadoLineal($query, $NombreCampos, $Alineacion = null, $AnchoCelda = null) { $return = mysql_query($query); if (!$return) { print "<p>Ha ocurrido un error al intentar consultar la información en la base de datos.</p>"; print "<p>ERROR EN LA CONSULTA:\n\n" . $query . "\n\n" . htmlspecialchars_decode(mysql_error()) . "</p>"; return; } if (mysql_num_rows($return) < 1) { print "<p class='info'>La consulta no contiene datos.</p>"; return; } $Limit = count($NombreCampos); print "<table class='tabla-datos' cellspacing='0' cellpadding='2'>"; print "<thead class='ui-widget-header'><tr>"; for ($i = 0; $i < $Limit; $i++) { print "<th class='header'>" . $NombreCampos[$i] . "</th>"; } print "</tr></thead>"; $Toggle = 0; while ($Row = mysql_fetch_array($return)) { print '<tr class="'; $Toggle++ % 2 == 0 ? print "even" : (print "odd"); print '">'; for ($i = 0; $i < $Limit; $i++) { print "<td"; if (isset($Alineacion)) { print " align='" . $Alineacion[$i] . "'"; } if (isset($AnchoCelda)) { print " width='" . $AnchoCelda[$i] . "'"; } $Field = $Row[$i]; if (mysql_field_type($return, $i) == "datetime") { $Date = split(" ", $Field); $Field = rotateDate($Date[0]) . " " . $Date[1]; } print ">" . $Field . "</td>"; } print "</tr>"; } print "<tfoot class='ui-widget-header'><tr>"; for ($i = 0; $i < $Limit; $i++) { print "<td></td>"; } print "</tr></tfoot></table><br>"; }
<?php include 'include/util.php'; print '<h1>Listado de pagos realizados a proveedores</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; $Opciones = array(array('valor' => 'pagos.codigo', 'nombre' => 'Código'), array('valor' => 'clientes.razon', 'nombre' => 'Cliente'), array('valor' => 'usuarios.apodo', 'nombre' => 'Usuario'), array('valor' => 'pagos.operacion', 'nombre' => 'Operación'), array('valor' => 'fondos.descripcion', 'nombre' => 'Fondo'), array('valor' => 'pagos.monto', 'nombre' => 'Monto')); include 'include/form_parametros.php'; } $query = "\n SELECT\n LPAD(pagos.codigo, 12, 0),\n CONCAT_WS(' ', DATE_FORMAT(pagos.fecha, '%d/%m/%Y'), DATE_FORMAT(pagos.fecha, '%H:%i:%S')),\n proveedores.razon,\n usuarios.apodo,\n LPAD(pagos.operacion, 12, 0),\n fondos.descripcion,\n pagos.monto \n FROM\n pagos,\n usuarios,\n proveedores,\n fondos\n WHERE\n pagos.proveedor = proveedores.codigo \n AND \n pagos.usuario = usuarios.codigo \n AND \n pagos.fondo = fondos.codigo \n AND \n pagos.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n pagos.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; $CriterioOrden = 'pagos.codigo'; include_once 'include/orden_informe.php'; $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Código', 'Fecha', 'Proveedor', 'Usuario', 'Operación', 'Fondo', 'Monto'); $Alineacion = array('left', 'left', 'left', 'left', 'left', 'left', 'right'); $AnchoCelda = array('10%', '20%', '25%', '10%', '10%', '15%', '10%'); listadoLineal($query, $NombreCampos, $Alineacion, $AnchoCelda);
<?php include 'include/util.php'; print '<h1>Ranking de ventas de artículos</h1>'; if (!isset($_REQUEST['impresion'])) { include 'include/botones_informe.php'; $Opciones = array(array('valor' => 'articulos.codigo', 'nombre' => 'Código'), array('valor' => 'articulos.descripcion', 'nombre' => 'Descripción'), array('valor' => 'categorias.categoria', 'nombre' => 'Categoría'), array('valor' => 'proveedores.razon', 'nombre' => 'Proveedor'), array('valor' => 'cantidad', 'nombre' => 'Cantidad')); include 'include/form_parametros.php'; } else { print '<h2>Desde el ' . $_REQUEST['fecha-inicio'] . ' al ' . $_REQUEST['fecha-fin'] . '</h2>'; } $query = "\n SELECT\n LPAD(articulos.codigo, 12, 0),\n articulos.descripcion,\n categorias.categoria,\n proveedores.razon, \n SUM(ventas_detalle.cantidad) 'cantidad'\n FROM\n articulos,\n categorias,\n proveedores,\n ventas_detalle,\n ventas \n WHERE\n categorias.codigo = articulos.categoria \n AND \n proveedores.codigo = articulos.proveedor \n AND\n articulos.codigo = ventas_detalle.articulo\n AND\n ventas.codigo = ventas_detalle.venta\n AND\n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND\n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' "; if (isset($_REQUEST['filtro']) && !empty($_REQUEST['filtro']) && isset($_REQUEST['valor']) && !empty($_REQUEST['valor'])) { $query .= " AND " . $_REQUEST['filtro'] . " " . $_REQUEST['comparacion'] . " '" . $_REQUEST['valor'] . ""; if ($_REQUEST['comparacion'] = 'LIKE') { $query .= "%"; } $query .= "' "; } $query .= " GROUP BY ventas_detalle.articulo "; $query .= " ORDER BY " . $_REQUEST['orden']; if (isset($_REQUEST['direccion'])) { $query .= " " . $_REQUEST['direccion']; } if (isset($_REQUEST['orden']) && $_REQUEST['orden'] != 'articulos.codigo') { $query .= ", articulos.codigo"; } $Registros = mysql_num_rows(mysql_query($query)); include_once 'include/cantidad_registros.php'; $NombreCampos = array('Código', 'Descripción', 'Categoría', 'Proveedor', 'Vendidos'); $Alineacion = array('left', 'left', 'left', 'left', 'right');
$Row = mysql_fetch_array($Result); print '<h1>$' . number_format($Row[0] / $Intervalo / (24 * 60 * 60), 2) . ' por día</h1>'; ?> </div> </div> <div> <div id="total-utilidades" class="totales-informe total-izquierda"> <h3 class="titulo-total">Utilidades</h3> <?php $ConsultaGrafico = "\n SELECT\n SUM(ventas_detalle.precio - articulos.costo)\n FROM\n ventas,\n ventas_detalle,\n articulos \n WHERE \n articulos.codigo = ventas_detalle.articulo \n AND \n ventas_detalle.venta = ventas.codigo \n AND \n ventas.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00' \n AND \n ventas.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59'"; $Result = mysql_query($ConsultaGrafico); $Row = mysql_fetch_array($Result); $Utilidad = $Row[0]; print '<h1>$' . $Utilidad . '</h1>'; ?> </div> </div> <div> <div id="promedio-utilidades" class="totales-informe total-derecha"> <h3 class="titulo-total">Porcentaje de utilidad</h3>
<?php include 'include/util.php'; $Opciones = array(); $query = "SELECT codigo, razon FROM clientes ORDER BY razon"; $Result = mysql_query($query); if (!$Result) { sql_error_msg(); return; } while ($Row = mysql_fetch_array($Result)) { array_push($Opciones, array('valor' => $Row[0], 'nombre' => $Row[1])); } include 'include/form_valor.php'; ?> </div> <div id="grafico" class="grafico"> <!-- --> </div> <?php $ConsultaGrafico = "\n SELECT\n DATE_FORMAT(cobros.fecha, '%Y-%m-%d'), \n cobros.monto \n FROM\n cobros\n WHERE \n cobros.fecha >= '" . rotateDate($_REQUEST['fecha-inicio']) . " 00:00:00'\n AND\n cobros.fecha <= '" . rotateDate($_REQUEST['fecha-fin']) . " 23:59:59' \n AND \n cobros.cliente = " . $_REQUEST['valor']; $TituloGrafico = 'Pagos realizados por fecha'; $TituloEjeX = 'Fecha'; $TituloEjeY = 'Monto'; $TituloData = 'Monto pagado'; include_once 'include/grafico_lineal_fechas.php';