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("<p class='aviso'>" . $xCred->getMessages(OUT_HTML) . "</p>"); } //$xHFrm->addHElem( $txt ); //$xHFrm->addHElem( $xF->show(true) ); //$xHFrm->addHElem( "<p class='aviso'>La $miFecha, Dias del Mes==". $xF->getDiasDelMes() ."</p>"); //$xAML->getSimilaresPorNombre("jose leonides", "cocom"); //$xAML->getSimilaresPorNombre("alberto", "chi"); $miFecha = "2014-03-01"; //$xAML->getSimilaresPorNombre(); //$acum = $xAML->getOAcumuladoDeOperaciones("2013-12-30", $miFecha, SYS_TODAS); $xAML->setVerificarPerfilTransaccional($miFecha); //$acum6 = $xAML->get //$xHFrm->addHElem( "<p class='aviso'> Las operaciones Acumulados son de " . $acum->getNumero() . " </p>"); //$xHFrm->addHElem( "<p class='aviso'> El Monto Acumulado es de " . $acum->getMonto() . " </p>"); //$xHFrm->addHElem( "<p class='aviso'>" . $acum->getSQL() ."</p>"); $xHFrm->addHElem("<p class='aviso'>PAGOS EN EFECTIVO: " . $x2AML->getPagosEnEfectivoNac(SYS_MONTO) . "</p>"); $xHFrm->addHElem("<p class='aviso'>NUMERO DE PAGOS EN EFECTIVO " . $x2AML->getPagosEnEfectivoNac(SYS_NUMERO) . "</p>"); $xAML->getEsPersonaVigilada(); $xHFrm->addHElem("<p class='aviso'>" . $x2AML->getMessages(OUT_HTML) . "</p>"); $xHFrm->addHElem("<p class='aviso'>" . $xAML->getMessages(OUT_HTML) . "</p>"); $xRPT = new cReportes_Layout(); $xRPT->setTipo($xRPT->OPERACIONES_INUSUALES); //var_dump( $xRPT->read() ); $datos = $xRPT->read(); //var_dump($datos["contenido"]); echo $xHFrm->get(); echo $xP->setBodyEnd(); echo $xP->end(); //===================================================================================================== ?>