";
print "location.href='../sigesp_inicio_sesion.php'";
print "";
}
$ls_logusr=$_SESSION["la_logusr"];
require_once("class_funciones_inventario.php");
$io_fun_activo=new class_funciones_inventario();
$io_fun_activo->uf_load_seguridad("SIV","sigesp_siv_p_toma.php",$ls_permisos,$la_seguridad,$la_permisos);
$ls_reporte=$io_fun_activo->uf_select_config("SIV","REPORTE","TOMA_INVENTARIO","sigesp_siv_rfs_toma.php","C");
$ls_reporte2=$io_fun_activo->uf_select_config("SIV","REPORTE","LISTADO_TOMA","sigesp_siv_rfs_listadoinventario.php","C");
////////////////////////////////////////////// SEGURIDAD /////////////////////////////////////////////
function uf_limpiarvariables()
{
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Function: uf_limpiarvariables
// Access: private
// Argumento:
// Returns:
// Description: Funcion que limpia todas las veriables que se usan en la pagina
// Creado Por: Ing. Luis Anibal Lang
// Fecha Creación: 23/03/2006 Fecha Última Modificación : 23/03/2006
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
global $ls_numtom,$ld_fectom,$ls_codalm,$ls_nomfisalm,$ls_obstom,$lb_ajustar,$ls_titletable,$li_widthtable;
global $ls_nametable,$lo_title,$li_totrows;
$ld_fectom=date("d/m/Y");
$ls_numtom="";
$ls_codalm="";
$ls_nomfisalm="";
$ls_obstom="";
$lb_ajustar=false;
$ls_titletable="Detalle de la Toma de Inventario";
$li_widthtable=650;
$ls_nametable="grid";
$lo_title[1]="Código";
$lo_title[2]="Artículo";
$lo_title[3]="Unidad de Medida";
$lo_title[4]="Modalidad";
$lo_title[5]="Cantidad Contada";
$lo_title[6]="";
$li_totrows=1;
$ls_codusu=$_SESSION["la_logusr"];
$ls_readonly="true";
$ls_status="";
} // end function uf_limpiarvariables()
function uf_agregarlineablanca(&$aa_object,$ai_totrows)
{
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Function: uf_agregarlineablanca
// Access: private
// Argumento: $aa_object // arreglo de titulos
// $ai_totrows // ultima fila pintada en el grid
// Returns:
// Description: Funcion que agrega una linea en blanco al final del grid
// Creado Por: Ing. Luis Anibal Lang
// Fecha Creación: 23/03/2006 Fecha Última Modificación : 23/03/2006
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$aa_object[$ai_totrows][1]="";
$aa_object[$ai_totrows][2]="";
$aa_object[$ai_totrows][3]="";
$aa_object[$ai_totrows][4]="
";
$aa_object[$ai_totrows][5]="";
$aa_object[$ai_totrows][6]="";
}
?>
Toma de Inventario
Sistema de Inventario
uf_conectar();
require_once("../shared/class_folder/class_sql.php");
$io_sql= new class_sql($con);
require_once("../shared/class_folder/class_fecha.php");
$io_fec= new class_fecha();
require_once("../shared/class_folder/class_mensajes.php");
$io_msg= new class_mensajes();
require_once("../shared/class_folder/class_funciones_db.php");
$io_fun= new class_funciones_db($con);
require_once("../shared/class_folder/class_funciones.php");
$io_func= new class_funciones();
require_once("../shared/class_folder/grid_param.php");
$in_grid= new grid_param();
require_once("sigesp_siv_c_toma.php");
$io_siv= new sigesp_siv_c_toma();
require_once("class_funciones_inventario.php");
$io_finv= new class_funciones_inventario();
require_once("sigesp_siv_c_articuloxalmacen.php");
$io_art= new sigesp_siv_c_articuloxalmacen();
require_once("sigesp_siv_c_movimientoinventario.php");
$io_mov= new sigesp_siv_c_movimientoinventario();
$ls_codemp=$_SESSION["la_empresa"]["codemp"];
$ls_codusu=$_SESSION["la_logusr"];
$ls_operacion=$io_finv->uf_obteneroperacion();
switch ($ls_operacion)
{
case "NUEVO":
uf_limpiarvariables();
uf_agregarlineablanca($lo_object,$li_totrows);
break;
case "BUSCARARTICULOS":
uf_limpiarvariables();
$ls_codalm= $_POST["txtcodalm"];
$ls_nomfisalm=$_POST["txtnomfisalm"];
$ld_fectom= $_POST["txtfectom"];
$ls_estpro= $_POST["hidestpro"];
$lb_valido=$io_siv->uf_siv_load_articuloalmacen($ls_codemp,$ls_codalm,$lo_object,$li_totrows);
break;
case "BUSCARTOMA":
uf_limpiarvariables();
$ls_numtom= $_POST["txtnumtom"];
$ls_codalm= $_POST["txtcodalm"];
$ls_nomfisalm=$_POST["txtnomfisalm"];
$ld_fectom= $_POST["txtfectom"];
$ls_estpro= $_POST["hidestpro"];
$ls_obstom=$_POST["txtobstom"];
$lb_valido=$io_siv->uf_siv_load_toma($ls_codemp,$ls_numtom,$lo_object,$li_totrows);
break;
case "PROCESAR":
uf_limpiarvariables();
$lb_ok=false;
$li_totrows= $_POST["totalfilas"];
$ls_numtom= $_POST["txtnumtom"];
$ls_codalm= $_POST["txtcodalm"];
$ls_nomfisalm=$_POST["txtnomfisalm"];
$ld_fectom= $_POST["txtfectom"];
$ls_estpro= $_POST["hidestpro"];
$ls_obstom=$_POST["txtobstom"];
$ld_fectomaux= $io_func->uf_convertirdatetobd($ld_fectom);
$lb_valido=$io_fec->uf_valida_fecha_mes($ls_codemp,$ld_fectom);
if($lb_valido)
{
if($ls_numtom=="")
{
$io_sql->begin_transaction();
$lb_valido=$io_siv->uf_siv_insert_tomainventario($ls_codemp,$ls_codalm,$ls_numtom,$ld_fectomaux,$ls_obstom,$ls_codusu,$la_seguridad);
if ($lb_valido)
{
for($li_i=1;$li_i<=$li_totrows;$li_i++)
{
$ls_codart= $_POST["txtcodart".$li_i];
$ls_denart= $_POST["txtdenart".$li_i];
$ls_denunimed= $_POST["txtdenunimed".$li_i];
$li_canfis= $_POST["txtcanfis".$li_i];
$li_canfisaux= $_POST["txtcanfis".$li_i];
$ls_unidad= $_POST["cmbunidad".$li_i];
$la_unidad[0]="";
$la_unidad[1]="";
$li_canfisaux= str_replace(".","",$li_canfisaux);
$li_canfisaux= str_replace(",",".",$li_canfisaux);
$li_canexisis=0;
$li_canexifisant=0;
$li_unidad=0;
$lb_valido=$io_siv->uf_siv_select_comparararticulos($ls_codemp,$ls_codalm,$ls_codart,$li_canfisaux,
$ls_unidad,$li_canexisis,$lb_ok,$li_unidad);
if ($lb_valido)
{
$lb_valido=$io_siv->uf_siv_insert_dt_tomainventario($ls_codemp,$ls_codalm,$ls_numtom,$ls_codart,$li_canexisis,
$li_canfisaux,$li_canexifisant,$ls_unidad,$la_seguridad);
if($lb_valido)
{
$io_finv->uf_seleccionarcombo("D-M",$ls_unidad,$la_unidad,2);
$lo_object[$li_i][1]="";
$lo_object[$li_i][2]="";
$lo_object[$li_i][3]="";
$lo_object[$li_i][4]="";
$lo_object[$li_i][5]="";
if($lb_ok)
{
$lo_object[$li_i][6]="";
$lb_ajustar=true;
}
}
}
} // end for
}
}
else
{
$io_sql->begin_transaction();
$lb_valido=$io_siv->uf_siv_update_tomainventario($ls_codemp,$ls_codalm,$ls_numtom,$ld_fectomaux,$ls_obstom,$ls_codusu,$la_seguridad);
if ($lb_valido)
{
for($li_i=1;$li_i<=$li_totrows;$li_i++)
{
$ls_codart= $_POST["txtcodart".$li_i];
$ls_denart= $_POST["txtdenart".$li_i];
$ls_denunimed= $_POST["txtdenunimed".$li_i];
$li_canfis= $_POST["txtcanfis".$li_i];
$li_canfisaux= $_POST["txtcanfis".$li_i];
$ls_unidad= $_POST["cmbunidad".$li_i];
$la_unidad[0]="";
$la_unidad[1]="";
$li_canfisaux= str_replace(".","",$li_canfisaux);
$li_canfisaux= str_replace(",",".",$li_canfisaux);
$li_canexisis=0;
$li_canexifisant=0;
$li_unidad=0;
$lb_valido=$io_siv->uf_siv_select_comparararticulos($ls_codemp,$ls_codalm,$ls_codart,$li_canfisaux,
$ls_unidad,$li_canexisis,$lb_ok,$li_unidad);
if ($lb_valido)
{
$lb_valido=$io_siv->uf_siv_update_dt_tomainventario($ls_codemp,$ls_codalm,$ls_numtom,$ls_codart,$li_canexisis,
$li_canfisaux,$li_canexifisant,$ls_unidad,$la_seguridad);
if($lb_valido)
{
$io_finv->uf_seleccionarcombo("D-M",$ls_unidad,$la_unidad,2);
$lo_object[$li_i][1]="";
$lo_object[$li_i][2]="";
$lo_object[$li_i][3]="";
$lo_object[$li_i][4]="";
$lo_object[$li_i][5]="";
if($lb_ok)
{
$lo_object[$li_i][6]="";
$lb_ajustar=true;
}
}
}
} // end for
}
}
if($lb_valido)
{
$io_sql->commit();
$io_msg->message("La toma de inventario ha sido procesada");
}
else
{
$io_sql->rollback();
$io_msg->message("No se pudo procesar la toma de inventario");
uf_limpiarvariables();
uf_agregarlineablanca($lo_object,$li_totrows);
}
}
else
{
$io_msg->message("El mes no esta abierto");
uf_limpiarvariables();
uf_agregarlineablanca($lo_object,$li_totrows);
}
break;
case "AJUSTAR":
uf_limpiarvariables();
$lb_ok=false;
$ls_nummov="";
$ls_nomsol="Toma de Inventario";
$li_totrows= $_POST["totalfilas"];
$ls_numtoma= $_POST["txtnumtom"];
$ls_codalm= $_POST["txtcodalm"];
$ls_nomfisalm=$_POST["txtnomfisalm"];
$ld_fectom= $_POST["txtfectom"];
$ls_obstom=$_POST["txtobstom"];
$ld_fectomaux= $io_func->uf_convertirdatetobd($ld_fectom);
$io_sql->begin_transaction();
$lb_valido=$io_mov->uf_siv_insert_movimiento($ls_nummov,$ld_fectomaux,$ls_nomsol,$ls_codusu,$la_seguridad);
if($lb_valido)
{
for($li_i=1;$li_i<=$li_totrows;$li_i++)
{
$ls_codart= $_POST["txtcodart".$li_i];
$ls_denart= $_POST["txtdenart".$li_i];
$ls_denunimed= $_POST["txtdenunimed".$li_i];
$li_canfis= $_POST["txtcanfis".$li_i];
$li_canfisaux= $_POST["txtcanfis".$li_i];
$ls_unidad= $_POST["cmbunidad".$li_i];
$la_unidad[0]="";
$la_unidad[1]="";
$li_canfisaux= str_replace(".","",$li_canfisaux);
$li_canfisaux= str_replace(",",".",$li_canfisaux);
$li_canexisis=0;
$li_canexifisant=0;
$lb_valido=$io_siv->uf_siv_select_comparararticulos($ls_codemp,$ls_codalm,$ls_codart,$li_canfisaux,$ls_unidad,
$li_canexisis,$lb_ok,$li_unidad);
if ($lb_valido)
{
if(!$lb_ok)
{
$li_preuniart="";
$lb_valido=$io_siv->uf_siv_load_ultimocosto($ls_codemp,$ls_codart,$li_preuniart);
if($ls_unidad=="M")
{
$li_canart=($li_canfisaux * $li_unidad);
}
else
{
$li_canart=$li_canfisaux;
}
if($li_canart > $li_canexisis )
{
$ls_opeinv="AJE";
$ls_codprodoc="ALM";
$ls_promov="TOM";
$li_candesart=0.00;
$li_canart= ($li_canart - $li_canexisis);
$lb_valido=$io_mov->uf_siv_insert_dt_movimiento($ls_codemp,$ls_nummov,$ld_fectomaux,$ls_codart,$ls_codalm,
$ls_opeinv,$ls_codprodoc,$ls_numtoma,$li_canart,$li_preuniart,
$ls_promov,$ls_numtoma,$li_candesart,$ld_fectomaux,
$la_seguridad);
if($lb_valido)
{
$lb_valido=$io_art->uf_siv_aumentar_articuloxalmacen($ls_codemp,$ls_codart,$ls_codalm,
$li_canart,$la_seguridad);
}
}
else
{
if($li_canart < $li_canexisis )
{
$ls_opeinv="AJS";
$ls_codprodoc="ALM";
$ls_promov="TOM";
$li_canart= ($li_canexisis - $li_canart);
$li_candesart=$li_canart;
$lb_valido=$io_mov->uf_siv_insert_dt_movimiento($ls_codemp,$ls_nummov,$ld_fectomaux,$ls_codart,$ls_codalm,
$ls_opeinv,$ls_codprodoc,$ls_numtoma,$li_canart,$li_preuniart,
$ls_promov,$ls_numtoma,$li_candesart,$ld_fectomaux,
$la_seguridad);
if($lb_valido)
{
$lb_valido=$io_art->uf_siv_disminuir_articuloxalmacen($ls_codemp,$ls_codart,$ls_codalm,
$li_canart,$la_seguridad);
}
}
} // end else
if($lb_valido)
{
$lb_valido=$io_art->uf_siv_actualizar_cantidad_articulos($ls_codemp,$ls_codart,$la_seguridad);
}
} // end if(!$lb_ok)
}
} // end for
}
if($lb_valido)
{
$lb_valido=$io_siv->uf_siv_update_estatustoma($ls_codemp,$ls_codalm,$ls_numtoma,$la_seguridad);
}
if($lb_valido)
{
$io_sql->commit();
$io_msg->message("El ajuste de la toma de inventario fue procesado");
}
else
{
$io_sql->rollback();
$io_msg->message("No se pudo procesar el ajuste de la toma de inventario");
}
uf_limpiarvariables();
uf_agregarlineablanca($lo_object,$li_totrows);
break;
} // end switch
?>