El motivo de publicar este post es para dar conocimiento de que existen algunas cosas que no se pueden hacer en AL (al escribir Extensión) o al menos necesitan de algunas soluciones. Durante el transcurso de adaptaciones de desarrollos en CAL a extensiones, nos hemos encontrado que algo tan utilizado como es la gestión de archivos utilizando una variable de Tipo File no es posible al desarrollar extensiones 2.0 desde lenguaje AL.
En AL es posible declarar el archivo como variable y no se obtiene ningún error al hacerlo. El problema empieza cuando deseamos utilizarlo con cualquiera de los métodos disponibles. Podréis comprobar que no nos permite abrir, leer, crear, etc… En este caso, la opción alternativa será utilizar In/Out Streams.
Alternativa:
Existen mas cosas que no son posibles de realizar desde la propia extensión, por ejemplo:
- No podemos usar la mayor parte de las funciones de la codeunit FileManagement, la cual era bastante útil para realizar cualquier operación con archivos. Como por ejemplo, enumerar los archivos, verificar si existe un archivo, cargar o descargar archivos desde el servidor. La mayoría de las funciones no están disponibles para el desarrollo de extensiones.
- DotNet. Por el momento no es posible usar variables de DotNet en AL. Además, no podemos usar las funciones de DotNet en Web Client en 2018. Cuando intentamos usar DotNet, obtenemos un error como el siguiente:
- Automation. No se reconoce este tipo de variable tan utilizada que nos permite comunicar Navision con otras aplicaciones. Si declaramos una variable de tipo Automation recibimos el siguiente error:
- Llamada a objetos con rango 50000. Si ya hemos creado el objeto en el rango 50000 usando C/SIDE, no es posible acceder a él desde el lenguaje AL al desarrollar las extensiones.
Estas son una serie de limitaciones que por el momento nos encontramos al desarrollar extensiones, algunas Microsoft las soluciona con celeridad y en el siguiente Cumulative Update ya han dejado de ser una limitación, otras son mas difíciles de solventar y el resto hay que adaptarse a ellas.
Espero que os sea útil.
Para mas información no dude en ponerse en contacto con ABD Informática, S.L.
Saludos ?