Hoy me he dado cuenta que CREO que hay un error grave en la function oficial_tieneIvaDocCliente y lo mismo ocurre con la de oficial_tieneIvaDocProveedor.
Resulta que solo pregunta por el Régimen de IVA "Exento", cuando debe también preguntar por "U.E." y "Exportaciones", ya que ninguno tienen iva realmente. De hecho en la aclaración inicial de la function, lo pone, pero no lo hace...
Este es el código:
/** \C Establece si un documento de cliente debe tener IVA. No lo tendrá si el cliente seleccionado está exento o es UE, o la serie seleccionada sea sin IVA
@param codSerie: Serie del documento
@param codCliente: Código del cliente
@return Devuelve 3 posibles valores:
0: Si no debe tener ni IVA ni recargo de equivalencia,
1: Si debe tener IVA pero no recargo de equivalencia,
2: Si debe tener IVA y recargo de equivalencia
\end */
function oficial_tieneIvaDocCliente(codSerie:String, codCliente:String, codEjercicio:String):Number
{
var util:FLUtil = new FLUtil;
var conIva:Boolean = true;
if (util.sqlSelect("series", "siniva", "codserie = '" + codSerie + "'"))
return 0;
else {
var regIva:String = util.sqlSelect("clientes", "regimeniva", "codcliente = '" + codCliente + "'");
if (regIva == "Exento")
return 0;
else
if (!util.sqlSelect("clientes", "recargo", "codcliente = '" + codCliente + "'"))
return 1;
}
return 2;
}
Y CREO que debe poner en esa línea:
if (regIva == "Exento" || regIva == "U.E." || regIva == "Exportaciones")
En la otra function de proveedores, CREO que ocurre exactamente lo mismo.
Por si lo queréis arreglar en GitHub y en los módulos de Eneboo Standard. Yo al menos el que tengo está mal también.
Por favor, decidme si estoy equivocado o no... Si está mal es un fallo importante.
Saludos.