主页 > 专属服务器 > > 正文

网站空间_阿里云的用途_试用

来源:胜利云 发布时间:2021-07-13 19:10 标签:试用阿里云的网站空间用途
浏览:

在上一篇博文中,我写了关于标准函数模块包装器的方法。看到功能模块调用的麻烦

感谢您的参与,社区对这个问题有很多非常有用的意见。这使我对异常类有了更好的理解,现在我建立了一个方便的机制,将函数模块异常转换为适当的基于类的异常。希望这场富有成效的讨论能继续下去,我愿意与大家分享!

大多数功能模块在引发经典异常时会传递系统消息。例如,查看函数SX\u internetaddress\u TO\u NORMAL,它可以验证邮件地址:

其他人,如KNA1\u READ\u SINGLE,则不这样做:

因为我不想散播信息,所以我需要一种机制,将消息传输到异常类(如果存在)。如果没有,则应该用一个简单的TEXTID引发异常。

当FM将一条消息与一个引发的异常一起设置时,我在exception类中包含If\u T100\u message接口,并为功能模块中可能引发的每条消息创建一个TEXTID:

正如您肯定猜到的,textid的名称是消息id和消息编号的串联。对于每个textid,我分配适当的消息:

首先要创建参数属性

现在,怎样做淘客,包装器中的编码可以如下所示:

textid的名称是使用系统消息字段动态创建的。然后,为它创建一个字段符号,并引发异常,给出消息的可变部分。它起作用了。但是…..

我真的想在每个包装器中剪切/复制这个编码块吗?当然不是。所以接下来的步骤是:

这将包装器中的编码减少到一行:

在这种情况下,错误由功能模块的异常id标识。我为exception类覆盖的每个函数模块的每个异常创建一个textid。看起来是这样的:

文本id名称就是功能模块的名称,后跟sy subrc。文本是根据FM的异常设置的。

我跳过包装器编码的静态版本,直接转到动态版本!这是我的raiser方法(如上所述,静态公共方法):

不幸的是,这里有三个输入参数,sapfm、exception类类型和subrc。在包装器中,编码是:

FM名称可能太长,您可以在文本id名称处添加带下划线的subrc。在这种情况下,只需将iv_module参数缩短一点(也可以使用您的文本id名称来执行此操作!)。

我刚开始研究这个。可能有些事情,我只是没有想到。我期待着讨论!

嗨,Jörg,

谢谢分享您的想法。

我担心您实现的异常类zcx\u Ca03\u bp没有太大意义:

如果您确切知道抛出的消息是什么(例如XS007),您可以将这些消息分配给异常ID,但不应该将它们本身用作异常ID(名称)。异常ID应该是可读的(例如"CUSTOMER\u NOT\u EXIST")。

如果您的消息是动态的,您应该使用动态消息接口:

对于NW 7.5版或更高版本,您可以使用新的ABAP语法:RAISE exception TYPE x message ABAP News For release 7.50-将消息转换为异常。

对于旧版本,你必须手动执行。

你好,谢,

是的,我明白。。。为了对

做出反应,我可以创建一个textid"error\u group\u address"并将消息XS138分配给它。你是说这个吗?raiser方法然后获取一个具有要使用的文本id的参数。在这种情况下,功能模块抛出的异常不会丢失。

但是,当我想用同一个异常类覆盖多个功能模块时,我遇到了麻烦。几个FM可能有名称相同的异常。我怎样才能分辨这些?文本id name中没有足够的空间来包含FM name和exception id…

此外,我松开了raiser类的流线型单参数调用。

仍然反映了一种很好的方法…

好吧,

恐怕没有一个神奇的解决方案。

如果你想保留原来的异常"类型"(例如error\u group\u address),你必须为它们中的每一个创建一个单独的异常类,如果是动态消息,或者是一个单独的文本id,如果是静态消息。

同样,从纯OO的角度来看,我不认为是这样的异常类应该覆盖整个函数组。每个异常类都应该包含一个(逻辑)主题/主题,而不是附加到特定的FM/FUGR.

Shai,查看页面底部的最后几条评论,我和Jörg在那里交换了一些代码(我希望有直接链接到评论的方法)。。。有一种方法可以"神奇地"将旧式异常转换为基于类的异常处理。。。我想我们必须等SCN升级完成后,淘客是什么意思,他才会发布它。

嗨,Raghu,

我已经阅读了所有的评论。

你是对的,你的代码应该处理动态消息到异常的转换(就像我自己建议的那样)。

但是,它不处理不同消息到不同异常类的分配,这必须仍然是正确的可以手动完成。

也就是说,您当然可以对所有消息使用一个异常类,但如果您希望保留不同"经典"异常的逻辑意义/主题,则必须创建许多异常类。

发表评论
验证码: 点击我更换图片

注:网友评论仅供其表达个人看法,并不代表本站立场。

热门文章

  • 亚马逊云_海报cdn_优惠券
    <strong>亚马逊云_海报cdn_优惠券</strong>

    亚马逊云_海报cdn_优惠券

    消费者在哪里?这不是医疗保健领域的"捉迷藏"游戏,而是建立一个全面运转的医疗保健系统所需要的关键缺失要素。让消费者参与进来——作为一个消费...

  • 云解析_svn服务器安装_限时特惠
    <strong>云解析_svn服务器安装_限时特惠</strong>

    云解析_svn服务器安装_限时特惠

    集成/docker/梅索斯/marathonapachemesos是一个用于调度和管理分布式应用程序的开源集群管理器。Mesos几乎就像整个集群是一个单一的集群一样分配CPU和RAM等资源...

  • 云服务器_阿里云服务器账号_哪家好
    <strong>云服务器_阿里云服务器账号_哪家好</strong>

    云服务器_阿里云服务器账号_哪家好

    技术支持副总裁Aileen Wyer和高级系统管理员Maruf Rahman最近与我们坐下来讨论我们的合作伙伴关系如何帮助CAN Capital的遗留备份基础设施现代化,以简化数据管...

  • 消息队列_折枝by困倚危楼百度云_新注册优
    <strong>消息队列_折枝by困倚危楼百度云_新注册优</strong>

    消息队列_折枝by困倚危楼百度云_新注册优

    今天,两位前行业分析师(现在是Veeam高管)讨论了塑造数据保护行业和IT格局的趋势:Jason Buffington@JBuff,前ESG数据保护首席分析师Dave Russell@BackupDave,Ga...

  • 中间件_服务器能干什么_超低折扣
    <strong>中间件_服务器能干什么_超低折扣</strong>

    中间件_服务器能干什么_超低折扣

    Nathan Sielaff,World Vision的系统工程师,负责备份、存储等。他致力于创建一个灵活和敏捷的IT环境,这样组织就不必担心底层基础设施,可以将精力集中在任...

云储存

更多 >
  • <strong>云解析_徐州企业网站建设_多少钱</strong>
    云解析_徐州企业网站建设_多少钱

    最近,我帮助一位CRM Fiori客户在CRM Opportunity应用程序上实现了几个扩展字段(支持这些字段的CRUD操作)。 图1:WebUI中的扩展字段 图2:Fiori中的扩展字段 在...

  • <strong>美国服务器_阿里云购买域名流程_优惠券</strong>
    美国服务器_阿里云购买域名流程_优惠券

    在我从事设计、用户体验和用户界面方面的工作时,我经常会对SAP内外的这三个术语感到困惑。人们倾向于认为它们都是同一个意思。实际上,它们是难题...

云储存云服务器_百度云盘网_返现
云储存百度云_网站建设哪个最好_免费申请
云储存域名注册_数据库连接池的作用_免费
云储存香港带宽_关系数据库的数据结构是_最新
云储存网站建设_sql数据库正在恢复_速度快