点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家,
我是ABAP的新生。 我必须使用BAPI更改事务VA22(更改报价)的订单类型(VBAK-ZZAUART)。
VA22->输入引号,然后输入->转至表头(显示表头doc详细信息)->附加数据B->订单类型(VBAK-ZZAUART)。
现在我已经在网上搜索了,发现可能必须为此使用BAPI_CUSTOMERQUOTATION_CHANGE,但是我不知道如何使用BAPI。 谁能帮助我逐步执行该对象? 这将非常有帮助。
(14.2 kB)
请您澄清一下! 有人用事务VA22编辑了ZField后,是否需要在VBAK中更改ZField?
然后,您需要使用User-Exit或BAdI(绝对不是BAPI),它们被用作多带带的函数调用,以更新或插入主要来自外部系统或仅在内部使用的数据(更新时) 或插入当前与事务有关的对象(例如VA22)。
销售单据的用户退出表格(订单,报价等)可以在"包括MV45AFZZ"中找到。 例如,在用户进行更改后保存报价时,将执行SAVE表单。
Shankhadeep Das ,请继续处理您的公开问题。
您的代码遇到的具体问题是什么?
我问,因为您没有发布任何代码。
如果 不确定您需要传递哪些参数-您可以在事务BAPI的BAPI_CUSTOMERQUOTATION_CHANGE中找到详细的文档。
在您的情况下,最重要的部分似乎是EXTENSIONIN。 我建议您仔细阅读其文档。 VBAP有一个很好的示例,它与VBAK中自定义字段的先决条件非常相似。
请确保已正确扩展了BAPE_VBAK,BAPE_VBAKX,VBAKKOZ和VBAKKOZX,否则 即使您填充EXTENSIONIN,也将无法更新自定义字段。 您还可以参考SAP注释 143580-信息SD BAPI和客户增强概念。
如果您在Google中搜索EXTENSIONIN,您会发现很多关于该主题的主题,甚至是博客,但我仅使用注释中的信息,对于理解该概念来说已经足够了。
执行BAPI_CUSTOMERQUOTATION_CHANGE后,如果没有错误,则还必须执行BAPI_EXTENSION_COMMIT。 没什么真正复杂的,您可以通过创建这两个功能模块的测试序列来验证是否在SE37中正确传递了参数。
分步介绍-抱歉,但这是 不是学习事物的正确方法。 请尝试先编写代码,如果您确实遇到特定问题,请发布代码并执行故障排除。
在这里说这句话。 看起来像是用户退出/BADI的情况。 BAPI是更新现有文档,而不是在更改文档时分配值。
一周热门 更多>