/**
 * Arma el vector de variables para pasarle al html que muestra la pagina de fechas por periodo.
 * Parametros:  $tipo_periodo: semana, mes, a�o
 * 				$tipo: todos, proveedor, producto, etc.
 * 				$opcion: nro que representa el id del tipo indicado
 * 				$id_accion: compras o consumos (1 o 2)
 */
function mostrar_tabla_fechas_por_periodo($tipo_periodo, $tipo, $opcion, $id_accion, $fecha_ini, $fecha_fin, $transac, $tipo_rango, $opcion, $rango_periodo)
{
    //echo "Datos entrada, fechaini: $fecha_ini, fechafin: $fecha_fin<br>";
    if ($_SESSION['user_level'] < 11) {
        $imprimir = "";
    } else {
        $imprimir = "<div class=\"imprimir\">\n\t\t\t\t\t\t<a class=\"imprimir\" onclick=\"self.print();\">Imprimir</a>\n\t\t\t\t\t  </div>";
    }
    $tipo_periodo_orig = $tipo_periodo;
    $ano_ini = get_ano($fecha_ini);
    $mes_ini = get_mes($fecha_ini);
    $dia_ini = get_dia($fecha_ini);
    $ano_fin = get_ano($fecha_fin);
    $mes_fin = get_mes($fecha_fin);
    $dia_fin = get_dia($fecha_fin);
    if ($tipo_periodo == "mes") {
        $periodo = "MONTH";
        $tipo_periodo = "MES";
        $groupByPeriod = "MONTH(fecha), YEAR(fecha)";
    } else {
        if ($tipo_periodo == "ano") {
            $periodo = "YEAR";
            $tipo_periodo = "ANO";
            $groupByPeriod = "YEAR(fecha)";
        }
    }
    if ($id_accion == 1) {
        $transac = "Compras";
        $titulo = $transac;
        $selecciono = "CONCAT(Unidad.unidad,'(',Item.factor_unidades,')')";
        $condicion = "Unidad.id_unidad = Item.id_unidad_compra";
    } else {
        if ($id_accion == 2) {
            $transac = "Consumos";
            $titulo = $transac;
            $selecciono = "Unidad.unidad";
            $condicion = "Unidad.id_unidad = Categoria.id_unidad_visual";
        } else {
            $transac = "Todos";
            $titulo = "Compras y Consumos";
        }
    }
    $titulo = "{$titulo} entre {$dia_ini}-{$mes_ini}-{$ano_ini} y {$dia_fin}-{$mes_fin}-{$ano_fin} con periodicidad por {$tipo_periodo}";
    switch ($tipo) {
        case 'todos':
            $query_fin = "";
            break;
        case 'grupo':
            $query_fin = " AND (Categoria.id_grupo = {$opcion})";
            $titulo = $titulo . " del grupo " . get_group($opcion);
            break;
        case 'proveedor':
            $query_fin = " AND (Item.id_proveedor = {$opcion})";
            $titulo = $titulo . " del proveedor " . get_proveedor($opcion);
            break;
        case 'categoria':
            $query_fin = " AND (Item.id_categoria = {$opcion})";
            $titulo = $titulo . " del producto " . get_categoria($opcion);
            break;
        case 'item':
            $query_fin = " AND (Item.id_item = {$opcion})";
            $titulo = $titulo . " del item " . get_item($opcion);
            break;
        case 'usuario':
            $query_fin = " AND (Usuario.id_usuario = '" . $opcion . "')";
            $titulo = $titulo . " ralizadas por usuario " . get_usuario($opcion, 2);
            break;
    }
    if ($id_accion == 1 || $id_accion == 2) {
        $query = "SELECT Log.id_item, CONCAT(categoria,' - ',proveedor), Log.username, sum(cantidad), YEAR(fecha), MONTH(fecha), {$selecciono}\n\t\t\t\t  FROM Categoria, Log, Item, Usuario, Proveedor, Unidad\n\t\t\t\t  WHERE \tLog.id_item = Item.id_item AND\n\t\t\t\t\t\t\tItem.id_categoria = Categoria.id_categoria AND\n\t\t\t\t\t\t\tUsuario.username = Log.username AND\n\t\t\t\t\t\t\tProveedor.id_proveedor = Item.id_proveedor AND\n\t\t\t\t\t\t\t{$condicion} AND\n\t\t\t\t\t\t\tid_accion = {$id_accion} AND\n\t\t\t\t\t\t\tfecha >= {$fecha_ini} AND fecha <= {$fecha_fin}";
        $query = $query . $query_fin;
        $query = $query . " GROUP BY Log.id_item, {$groupByPeriod}\n\t\t\t\t\t\t    ORDER BY Categoria, Log.id_item, fecha";
    } else {
        $query = crearQueryTodosByPeriodo($query_fin, $fecha_ini, $fecha_fin, $groupByPeriod);
    }
    //	dump($query);
    $result = mysql_query($query);
    $listado = armar_listado($result, $tipo_periodo);
    $var = array("listado" => $listado, "imprimir" => $imprimir, "titulo" => $titulo, "transac" => $transac, "tipo" => $tipo, "tipo_rango" => $tipo_rango, "opcion" => $opcion, "dia_ini" => $dia_ini, "mes_ini" => $mes_ini, "ano_ini" => $ano_ini, "dia_fin" => $dia_fin, "mes_fin" => $mes_fin, "ano_fin" => $ano_fin, "rango_periodo" => $rango_periodo, "tipo_periodo" => $tipo_periodo_orig);
    eval_html('listar_fechas_por_periodo.html', $var);
}
Пример #2
0
     $query_fin = ") ORDER BY Categoria.categoria";
     break;
 case 'grupo':
     $condicion = "tal que grupo = ";
     $opciones = $opciones . "<option value=\"0\">seleccionar</option>" . get_group_opt(0) . "</select>";
     $query_fin = "AND (Categoria.id_grupo = {$opcion}) ) ORDER BY Categoria.categoria";
     if (isset($opcion)) {
         $titulo = $titulo . " por grupo " . get_group($opcion);
     }
     break;
 case 'proveedor':
     $condicion = "tal que proveedor = ";
     $opciones = $opciones . "<option value=\"0\">seleccionar</option>" . get_proveedor_opt(0) . "</select>";
     $query_fin = "AND (Item.id_proveedor = {$opcion}) ) ORDER BY Categoria.categoria";
     if (isset($opcion)) {
         $titulo = $titulo . " del proveedor " . get_proveedor($opcion);
     }
     break;
 case 'categoria':
     $condicion = "tal que producto = ";
     $opciones = $opciones . "<option value=\"0\">seleccionar</option>" . get_categoria_opt(0) . "</select>";
     $query_fin = "AND (Item.id_categoria = {$opcion}) ) ORDER BY Categoria.categoria";
     if (isset($opcion)) {
         $titulo = $titulo . " del producto " . get_categoria($opcion);
     }
     break;
 case 'item':
     $condicion = "tal que item = ";
     $opciones = $opciones . "<option value=\"0\">seleccionar</option>" . get_subproducto_opt(0) . "</select>";
     $query_fin = "AND (Item.id_item = {$opcion}) ) ORDER BY Categoria.categoria";
     if (isset($opcion)) {