La nueva característica de tabla
Derivada y tabla Base que se implementó AX 2012 puede ocasionar en ciertos
casos problemas si no se entiende correctamente el concepto y su ventaja para utilizarlo.
Ejemplo:
CompanyInfo companyInfo;
Select forupdate organizationType from
companyInfo;
companyInfo. organizationType = “Financiero”;
companyInfo.doUpdate();
Error al actualizar Tabla derivada
Error: Seguimiento de pila
Causa: Al no seleccionar explícitamente un campo específico de
una tabla derivada que va ser posteriormente actualizado automáticamente por la
tabla Base se produce el siguiente error.
Detalle del problema: El problema se presenta
debido a que no se realiza la declaración explícita de un campo que está siendo
a actualizarse en un proceso de la tabla Base DirPatyTable. Debido a que
CompanyInfo es una tabla derivada de la tabla Base DirPartyTable, al momento de
realizar la selección de los campos a actualizar se debe tomar en cuenta cuales
son los campos que necesita la tabla Base o bien hacer una selección abierta de
todos los campos de la tabla Derivada.
Solución: Para solucionar el problema
podemos utilizar dos formas, tomando en cuenta cual es la que se adapta de
mejor manera a la solución del negocio.
CompanyInfo companyInfo;
Select
forupdate companyInfo;
companyInfo.
organizationType = “Financiero”;
companyInfo.doUpdate();
o bien
CompanyInfo companyInfo;
Select
forupdate organizationType, Name from companyInfo;
companyInfo.
organizationType = “Financiero”;
companyInfo.doUpdate();
No hay comentarios:
Publicar un comentario