function setVerificarPerfilTransaccional($fecha = false, $generar_avisos = false) { $xQL = new cSQLListas(); $mq = new MQL(); $xPerf = new cAMLPersonas_PerfilTransaccional($this->mClaveDePersona); $xF = new cFecha(); $fecha = $fecha == false ? fechasys() : $fecha; $fechaI6M = $xF->setRestarMeses(6, $fecha); //6 Meses $periodoI6M = date("Ym", $xF->getInt($fechaI6M)); //6 Meses $periodo_inicial = date("Ym", $xF->getInt($fecha)); $periodo_final = date("Ym", $xF->getInt($fecha)); $persona = $this->getCodigoDePersona(); $sql = $xQL->getAMLAcumuladoDeEgresos($periodo_inicial, $periodo_final, $persona); $datos = $mq->getDataRecord($sql); //checar datos si no existen en la consulta acumulada if (!isset($datos[SYS_MONTO]) or setNoMenorQueCero($datos[SYS_MONTO]) <= 0) { $sql = $xQL->getAMLAcumuladoDeEgresos_RT($periodo_inicial, $periodo_final, $persona); $datos = $mq->getDataRecord($sql); } $suma_efectivo = 0; $mes_activo = 0; $excedido = false; //setLog($sql); foreach ($datos as $row) { $tipo = strtolower($row[SYS_TIPO]); $moneda = strtoupper($row["moneda"]); $monto = $row[SYS_MONTO]; $numero = $row[SYS_NUMERO]; $mes = $row["periodo"]; $recibo = $row["recibo"]; $xDPerfil = $xPerf->concepto($tipo); $xMonto = new cCantidad($monto); $monto = $xMonto->v(); $pmonto = $xDPerfil->v(); //Monto permitido $montoDiff = $xMonto->diff($pmonto); $pnumero = $xDPerfil->getNumero(); if ($moneda != $xDPerfil->getClaveDeMoneda()) { $this->mMessages .= "ERROR\t{$tipo}|{$moneda}\tNo tiene Perfil para operar con la Moneda {$moneda} \r\n"; $excedido = true; } if ($monto > $pmonto) { $this->mMessages .= "ERROR\t{$tipo}|{$moneda}\tMonto excedido ({$montoDiff}) por de {$pmonto} tuvo operaciones por {$monto}\r\n"; $excedido = true; } else { $this->mMessages .= "OK\t{$tipo}|{$moneda}\tMonto Normal de {$pmonto} hizo operaciones por {$monto}\r\n"; } if ($numero > $pnumero) { $this->mMessages .= "ERROR\t{$tipo}|{$moneda}\tNumero excedido de {$pnumero} tuvo operaciones por {$numero}\r\n"; $excedido = true; } else { $this->mMessages .= "OK\t{$tipo}|{$moneda}\tNumero normal de {$pnumero} hizo operaciones por {$numero}\r\n"; } $mes_activo = $mes; if ($tipo == TESORERIA_COBRO_EFECTIVO) { $suma_efectivo = $monto; } } if (MODO_DEBUG == true) { $this->mMessages .= $xPerf->getMessages(OUT_TXT); } //$this->mMessages .= "OK\t \r\n"; //$efectivo = TESORERIA_COBRO_EFECTIVO . "-" . AML_CLAVE_MONEDA_LOCAL; //efectivo nacional //verificar pagos mayores a 500 USD //verificar pagos if ($excedido == true) { if ($this->mForceAvisos == true or $generar_avisos == true) { $xAml = new cAML(); $xAml->setForceAlerts(); $res = $xAml->sendAlerts($persona, AML_OFICIAL_DE_CUMPLIMIENTO, AML_DEBITOS_MAYORES_AL_PERFIL, $this->mMessages, $recibo, $fecha, false, 0, iDE_RECIBO); if ($res == false) { $this->mMessages .= "ERROR\tError al enviar alertas\r\n"; } $this->mMessages .= $xAml->getMessages(); } else { $this->mMessages .= "WARN\tNo se enviaron alertas\r\n"; } } return $excedido; }
//$xHFrm->addHElem( $txt ); $xHFrm->addHElem($xF->show(true)); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Inicio se semana==" . $xF->getFechaDeInicioDeSemana() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Inicio se nombre semana==" . $xF->getDayName($xF->getFechaDeInicioDeSemana()) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Dias del Mes==" . $xF->getDiasDelMes() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, En Fecha Corta==" . $xF->getFechaCorta() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha Larga==" . $xF->getFechaLarga() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, En Fecha Mediana==" . $xF->getFechaMediana() . "</p>"); //$xHFrm->addHElem( ); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha Operativa Maxima==" . $xF->getFechaMaximaOperativa() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, El Mes Anterior==" . $xF->getFechaMesAnterior() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, dos meses atras==" . $xF->getFechaMesAnterior(false, 2) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha} - 30 Dias==" . $xF->setRestarDias(30) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha} + 30 Dias==" . $xF->setSumarDias(30) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha} + 2 meses==" . $xF->setSumarMeses(2) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha} - 2 meses==" . $xF->setRestarMeses(2) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Nombre del Dia==" . $xF->getDayName() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Dia Inicial del mes==" . $xF->getDiaInicial() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Obtener Dia Habil==" . $xF->getDiaHabil() . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Dias desde el 31Dic2013==" . $xF->setRestarFechas($xF->get(), "2013-12-31") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Buscar Sabado(D6) para el dia de hoy==" . $xF->getDiaAbonoSemanal(6) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Buscar NOMBRE Sabado(D6) para el dia de hoy==" . $xF->getDayName($xF->getDiaAbonoSemanal(6)) . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-02") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-11") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-18") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-20") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-24") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-29") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Fecha de Pago Decenal 1==" . $xF->getDiaAbonoDecenal(10, 20, 30, "2014-03-31") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Obtener dias Loborales en el mes==" . $xF->getDiasHabilesEnRango("2014-03-31", "2014-03-01") . "</p>"); $xHFrm->addHElem("<p class='aviso'>La {$miFecha}, Obtener entero del mes==" . $xF->getInt(fechasys()) . "</p>");
$xAml->setVerificarDocumentosVencidos($fechaop); $messages .= $xAml->getMessages(OUT_TXT); /*$xAml = new cAML(); $xAml->setForceAlerts(true); $xAml->sendAlerts(getUsuarioActual(), $PersonaDeDestino, $TipoDeAlerta);*/ //envio de informes //TODO: Agregar envio de informes //checar perfil transaccional mensual } //verificar operaciones de 6 meses excedidas de maximo permitido $sql2 = "SELECT\n\t`operaciones_recibos`.`fecha_operacion` AS `fecha`,\n\t`operaciones_recibos`.`numero_socio` AS `persona`,\n\tCOUNT(`operaciones_recibos`.`idoperaciones_recibos`) AS `operaciones`,\n\tSUM(`operaciones_recibos`.`total_operacion`) AS `monto`\n\tFROM\n\t`operaciones_recibos` `operaciones_recibos`\n\tWHERE\n\t(`operaciones_recibos`.`fecha_operacion` = '{$fechaop}')\n\tGROUP BY\n\t`operaciones_recibos`.`numero_socio`"; $rs1 = $mql->getDataRecord($sql2); foreach ($rs1 as $rw1) { $xAml = new cAMLPersonas($rw1["persona"]); $xF = new cFecha(); $fecha_inicial = $xF->setRestarMeses(6, $fechaop); $obj = $xAml->getOAcumuladoDeOperaciones($fecha_inicial, $fechaop); } //Relaciones Recursivas //$xUtils = new cAMLUtils(); $xCML = new cAML(); } else { $messages .= "=========================\tNO ACTIVADO\t====================\r\n"; } $xLog->setWrite($messages); $xLog->setClose(); if (ENVIAR_MAIL_LOGS == true) { $xLog->setSendToMail("TR.Eventos del Cierre de Riesgos"); } if ($parser != false) { header("Location: ./cierre_de_sistema.frm.php?s=true&k=" . $key . "&f={$fechaop}");