Cristina Nicolàs
Superadministrador
Cristina Nicolàs

Hola,

Hay cosas que antes podíamos hacer que ahora no se pueden hacer.

 

1. Necesito añadir una nueva opción en un campo estándar de tipo Option en Business Central. ¿No esta soportado esta característica? ¿Cómo haceis en estos casos?

No es posible extender campos de tipo Option. A partir de Business Central versión de Octubre de 2018 (BC13), Microsoft ha puesto en marcha un nuevo tipo de datos llamado Enum, que está pensado para ser extendido y para que en algún momento reemplace por completo los Option. Pero lo cierto es que a día de hoy, en el estándar aún no encontramos ningún Option cambiado por un Enum, de modo que ahora mismo no podemos extender estos campos a menos que toquemos C/SIDE.

Lo explico en estas lecciones:
Creación e utilización de Enums
Extender un Enum
Extender un Option

2. ¿No se puede modificar la propiedad TableRelation de un campo del estándar? ¿Creais nuevo campo para ponerle el TableRelation personalizado?

A partir de Business Central versión de Abril de 2019 (BC14) es posible extender un TableRelation. En versiones anteriores no era posible.

Pero solo se puede extender, no modificar. La verdad es que la extensión de TableRelations sirve para muy muy pocos casos.

Para realmente tener que modificar un TableRelation… la verdad es que tenemos ahora mismo un caso que tenemos que solventar y aun no lo hemos hecho, aun estamos debatiendo internamente sobre como queremos hacerlo.
La opción A es evaluar el cambio y decidir que realmente no es necesario.
La opción B es la que tu comentas: esconder el campo del estándar, crear un campo nuevo propio con la relación que queramos, y mantenerlos sincronizados.

Esta segundo opción es tediosa y puede requerir demasiado desarrollo.
Es por eso que evaluamos cada caso y si es 100% necesario lo hacemos, pero la verdad es que estamos trabajando en una migración de C/SIDE a Extensiones, y el 90% de los TableRelations modificados que nos hemos encontrado, los hemos evaluado y hemos decidido que era mejor eliminar el cambio antes que hacer inventos.
Hay un 10% en el que si que tendremos que hacer los inventos, pero nos estamos resistiendo a ello a ver si Microsoft nos proporciona una opción mejor en algún futuro cumulative o versión.

3. ¿Se puede cambiar la propiedad local a global de una función estándar en una tabla por extensiones para poderla visualizar desde una pageextension?

No puedes hacer eso desde la extensión.
Si lo puedes hacer si estás en un entorno on-premise y lo vas a cambiar a C/SIDE.
Pero entonces tendrás una parte del desarrollo en C/SIDE y otra parte en Extensiones, no estarás trabajando 100% en extensiones.

Para este caso hay que hacer algunos pasos adicionales que explico en los vídeos:
Entornos mixtos C/Side y Visual Studio Code
Entornos mixtos C/Side y Visual Studio Code – Generación automática de símbolos

Un saludo,
Cristina Nicolàs

#10958