Показать сообщение отдельно
Старый 15.05.2009, 09:06   #1  
Blog bot is offline
Blog bot
Участник
 
25,644 / 848 (80) +++++++
Регистрация: 28.10.2006
Solutions Monkey: Passing parameters from Managed code to X++ in dataset
Источник: http://blogs.msdn.com/solutions/arch...n-dataset.aspx
==============
In the user control code behing add an event handler to the CreatingDataSetRun event on the AxDataSource control

protectedvoid Page_Init(object sender, EventArgs e)
{
this.AxDataSource1.CreatingDataSetRun += newEventHandler(AxDataSource1_CreatingDataSetRun);
}

Set the param value to the event arugments void AxDataSource1_CreatingDataSetRun(object sender, CreatingDataSetRunEventArgs e)

{

e.DataSetRunArgs.parm = "4000";

}



In AOT override or add method in the data set and use element.args().parm() to received the paramter

public void executeQuery()
{

QueryBuildRange custRange;
;
custRange = SysQuery::findOrCreateRange(this.query().dataSourceNo(1), fieldnum(CustTable, AccountNum));
custRange.value(element.args().parm());
super();

}

You can also pass an Enum. For example

void AxDataSource1_CreatingDataSetRun(object sender, CreatingDataSetRunEventArgs e)
{
e.DataSetRunArgs.parmEnumType =
EnumMetadata.EnumNum(this.AxSession, "EPFormAction");
e.DataSetRunArgs.parmEnum(2);
}



public void init()
{
super();


if (element.args().parmEnumType() == enumnum(EPFormAction) && element.args().parmEnum() == EPFormAction::CreateMode)
{
//do somethign here


}
}



==============
Источник: http://blogs.msdn.com/solutions/arch...n-dataset.aspx
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору.