在我的x ++代码中,我有以下内容
void run() {
try
{
startLengthyOperation();
this.readFile();
}
catch (Exception::Deadlock)
{
retry;
}
catch (Exception::Error)
{
error(strfmt("An error occured while trying to read the file %1", filename));
}
catch
{
error("An unkown error has occured");
}
endLengthyOperation();
}
Run Code Online (Sandbox Code Playgroud)
我正在进行最后一次捕获(之前,我没有得到关于异常的消息).但我想知道什么是真正发生并导致异常.我怎样才能找出异常是什么?
如何使用X ++在Microsoft Dynamics AX 2009中获取PDF文件的创建日期?
如何在按钮单击中打开该PDF文件?
我有一个显示字段的方法,它执行以下操作;
return InventSum::find(_salesLine.ItemId, InventDim::_salesLine.InventDimId).AvailPhysical();
Run Code Online (Sandbox Code Playgroud)
这为线路站点/仓库/位置提供了现有的可用物理.
我需要查看网站/仓库的可用总数.我想我需要通过Item/Warehouse搜索inventDim来获取我的inventdimid,但我找不到方法所以我怀疑这是不正确的.
有人可以帮忙吗?
我在AOT中创建了一个名为"MyMacro"的宏对象.我把它放在:
#localmacro.myStrFmt
'Here is some text before (' + %1 + ') and some after'
#endmacro
Run Code Online (Sandbox Code Playgroud)
在我的课程中,如果我在run方法或类dec中本地定义它,它会起作用,但如果我使用#MyMacro则不行.是否有不同的语法或东西?
void run()
{
// #MyMacro
str retVal;
#localmacro.myStrFmt
'Here is some text before (' + %1 + ') and some after'
#endmacro
;
retVal = #myStrFmt("Text in parenthesis");
info (retVal);
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试创建自己的自定义深入分析功能,其中URL dynamics://0?myfunction_123456将启动我自己的代码.
在C\SysStartupCmd\construct,这个基本代码:
case 'viewalert':
sysStartupCmd = new SysStartUpCmdViewAlert(s,parm);
break;
case 'drilldown':
sysStartupCmd = new SysStartUpCmdDrillDown(s,parm);
break;
case 'viewalertrule':
sysStartupCmd = new SysStartUpCmdViewAlertRule(s,parm);
break;
Run Code Online (Sandbox Code Playgroud)
我已经测试了,所有这些都被这些网址解雇了:
但是,如果我添加自己的案例,让所有其他代码保持不变,我就无法获取要触发的URL:
case 'myFunction':
sysStartupCmd = new SysStartUpCmdDrillDown(s,parm);
break;
Run Code Online (Sandbox Code Playgroud)
我在整个系统中进行了挖掘,并且无法弄清楚是什么导致dynamics://URL只针对这三种情况触发.有注册表项还是什么?我发现C\EventDrillDownPoller哪个似乎创建了一个PipeServer来处理传入的内容?
我觉得我可能会失去理智......但是如果你在AOT搜索任何带有双冒号"::"的东西,它就会完全失败.我正试图通过Forms\SysAotFind来解决这个问题,但我不想把我的轮子旋转成一堆可能只在我系统上的东西.
要在AX 2009中重现,请选择Classes\SalesTableType,按Ctrl + F并将"CustLedgerAccounts :: sumAccount"放入包含的文本框中,然后单击"立即查找".您可以看到它显然位于Classes\SalesTableType\accountCust方法中.我已经尝试在没有运气的对象中搜索基本枚举.
有没有办法在记录创建过程中(Ctrl+N)自动在网格末尾而不是在中间创建线条?
我知道这只是视觉上造成的,但它仍然造成了一些混乱。
这是我到目前为止在数据源上所做的,但它工作不正常:
public void create(boolean _append = false)
{
this.setPosition(MyTable.RowCount());
super(_append);
}
Run Code Online (Sandbox Code Playgroud) 这似乎是一个简单的问题,但出于某种原因,我很烦恼.
我有3个数据源形式- ,InventTable,.InventSumInventDim
所以,例如,我的网格显示;
项目,名称,网站,仓库,实物库存
我已经在InventDim表单DataSource 上放置了一个显示方法,但我需要访问ItemId来自inventTrans或者InventSum.(显然正在寻找"当前"项目ID).
我可以访问的是inventDim作为参数传递的_inventDim标准.
访问"当前"itemId的最佳方法是什么?
我必须changeCompany()在现有类中添加一个控件.
我想下面的代码是可以的,但我有一个疑问:"返回"命令是否意味着回归原始公司?还是要添加一个我不知道的声明,类似的声明revertToPreviousCompany()?
try
{
changeCompany(companyId)
{
// the method will produce a message and return false if an error
if (!this.doSomeChecks()) {
return;
}
// much more code below
Run Code Online (Sandbox Code Playgroud)