Lo primero es identificar el campo que queremos que sea lookup y sobreescribir el método lookup con las siguientes líneas:
public void lookup()
{
super();
TablaEjemploDimensiones::lookupCentroCosto(this);
}
Donde lookupCentroCosto es el método que vamos a crear en la tabla donde se va a guardar el valor que el usuario seleccione.
public client static void lookupCentroCosto(FormStringControl _ctrl)
{
DimensionAttribute dimensionAttribute;
DimensionAttributeDirCategory dimAttributeDirCategory;
SysTableLookup sysTableLookup;
Query query = new Query();
// Nombre de la dimensión de la que se van a mostrar los valores
dimensionAttribute = DimensionAttribute::findByName( "CentroDeCosto");
if (dimensionAttribute.Type == DimensionAttributeType::CustomList)
{
select firstonly DirCategory from dimAttributeDirCategory where dimAttributeDirCategory.DimensionAttribute == dimensionAttribute.RecId;
sysTableLookup = SysTableLookup::newParameters( tableNum(DimensionFinancialTag), _ctrl);
// En el lookup se va a presentar el valor y la descripción
sysTableLookup.addLookupfield( fieldNum(DimensionFinancialTag, Value));
sysTableLookup.addLookupfield( fieldNum(DimensionFinancialTag, Description));
query = new Query();
query.addDataSource( tableNum(DimensionFinancialTag)).
addRange( fieldNum(DimensionFinancialTag, FinancialTagCategory)).
value(queryValue(dimAttributeDirCategory.DirCategory));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
}
Post relacionados:
Lookup para dimensiones financieras de organización
Consultas en tablas con ValidTimeState
Crear lookup en clase dialog
Y por cierto, acuerdate de darle click a algún anuncio si el post te sirvio 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.
Yered buenas, consulta, una ves que los árticulos poseen transacciones, y se desea activar el sitio de las dimensiones, es posible subir los árticulos posterior a activar el sitio en un ambiente limpio?, gracias por su ayuda
ResponderBorrar