当前位置:主页 > 域名解析 > 正文

云服务器_网站建设的企业_便宜的

时间:2021-07-22 07:41 来源:埃里克云 编辑:埃里克云

核心提示

内部表 ABAP的内部表是动态数据对象,允许处理具有相同结构的大量数据,从而负责动态内存管理。所以他们善于存储数据库表数据,这使得他们无处不在。复杂的数据结构通常被映射...

内部表

ABAP的内部表是动态数据对象,允许处理具有相同结构的大量数据,从而负责动态内存管理。所以他们善于存储数据库表数据,这使得他们无处不在。复杂的数据结构通常被映射到内部表,以避免额外的努力来实现一个特殊的数据结构,而这种结构无论如何可能会有很差的性能。

但我在这里看到一个问题:高效的算法通常使用一个专用的数据结构来帮助用简单但正确的语言描述设计概念。没有其他选择,沟通和设计讨论都会受到影响。用一个理解良好的数据结构表达问题将有助于减少编程的智力挑战。

考虑到这一点,我的目标是展示不依赖内部表的ABAP解决方案。给定一个需要解决的问题,游戏将超越明显的内部表结构,如果需要的话,回到基础,并找到一个有效的设计,值得付出额外的努力。

我把这种努力称为NoITAB,不仅仅是内部表,在NoSQL中,这不仅仅是SQL。

堆栈

堆栈是一种抽象数据类型,提供对后进先出集合的访问,使用两种操作PUSH()和POP()。

您将使用堆栈(或递归)填充树状数据结构,如ABAP树视图控件。在ABAP中,更喜欢自定义堆栈,因为递归隐式使用的调用堆栈比堆更有限。一点也不。在include LMEVIEWSF01:

PUSH()操作被转换为APPEND,在内部表的末尾添加一个视图。POP()操作读取内部表中的最后一个条目,然后从表中删除该条目。

如果您觉得像我一样,POP()实现并没有在内部表操作方面自然地表达其意图。这可能会吸引你去寻找一条新的路径和DIY——一个使用链表的NoITAB堆栈实现,我们只在顶部插入和删除:

它容易使用吗?

作为宏的通用实现使其灵活轻量级。宏中的参数&2定义堆栈中元素的类型。有了这个,我可以创建任何类型的堆栈,即字符串堆栈:

这个比例是多少?

无论堆栈中元素的数量如何,PUSH()和POP()操作的实现都有固定的成本,即理论上可能的最佳行为。我能想到的唯一问题是垃圾收集器,它会在意外的时间启动以回收释放的内存,这可能会影响性能。

我经常使用这个堆栈,从不费心测量性能。如果您这样做,请在这里报告。

展望

内部表没有问题,但在某些情况下,我们知道更好的数据结构,以便收集数据。最简单的例子是堆栈,其中链表实现是高效且易于使用的。

与内部表相比,当我们只在列表的开头或结尾插入/删除时,自定义链表是高效的。一个定制的动态数组如果大小是固定的,那么它是有效的,所以我们可以使用ASSIGN with INCREMENT and RANGE命令(或者过时的DO variang/WHILE VARY命令)进行随机访问。

尝试概括一下,我们可以提供功能接口来更抽象的数据类型。我喜欢使用一个内部表基迭代器对象来处理ALV网格的选定条目。这里的好处不是性能,而是抽象(不仅仅是ITAB)。我已经为优先级队列提出了相同的方法。

所以我想听听您的NoITAB解决方案。

保持编码的乐趣

  • <strong>云存储_佛山顺德网站建设_超低折扣</strong> 云存储_佛山顺德网站建设_超低折扣

    您是否有过这样的问题:是否可以将事务FBL5N(客户行项目显示)移植到Webdynpro?不?你真幸运!重建FBL5N不是我最喜欢做的5件事,所以当我得到这个问题时,我很不愿意开始。幸运的...

  • <strong>云主机_获取服务器地址_促销</strong> 云主机_获取服务器地址_促销

    到目前为止,我们已经创建了两个应用程序。一个用于维护员工特定的奖金计划,另一个用于授予员工奖金。到目前为止,奖金仅取决于已完成销售订单的净额。 任务:在自定义业务...

  • <strong>天翼云_免费虚拟主机管理系统_免费6个月</strong> 天翼云_免费虚拟主机管理系统_免费6个月

    任务:在标准业务对象上创建自定义字段。 示例:要计算与产品相关的奖金,标准业务对象"产品"将获得奖金百分比的自定义字段 要能够打开并调整"管理产品主数据"应用程序的UI您的...

  • <strong>阿里云_美橙互联云主机_怎么样</strong> 阿里云_美橙互联云主机_怎么样

    任务:在标准业务对象上创建自定义字段。 示例:要计算与产品相关的奖金,标准业务对象"产品"将获得奖金有效期的自定义字段。 要适应"管理产品主数据"应用程序的UI,您的用户需...

  • <strong>香港服务器_数据库上机实验_速度快</strong> 香港服务器_数据库上机实验_速度快

    到目前为止,我们已经创建了两个应用程序。一个是维护员工特定的奖金计划,另一个是为员工发放奖金。到目前为止,奖金权利仅取决于已完成销售订单的净额,但在奖金计划中,...

  • <strong>域名备案_数据库文本类型_新注册优惠</strong> 域名备案_数据库文本类型_新注册优惠

    各位开发人员好, 这里我要写一个关于sapui5的有趣话题。根据状态更改sap.m.表的整行颜色。通常我们在状态字段中保留一个文本,并根据状态更改文本的颜色。但是,现在客户问这个...

  • <strong>专属服务器_数据库显示正在还原_企业级</strong> 专属服务器_数据库显示正在还原_企业级

    多年来,SAP客户一直有机会要求对SAP功能进行更改,并就所提供的软件解决方案提出改进建议。 以前我们有开发要求,如今,这已被客户的影响力所取代项目该项目的主要目的是收集...

  • <strong>CDN_合肥建设网站_新用户</strong> CDN_合肥建设网站_新用户

    我写这个博客是为了展示一个场景,向 添加一个自定义标题sap.ui.unified.Shell控件。 统一的Shell控件不直接提供标题财产。还有外壳被分成几个区域,比如左边的菜单按钮,搜索栏位于...

  • <strong>香港服务器_中国近代报刊数据库_安全稳</strong> 香港服务器_中国近代报刊数据库_安全稳

    大家好, 我正在使用企业门户7.5版。 在使用自定义splash映像时,我在使用显示规则中配置的AJAX框架页面登录门户时遇到了splash映像的外观问题。 在我的情况下,Splash图像垂直向下显...