1、前台

报价是提供给客户交付货物或服务的一份文件,客户想要知道产品价格以及装运时间。

事务代码VA21

输入报价单类型和销售组织、分销渠道、产品组

输入售达方和行项目的物料信息,订购数量等信息

输入条件,金额

2、源代码

"--------------------@斌将军--------------------
DATA: lv_vbeln TYPE bapivbeln-vbeln, "询报价单
ls_head_in TYPE bapisdhd1, "抬头
ls_head_inx TYPE bapisdhd1x,
ls_logic_switch TYPE bapisdls, "执行新的定价标记
lt_item_in TYPE TABLE OF bapisditm WITH HEADER LINE, "行项目
lt_item_inx TYPE TABLE OF bapisditmx WITH HEADER LINE,
lt_partner_in TYPE TABLE OF bapiparnr WITH HEADER LINE, "合作伙伴
lt_schdl_in TYPE TABLE OF bapischdl WITH HEADER LINE, "计划行
lt_schdl_inx TYPE TABLE OF bapischdlx WITH HEADER LINE,
lt_cond_in TYPE TABLE OF bapicond WITH HEADER LINE, "定价
lt_cond_inx TYPE TABLE OF bapicondx WITH HEADER LINE,
lt_return TYPE TABLE OF bapiret2 WITH HEADER LINE. "返回消息 DATA:lv_check TYPE char1,
lv_message TYPE char200. "询报价单抬头
* ls_head_in-purch_no_c = '111'."客户参考PO
ls_head_in-purch_date = '20230508'."客户参考日期
ls_head_in-doc_type = 'Z000'. "销售订单类型
ls_head_in-sales_org = '1050'. "销售组织
ls_head_in-distr_chan = '00'."分销渠道
ls_head_in-division = '00'."产品组
ls_head_in-qt_valid_f = '20230508'."询报价单有效开始日期
ls_head_in-qt_valid_t = '20230531'."询报价单有效截止日期 ls_head_inx-updateflag = 'I'.
ls_head_inx-purch_no_c = 'X'."客户参考PO
ls_head_inx-purch_date = 'X'."客户参考日期
ls_head_inx-doc_type = 'X'. "销售订单类型
ls_head_inx-sales_org = 'X'. "销售组织
ls_head_inx-distr_chan = 'X'."分销渠道
ls_head_inx-division = 'X'."产品组
ls_head_inx-qt_valid_f = 'X'."询报价单有效开始日期
ls_head_inx-qt_valid_t = 'X'."询报价单有效截止日期 "合作伙伴 lt_partner_in-partn_role = 'AG'. "售达方
lt_partner_in-partn_numb = '0001003763'."售达方
APPEND lt_partner_in.
CLEAR:lt_partner_in. ls_logic_switch-pricing = 'G'."重新定价 lt_item_in-itm_number = '000010'."销售分销行项目
lt_item_in-material = '000000000000000999'.
lt_item_in-target_qty = '10'."数量
lt_item_in-target_qu = 'H'."单位
lt_item_in-plant = '1050'."订货工厂
* lt_item_in-tax_class1 = ."物料税分类 lt_item_inx-updateflag = 'I'.
lt_item_inx-itm_number = '000010'."销售分销行项目
lt_item_inx-material = 'X'."物料编码
lt_item_inx-target_qty = 'X'."数量
lt_item_inx-target_qu = 'X'."单位
lt_item_inx-plant = 'X'."订货工厂
* lt_item_inx-tax_class1 = 'X'."物料税分类
APPEND: lt_item_in,lt_item_inx.
CLEAR:lt_item_in,lt_item_inx. "计划行项目
lt_schdl_in-itm_number = '000010'."销售分销行项目
lt_schdl_in-req_qty = '10'."数量 lt_schdl_inx-updateflag = 'I'.
lt_schdl_inx-itm_number = 'X'.
lt_schdl_inx-req_qty = 'X'.
APPEND:lt_schdl_in,lt_schdl_inx.
CLEAR:lt_schdl_in,lt_schdl_inx.
"定价
lt_cond_in-itm_number = '000010'."销售分销行项目
lt_cond_in-cond_type = 'ZP00'. "条件类型
lt_cond_in-cond_value = 10. "定价值
lt_cond_in-currency = 'CNY'. "货币码
lt_cond_in-cond_unit = 'H'. "定价单位
* lt_cond_in-cond_p_unt = t_item-kpein. lt_cond_inx-updateflag = 'I'.
lt_cond_inx-itm_number = '000010'."销售分销行项目
lt_cond_inx-cond_type = 'ZP00'. "条件类型
lt_cond_inx-cond_value = 'X'. "定价值
lt_cond_inx-currency = 'X'. "货币码
lt_cond_inx-cond_unit = 'X'. "定价单位
* lt_cond_inx-cond_p_unt = 'X'.
APPEND:lt_cond_in,lt_cond_inx.
CLEAR:lt_cond_in,lt_cond_inx. CALL FUNCTION 'BAPI_QUOTATION_CREATEFROMDATA2'
EXPORTING
* SALESDOCUMENTIN =
quotation_header_in = ls_head_in
quotation_header_inx = ls_head_inx
logic_switch = ls_logic_switch
IMPORTING
salesdocument = lv_vbeln
TABLES
return = lt_return
quotation_items_in = lt_item_in
quotation_items_inx = lt_item_inx
quotation_partners = lt_partner_in
quotation_schedules_in = lt_schdl_in
quotation_schedules_inx = lt_schdl_inx
quotation_conditions_in = lt_cond_in
quotation_conditions_inx = lt_cond_inx. CLEAR:lv_check,lv_message.
LOOP AT lt_return WHERE type CA 'EAX'.
lv_message = lv_message && lt_return-message.
lv_check = 'E'.
ENDLOOP. IF lv_check = 'E'.
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'. ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
ENDIF.
"--------------------@斌将军--------------------

定期更文,欢迎关注

VA21 创建报价单的更多相关文章

  1. crm操作报价单实体

    using System;     using Microsoft.Xrm.Sdk;     using Microsoft.Crm.Sdk.Messages;     using Microsoft ...

  2. (转载整理)SAP ERP常用T-CODE

    其实最讨厌做ERP的项目了.不过,身不由己的嘛! 网上资料加一些整理. 与客户相关  VD01 建立客户 Create customerVD02 更改客户 Change customerVD03 显示 ...

  3. BAPI 使用

    BAPI_ACC_DOCUMENT_POST *---BAPI_ACC_DOCUMENT_POST 所需要的参数  DATA: OBJ_TYPE LIKE BAPIACHE09-OBJ_TYPE,   ...

  4. IDMC制造业ERP业务场景测试之一——硅钢片制造业务流程测试

    一.测试地址 硅钢片业务测试数据库地址为:http://www.bonawifi.com,测试数据库名字为SiliconSteelSheet,测试账号:用户名demo ,密码demo 二.业务说明 根 ...

  5. 7款开源ERP系统比较

    [网络转载] 现在有许多企业将ERP项目,在企 业中没有实施好,都归咎于软件产品不好.其实,这只是你们的借口.若想要将ERP软件真正与企业融合一体,首先得考虑企业的自身情况,再去选择适合的 ERP软件 ...

  6. [转载]7款开源ERP系统比较

    现在有许多企业将ERP项目,在企 业中没有实施好,都归咎于软件产品不好.其实,这只是你们的借口.若想要将ERP软件真正与企业融合一体,首先得考虑企业的自身情况,再去选择适合的 ERP软件. 如果你的企 ...

  7. Quote Helper

    using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; using Microsoft.Xrm.Sdk.Que ...

  8. MM/PP/SD/FICO 模块常用事物码(T-code)、SAP快捷键

    MM/PP/SD/FICO MM常用T-CODE MM01 创建一般物料 Create Material – GeneralMM02 修改一般物料 Change MaterialMM03 显示一般物料 ...

  9. 金庸和古龙,Netweaver和微服务,以及SAP Hybris Revenue Cloud

    这周Jerry在长沙客户现场待了几天,感谢易总和彩亮的款待.终于有机会和关注这个公众号的一些CRM顾问们进行线下互动,感觉很不错.得知公众号里某些文章帮助顾问们解决了一些工作中的实际问题,我很高兴.感 ...

  10. Odoo,快速上手Odoo,来了解Odoo几个标准模块

    odoo通过Apps和Connector扩展和集成数以万计的应用和服务,odoo目前有超过12500个Apps可选用.它囊括了项目管理,生产.财务.记账和销售管理,仓储管理,人力资源管理,等等项目.本 ...

随机推荐

  1. 文心一言 VS 讯飞星火 VS chatgpt (136)-- 算法导论11.3 2题

    二.用go语言,假设将一个长度为r的字符串散列到m 个槽中,并将其视为一个以 128 为基数的数,要求应用除法散列法.我们可以很容易地把数 m 表示为一个 32 位的机器字,但对长度为r的字符串,由于 ...

  2. 《流畅的Python》 读书笔记 第8章_对象引用、可变性和垃圾回收

    第8章_对象引用.可变性和垃圾回收 本章的主题是对象与对象名称之间的区别.名称不是对象,而是单独的东西 name = 'wuxianfeng' # name是对象名称 'wuxianfeng'是个st ...

  3. 旋转矩阵(leetcode4.7每日打卡)

    给你一幅由 N × N 矩阵表示的图像,其中每个像素的大小为 4 字节.请你设计一种算法,将图像旋转 90 度. 不占用额外内存空间能否做到?   示例 1: 给定 matrix = [  [1,2, ...

  4. 2021-09 .NET 5.0.10 Update for x64 Client (KB5006192) 安装失败,错误代码:0x80070643

    上周五日常检查系统更新(强迫症晚期) 出现一项更新:2021-09 .NET 5.0.10 Update for x64 Client (KB5006192) details: https://www ...

  5. Linux机器在命令行操作时开启/关闭代理

    命令行操作时,如果需要连接通过代理才能访问的地址,可以通过配置当前shell的配置文件来手动开启/关闭代理 注意:代理只对当前用户当前shell生效,切换用户或者重新连接需要重新开启代理 修改当前用户 ...

  6. 关于fstream对象的open方法报错183的问题

    当使用fstream,ifstream,ofstream,这几种对象打开文件, 但文件已经存在的时候, 调用GetLastError()函数,会返回错误代码183, 这个代码代表该文件已经存在,是正常 ...

  7. 虚拟机运行Hadoop | 各种问题解决的心路历程

    ps:完成大数据技术实验报告的过程,出项各种稀奇古怪的问题.(知道这叫什么吗?经济基础决定上层建筑,我当时配置可能留下了一堆隐患,总之如果有同样的问题,希望可以帮到你) 一.虚拟机网络连接不通的各种情 ...

  8. 从根上理解elasticsearch(lucene)查询原理(1)-lucece查询逻辑介绍

    大家好,我是蓝胖子,最近在做一些elasticsearch 慢查询优化的事情,通常用分析elasticsearch 慢查询的时候可以通过profile api 去分析,分析结果显示的底层lucene在 ...

  9. 4 HTTP的“四层”和“七层”

    目录 1 四层:TCP/IP 网络分层模型 2 七层:OSI网络分层模型 3 TCP/IP 协议栈的工作方式 1 四层:TCP/IP 网络分层模型 四层是指TCP/IP 网络分层模型. 第一层:&qu ...

  10. flask请求钩子(就是django的中间件)

    flask中的请求钩子就是域django的中间件类似,作用都是用于在请求前.后.响应前.后进行一些hook操作. 请求钩子装饰器 @app.before_request # 请求前会调用,一般可以用来 ...