function setGenerarRecibosGlobales() { //funcion que genera un recibo por dia y asigna operaciones huerfanas al dicho recibo $sql = "SELECT COUNT(idoperaciones_mvtos) AS 'mvtos',\r\n\t\t\t\t\tfecha_operacion\r\n\t\t\t\t\tFROM operaciones_mvtos \r\n\t\t\t\t\tWHERE (SELECT COUNT(idoperaciones_recibos) FROM operaciones_recibos \r\n\t\t\t\t\t\t\tWHERE idoperaciones_recibos = operaciones_mvtos.recibo_afectado) = 0\r\n\t\t\t\t\tGROUP BY fecha_operacion"; $rs = getRecordset($sql); $msg = "UTILERIA DE CORRECION DE MVTOS HUERFANOS\r\n"; while ($rw = mysql_fetch_array($rs)) { //generar el recibo $fecha_operacion = $rw["fecha_operacion"]; $mvtos = $rw["mvtos"]; $cadena = "Documento de Ajuste por {$mvtos} Movimientos Huerfanos"; $recibo = setNuevoRecibo(DEFAULT_SOCIO, DEFAULT_CREDITO, $fecha_operacion, 1, 10, $cadena, DEFAULT_CHEQUE, DEFAULT_TIPO_PAGO, DEFAULT_RECIBO_FISCAL, DEFAULT_GRUPO); $sqlU = "UPDATE operaciones_mvtos SET recibo_afectado={$recibo} WHERE \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(SELECT COUNT(idoperaciones_recibos) FROM operaciones_recibos \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE idoperaciones_recibos = operaciones_mvtos.recibo_afectado) = 0 \r\n\t\t\t\t\t\t\t\t\tAND fecha_operacion='{$fecha_operacion}' "; //actualizar el mvto $xT = my_query($sqlU); if ($xT["stat"] == true) { $msg .= "{$fecha_operacion}\t{$recibo}\t{$mvtos} Movimentos Actualizados\r\n"; } else { $msg .= "{$fecha_operacion}\t{$recibo}\tERROR EN LA ACTUALIZACION\r\n"; } } return $msg; }
$inFiles[$index] = "creditos_flujoefvo.sbk"; if (file_exists("{$inPath}-{$inFiles[$index]}") == true) { $inSQL[$index] = "LOAD DATA INFILE '{$inPath}-{$inFiles[$index]}'\n\t\t\t\t\tINTO TABLE creditos_flujoefvo\n\t\t\t\t\tFIELDS TERMINATED BY '{$chri}'\n\t\t\t\t\tLINES TERMINATED BY '\\r\\n'\n\t\t\t\t\t(solicitud_flujo, socio_flujo, tipo_flujo,\n\t\t\t\t\torigen_flujo, monto_flujo, afectacion_neta, periocidad_flujo, idusuario,\n\t\t\t\t\tobservacion_flujo, descripcion_completa, sucursal, fecha_captura)"; $inQuerys[$index] = my_query($inSQL[$index]); if ($inQuerys[$index]["stat"] == false) { $msg .= date("H:i:s") . "\tHUBO UN ERROR AL CARGAR EL ARCHIVO" . $inFiles[$index] . "; EL SISTEMA DEVOLVIO " . $inQuerys[$index]["error"] . "\r\n"; } else { $msg .= date("H:i:s") . "\tEL ARCHIVO " . $inFiles[$index] . " SE PROCESO EXITOSAMENTE \r\n\t EL SISTEMA DEVUELVE " . $inQuerys[$index]["info"] . "\r\n"; } //unlink("$inPath-$inFiles[$index]"); } else { $msg .= date("H:i:s") . "\t SE EXCLUYE EL ARCHIVO " . $inFiles[$index] . " PORQUE NO EXISTE\r\n"; } //======================================================================================================================================== //Actualiza los Folios $mRec = setNuevoRecibo(DEFAULT_SOCIO, 1, $FechaCorte, 1, 10, "RECIBO_DE_MVTOS_HUERFANOS", "na", "ninguno", "na", DEFAULT_GRUPO, 0); $sqlAMvtosH = "UPDATE operaciones_mvtos SET cadena_heredada =\n\t\t\t\t\t\t\tTRIM(LEFT(CONCAT(cadena_heredada, ' ' ,'originado de ', recibo_afectado),195)) , recibo_afectado = {$mRec}\n\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t(SELECT COUNT(idoperaciones_recibos)\n\t\t\t\t\t\t\t\t\t\tFROM operaciones_recibos\n\t\t\t\t\t\t\t\t\t\t\tWHERE idoperaciones_recibos = operaciones_mvtos.recibo_afectado) = 0\n\t\t\t\t\t\t\t\tAND fecha_operacion >= '{$FechaCorte}' "; $rsMH = my_query($sqlAMvtosH); echo date("H:i:s") . "\tAgregando el Recibo de Movimientos Huerfanos NUM {$mRec}\r\n"; $msg .= setPurgeFromDuplicatedRecibos(); setFoliosAlMaximo(); //Si No Hay Operacion se estable a Upload Files @fwrite($URIFil, $msg); echo "<a href=\"../utils/download.php?type=txt&download={$aliasFils}&file={$aliasFils}\" target=\"_blank\" class='boton'>Descargar Archivo de EVENTOS</a>"; } else { ?> <form name="frmSendFiles" method="post" action="matriz.restore_backup.frm.php?a=s" enctype="multipart/form-data"> <fieldset> <legend><script> document.write(document.title); </script></legend> <table border='0' width='100%' > <tbody>
//Reestruturar ICA case 835: $fecha_corte = $id; $xCred = new cUtileriasParaCreditos(); $msg .= $xCred->setReestructurarICA($fecha_corte); break; case 837: //Parchea las parcialidades para Obtener el IVA $useKey = md5("NO_RETURN"); $fecha_inicial = $id; $fecha_inicial = date("Y-m", strtotime($fecha_inicial)) . "-01"; //$fecha_final = $id2; $fecha_final = date("Y-m", strtotime($fecha_inicial)) . "-" . date("t", strtotime($fecha_inicial)); $sql = "SELECT\n `creditos_solicitud`.`numero_solicitud`,\n `creditos_tipoconvenio`.`iva_incluido`,\n `creditos_tipoconvenio`.`tasa_iva`,\n `operaciones_mvtos`.*\n FROM\n `operaciones_mvtos` `operaciones_mvtos`\n INNER JOIN `creditos_solicitud` `creditos_solicitud`\n ON `operaciones_mvtos`.`docto_afectado` = `creditos_solicitud`.\n `numero_solicitud`\n INNER JOIN `creditos_tipoconvenio` `creditos_tipoconvenio`\n ON `creditos_solicitud`.`tipo_convenio` = `creditos_tipoconvenio`.\n `idcreditos_tipoconvenio`\n WHERE\n (`operaciones_mvtos`.`tipo_operacion` =411) AND\n (`creditos_solicitud`.`saldo_actual` >0.99)\n AND\n (`operaciones_mvtos`.`docto_neutralizador` =1)\n AND\n (`operaciones_mvtos`.`fecha_operacion` >='{$fecha_inicial}')\n AND\n (`operaciones_mvtos`.`fecha_operacion` <='{$fecha_final}')\n /* AND\n (`operaciones_mvtos`.`detalles` NOT LIKE '%{$useKey}') */\n "; //echo $sql; $recibo = setNuevoRecibo(1, 1, fechasys(), 0, 10, "AJUSTE_DE_IVA", "NA", "ninguno", "NA", 99, 0); $txt = "GENERADO_POR_CALCULO_AUTOMATICO AL " . date("Y-m-d H"); $rs = mysql_query($sql, cnnGeneral()); if (!$rs) { saveError(2, $_SESSION["SN_b80bb7740288fda1f201890375a60c8f"], "Depurar :" . mysql_error() . "|Numero: " . mysql_errno() . "|Instruccion SQL:" . $sql); } else { while ($rw = mysql_fetch_array($rs)) { //obtiene el Numero de Solicitud $solicitud = $rw["docto_afectado"]; $socio = $rw["socio_afectado"]; $fecha = $rw["fecha_afectacion"]; $parcialidad = $rw["periodo_socio"]; $iva = 0; $monto = $rw["afectacion_real"]; $tasa_iva = $rw["tasa_iva"]; $operacion = $rw["idoperaciones_mvtos"];
function setReestructurarICA($fecha_corte) { $periodo_de_calculo = date("m", strtotime($fecha_corte)); $ejercicio = date("Y", strtotime($fecha_corte)); $fecha_operacion = $fecha_corte; $tipo_operacion = 451; $msg .= "============== REESTRUCTURAR EL ICA \r\n"; /** * llevar a cero los Intereses */ $sqlUICA = "UPDATE creditos_solicitud SET sdo_int_ant=0"; my_query($sqlUICA); /** * Eliminar el ica */ $sqlDEL = "DELETE FROM operaciones_mvtos WHERE tipo_operacion = 451 AND periodo_mensual<={$periodo_de_calculo} AND periodo_anual <= {$ejercicio}"; $myq = my_query($sqlDEL); /** * Agregar el Recibo * */ $NRecibo = setNuevoRecibo(1, 1, $fecha_operacion, 1, 10, "CALCULO_GENERADO_EN_UTIL_835", "NA", "ninguno", "NA", 99, 0); $sqlConICA = "SELECT\n\t\t\t\t\t\t`creditos_solicitud`.*,\n\t\t\t\t\t\t`creditos_tipoconvenio`.*\n\t\t\t\t\tFROM\n\t\t\t\t\t\t`creditos_solicitud` `creditos_solicitud`\n\t\t\t\t\t\t\tINNER JOIN `creditos_tipoconvenio`\n\t\t\t\t\t\t\t`creditos_tipoconvenio`\n\t\t\t\t\t\t\tON `creditos_solicitud`.`tipo_convenio` =\n\t\t\t\t\t\t\t`creditos_tipoconvenio`.`idcreditos_tipoconvenio`\n\t\t\t\t\tWHERE\n\t\t\t\t\t\t(`creditos_tipoconvenio`.`porcentaje_ica` >0) AND\n\t\t\t\t\t\t(`creditos_solicitud`.`saldo_actual` >0.99) AND\n\n\t\t\t\t\t\t(`creditos_solicitud`.`estatus_actual` !=50) AND\n\t\t\t\t\t\t(`creditos_solicitud`.`estatus_actual` !=98) AND\n\t\t\t\t\t\t(`creditos_solicitud`.`estatus_actual` !=99)\n\n\t\t\t\t\t\t/*AND\n\t\t\t\t\t\t(`creditos_solicitud`.`fecha_vencimiento` >=\n\t\t\t\t\t\t'{$fecha_operacion}')*/\n\t\t\t\t\t\tAND\n\t\t\t\t\t\t(`creditos_solicitud`.`fecha_ministracion` <='{$fecha_operacion}')\n\t\t\t\t\tORDER BY\n\t\t\t\t\t\t`creditos_solicitud`.`fecha_ministracion`\n\t\t\t\t\t"; //echo $sqlConICA; $rs = mysql_query($sqlConICA, cnnGeneral()); while ($rw = mysql_fetch_array($rs)) { $socio = $rw["numero_socio"]; $solicitud = $rw["numero_solicitud"]; $monto_ministrado = $rw["monto_autorizado"]; $tasa_interes = $rw["tasa_interes"]; $dias_autorizados = $rw["dias_autorizados"]; $porcentaje_ica = $rw["porcentaje_ica"]; $fecha_ult_mvto = $rw["fecha_ultimo_mvto"]; $fecha_ministracion = $rw["fecha_ministracion"]; $dias_autorizados = $rw["dias_autorizados"]; $saldo_historico = $monto_ministrado; $iva_incluido = $rw["iva_incluido"]; $tasa_iva = $rw["tasa_iva"]; $factor_interes = 1; if ($iva_incluido == "1") { $factor_interes = 1 / (1 + $tasa_iva); } $dias_transcurridos = restarfechas($fecha_corte, $fecha_ministracion); $ica = $dias_autorizados * $monto_ministrado * ($tasa_interes * $factor_interes) / EACP_DIAS_INTERES * $porcentaje_ica; $interes_generado = $dias_transcurridos * $monto_ministrado * ($tasa_interes * $factor_interes) / EACP_DIAS_INTERES; $ica_a_amortizar = $interes_generado; if ($ica_a_amortizar > $ica) { $ica_a_amortizar = $ica; } //purgar posibles errores if ($interes_generado < 0) { $interes_generado = 0; } //lleva a cero el Ica a Amortizar si ya se amort if ($ica_a_amortizar > 0) { $xn = setNuevoMvto($socio, $solicitud, $NRecibo, $fecha_operacion, $ica_a_amortizar, $tipo_operacion, 1, "REESTRUCTURACION AUTOMATICA HECHA POR {$iduser}"); } else { $ica_a_amortizar = 0; } if ($interes_generado < $ica) { $ica = $ica - $interes_generado; if ($ica < 0) { $ica = 0; } $UICA_sql = "UPDATE creditos_solicitud SET sdo_int_ant = {$ica}\n\t\t\t\t\t\tWHERE numero_solicitud={$solicitud} AND numero_socio={$socio}"; my_query($UICA_sql); } $msg .= date("Y-m-d") . "\t{$socio}\t{$solicitud}\tMonto: {$saldo_historico}, Tasa: {$tasa_interes}, Factor: {$factor_interes}, Tasa ICA {$porcentaje_ica}\r\n"; $msg .= date("Y-m-d") . "\t{$socio}\t{$solicitud}\tI.C.A. {$ica}, Int. Generado: {$interes_generado}, Dias Trans.: {$dias_transcurridos}/{$dias_autorizados}, ICA A AMort: {$ica_a_amortizar}\r\n"; } return $msg; }