Si nosotros solo agregamos la tabla EcoResProduct relacionada a InventTable y EcoResProductTranslation que es la tabla que contiene los nombres de productos relacionada a EcoResProduct en nuestro formulario, el campo de nombre de producto que agreguemos al formulario aparecerá vacío, esto se debe a que esta tabla necesita el idioma para la relación y para saber en qué idioma debe mostrar el nombre de producto.
Lo que se necesita hacer es:
Tener las relaciones en las tablas EcoResProduct (a InventTable) y en EcoResProductTranslation (a EcoResProduct).
Después modificar la clase que tiene el comportamiento del formulario, en este caso es InventDimCtrl_Frm_OnHand y en el método modifyQuery agregar nuestro datasource como parámetro, en este caso nuestra tabla EcoresProductTranslation que es la tabla que necesita la relación y crear una variable de tipo QueryBuildDataSource que nos va a servir para realizar el filtro para mandar el idioma a la tabla EcoResProductTranslation.
Al final de este método es donde realizamos el filtro a nuestra tabla pasandole el lenguaje de la compañia.
if(_ecoResProductTranslation)
{
qbsInventLookup = query.dataSourceName(_ecoResProductTranslation.name());
qbr = SysQuery::findOrCreateRange(qbsInventLookup, fieldnum(EcoResProductTranslation, LanguageId));
qbr.value(queryValue(CompanyInfo::languageId()));
qbsInventLookup.addGroupByField( fieldNum(EcoResProductTranslation,Name));
}
Modificamos la llamada a este método, que es dentro del formulario, en el datasource de InventSum, en el método executeQuery
Finalmente arrastramos el campo Name de la tabla EcoResProductTranslation a nuestro grid y abrimos el formulario. Con esto ya podemos hacer búsquedas por nombre de producto.
Post relacionados:
Reportes SQL Reporting services (SSRS) en Microsoft Dynamics Ax 2012
Multiselect de grid en Ax 2012
Crear lookup en clase dialog
Y por cierto, acuérdate de darle click a algún anuncio si el post te sirvió de algo.
No olvides que te puedes unir a la página en Facebook Aprendiendo Dynamics Ax donde únicamente se tratan temas de desarrollo y se busca crear una comunidad de desarrollador@s de Ax en nuestro idioma.
Podrias publicar el .xpo del resultado de ese formulario o poder generar una copia con distinto nombre, no he logrado conseguir ese resultado.
ResponderBorrarExcelente lo hice y me funciono perfecto.
ResponderBorrar