SAP-PO-采购订单打印(简洁版)

输入信息:

  1. 单位:S_WERKS
  2. 订单类型:S_BSART
  3. 订单编号:S_EBELN
  4. 供应商:S_LIFNR
  5. 采购组:S_EKFRP
  6. 订单日期:S_BEDAT
  7. 操作人员:S_ERNAM
  8. 单据类型:

输出格式:

    打印出A4纸大小的采购订单。

    另附:报表格式(略)

选择界面:

结果输出界面

程序主要逻辑:

一、根据搜索条件筛选出相应的采购订单内容:

  SELECT eket~ebeln eket~ebelp eket~eindt eket~menge
         ekpo~knttp ekpo~matnr ekpo~txz01 ekpo~meins ekpo~mwskz
         ekko~bedat ekko~ernam ekko~ekgrp ekko~lifnr
         ekko~zterm ekko~waers ekko~inco1 ekko~inco2
         ekko~knumv
    INTO TABLE itab_main
    FROM eket
    INNER JOIN ekpo ON ( eket~ebeln = ekpo~ebeln ) AND
                       ( eket~ebelp = ekpo~ebelp )
    INNER JOIN ekko ON eket~ebeln = ekko~ebeln
  WHERE ekko~bstyp = 'F' AND
        ekko~ekgrp IN s_ekgrp AND
        eket~ebeln IN s_ebeln AND
        ekko~bedat IN s_bedat AND
        ekko~lifnr IN s_llief
  ORDER BY eket~ebeln.

根据筛选出的符合条件的采购订单,取相关内容:

  LOOP AT itab_main.
    PERFORM get_anln1. "资产描述ok
    PERFORM get_konv."价格信息ok
    PERFORM get_dispo."MRP控制者ok
    PERFORM get_eknam."采购组的描述ok
    PERFORM get_werk."工厂名称ok
    PERFORM get_lfa1."供应商ok
    PERFORM get_tvzbt."支付条件ok
    PERFORM get_usr21."人员编号ok
    PERFORM get_mwskz."税码ok
    PERFORM get_bmmc. "合并编码名称
    MODIFY itab_main.
  ENDLOOP.


	二、在预览屏幕上按“打印”按钮,打印采购订单:

  LOOP AT itab_main.
    AT NEW ebeln.
      IF NOT sy-tabix = 1.
        READ TABLE itab_main INDEX sy-tabix.
        PERFORM write_foot USING v_sumtotal.
        NEW-PAGE.
        v_sumtotal = 0.
        v_no = 0.
      ENDIF.
      READ TABLE itab_main INDEX sy-tabix.
      PERFORM write_head.
    ENDAT.
    IF v_check = '1'.
      v_no = 0.
      v_sumtotal = 0.
      v_check = '0'.
    ENDIF.
    v_no = v_no + 1.
    PERFORM write_body USING v_no.
    v_sumtotal = v_sumtotal + itab_main-total.
    IF ( v_no = p_count ) OR ( sy-tabix = v_count ).
      PERFORM write_foot USING v_sumtotal.
      IF  sy-tabix < v_count.
        NEW-PAGE.
        PERFORM write_head.
        v_check = '1'.
      ENDIF.
    ENDIF.
  ENDLOOP.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小啊曼

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值