";
print "location.href='../sigesp_inicio_sesion.php'";
print "";
}
$ls_logusr=$_SESSION["la_logusr"];
require_once("class_folder/class_funciones_sob.php");
$io_fun_sob=new class_funciones_sob();
$io_fun_sob->uf_load_seguridad("SOB","sigesp_sob_d_anticipo.php",$ls_permisos,$la_seguridad,$la_permisos);
////////////////////////////////////////////// SEGURIDAD /////////////////////////////////////////////
?>
Elaboración de Anticipo
";
$la_objectretenciones[$li_i][2]="";
$la_objectretenciones[$li_i][3]="";
$la_objectretenciones[$li_i][4]="";
$la_objectretenciones[$li_i][5]="";
$la_objectretenciones[$li_i][6]="";
$la_objectretenciones[$li_i][7]="";
}
$la_objectretenciones[$li_filasretenciones][1]="";
$la_objectretenciones[$li_filasretenciones][2]="";
$la_objectretenciones[$li_filasretenciones][3]="";
$la_objectretenciones[$li_filasretenciones][4]="";
$la_objectretenciones[$li_filasretenciones][5]="";
$la_objectretenciones[$li_filasretenciones][6]="";
$la_objectretenciones[$li_filasretenciones][7]="";
}
}
else
{
$ls_datoscontrato="OCULTAR";
$ls_datosobra="OCULTAR";
$ls_codobr="";
$ls_desobr="";
$ls_estobr="";
$ls_munobr="";
$ls_parobr="";
$ls_comobr="";
$ls_dirobr="";
$ls_codcon="";
$ls_nomtco ="";
$ls_fecinicon ="";
$li_placon="";
$ls_moncon="";
$ls_estcon="";
$li_filasretenciones=1;
$li_removerretenciones="";
$ls_operacion="";
$li_placon="";
$ls_codtco="";
$ls_totreten="0,00";
$ls_codant="";
$ls_fecant="";
$ls_estant="";
$ls_fecintant="";
$ls_monto="0,00";
$ls_porant=0;
$ls_sc_cuenta="";
$ls_placonuni="";
$ls_conant="";
$ld_montocontratofinal="";
$ld_monvar="";
$ls_nompro="";
$ld_montocontrato=0;
$ls_montotant="0,00";
$ld_montototalanticipo=0;
$li_filasretenciones=1;
$la_objectretenciones[1][1]="";
$la_objectretenciones[1][2]="";
$la_objectretenciones[1][3]="";
$la_objectretenciones[1][4]="";
$la_objectretenciones[1][5]="";
$la_objectretenciones[1][6]="";
$la_objectretenciones[1][7]="";
}
/////////Instrucciones para evitar que las cajitas pierdan la informacion cada vez que se realiza un submit/////////////
if (array_key_exists("hiddatoscontrato",$_POST)){ $ls_datoscontrato=$_POST["hiddatoscontrato"]; }
else{$ls_datoscontrato="OCULTAR";}
if (array_key_exists("hiddatosobra",$_POST)){ $ls_datosobra=$_POST["hiddatosobra"]; }
else{$ls_datosobra="OCULTAR";}
if (array_key_exists("operacion",$_POST)){ $ls_operacion=$_POST["operacion"]; }
else{$ls_operacion="";}
if (array_key_exists("txtcodcon",$_POST)){ $ls_codcon=$_POST["txtcodcon"]; }
else{$ls_codcon="";}
if (array_key_exists("txtcodobr",$_POST)){$ls_codobr=$_POST["txtcodobr"]; }
else{$ls_codobr="";}
if (array_key_exists("hiddesobr",$_POST)){$ls_desobr=$_POST["hiddesobr"]; }
else{$ls_desobr="";}
if (array_key_exists("txtestobr",$_POST)){$ls_estobr=$_POST["txtestobr"]; }
else{$ls_estobr="";}
if (array_key_exists("txtmunobr",$_POST)){$ls_munobr=$_POST["txtmunobr"]; }
else{$ls_munobr="";}
if (array_key_exists("txtparobr",$_POST)){$ls_parobr=$_POST["txtparobr"]; }
else{$ls_parobr="";}
if (array_key_exists("txtcomobr",$_POST)){$ls_comobr=$_POST["txtcomobr"]; }
else{$ls_comobr="";}
if (array_key_exists("txtdirobr",$_POST)){$ls_dirobr=$_POST["txtdirobr"]; }
else{$ls_dirobr="";}
if (array_key_exists("txtnomtco",$_POST)){$ls_destipcon=$_POST["txtnomtco"]; }
else{$ls_destipcon="";}
if (array_key_exists("txtfecinicon",$_POST)){$ls_fecinicon=$_POST["txtfecinicon"]; }
else{$ls_fecinicon="";}
if (array_key_exists("txtmoncon",$_POST)){$ld_montocontrato=$_POST["txtmoncon"]; }
else{$ls_montocontrato="";}
if (array_key_exists("txtestcon",$_POST)){$ls_estcon=$_POST["txtestcon"]; }
else{$ls_estcon="";}
if (array_key_exists("hidfilasretenciones",$_POST)){$li_filasretenciones=$_POST["hidfilasretenciones"]; }
else{$li_filasretenciones=1;}
if (array_key_exists("hidremoverretenciones",$_POST)){$li_removerretenciones=$_POST["hidremoverretenciones"]; }
else{$li_removerretenciones="";}
if (array_key_exists("txtplacon",$_POST)){$li_placon=$_POST["txtplacon"]; }
else{$li_placon="0";}
if (array_key_exists("txtcodant",$_POST)){$ls_codant=$_POST["txtcodant"]; }
else{$ls_codant="";}
if (array_key_exists("txtfecant",$_POST)){$ls_fecant=$_POST["txtfecant"]; }
else{$ls_fecant="";}
if (array_key_exists("txtfecintant",$_POST)){$ls_fecintant=$_POST["txtfecintant"]; }
else{$ls_fecintant="";}
if (array_key_exists("txtmonto",$_POST)){$ls_monto=$_POST["txtmonto"]; }
else{$ls_monto="0,00";}
if (array_key_exists("txtporant",$_POST)){$ls_porant=$_POST["txtporant"]; }
else{$ls_porant="0,00";}
if (array_key_exists("txtmontotant",$_POST)){$ls_montotant=$_POST["txtmontotant"]; }
else{$ls_montotant="0,00";}
if (array_key_exists("txtsc_cuenta",$_POST)){$ls_sc_cuenta=$_POST["txtsc_cuenta"]; }
else{$ls_sc_cuenta="";}
if (array_key_exists("txtconant",$_POST)){$ls_conant=$_POST["txtconant"]; }
else{$ls_conant="";}
if (array_key_exists("txtnompro",$_POST)){$ls_nompro=$_POST["txtnompro"]; }
else{$ls_nompro="";}
if (array_key_exists("txtplaconuni",$_POST)){$ls_placonuni=$_POST["txtplaconuni"]; }
else{$ls_placonuni="";}
if (array_key_exists("hidobra",$_POST)){$ls_obra=$_POST["hidobra"]; }
else{$ls_obra="";}
if (array_key_exists("txtnomtco",$_POST)){$ls_nomtco=$_POST["txtnomtco"]; }
else{$ls_nomtco="";}
if (array_key_exists("txtcodtco",$_POST)){$ls_codtco=$_POST["txtcodtco"]; }
else{$ls_codtco="";}
if (array_key_exists("hidmontocontrato",$_POST)){$ld_montocontratofinal=$_POST["hidmontocontrato"]; }
else{$ld_montocontratofinal=0;}
if (array_key_exists("hidmontototalanticipo",$_POST)){$ld_montototalanticipo=$_POST["hidmontototalanticipo"]; }
else{$ld_montototalanticipo=0;}
if (array_key_exists("txtestant",$_POST)){ $ls_estant=$_POST["txtestant"]; }
else{$ls_estant="";}
if (array_key_exists("txtvartot",$_POST)){ $ld_monvar=$_POST["txtvartot"]; }
else{$ld_monvar="";}
if (array_key_exists("txttotreten",$_POST)){$ls_totreten=$_POST["txttotreten"]; }
else{$ls_totreten="0,00";}
if (array_key_exists("txtcodtipdoc",$_POST)){$ls_codtipdoc=$_POST["txtcodtipdoc"]; }
else{$ls_codtipdoc="";}
if (array_key_exists("txtdentipdoc",$_POST)){$ls_dentipdoc=$_POST["txtdentipdoc"]; }
else{$ls_dentipdoc="";}
if (array_key_exists("hidstatus",$_POST)){$ls_hidstatus=$_POST["hidstatus"]; }
else{$ls_hidstatus="";}
if (array_key_exists("estapr",$_POST)){$ls_estapr=$_POST["estapr"]; }
else{$ls_estapr="";}
////////////////////////////////Operaciones de Actualizacion//////////////////////////////////////
if($ls_operacion=="ue_cargarretenciones")
{
$li_filasretenciones=$li_filasretenciones+1;
for($li_i=1;$li_i<$li_filasretenciones;$li_i++)
{
$ls_codigo=$_POST["txtcodret".$li_i];
$ls_descripcion=$_POST["txtdesret".$li_i];
$ls_cuenta=$_POST["txtcueret".$li_i];
$ls_deduccion=$_POST["txtdedret".$li_i];
$ls_monret=$_POST["txtmonret".$li_i];
$ls_totret=$_POST["txttotret".$li_i];
$ls_formula=$_POST["formula".$li_i];
$la_objectretenciones[$li_i][1]="";
$la_objectretenciones[$li_i][2]="";
$la_objectretenciones[$li_i][3]="";
$la_objectretenciones[$li_i][4]="";
$la_objectretenciones[$li_i][5]="";
$la_objectretenciones[$li_i][6]="";
$la_objectretenciones[$li_i][7]="";
}
$la_objectretenciones[$li_filasretenciones][1]="";
$la_objectretenciones[$li_filasretenciones][2]="";
$la_objectretenciones[$li_filasretenciones][3]="";
$la_objectretenciones[$li_filasretenciones][4]="";
$la_objectretenciones[$li_filasretenciones][5]="";
$la_objectretenciones[$li_filasretenciones][6]="";
$la_objectretenciones[$li_filasretenciones][7]="";
}
elseif($ls_operacion=="ue_removerretenciones")
{
$li_filasretenciones=$li_filasretenciones-1;
$li_temp=0;
for($li_i=1;$li_i<=$li_filasretenciones;$li_i++)
{
if($li_i!=$li_removerretenciones)
{
$li_temp=$li_temp+1;
$ls_codigo=$_POST["txtcodret".$li_i];
$ls_descripcion=$_POST["txtdesret".$li_i];
$ls_cuenta=$_POST["txtcueret".$li_i];
$ls_monret=$_POST["txtmonret".$li_i];
$ls_totret=$_POST["txttotret".$li_i];
$ls_deduccion=$_POST["txtdedret".$li_i];
$ls_formula=$_POST["formula".$li_i];
$la_objectretenciones[$li_temp][1]="";
$la_objectretenciones[$li_temp][2]="";
$la_objectretenciones[$li_temp][3]="";
$la_objectretenciones[$li_temp][4]="";
$la_objectretenciones[$li_temp][5]="";
$la_objectretenciones[$li_temp][6]="";
$la_objectretenciones[$li_temp][7]="";
}
}
$la_objectretenciones[$li_filasretenciones][1]="";
$la_objectretenciones[$li_filasretenciones][2]="";
$la_objectretenciones[$li_filasretenciones][3]="";
$la_objectretenciones[$li_filasretenciones][4]="";
$la_objectretenciones[$li_filasretenciones][5]="";
$la_objectretenciones[$li_filasretenciones][6]="";
$la_objectretenciones[$li_filasretenciones][7]="";
$ls_operacion="ue_calcretencion";
}
elseif($ls_operacion=="ue_cargarcontrato")
{
require_once("class_folder/sigesp_sob_c_variacion.php");
$io_variacion=new sigesp_sob_c_variacion();
$la_aumento=$la_disminucion="";
$lb_valido=$io_variacion->uf_select_variacion($ls_codcon,1,$la_aumento);
$ld_totalaumento=0;
$ld_totaldisminucion=0;
if($lb_valido!=0)
{
$x = (count($la_aumento, COUNT_RECURSIVE) / count($la_aumento)) - 1;
for($li_i=1;$li_i<=$x;$li_i++)
{
$ld_totalaumento=$ld_totalaumento+$la_aumento["monto"][$li_i];
}
}
$lb_valido=$io_variacion->uf_select_variacion($ls_codcon,2,$la_disminucion);
if($lb_valido!=0)
{
$x = (count($la_disminucion, COUNT_RECURSIVE) / count($la_disminucion)) - 1;
for($li_i=1;$li_i<=$x;$li_i++)
{
$ld_totaldisminucion=$ld_totaldisminucion+$la_disminucion["monto"][$li_i];
}
}
$ld_totalvariacion=$ld_totalaumento-$ld_totaldisminucion;
$lb_valido=$io_contrato-> uf_select_contrato($ls_codcon,$la_contrato);
if ($lb_valido)
{
$io_datastore->data=$la_contrato;
$li_i=1;
$ls_codcon=$io_datastore->getValue("codcon",$li_i);
$ls_moncon=$io_funsob->uf_convertir_numerocadena($io_datastore->getValue("monto",$li_i));
}
$io_anticipo->uf_calcular_montoanticipo($ls_codcon,$ld_montototalanticipoaux);
$ld_montototalanticipo=$io_funsob->uf_convertir_numerocadena($ld_montototalanticipoaux);
$ld_montocontrato=$la_contrato["monto"][1];
$ld_montocontratofinal=$ld_montocontrato+$ld_totalvariacion;
$ld_montocontrato=$io_funsob->uf_convertir_numerocadena($ld_montocontrato);
$ld_montocontratofinal=$io_funsob->uf_convertir_numerocadena($ld_montocontratofinal);
$ld_monvar=$io_funsob->uf_convertir_numerocadena($ld_totalvariacion);
$lb_valido=$io_obra->uf_select_obra($io_datastore->getValue("codobr",$li_i),$la_obra);
if($lb_valido)
$ls_desobr=$la_obra["desobr"][1];
$ls_operacion="ue_nuevo";
}
elseif($ls_operacion=="ue_guardar")
{
$ld_monto=$io_funsob->uf_convertir_cadenanumero($ls_monto);
$ld_montotant=$io_funsob->uf_convertir_cadenanumero($ls_montotant);
$ld_porant=$io_funsob->uf_convertir_cadenanumero($ls_porant);
$lf_fecant=$io_function->uf_convertirdatetobd($ls_fecant);
$lf_fecintant=$io_function->uf_convertirdatetobd($ls_fecintant);
$lb_existe=$io_anticipo->uf_select_anticipo ($ls_codant,$ls_codcon,$la_data);
$ls_hidstatus=$_POST["hidstatus"];
$lb_valido=$io_anticipo->uf_validar_disponibilidad_anticipos($ls_codcon ,$ls_codant,$ld_monto);
if($lb_valido)
{
if($ls_hidstatus!="C")
{
$io_anticipo->io_sql->begin_transaction();
$ls_codantaux=$ls_codant;
$lb_valido=$io_anticipo->uf_guardar_anticipo($ls_codcon ,$ls_codant ,$lf_fecant,$lf_fecintant,$ld_porant,$ld_monto,$ls_conant,$ld_montotant,$ls_sc_cuenta,$la_seguridad);
if($lb_valido)
{
if($ls_codantaux!=$ls_codant)
{$io_msg->message("Se le asigno el nuevo numero ".$ls_codant." ");}
$io_anticipo->io_sql->commit();
$io_msg->message("El Anticipo ha sido Registrado.");
$ls_hidstatus="C";
}
else
{
$io_anticipo->io_sql->rollback();
$io_msg->message("Se genero un error al registrar el Anticipo.");
}
}//end del if si no existe
else
{
if($lb_existe)
{
$lb_valido=$io_anticipo->uf_select_estado($ls_codcon,$ls_codant,$li_estado);
$ls_estspgscg=$io_obra->uf_contabilizado("SELECT estspgscg FROM sob_anticipo WHERE codemp='$ls_codemp' AND codcon='$ls_codcon' AND codant='$ls_codant'");
if($lb_valido)
{
if($li_estado==1 && $ls_estspgscg==0)
{
$la_retenciones["codret"][1]="";
$la_retenciones["monret"][1]="";
$la_retenciones["montotret"][1]="";
$ls_monto=$io_funsob->uf_convertir_cadenanumero($ls_monto);
$ls_montotant=$io_funsob->uf_convertir_cadenanumero($ls_montotant);
$ls_porant=$io_funsob->uf_convertir_cadenanumero($ls_porant);
$ls_fecant=$io_function->uf_convertirdatetobd($ls_fecant);
$ls_fecintant=$io_function->uf_convertirdatetobd($ls_fecintant);
$io_anticipo->io_sql->begin_transaction();
$lb_valido=$io_anticipo->uf_update_anticipo($ls_codcon, $ls_codant,$ls_fecant,$ls_fecintant,$ls_porant,$ls_monto,$ls_conant,$ls_montotant,
$ls_sc_cuenta,$la_seguridad);
if($lb_valido)
{
$ls_codcon="";
$ls_codant="";
$ls_fecintant="";
$ls_fecant="";
$ls_monto="0,00";
$ls_porant="0,00";
$ls_totreten="0,00";
$ls_sc_cuenta="";
$ls_conant="";
$ls_totreten="0,00";
$ld_montocontratofinal="";
$ld_monvar="";
$ls_montotant="0,00";
$ls_estant="";
$ls_datoscontrato="OCULTAR";
}
if($lb_valido===false)
{
$io_mensaje->error_modificar();
$io_msg->message("en retenciones");
$io_anticipo->io_sql->rollback();
}
elseif($lb_valido===true)
{
$io_mensaje->modificar();
$io_anticipo->io_sql->commit();
}
}
else
{
if($ls_estspgscg==0)
{
$ls_estado=$io_funsob->uf_convertir_numeroestado($li_estado);
$io_msg->message("El registro no puede ser modificado, su estado es $ls_estado");
}
else
{
$io_msg->message("El registro no puede ser modificado, ya esta Comprometido");
}
}
}
}
else
{
$io_msg->message("El anticipo no existe");
}
}
}
}
elseif($ls_operacion=="ue_cargaranticipo")
{
}
elseif($ls_operacion=="ue_eliminar")///Esto es una eliminacion lógica!
{
$lb_existe=$io_anticipo->uf_select_anticipo($ls_codant,$ls_codcon,$la_data);
if ($lb_existe)
{
$lb_valido=$io_anticipo->uf_select_estado($ls_codcon,$ls_codant,$li_estado);
$ls_estspgscg=$io_obra->uf_contabilizado("SELECT estspgscg FROM sob_anticipo WHERE codemp='$ls_codemp' AND codcon='$ls_codcon' AND codant='$ls_codant'");
if($lb_valido)
{
if($li_estado==1 && $ls_estspgscg==0)
{
$lb_ultimoanticipo=$io_anticipo->uf_verificar_anticipoeliminar($ls_codant);
if($lb_ultimoanticipo)
{
$lb_valido=$io_anticipo->uf_delete_anticipo($ls_codcon,$ls_codant,$la_seguridad);
if($lb_valido)
{
$io_msg->message("El Anticipo ha sido eliminado exitosamente");
}
else
{
$io_msg->message("Ocurrio un error al eliminar el Anticipo");
}
}
else
{
$io_anticipo->io_sql->begin_transaction();
$lb_valido=$io_anticipo->uf_update_estado($ls_codcon,$ls_codant,3,$la_seguridad);
if($lb_valido)
{
$io_mensaje->anular();
$io_anticipo->io_sql->commit();
}
else
{
$io_msg->message("Ocurrio un error al anular el anticipo");
$io_anticipo->io_sql->rollback();
}
}
}
else
{
if($ls_estspgscg==0)
{
$ls_estado=$io_funsob->uf_convertir_numeroestado($li_estado);
if ($ls_estado=="ANULADO")
$io_msg->message("Este Anticipo ya está Anulado!!!");
else
$io_msg->message("Este Anticipo no puede ser Anulado, su estado es ".$ls_estado);
}
else
{
$io_msg->message("Este Anticipo no puede ser Anulado, ya esta Contabilizado");
}
}
}
}
else
{
$io_msg->message("Debe seleccionar un Anticipo existente!!!");
}
$ls_codcon="";
$ls_codant="";
$ls_fecintant="";
$ls_fecant="";
$ls_monto="0,00";
$ls_totreten="0,00";
$ls_porant="0,00";
$ls_sc_cuenta="";
$ls_conant="";
$ls_montotant="0,00";
$ld_montocontratofinal="";
$ld_monvar="";
$ls_estant="";
$ls_datoscontrato="OCULTAR";
$li_filasretenciones=1;
$la_objectretenciones[$li_filasretenciones][1]="";
$la_objectretenciones[$li_filasretenciones][2]="";
$la_objectretenciones[$li_filasretenciones][3]="";
$la_objectretenciones[$li_filasretenciones][4]="";
$la_objectretenciones[$li_filasretenciones][5]="";
$la_objectretenciones[$li_filasretenciones][6]="";
$la_objectretenciones[$li_filasretenciones][7]="";
}
if($ls_operacion=="PROCESAR")
{
// $lb_valido=$io_anticipo->uf_select_estado($ls_codcon,$ls_codant,$li_estado);
$ls_estspgscg=$io_obra->uf_contabilizado("SELECT estspgscg FROM sob_anticipo WHERE codemp='$ls_codemp' AND codcon='$ls_codcon' AND codant='$ls_codant'");
//if($ls_estspgscg==1)
//{
$ls_numrecdoc=trim($ls_codcon).trim($ls_codant);
if (array_key_exists("txtcodtipdoc",$_POST)){$ls_codtipdoc=$_POST["txtcodtipdoc"]; }
else{$ls_codtipdoc="";}
$ld_montotant=$io_funsob->uf_convertir_cadenanumero($ls_montotant);
$ld_totreten=$io_funsob->uf_convertir_cadenanumero($ls_totreten);
$lb_valido=$io_anticipo->uf_procesar_recepcion_documentos($ls_codemp,$ls_numrecdoc,$ls_codtipdoc,$ls_conant,$ls_fecant,$ld_montotant,$ld_totreten,
$ls_codcon,$ls_codant,$la_seguridad);
if($lb_valido)
{
$io_msg->message("La Recepcion de Documentos se genero satisfactoriamente");
}
else
{
$io_msg->message("No se genero la Recepcion de Documentos");
}
//}
//else
//{
// $io_msg->message("El anticipo debe estar en estatus de contabilizado");
//}
}
if($ls_operacion=="ue_nuevo")//Abre una ficha de obra nueva
{
if($ld_montototalanticipo==$ld_montocontratofinal)
{
$io_msg->message("No pueden realizarse nuevo anticipos sobre este contrato, ya que el monto limite se ha alcanzado!!!");
}
else
{
require_once("../shared/class_folder/class_funciones_db.php");
require_once ("../shared/class_folder/sigesp_include.php");
$io_include=new sigesp_include();
$io_connect=$io_include->uf_conectar();
$io_funcdb=new class_funciones_db($io_connect);
$la_empresa=$_SESSION["la_empresa"];
require_once("../shared/class_folder/sigesp_c_generar_consecutivo.php");
$io_keygen= new sigesp_c_generar_consecutivo();
$ls_codant= $io_keygen->uf_generar_numero_nuevo("SOB","sob_anticipo","codant","SOBANT",3,"","","");
// $ls_codant=$io_anticipo->uf_generar_codigoanticipo($ls_codcon);
$ls_fecant=date("d/m/Y");
$ls_fecintant="";
$ls_monto="0,00";
$ls_porant="0,00";
$ls_totreten="0,00";
$lb_valido=$io_anticipo->uf_select_cuentacontable($ls_codcon,$ls_cuenta);
if($lb_valido)
$ls_sc_cuenta=$ls_cuenta;
$ls_conant="";
$ls_montotant="0,00";
$li_filasretenciones=1;
$ls_estant="EMITIDO";
$li_removerretenciones="";
$ls_operacion="";
$ls_hidstatus="";
}
}
?>