如何更改AX信息消息的级别

Pau*_*els 9 x++ axapta

在Dynamics AX 2009中,我试图确定信息消息的缩进级别.我想要的是类似的东西:

Prefix
    Info1
    Info2
Prefix2
    Info3
Run Code Online (Sandbox Code Playgroud)

我找到了这个:

http://www.doens.be/2010/05/the-ax-infolog/

但是不想使用循环,所以我认为这样的东西可能会起作用:

setprefix("Prefix");    

{
    info("Info1");
    info("Info2");
}

setprefix("Prefix2");

{
    info("Info3");
}
Run Code Online (Sandbox Code Playgroud)

但事实并非如此.有没有办法在x ++中执行此操作,以及有关缩进级别当前处于活动状态的规则是什么?

10p*_*10p 15

setPrefix在AX中设置(添加)当前执行范围的前缀,并且在离开范围时,前缀会自动重置为上一级别.您可以使用getPrefix检查当前执行前缀.

2个黑客可以帮助您收到预期的结果:

#1

static void TestJob(Args _args)
{
    void sub1()
    {
        setprefix("Prefix");
        info("Info1");
        info("Info2");
    }

    void sub2()
    {
        setprefix("Prefix2");
        info("Info3");
    }
    ;

    setPrefix("Main");
    sub1();
    sub2();
}
Run Code Online (Sandbox Code Playgroud)

#2

static void TestJob(Args _args)
{
    setPrefix("Main");
    info("Prefix\tInfo1");
    info("Prefix\tInfo2");
    info("Prefix2\tInfo3");
}
Run Code Online (Sandbox Code Playgroud)

  • WOW Job#2需要更多关注.我没有意识到选项卡实际上会以某种方式强制下一个前缀级别.好帖子 (4认同)