繁体   English   中英

ABAP 域和数据类型理解

[英]ABAP Domain and Data Types Understanding

所以我的公司想让我学习 SAP 的 ABAP,我已经开始学习这个。 我的背景主要是 VB.net 和 sqlserver with T-SQL 但也有 c# 的经验。

使用 ABAP,虽然我需要对数据类型和域的理解进行一些澄清或确认。 如果有人可以帮忙。

我目前的理解是我们有一个表,在表中我们有字段,如果需要,字段有数据类型和长度。 示例:我们有一个表 Customer,我可以有一个数据类型为char(10)customerNumber字段。 对我来说,这意味着在表 customer 中我们有一个名为CustomerNumber的字段,它将有 10 个字符。

但是,对于 ABAP,我们有域、数据元素和字段,这是否意味着我们有一个可以随意命名的字段。 由于该字段可以表示任何内容,因此我们分配了一个数据元素,该元素具有存储在该字段中的数据类型的描述。 然而,为了存储格式和数据类型,我们需要将域分配给数据元素。

例如,我称一个字段ZCUSNO ,目前这没有任何意义,但是如果我分配ZCTNMR (带有客户编号描述)数据元素,这告诉我们字段ZCUSNOZCTNMR所以ZCUSNO是客户编号字段。

现在在数据元素中,我们将有一个域,对于我们的示例ZCTNMR数据元素(客户编号),我们可以将ZCTDOM指定为域,这将是我认为的数据类型,例如 Char 20、Char 100 或整数字段等。

我的理解是否正确? 谁能给我一个明确的指示,说明域> 数据元素与我所知道的 sqlserver 中的数据类型之间的区别。

谢谢

我不知道它是否 100% 正确,但这就是我使用的方式,就像你说的。

您可以重用域,如果您不打算重用,则可以直接使用数据元素并将其引用到内置类型。

  • 数据元素是定义字段的语义,如标签、翻译等
  • 是定义字段的技术信息,如类型、转换、预定义值等

例如

领域:

  • DOM_VALUE你定义了它的 10 个位置和 2个小数

数据元素:

  • UNIT_VAL您将其引用到DOM_VALUE并将标签定义为“单位值”
  • TOTAL_VAL您将其引用到DOM_VALUE并将标签定义为“总价值”

您的理解非常正确,这里不能添加太多。

您应该清楚地了解主要内容。

  1. 域存储技术数据(小数点、长度、类型、预定义值等)
  2. 数据元素存储语义数据(标签、文本、搜索帮助绑定等)

并非每个表字段都有数据元素(它们可以拥有内置类型),但每个字段都有类型(原始或包装在数据元素中)。

在此处输入图片说明

如果您想在屏幕 (Dynpros)、ALV 网格或其他报告中使用您的字段,那么创建将承载您的字段的业务意义的数据元素。

如果您仅将此字段用于计算或其他实用程序内部任务,请不要打扰自己。

  1. 像往常一样,表格日期字段(变量类型)使用使用域的数据元素。
  2. 当您在表中创建字段并使用预定义类型而不是数据元素时,您将来会遇到一些问题,当您需要查看 alv_grid 上的数据时。 实际上,在此之前您会发现您有一些问题(当您尝试制作维护视图时,标题将具有类似“+”符号的内容)。
  3. 当然,我们通常会尝试为 2 个或更多数据元素创建 1 个域。
  4. 在领域中,您谈论主要逻辑。 在数据元素中,我总是谈论字段标签设置(将来如何显示以及其他一些内容)

最后:实际上,好的做法,因为我认为为数据元素创建一个域,它可能在未来对您有所帮助。

我希望它能帮助你。 祝你好运!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM