前言
归纳总结是个好习惯,我们都值得拥有.
每一个业务的开发需求,都是一次归纳的契机.
根据业务特定的需求分析,是否可以概括出一个通用需求?
特定业务需求是否完全包含在这个通用需求中呢?
是否可以根据这个通用需求概括出一个通用处理模型?
该模型是否可以解决这一类的业务需求?
怎么用特定的语言(ABAP)开发这个模型?
怎么给业务最大的自由度去使用这个配置使用这个模型?
如果你是一个业务人员,带着这些问题去和你的开发沟通.(你毛病呀,半天就可以写完的程序,你想整一周?)
如果你是一个开发人员,带着这些问题去和需求提出者沟通(你找事呀,按我的需求做就完事了,要不你来写功能说明书?)
或者,你也会碰到志同道合的. 嗯,这个提议不错, 咱们一起来完善一下这个设计.
尝试更多的去理解业务,去归纳业务,用开发的思想去重建功能设计.
1.码表的概念
由编码字段,描述字段构成的<表>(当然也可以有语言字段,根据登录语言显示不同语言的描述). (这里的<表>是一个抽象的表的概念). 用于处理所有需要通过字段获取对应的编码,描述的场景.
那么问题来了,像库位这种编码,需要地点+库位 才能获取准确的描述, 这种能算做码表么?系统怎么处理?
答: 这种特殊字段是通过特殊逻辑处理的,或者自行关联T001L表 ,好在这种特例很少.
2.码表的使用
码表可以使用在所有需要获取编码描述的场景中
自定义报表
-
报表生成器生成的报表
无峰,公众号:ABAP开发技巧SAP开发框架系列之 报表生成器
搜索帮助
-
界面输入检查
无峰,公众号:ABAP开发技巧SAP开发框架系列之 自定义单据
-
数据导入检查
无峰,公众号:ABAP开发技巧SAP开发框架系列之 数据导入
-
动态报表
无峰,公众号:ABAP开发技巧动态报表-添加编码描述(码表)
其它使用场景.
3.码表的维护
通过配置表 ZTMD006R 集中维护码表
字段说明(括号部分是示例):
表名: 可以设置一个码表的不同使用场景,一般留空,表示所有场景
字段名(码表类型): 码表字段名(VKORG)
语言: 设定特定的语言 ( ZH)
短文本: 码表的描述(销售组织)
字段码来源: 编码字段的来源方式: 10 来自表 20 来自域 40 来自函数 (10)
参考表 : 编码描述所在的表(TVKOT) 来源10时
编码字段名 :比如 (VKORG)
语言码字段: 用于识别语言的字段(SPRAS)
描述字段 : 用于获取编码描述的字段名( VTEXT )
域: 来源20时维护
附加SQL条件: 给出特殊的限制条件.
获取码表的函数: 来源40时使用
EXCEL输出标记: 标记后,EXCEL输出时,不设置该字段的码表及值限制
4.码表的快速维护
程序ZBC_ZTMD006R_PREPARE 可以按照限制条件,自动补充码表配置表内容
5.码表的访问方式
提供了以下的函数,用于访问码表内容
Z_BC_GET_DDCODE_VALUE: 获取一个字段的所有编码,描述
Z_BC_GET_DDCODE_VALUE_ONE: 获取一个字段指定编码的描述
Z_BC_REPORT_GET_FIELD_TEXT: 自动补充内表中的存在码表的字段编码的描述.
...
总结
码表的概念在多个项目中应用.通过封装的一系列的函数或类方法,针对码表的应用场景执行获取描述,检查输入等操作. 极大的简化了这些和编码/描述相关的操作.同时通过码表整合这一类的接口,简化和外围系统关于编码/描述信息的传输.
SAP开发框架系列是我对开篇前言中问题的解答,这个系列提供的是一种思维方式,有些涉及到的代码/工具,会在后续文章中陆续发布.
如果你对这篇文章感兴趣,请帮忙转发分享, 并且勾选微信 <看一看>.文章右上角的按钮点击后,点击<在看>(或者文章末尾的右下角<在看>),即可.
(如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利. 毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.)
扫码加入 公众号互动群,及时沟通.
扫码关注公众号,获取更多好用的SAP应用程序
公众号 : syjf1976_abap
ABAP开发技巧
微信号 : 392077