- cDigitControl=Mod(110-(
- TextToNum(Middle(mantisa;2;1))+
- TextToNum(Middle(mantisa;4;1))+
- TextToNum(Middle(mantisa;6;1))+
- Int(TextToNum(Middle(mantisa;1;1))*11/5)+
- Int(TextToNum(Middle(mantisa;3;1))*11/5)+
- Int(TextToNum(Middle(mantisa;5;1))*11/5)+
- Int(TextToNum(Middle(mantisa;7;1))*11/5)
- ); 10)
Donde el campo "mantisa" es de tipo texto, y contiene solamente el siguiente
trozo del CIF "PPNNNNN" (es decir eliminando la letra inicial, posibles
puntos, guiones de separación u otros caracteres no numéricos).
Si a alguien le sorprende el 110 inicial dentro de la fórmula Mod (módulo:
resto de la división entera), es debido a que FileMaker ha implementado una
función mod curiosa, que devuelve un valor negativo si el argumento es
negativo. Para asegurarme que el resultado es siempre positivo, he sumado al
argumento ese 110.






