Axapta 如何将视图传递给queryRun?

Axapta 如何将视图传递给queryRun?,axapta,dynamics-ax-2009,x++,rdp,dynamics-ax-2012,Axapta,Dynamics Ax 2009,X++,Rdp,Dynamics Ax 2012,我喜欢传递给“QueryRun”一个视图。如果我在visual studio中放置此行,则会出现错误: ProjPostTransView = queryRun.get(tablenum(ProjPostTransView)); 但如果我写这行,我没有任何错误: custTable = qeuryRun.get(tablenum(CustTable)); 最后一行不会生成错误,因为我感觉“table”到“queryrun”。现在我需要通过一个“视图”而不是表。那么,您想要获取的表或视图必须是

我喜欢传递给“QueryRun”一个视图。如果我在visual studio中放置此行,则会出现错误:

ProjPostTransView = queryRun.get(tablenum(ProjPostTransView));
但如果我写这行,我没有任何错误:

custTable = qeuryRun.get(tablenum(CustTable));

最后一行不会生成错误,因为我感觉“table”到“queryrun”。现在我需要通过一个“视图”而不是表。

那么,您想要
获取的表或视图必须是在“静态”查询中定义的表或视图之一:
queryRun.query()

在这里,期望queryRun
获取
而不是
custable
是不合理的

要查看SQL(包括来自
表的
),请使用:


嗯,您想要
获取的表或视图必须是在“静态”查询中定义的表或视图之一:
queryRun.query()

在这里,期望queryRun
获取
而不是
custable
是不合理的

要查看SQL(包括来自
表的
),请使用:


这个很好用,但不是我需要的

如果我使用table而不是view,我将以以下代码为例:


这个很好用,但不是我需要的

如果我使用table而不是view,我将以以下代码为例:


如果您试图从
ProjTransQuery
获取
ProjPostTransView
视图,则该操作无效
ProjPostTransView
不是该查询的数据源。它是一个依赖对象。这意味着视图引用了查询。而不是相反。(参考:)

如果您试图从
ProjTransQuery
获取
ProjPostTransView
视图,则该操作无效
ProjPostTransView
不是该查询的数据源。它是一个依赖对象。这意味着视图引用了查询。而不是相反。(参考:)

对于函数而言,错误类型不好!queryRun.get(x);=>x的类型必须是TableId(TableId是EDT),如果我放置tablenum(custtable),我肯定会返回一个表id。但是tablenum(custtableView)不会返回TableId将视图分配给
tablenum
函数会返回
int
。我认为@JanB.Kjeldsen是对的,问题可能是查询中不存在视图。我的查询只包含一个think,即视图。错误类型不适合函数!queryRun.get(x);=>x的类型必须是TableId(TableId是EDT),如果我放置tablenum(custtable),我肯定会返回一个表id。但是tablenum(custtableView)不会返回TableId将视图分配给
tablenum
函数会返回
int
。我认为@JanB.Kjeldsen是对的,问题可能是该视图在查询中不存在。我的查询只包含一个think,即viewstatic void QueryRun_视图(Args_Args){QueryRun QueryRun;QueryRun=new QueryRun(queryStr(ProjTransQuery));而(QueryRun.next()){info(strFmt(“%1”,queryRun.query().dataSourceNo(1));//.toString();//dateSourceNo(1.toString());}我尝试在JOP中执行此操作,但在执行过程中生成错误:错误的类型参数您现在可以复制/粘贴:dataSourceNo拼写错误dateSourceNo.是的,我看到了并更正了..您可以在pit Word commentstatic void QueryRun_视图(Args _Args)中看到我的作业代码{QueryRun QueryRun;QueryRun=new QueryRun(queryStr(ProjTransQuery));while(QueryRun.next()){info(strFmt(“%1”,QueryRun.query().dataSourceNo(1));//.toString());//dateSourceNo(1.toString());}我尝试在作业中执行,但在执行过程中生成错误:错误的类型参数您现在可以复制/粘贴:dataSourceNo拼写错误dateSourceNo.是的,我看到了,并更正了..您可以在pit文字注释中看到我的作业代码您不明白,请尝试再次缓慢阅读我的答案,或者阅读SShaheen的答案。您不明白,请重试要再次缓慢地阅读我的答案,或者阅读SShaheen的答案。OMG:(((ProjTransQuery由不同的其他视图的并集组成..在我的SssrReport中,我需要在这些视图中实现不同的方法!所以现在我必须创建一个由表而不是视图组成的其他查询..我不能做其他事情!!!:'(如果您能准确地告诉我们您试图从哪个查询中获取视图,这将非常有帮助。问题不是它是一个视图而不是一个表。OMG:((((ProjTransQuery由不同的其他视图的并集组成..在我的SSRSreport中,我需要在这些视图中实现不同的方法!所以现在我必须创建一个由表而不是视图组成的其他查询..我不能做其他的!!!:'(如果您能准确地告诉我们您正试图从哪个查询中获取视图,这将非常有帮助。问题不在于它是一个视图而不是一个表。
queryRun = new QueryRun(queryStr(CustTableQuery));
info(queryRun.query().dataSourceNo(1).toString());