[[TOC(Specs,SpecsModLiq,SpecsFórmulasCanon)]] = Fórmulas de cálculo de Canon = El cálculo de las fórmulas de [wiki:Canon_Superficiario canon] para cada anualidad se hace de forma diferente dependiendo principalmente de: * La ley que ampare el título * La etapa del título Asímismo, cada ley hace uso de otras variables que ayudan al cálculo, como: * Salario Mínimo Diario Legal Vigente (smdlv) * Anualidad * Área (Hectáreas) Así que para hacer una formulación efectiva para cada etapa, es necesario contar con fórmulas que puedan ser procesadas y ejecutadas de forma automática. Estas fórmulas deben contar con una cadena de condiciones que determinen el valor del canon para cada una de estas condiciones. == Conceptos == === Algoritmo === Para ilustrar esto de una forma más clara, podemos ver el cálculo para las leyes 685 y 1382, en [wiki:Etapa etapa] de '''exploración''': ==== Ley 685 ==== * Si el área no supera las 2000 hectáreas * El valor del canon es 1 smdlv por el área * Si el área es mayor a las 2000 hectáreas e inferior a las 5000 * El valor del canon es 2 smdlv por el área * Si el área es mayor a las 5000 hectáreas e inferior a las 10000 * El valor del canon es 3 smdlv por el área ==== Ley 1382 ==== * Si la anualidad actual es inferior a 5 años * El valor del canon es 1 smdlv por el área * Si la anualidad actual está entre 6 y 7 años * El valor del canon es 1.25 smdlv por el área * Si la anualidad actual es igual o superior a 8 años * El valor del canon es 1.5 smdlv por el área Se pueden ver diferentes variables y constantes en estos cálculos. === Lenguaje === Desmenuzando este cálculo en diferentes elementos, podemos ver lo siguiente: 1. Ley 685 ||= Elemento =||= Evaluación =||= Variable =||= Operador =||= Constante =||= Operador =||= Constante =|| ||= Condición =|| SI || AREA || ENTRE || 0 || Y || 2000 || ||= Elemento =||= Evaluación =||= Constante =||= Operador =||= Variable =||= Operador =||= Variable =|| ||= Expresión =|| ENTONCES || 1 || * || SMDLV || * || AREA || ||= Elemento =||= Evaluación =||= Variable =||= Operador =||= Constante =||= Operador =||= Constante =|| ||= Condición =|| SI || AREA || ENTRE || 2001 || Y || 5000 || ||= Elemento =||= Evaluación =||= Constante =||= Operador =||= Variable =||= Operador =||= Variable =|| ||= Expresión =|| ENTONCES || 2 || * || SMDLV || * || AREA || ||= Elemento =||= Evaluación =||= Variable =||= Operador =||= Constante =||= Operador =||= Constante =|| ||= Condición =|| SI || AREA || ENTRE || 5001 || Y || 10000 || ||= Elemento =||= Evaluación =||= Constante =||= Operador =||= Variable =||= Operador =||= Variable =|| ||= Expresión =|| ENTONCES || 3 || * || SMDLV || * || AREA || 2. Ley 1382 ||= Elemento =||= Evaluación =||= Variable =||= Operador =||= Constante =||= Operador =||= Constante =|| ||= Condición =|| SI || ANUALIDAD || ENTRE || 1 || Y || 5 || ||= Elemento =||= Evaluación =||= Constante =||= Operador =||= Variable =||= Operador =||= Variable =|| ||= Expresión =|| ENTONCES || 1 || * || SMDLV || * || AREA || ||= Elemento =||= Evaluación =||= Variable =||= Operador =||= Constante =||= Operador =||= Constante =|| ||= Condición =|| SI || ANUALIDAD || ENTRE || 6 || Y || 7 || ||= Elemento =||= Evaluación =||= Constante =||= Operador =||= Variable =||= Operador =||= Variable =|| ||= Expresión =|| ENTONCES || 1.25 || * || SMDLV || * || AREA || ||= Elemento =||= Evaluación =||= Variable =||= Operador =||= Constante =||= Operador =||= Constante =|| ||= Condición =|| SI || ANUALIDAD || MAYOR || 8 || || || ||= Elemento =||= Evaluación =||= Constante =||= Operador =||= Variable =||= Operador =||= Variable =|| ||= Expresión =|| ENTONCES || 1.5 || * || SMDLV || * || AREA || Podemos ver entonces que hay un ''léxico'' específico que involucra identificar... * Evaluación * Variable * Constante * Operador ...Para cada ''Elemento'', y que cada ''Elemento'' se comporta de forma diferente, es decir, tiene una ''semántica'' inherente. == Problemática == El problema a solucionar es el siguiente: * El usuario debe poder manejar las fórmulas de cálculo de canon desde el [wiki:mod_liq módulo de liquidaciones] * Las fórmulas se utilizan en el momento generación de las liquidaciones automáticas Elementos a tener en cuenta: * Las fórmulas hacen uso de Valores ''Actuales'' * Como el ''área'' del título * Como la ''anualidad'' del título, la cual depende de la ''etapa'' del título * Como el ''salario mínimo'' Así que, cada uno de estos valores tiene inherente igualmente una forma de acceso, es decir, no se accede a ellos de forma directa, tiene que existir una búsqueda.