首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用分页从AX获取记录[AX 2009]

使用分页从AX获取记录[AX 2009]
EN

Stack Overflow用户
提问于 2013-02-04 10:59:37
回答 1查看 1.5K关注 0票数 1

我试着一次从AX那里得到一定数量的记录。我想做一些相当于:

代码语言:javascript
复制
SELECT * FROM (SELECT *, ROW_NUMBER() AS ROWNO
FROM TableName) 
    AS TableName WHERE ROWNO > startIndex 
AND ROWNO <= endIndex;

目前,我正在从AX (使用.net业务连接器)获取所有记录:

代码语言:javascript
复制
axRecord.ExecuteStmt("select * from %1");
i = 0;
while(axRecord.Found)
{
 if(i<startIndex)
 {
  i++;
  continue;
 }
 // Perform operations
 i++;
 if(i==endIndex)
 {
   break;
 }
}

是否有更好的方法仅使用业务连接器来完成此操作?请帮帮忙

EN

回答 1

Stack Overflow用户

发布于 2013-02-26 09:43:06

在X++的内部SQL语法中,有一些关键字(firstOnly, firstOnly10, firstOnly100, firstOnly1000)来限制获取多少行。它可以与RecId字段相结合,手动获取模拟分页的行组:

代码语言:javascript
复制
select firstonly10 inventTable // only fetch 10 rows
    index hint ItemIdx
    where inventTable.RecId > lastRecIdFetched // save last recId for each page
       && inventTable.itemId == itemId;

在MSDN上有select语句的完整语法引用:

http://msdn.microsoft.com/en-us/library/aa656402.aspx

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14685281

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档