AX 2009 , RunBase. DialogExample RunBase. , , MenuItem .
public class DialogExample extends RunBase
{
DialogField dialogName;
Name name;
#DEFINE.CurrentVersion(1)
#LOCALMACRO.CurrentList
name
#ENDMACRO
}
Object dialog()
{
Dialog dialog = super();
;
dialogName = dialog.addFieldValue(TypeId(Name), name);
return dialog;
}
boolean getFromDialog()
{
;
name = dialogName.value();
return true;
}
boolean validate(Object _calledFrom = null)
{
boolean isValid;
isValid = super(_calledFrom);
if (name != 'abc')
{
isValid = checkFailed('Name is not equal to abc') && isValid;
}
return isValid;
}
Name parmName()
{
;
return name;
}
public container pack()
{
return [#CurrentVersion,#CurrentList];
}
public boolean unpack(container _packedClass)
{
int version = conpeek(_packedClass, 1);
switch (version)
{
case #CurrentVersion:
[version,#CurrentList] = _packedClass;
break;
default :
return false;
}
return true;
}
public static void main(Args args)
{
DialogExample DialogExample;
;
dialogExample = new dialogExample();
if (dialogExample.prompt())
{
info(dialogExample.parmName());
}
}
, , , main, Ok. run , parm .