🌹🏠🌹？》《》？《》？<?php
include "../include/inicio.php";

set_time_limit(0);
//vacio la tabla "temporal" stock_tmp

if($_REQUEST['vuelta'] != '1'){
  $desde = '01/'.date("m/Y");
  $hasta = date("d/m/Y");
  $articulo = "";
}else{
  $desde = $_REQUEST['desde'];
  $hasta = $_REQUEST['hasta'];
  $articulo = $_REQUEST['articulo'];
}

$sql = "DELETE 
          FROM t_mov_logico
         WHERE usuario = '".$_SESSION['UsuarioConectado']."' ";
$db->ejecutar($sql);

//////////////////////////////////
$sql=
" insert into t_mov_logico   
  select '".$_SESSION['UsuarioConectado']."',a.area,b.descripcion,a.empresa,tdoc,sucdoc,nrodoc,fecha,
          a.articulo,c.descripcion,
          sum(a.bultos) bultos, sum(a.unidades) unidades, sum(a.volumen) volumen,sum(a.otros) otros
    from {$db->base_wms}mov_stock_logico a, {$db->base_wms}areas b, {$db->base_wms}articulo c
    where a.area = b.area
      and a.empresa = c.empresa
      and a.articulo = c.articulo
      and a.empresa = '{$_SESSION['empresa_login']}'
      and a.tdoc not in ( 'INI','PRE' )
      and a.area not in ( select area from {$db->base_wms}areas where tipo_area in ( 'Reserva','Pre-Despacho' ) )     
      and fecha >= '$desde'
      and fecha <= '$hasta'
      and bultos != 0";
if ( strlen($articulo) > 0 ){
  $sql.=" and a.articulo = '".trim( (string)$articulo)."' ";
}
$sql.=" group by 1,2,3,4,5,6,7,8,9,10 ";
$db->ejecutar($sql);

/*
$p_can=0;
$datos = $db->resultado($sql);
foreach($datos as $dato){

  $p_deposito = $dato['deposito'];
  $p_area     = $dato['area'];
  $sql="select descripcion from {$db->base_wms}areas where area = '$p_area' ";
  $p_area_des = $db->campos($sql,"descripcion");
  $p_empresa  = $dato['empresa'];
  $p_tdoc     = trim( (string)$dato['tdoc']);
  $p_sucdoc   = $dato['sucdoc'];
  $p_nrodoc   = $dato['nrodoc'];
  $p_fecha    = $dato['fecha'];
  $p_fecha    = date("d-m-Y",strtotime($p_fecha));
  $p_articulo = trim( (string)$dato['articulo']);
  $sql="select descripcion from articulo where empresa = '{$_SESSION['empresa_login']}' and articulo = '$p_articulo' ";
  $p_articulo_des = $db->campos($sql,'descripcion');
  $p_bultos   = $dato['bultos'];
  $p_unidades = $dato['unidades'];
  $p_volumen  = str_replace(".", ",", $dato['volumen']);
  $sql = "INSERT INTO t_mov VALUES ('$_SESSION[UsuarioConectado]', '$p_deposito','$p_area','$p_area_des','$p_empresa','$p_tdoc',
                                    '$p_sucdoc','$p_nrodoc', '$p_fecha','$p_articulo', '$p_articulo_des','$p_bultos', '$p_unidades', 
                                    '$p_volumen', '0' )";
    $db->ejecutar($sql);
    $p_can++;
}
//////////////////////////////////             
*/
$sqlDatos = "SELECT area a_area,area_des a_area_des,tdoc a_tdoc,nrodoc a_nrodoc,
                    fecha a_fecha ,articulo a_articulo ,articulo_des a_articulo_des ,
              SUM(bultos) a_bultos, 
              SUM(unidades) a_unidades, 
              SUM(volumen) a_volumen
        FROM t_mov_logico
       WHERE usuario  = '{$_SESSION['UsuarioConectado']}'
       GROUP BY 1,2,3,4,5,6,7
       ORDER by 6,7,5,1,2,3,4";
//busco la descripcion de la empresa
$sql = "SELECT denominacion
          FROM empresa
         WHERE empresa = '$_SESSION[empresa_login]'";
$empresa = $db->campos($sql, 'denominacion');

$texto_titulo = 'Movimientos de Stock Logicos para '.$empresa.' entre '.$desde.' y '.$hasta;
$abm = new abm( 'Mov_Stock_logico', $texto_titulo);
$abm->sql = $sqlDatos;
$cols = "nf!no!Accion:2,";
$cols .= "Area@:90,
          @Desc Area:120,
          nf!Tipo Doc:70, 
          Nro Doc.@:100,
          Fecha:100:date,
          @Articulo:100,
          @Desc Articulo:*,
          nf!Bultos@:120,
          nf!Unidades@:120,
          nf!Volumen@:120";
             
$abm->cols = $cols;
$abm->divHeight = "500";
$smarty->assign( "tplBotones", $botones );
$smarty->assign( 'desde', $desde );
$smarty->assign( 'hasta', $hasta );
$smarty->assign( 'articulo', $articulo);
$smarty->assign( 'abm', $abm->mostrar() );
$smarty->mostrar( 'ABMcons_Mov_logico.tpl' );

?>
