jueves, 10 de diciembre de 2009

Excel para crear el fichero del modelo 115 de la AEAT

Bueno continuando con los 2 últimos post sobre el modelo 115 de la AEAT, ahora voy a colgar el Excel con macros incluidas que permitirá obtener el fichero para la presentación telemática a partir del 2010 ya con el tipo de retención del 19% y que se encuentra en este link.

Excel es una herramienta poderosa para el análisis financiero y desde luego se podría llevar la gestión de una Pyme en Excel (incluso montar un “micro-SAP”, pero cuando dimensión del proyecto se hace tan grande es mejor mirar otras alternativas como Visual Studio, por ejemplo. Cuando usas VBA en Excel tienes que programar “muy a la defensiva”, considerando que todo lo que entra un usuario es erróneo hasta que no se demuestre lo contrario y eso es complicado por no disponer de muchos controles como los de validación que ahorran muchas líneas de código. A parte está la molesta “pantalla de bienvenida” informándote sobre la seguridad de las macros y el hecho de no arrastrar bien una fórmula o tener celdas vinculadas a otros libros que puede tener consecuencias desastrosas para los resultados.
Bueno vamos a por la chicha.
Continuando con la empresa MANOLOSA vamos a generar el modelo 115 del 4T del 2009. He explicado la contabilización y repito el asiento contable de la contabilidad de MANOLOSA:

Con el Excel y si no salta ningún error se generaría el fichero que se presentaría a través de la oficina virtual de la AEAT.


Lógicamente todo esto es falso, esa empresa no existe y yo no voy a presentar este modelo con mi certificado de usuario, ya que en Hacienda es posible que no se lo tomen muy bien. Pero si leemos el fichero vemos que no hay ningún problema.

Lógicamente una vez presentado el modelo 115 deberemos declarar lo mismo en el 180 (tenemos hasta finales de enero). No serviría de nada decir en el 115 que durante el año hemos tenido un único perceptor y luego en el 180 declarar 2 perceptores, o errores de no coincidir la suma de las bases imponibles y retenciones declaradas en los 115 con lo que se declara en el 180.

El modelo 115 es bastante irrisorio pero quizás el 303 pueda ser de utilidad para más gente. De hecho sólo hay que seguir el código y atender a que en el modelo 303 pueden haber importes en negativos y el signo – se ha se substituir por una N.
Ejemplo: -300,30 será N0000000030000
Bueno continúo un poco más. Existe la posibilidad de obtener una copia en papel usando los módulos de impresión que se pueden descargar de este link. Lógicamente si hubiera creado un proyecto en VB.NET, hubiera puesto el contenido de los módulos de impresión en la carpeta bin del proyecto para que se copiasen en el lugar de instalación y con la clase Process llamaría a la aplicación MIPF32 pasándole el argumento que necesita.
Por ahora, y de forma "más manual", si tenemos el fichero del M115 y vamos a Inicio --> Ejecutar y entonces escribimos cmd aparecerá:

Antes he descomprimido el contenido de los módulos de impresión en C:\ y se ha creado una carpeta llamada REDISTRIBUIR. Pues bien escribo cd\ para ir a C:\
Después cd REDISTRIBUIR para ir a la carpeta REDISTRIBUIR y entonces MIPF32 /E:”C:\REDISTRIBUIR\00000000T.TXT y por la impresora por defecto os aparecerá la copia en papel (en este caso lo imprimo en pdf a través del CutePDF Writer).

Para la confección del Excel he adaptado el código de validación de una c.c. disponible aquí, y así el Excel es más real y me consigo que me rechace los códigos de cuenta no válidos"

En próximos post, voy a volver al mundo .NET y lo primero de lo que voy a hablar es sobre LINQ donde enseñaré como crear una tabla maestro-detalle usando LINQ.