|
15.05.2009, 09:06 | #1 |
Участник
|
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, напишите личное сообщение администратору. |
|
|
|