如何在VA22工具栏中创建一个按钮,该按钮将复制另一个报价中的项目?

2020-09-20 14:12发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


您好,SAP ABAPers,

我有一个使用应用程序工具栏中的新按钮来增强VA22交易的请求,该按钮必须引发一个弹出窗口,在该窗口中我将引入一个报价单编号,然后将所插入报价单中的物料复制到 显示的报价单号。

我已执行以下步骤:

  1. 从激活SAPMV45B将PF状态'U'复制到pf状态'ZZ1'到Z * prog中,然后添加我的按钮,然后再激活
  2. 进入程序SAPMV45A的屏幕4001的PAI模块,在例程CUA_SETZEN的末尾使用下面的代码创建一个隐式增强Z *,其中我使用上面创建的pf-status:

如果sy-tcode ='VA22'并且SY-DYNNR ='4001'。
设置程序'ZTSTGUI'的PF状态'ZZ1'。

endif。

3.在程序SAPMV45A的模块FCODE_BEARBEITEN中的屏幕4001的PBO模块中创建增强Z *,并在此处进行功能编码(引发弹出窗口,获取值并调用bapi BAPI_QUOTATION_GETDETAILBOS以获取插入的报价单并调用 bapi BAPI_CUSTOMERQUOTATION_CHANGE用于更新我的报价。


请您检查一下我的步骤并告诉我我在哪里错了? 为什么即使我已复制正确的pf状态,pf状态也不与旧的pf状态相同? (现在我有更多按钮了)即使输入值和表正确维护,为什么QUOTATION_CHANGE的BAPI返回错误V1-045-"插入文档编号"?

您能否就将项目从另一种报价复制到另一种报价的要求是否可行,并且不会影响SAP标准?

谢谢

安德里亚

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


您好,SAP ABAPers,

我有一个使用应用程序工具栏中的新按钮来增强VA22交易的请求,该按钮必须引发一个弹出窗口,在该窗口中我将引入一个报价单编号,然后将所插入报价单中的物料复制到 显示的报价单号。

我已执行以下步骤:

  1. 从激活SAPMV45B将PF状态'U'复制到pf状态'ZZ1'到Z * prog中,然后添加我的按钮,然后再激活
  2. 进入程序SAPMV45A的屏幕4001的PAI模块,在例程CUA_SETZEN的末尾使用下面的代码创建一个隐式增强Z *,其中我使用上面创建的pf-status:

如果sy-tcode ='VA22'并且SY-DYNNR ='4001'。
设置程序'ZTSTGUI'的PF状态'ZZ1'。

endif。

3.在程序SAPMV45A的模块FCODE_BEARBEITEN中的屏幕4001的PBO模块中创建增强Z *,并在此处进行功能编码(引发弹出窗口,获取值并调用bapi BAPI_QUOTATION_GETDETAILBOS以获取插入的报价单并调用 bapi BAPI_CUSTOMERQUOTATION_CHANGE用于更新我的报价。


请您检查一下我的步骤并告诉我我在哪里错了? 为什么即使我已复制正确的pf状态,pf状态也不与旧的pf状态相同? (现在我有更多按钮了)即使输入值和表正确维护,为什么QUOTATION_CHANGE的BAPI返回错误V1-045-"插入文档编号"?

您能否就将项目从另一种报价复制到另一种报价的要求是否可行,并且不会影响SAP标准?

谢谢

安德里亚

付费偷看设置
发送
4条回答
小熊yu生菜
1楼 · 2020-09-20 14:47.采纳回答
对于将项目从另一种报价复制到另一种报价的要求,您能否发表意见


答案是否可行-无关紧要。 我的问题是,为什么您没有考虑将多个报价汇总到一个标准功能的销售订单中? 不用说将数据从一种报价复制到另一种报价绝对不是最佳实践。 实际上,告诉我如果Quotation-1中的标头数据/项目数据与Quotation-2中的数据不同,系统应如何操作?

Violet凡
2楼-- · 2020-09-20 14:58

您好Lakshmipathi先生,

用户将知道如何使用此新功能,并将复制正确报价中的项目。 此外,"引用创建"选项在每个报价中仅工作一次,因此有理由说明为什么他们要求这种类似的要求,该要求必须工作很多次,才能将项目从报价复制到另一个。

谢谢

Andreea

暮风yp
3楼-- · 2020-09-20 14:45

嗨Andrea,

问题1:

"即使我复制了正确的pf状态,为什么pf状态与旧的pf状态也不相同?

在调用PF-STATUS语句时,请确保排除以下不必要的按钮。 检查标准的PF-STATUS代码并使用相同的内部表。

如果sy-tcode ='VA22'和SY-DYNNR ='4001'。

 设置程序" ZTSTGUI"的PF状态" ZZ1",但不包括EXTAB []。

 endif。

问题2:

"为什么QUOTATION_CHANGE的BAPI返回错误V1- 045-"插入文档编号" 

错误清楚地表明未插入文档编号。 放置断点并对其进行调试。

我不了解一件事,您是在VA22增强功能内编写代码,并使用BAPI更改根本不需要的报价。

致谢

Rajkumar Narasimman

bbpeas
4楼-- · 2020-09-20 14:46

嗨,Narasimman先生,

问题1确实帮助我获得了类似的pf状态。

关于问题2,我已经意识到最好的方法是创建一个Z程序,并在触发新的FCODE时将其​​提交到PBO屏幕中。 在我的Z程序中,我可以使用BAPI进行项目创建,然后调用事务VA22。

这里有一个类似的要求讨论,只是这个例子是从导入的文件中获取职位

https://archive.sap.com/discussions/thread/3366708?db = 5

非常感谢您,

安德里亚

一周热门 更多>