function jsaAmortizarLetras($persona, $credito, $letra, $amortizable)
{
    $NLetra = $letra + 1;
    $xCred = new cCredito($credito);
    $xCred->init();
    if ($xCred->isAFinalDePlazo() == false) {
        $xPlan = new cPlanDePagos();
        $xPlan->initByCredito($credito);
        $msg = "";
        $DPlan = $xPlan->getLetrasInArray(OPERACION_CLAVE_PLAN_CAPITAL, $NLetra);
        $amortizable = setNoMenorQueCero($amortizable);
        for ($ixletra = $NLetra; $ixletra <= $xCred->getPagosAutorizados(); $ixletra++) {
            if (isset($DPlan[$ixletra])) {
                $monto = setNoMenorQueCero($DPlan[$ixletra]);
                if ($amortizable > 0) {
                    if ($amortizable >= $monto) {
                        //cancelar
                        $xPlan->setNeutralizarParcialidad($ixletra);
                    } else {
                        $xPlan->setActualizarParcialidad($ixletra, $monto - $amortizable, false, false);
                    }
                }
                $msg .= "WARN\t  {$ixletra} --- {$amortizable} {$monto};\r\n";
                $amortizable -= $monto;
            }
        }
        $msg .= $xPlan->getMessages();
        if (MODO_DEBUG == true) {
            setLog($msg);
        }
    }
}