uf_load_seguridad("SCB","sigesp_scb_p_emision_chq.php",$ls_permisos,$la_seguridad,$la_permisos);
require_once("sigesp_scb_c_movbanco.php");
$in_classmovbanco=new sigesp_scb_c_movbanco($la_seguridad);
function uf_print(&$totrow, $provbene, $tipproben)
{
require_once("../shared/class_folder/grid_param.php");
require_once("../shared/class_folder/sigesp_include.php");
require_once("../shared/class_folder/class_sql.php");
require_once("../shared/class_folder/class_funciones.php");
$in = new sigesp_include();
$con = $in->uf_conectar();
$io_msg = new class_mensajes();
$io_sql = new class_sql($con);
$io_funcion = new class_funciones();
$arr = $_SESSION["la_empresa"];
$ls_codemp = $arr["codemp"];
$grid = new grid_param();
//----------------------------------------------------------------------------------------
if ($tipproben=="P")
{
$cod_prov=$provbene;
$ced_bene='----------';
}
else
{
$cod_prov='----------';
$ced_bene=$provbene;
}
//------------------------------------------------------------------------------------------
$title[1]="Documento";
$title[2]="Total Anticipo";
$title[3]="Saldo";
$title[4]="Amortización";
$grid1="grid";
$ls_sql= " SELECT scb_movbco_anticipo.codemp, scb_movbco_anticipo.codban, scb_movbco_anticipo.ctaban,
scb_movbco_anticipo.numdoc, scb_movbco_anticipo.codope, scb_movbco_anticipo.estmov,
scb_movbco_anticipo.codamo, scb_movbco_anticipo.monamo, scb_movbco_anticipo.monsal,
scb_movbco_anticipo.montotamo, scb_movbco_anticipo.sc_cuenta,
scb_movbco.cod_pro, scb_movbco.ced_bene, scb_banco.nomban,
(SELECT rpc_proveedor.sc_cuenta
FROM rpc_proveedor
WHERE rpc_proveedor.codemp=scb_movbco.codemp
AND rpc_proveedor.cod_pro=scb_movbco.cod_pro) as cta_pro,
(SELECT rpc_beneficiario.sc_cuenta
FROM rpc_beneficiario
WHERE rpc_beneficiario.codemp=scb_movbco.codemp
AND rpc_beneficiario.ced_bene=scb_movbco.ced_bene) as cta_bene
FROM scb_movbco_anticipo
JOIN scb_movbco ON (scb_movbco.codemp = scb_movbco_anticipo.codemp
AND scb_movbco.codban = scb_movbco_anticipo.codban
AND scb_movbco.ctaban = scb_movbco_anticipo.ctaban
AND scb_movbco.numdoc = scb_movbco_anticipo.numdoc
AND scb_movbco.codope = scb_movbco_anticipo.codope
AND scb_movbco.estmov = scb_movbco_anticipo.estmov)
JOIN scb_banco ON (scb_banco.codemp=scb_movbco_anticipo.codemp
AND scb_banco.codban=scb_movbco_anticipo.codban)
WHERE scb_movbco_anticipo.codemp='".$ls_codemp."'
AND scb_movbco_anticipo.estmov='C'
AND scb_movbco.estant='1'
AND scb_movbco.cod_pro='".$cod_prov."'
AND scb_movbco.ced_bene='".$ced_bene."'
AND scb_movbco_anticipo.monsal>0";
$rs_data=$io_sql->select($ls_sql);
if(($rs_data===false))
{
//$io_msg->message("Error en select");
}
else
{
$totrow=$io_sql->num_rows($rs_data);
$ls_monamo = 0;
$z=0;
if ($totrow>0)
{
while($row=$io_sql->fetch_row($rs_data))
{
$ls_codban = $row["codban"];
$ls_cta = $row["ctaban"];
$ls_montotant = $row["montotamo"];
$ls_saldo = $row["monsal"];
$ls_numdoc = $row["numdoc"];
$ls_codamo = $row["codamo"];
$ls_codope = $row["codope"];
$ls_estmov = $row["estmov"];
$ls_scgcta = trim($row["sc_cuenta"]);
$ls_montoamo2 = $row["monamo"];
$ls_codpro = $row["cta_pro"];
$ls_cedbene = $row["cta_bene"];
$z++;
$object[$z][1]="
";
$object[$z][2]="";
$object[$z][3]="";
$object[$z][4]="";
}// fin del while
}
else
{ $z=1;
$object[1][1]="
";
$object[1][2]="";
$object[1][3]="";
$object[1][4]="";
}
$grid->makegrid($totrow,$title,$object,400,'Amortización de Anticipos',$grid1);
print "";
}
}// fin de la funcion print
if($ls_operacion=="NUEVO")
{
uf_print($totrow, $provbene, $tipproben);
}
if($ls_operacion=="GUARDAR")
{
require_once("../shared/class_folder/class_mensajes.php");
$io_msg = new class_mensajes();
require_once("sigesp_scb_c_emision_chq.php");
$io_emision = new sigesp_scb_c_emision_chq();
$ls_valido=true;
$totrow=$io_scb->uf_obtenervalor("total","");
$ls_valido=true;
//------informaciòn del cheque en emision de cheque-----------------------------------------------
$provbene=$_GET["provbene"];
$tipproben=$_GET["tipproben"];
$ls_montochq=$_GET["montochq"];// monto del cheque
$ls_montochq=str_replace(".","",$ls_montochq);
$ls_montochq=str_replace(",",".",$ls_montochq);
$cuenta_bco=$_GET["sc_cuenta"];// cuenta contable del banco
$cta_banco=$_GET["ctaban"];//cuenta bancaria
$codban=$_GET["codban"];//codigo del banco
$documento=$_GET["docum"];// numero del documento
$montret=$_GET["montret"]; // monto retenido
$montret=str_replace(",",".",$montret);
$ldec_monobjret=$_GET["montobjret"]; // monto objeto de retencion
$ldec_monobjret=str_replace(".","",$ldec_monobjret);
$ldec_monobjret=str_replace(",",".",$ldec_monobjret);
$ls_mov_operacion=$_GET["mov_operacion"];// tipo de movieminto
$ld_fecha=$_GET["fecha"];// fecha de creaciòn del cheque;
$ls_desmov=$_GET["dencon"];// denominaciòn del movimiento;
$ls_codconmov=$_GET["codmov"];// codigo del movimiento;
$ls_chevau=$_GET["chevau"];//el nuemro del voucher
$ls_estmov=$_GET["estmov"];// estatus del cheque;
$ls_codfuefin=$_GET["fuente"];// codigo de la fuente de financiamiento
if ($tipproben=="P")
{
$ls_codpro=$provbene;
$ls_cedbene='----------';
}
else
{
$ls_codpro='----------';
$ls_cedbene=$provbene;
}
$ls_desproben=$_GET["desproben"];// nombre del proveedor o beneficiario
//-----------------------------------------------------------------------------------------------------------
$ls_docant='---------------';
$ls_montoam=0;
$ls_valido=$in_classmovbanco->uf_guardar_automatico2($codban,$cta_banco, $documento,
$ls_mov_operacion,$ld_fecha,$ls_desmov,
$ls_codconmov,$ls_codpro,$ls_cedbene,$ls_desproben, $ls_montochq,$ldec_monobjret,$montret, $ls_chevau,$ls_estmov,0,1,$tipproben,
'SCBBCH','',"N",$tipproben,$ls_codfuefin,'2',
$ls_docant,$ls_montoam);//Cheque Amortizado
if ($ls_valido)
{
$in_classmovbanco->io_sql->commit();
$ls_estdoc="C";
?>
io_sql->rollback();
$ls_estdoc="N";
$io_msg->message("No se realizo la amortización, se debe amortizar solo un Anticipo");
}
if ($ls_valido)
{
for ($i=1;$i<=$totrow;$i++)
{
$ls_codban = $io_scb->uf_obtenervalor("txtcodban".$i,"");
$ls_cta = $io_scb->uf_obtenervalor("txtcta".$i,"");
$ls_montotant = $io_scb->uf_obtenervalor("txtmontotant".$i,"");
$ls_saldo = $io_scb->uf_obtenervalor("txtmonsal".$i,"");
$ls_numdoc = $io_scb->uf_obtenervalor("txtbnumdoc".$i,"");
$ls_codamo = $io_scb->uf_obtenervalor("txtcodamo".$i,"");
$ls_codope = $io_scb->uf_obtenervalor("txtcodope".$i,"");
$ls_estmov = $io_scb->uf_obtenervalor("txtestmov".$i,"");
$ls_scgcta = $io_scb->uf_obtenervalor("txtsccta".$i,""); // cuenta contable del anticipo
$ls_monamo = $io_scb->uf_obtenervalor("txtmonamor".$i,"");
$ls_monamo =str_replace(".","",$ls_monamo);
$ls_monamo =str_replace(",",".",$ls_monamo);
$ls_saldo = $io_scb->uf_obtenervalor("txtmonsal".$i,"");
$ls_saldo =str_replace(".","",$ls_saldo);
$ls_saldo =str_replace(",",".",$ls_saldo);
$ls_monamo2 = $io_scb->uf_obtenervalor("txtmontamo2".$i,"");
$ls_ctapro = $io_scb->uf_obtenervalor("txtcodpro".$i,"");//cuenta conable del proveedor
$ls_ctabene = $io_scb->uf_obtenervalor("txtcedbene".$i,""); //cuenta conatbel del beneficiario
//-------------------------------------------------------------------------------------------------------
if ($ls_monamo>0)
{
if ($ls_monamo>=$ls_montochq)
{
$io_msg->message("El monto de amortización debe ser Menor al monto Total del Cheque.... ");
}
if ($ls_monamo>$ls_saldo)
{
$io_msg->message("El monto de amortización debe ser Menor al Saldo del Anticipo.... ");
}
else
{
$ls_monamoaux=$ls_monamo2+$ls_monamo;
$ls_saldo=$ls_saldo-$ls_monamo;
$saldo_cheque=0;
$saldo_cheque= $ls_montochq-$ls_monamo;
if ($ls_monamo>0)
{
$ls_valido= $io_emision->uf_guardar_anticipos($ls_codban, $ls_cta, $ls_numdoc, $ls_codope, $ls_estmov,
$ls_codamo, $ls_scgcta, $ls_monamoaux, $ls_saldo);
?>
uf_guardar_automatico2($codban,$cta_banco, $documento,
$ls_mov_operacion,$ld_fecha,$ls_desmov,
$ls_codconmov,$ls_codpro,$ls_cedbene,$ls_desproben, $ls_montochq,$ldec_monobjret,$montret, $ls_chevau,$ls_estmov,0,1,$tipproben,
'SCBBCH','',"C",$tipproben,$ls_codfuefin,'2',
$ls_numdoc,$ls_monamo);//Cheque Amortizado
}
}//fin de un else
}
else
{
$io_msg->message("El monto de amortización debe ser Mayor a Cero...");
}
} // fin del for
if ($ls_valido)
{
if ($ls_ctapro!="")
{
$scg_probene=$ls_ctapro;
$ls_desmov="Cuentas por pagar Proveedor";
$ls_desmov2="Anticipo a Proveedores";
}
else
{
$scg_probene=$ls_ctabene;
$ls_desmov="Cuentas por pagar Beneficiario";
$ls_desmov2="Anticipo a Beneficiarios";
}
$ls_valido=$io_emision->uf_contable_anticipo($codban, $cta_banco,
$documento, "CH",
"N", $ls_scgcta,
"H",'00000',$documento,
$ls_desmov2, 'SCBBCH',
$ls_monamo,$ldec_monobjret);// asiento para el anticipo
$ls_desmov3="Banco ";
$ls_montonab=$ls_montochq-$ls_monamo;
$ls_valido=$io_emision->uf_contable_anticipo($codban, $cta_banco,
$documento, "CH",
"N", $cuenta_bco,
"H",'00000',$documento,
$ls_desmov3, 'SCBBCH',
$ls_montonab,$ldec_monobjret);//asiento para el banco
}//fin del if asiento para el proveedor o beneficiario
}// fin del if
}//fin del if guardar
if($ls_valido)
{
uf_print($totrow, $provbene, $tipproben);
}
?>