ABAP怎么把传入的参数刷新到内表里面呢?

1.在执行相关的功能操作之前,优先执行这一段代码,把输入的数据更新入内表里面

 DATA: lo_guid TYPE REF TO cl_gui_alv_grid.

  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      e_grid = lo_guid.
  CALL METHOD lo_guid->check_changed_data.
  CALL METHOD lo_guid->refresh_table_display.

2.2.附上信息记录查询报表的代码

*&---------------------------------------------------------------------*
*& Report ZPURCHA_INFRECORD
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT zpurcha_infrecord.

TABLES:a017,konp,konm,eina,eine,mara,marc,plpo,mapl,t023t ,equp.

TYPE-POOLS: slis,truxs.
DATA: w_repid     LIKE sy-repid,
      wa_variant  LIKE disvariant,
      wa_layout   TYPE slis_layout_alv,

      wa_fieldcat TYPE slis_fieldcat_alv,
      it_fieldcat TYPE TABLE OF slis_fieldcat_alv,
      it_events   TYPE slis_t_event.
DATA:it_marc TYPE TABLE OF marc .
DATA:wa_marc TYPE  marc .
DATA lt_exfcode TYPE TABLE OF sy-ucomm.

DATA :gv_print TYPE c.
DATA: lt_extab TYPE TABLE OF sy-ucomm WITH HEADER LINE.

DATA: ls_fieldcat_sub TYPE slis_fieldcat_alv,
      lt_fieldcat_sub TYPE slis_t_fieldcat_alv.
DATA:
      lt_events   TYPE slis_t_event.

*----ALV变量
DATA : cl_cnt    TYPE REF TO cl_gui_custom_container, "类--存放alv的容器
       cl_alv    TYPE REF TO cl_gui_alv_grid, "alv网格
       gt_fld    TYPE lvc_t_fcat, "存放字段目录内表
       gs_fld    TYPE lvc_s_fcat, "存放字段工作区
       gs_layout TYPE lvc_s_layo. "布局结构
.

DATA:
  w_fmodule      TYPE rs38l_fnam,
  w_cparam       TYPE ssfctrlop,
  w_outoptions   TYPE ssfcompop,
  w_bin_filesize TYPE i,
  w_filename     TYPE string,
  w_file_path    TYPE string,
  z_check_matnr  TYPE eina-matnr, "2023年10月12日--PAN  目的:检查配额是否正常。
  z_check_price  TYPE ekpo-netpr, "2023年10月12日--PAN  目的:检查配额是否正常。
  z_check_werks  TYPE eine-werks, "工厂
  z_check_esokz  TYPE eine-esokz, "2023年10月13日-PAN 目的:修复BUG,一种物料存在多个不同信息类别的采购信息记录
  w_full_path    TYPE string.


DATA:
  t_otf         TYPE itcoo OCCURS 0 WITH HEADER LINE,
  t_otf_from_fm TYPE ssfcrescl,
  t_pdf_tab     LIKE tline OCCURS 0 WITH HEADER LINE.

DATA  d_ucomm LIKE sy-ucomm.
DATA:suilv LIKE eine-netpr.
TYPES:
  BEGIN OF t_out,
    infnr       LIKE eine-infnr, "采购信息记录号
    matnr       LIKE eina-matnr, "物料编码
    maktx       LIKE makt-maktx, "物料描述
    lifnr       LIKE eina-lifnr, "供应商
    name1       LIKE lfa1-name1, ""供应商名
    matkl       LIKE eina-matkl, "物料组
    wgbez       LIKE t023t-wgbez, "物料组描述
    ekorg       LIKE eine-ekorg, "采购组织
    esokz       LIKE eine-esokz, "信息类别
    werks       LIKE eine-werks, "工厂
    ekgrp       LIKE eine-ekgrp, "采购组
    aplfz       LIKE eine-aplfz, "计划交货时间
    minbm       LIKE eine-minbm, "最小订单数量
    meins       LIKE eina-meins, "基本单位
    netpr       LIKE eine-netpr, "净价
    waers       LIKE eine-waers, "货币
    peinh       LIKE eine-peinh, "每
    bprme       LIKE eine-bprme, "订单价格单位
    bpumn       LIKE eine-bpumn,  "分母D20210818
    bpumz       LIKE eine-bpumz,  "分子
    z_bpum      LIKE eine-minbm,   "单个重量
    datab       LIKE a017-datab, "有效期从
    prdat       LIKE eine-prdat, "有效期至
    mwskz       LIKE eine-mwskz, "税码
    z_netpr     LIKE eine-netpr, "含税净价
    bstyp       LIKE eine-bstyp, "采购凭证类型
    ebeln       LIKE eine-ebeln, "采购订单号
    ebelp       LIKE eine-ebelp, "项目
    netpr_po    LIKE ekpo-netpr, ""净价
    peinh_po    LIKE ekpo-peinh, "每
    erdat       LIKE eine-erdat, "创建日期
    ernam       LIKE eine-ernam, "创建者
    knumh       LIKE a017-knumh, "条件号
    mtart       LIKE mara-mtart, "物料类型
    zeinr       LIKE mara-zeinr, "图号
    beskz       LIKE marc-beskz, "采购类型
    kschl       LIKE a017-kschl, "条件类型
    kschl_a     LIKE a017-kschl, "促销折扣
    kschl_b     LIKE a017-kschl, "促销折扣消除
    loekz       LIKE eine-loekz, "采购组织删除标志
    loekz_a     LIKE eina-loekz, "完整信息记录删除标志
    plnnr       LIKE plpo-plnnr, "组
    zaehl       LIKE plpo-zaehl, "计算器
    prdat_last  LIKE eine-prdat, ""最后有效日期至
    ztxt1       TYPE char200, "增加文本字段LuD20220808
    ztxt2       TYPE char200, "增加文本字段LuD20220808

    mmsta       TYPE marc-mmsta, "特定工厂的物料状态 --PAN 2023年10月12日
    quote       TYPE equp-quote, "配额 --PAN 2023年10月12日
    ztxt3       TYPE char200, "检查配额是否正常 -PAN--2023年10月12日
    ztxt4       TYPE char200, "信息记录是否是复制 -PAN--2023年10月12日

    "2024年6月11日---新增2个字段---it023
    input_werks TYPE zrfc_out_eina-werks,
    input_esokz TYPE eine-esokz , "信息记录类别

    input_retu  TYPE zrfc_out_eina-zmess,
    sel         TYPE char1, "选择标示


    color(4)    TYPE c, "颜色字段
    field_style TYPE lvc_t_styl,

  END OF t_out.


DATA : s_data TYPE eine-prdat.
s_data = sy-datum.
DATA:
  it_out       TYPE TABLE OF t_out,
  wa_out       TYPE t_out,

  it_out_input TYPE TABLE OF t_out,
  wa_out_input TYPE  t_out,



  it_out_ls    TYPE TABLE OF t_out,
  wa_out_ls    TYPE t_out.



DATA:
  it_info_create TYPE TABLE OF  zrfc_get_eina,
  wa_info_create TYPE   zrfc_get_eina.

DATA:
  it_info_out TYPE TABLE OF  zrfc_out_eina,
  wa_info_out TYPE   zrfc_out_eina.



TYPES:
  BEGIN OF t_a017,
    kschl LIKE a017-kschl,
    lifnr LIKE a017-lifnr,
    matnr LIKE a017-matnr,
    ekorg LIKE a017-ekorg,
    werks LIKE a017-werks,
    esokz LIKE a017-esokz,
    datbi LIKE a017-datbi,
    datab LIKE a017-datab,
    knumh LIKE a017-knumh,
  END OF t_a017.
DATA:
  it_a017 TYPE TABLE OF t_a017,
  wa_a017 TYPE t_a017.




SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS:s_werks FOR  eine-werks OBLIGATORY, "工厂
               s_erdat FOR  eina-erdat MODIF ID  md3,"创建日期
               s_matnr FOR  eina-matnr , "物料编码
               s_lifnr FOR  eina-lifnr MODIF ID  md1, "供应商
               s_infnr FOR  eine-infnr MODIF ID  md3, "采购信息记录号
               s_matkl FOR  eina-matkl , "物料组
*               s_werks FOR  eine-werks , "工厂
               s_ekorg FOR  eine-ekorg , "采购组织
               s_ekgrp FOR  eine-ekgrp , "采购组
*               s_quote  FOR eine-ekgrp,  "配额是否正常
               s_esokz FOR  eine-esokz MODIF ID  md3, "信息类别
               s_mtart FOR  mara-mtart MODIF ID  md2."物料类型


PARAMETERS:  s_quote TYPE i.


SELECTION-SCREEN END OF BLOCK block1.


SELECTION-SCREEN BEGIN OF BLOCK block2 WITH FRAME TITLE TEXT-002.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS :yj RADIOBUTTON GROUP rad2 DEFAULT 'X' USER-COMMAND  u1 .
SELECTION-SCREEN COMMENT 2(8) comm1 FOR FIELD yj .
SELECTION-SCREEN POSITION 12.
PARAMETERS : ww RADIOBUTTON GROUP rad2 .
SELECTION-SCREEN COMMENT 14(8) comm2 FOR FIELD ww.
SELECTION-SCREEN POSITION 24.
PARAMETERS : wj RADIOBUTTON GROUP rad2 .
SELECTION-SCREEN COMMENT 25(8) comm3 FOR FIELD wj.

SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END   OF BLOCK block2.

SELECTION-SCREEN BEGIN OF BLOCK block3 WITH FRAME TITLE TEXT-003.
PARAMETERS : shanchu AS CHECKBOX   MODIF ID  md3.
SELECTION-SCREEN END   OF BLOCK block3.

AT SELECTION-SCREEN OUTPUT.

  LOOP AT SCREEN.
    IF  wj EQ 'X'.
      IF screen-group1  EQ 'MD3' OR  screen-group1  EQ 'MD1'.
        screen-input = 0.

      ENDIF.
    ENDIF.
    IF  yj EQ 'X'.
      IF screen-group1  EQ 'MD2' .
        screen-input = 0.
      ENDIF.
    ENDIF.

    IF  ww EQ 'X'.
      IF screen-group1  EQ 'MD3' OR screen-group1  EQ 'MD2'.
        screen-input = 0.
      ENDIF.
    ENDIF.

    MODIFY SCREEN.
  ENDLOOP.

INITIALIZATION.
  comm1 = '显示有价物料'.
  comm2 = '显示委外物料'.
  comm3 = '显示无价物料'.

  PERFORM init_variant.


FORM init_variant .
  CLEAR: wa_variant.
  w_repid              = sy-repid.
  wa_variant-report    = w_repid.
  wa_variant-username  = sy-uname.
ENDFORM.

AT SELECTION-SCREEN.


START-OF-SELECTION.

  PERFORM frm_check_auth."权限控制 add D20190926
  PERFORM get_data.
  PERFORM frm_event_bulid.
  PERFORM frm_alv_set_events.
  PERFORM alv.

END-OF-SELECTION.

FORM pf_status_set USING rt_extab TYPE slis_t_extab.

  "权限检查--2024年6月13日
  AUTHORITY-CHECK OBJECT 'ZINFO_AUTH'
   ID 'ZINFO_AUTH' FIELD '01'.
  IF sy-subrc = 0.
    gv_print = 'X'.
  ENDIF.


  " 无打印权限时隐藏打印按钮
  IF gv_print IS INITIAL.
    APPEND '&COPY_INFO' TO lt_exfcode.

  ENDIF.


  SET PF-STATUS '0100' EXCLUDING lt_exfcode..


*  SET PF-STATUS '0100' .
ENDFORM.

FORM pf_status_set_l USING rt_extab TYPE slis_t_extab.

  "权限检查--2024年6月13日
  AUTHORITY-CHECK OBJECT 'ZINFO_AUTH'
   ID 'ZINFO_AUTH' FIELD '01'.
  IF sy-subrc = 0.
    gv_print = 'X'.
  ENDIF.


  " 无打印权限时隐藏打印按钮
  IF gv_print IS INITIAL.
    APPEND '&COPY_INFO' TO lt_exfcode.

  ENDIF.

*  SET PF-STATUS 'STANDARD' EXCLUDING lt_exfcode.



  SET PF-STATUS '0200' EXCLUDING lt_exfcode..
ENDFORM.

FORM frm_event_bulid .
  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
    EXPORTING
      i_list_type = 0
    IMPORTING
      et_events   = it_events.




ENDFORM.
FORM get_data .

  IF yj = 'X'.
    DATA: lv_tdname TYPE thead-tdname.
    IF sy-uname = 'PP014'.
      MESSAGE e910(z01) WITH '你没有权限'.
      ROLLBACK WORK .
    ELSE.
      IF shanchu IS  INITIAL.

        SELECT * FROM eine INNER JOIN eina ON eine~infnr = eina~infnr INTO CORRESPONDING FIELDS OF TABLE it_out
             WHERE eina~matnr IN s_matnr AND eina~lifnr IN s_lifnr AND eine~infnr IN s_infnr  AND eine~werks IN s_werks
             AND  eine~ekorg IN s_ekorg  AND  eine~ekgrp IN  s_ekgrp  AND  eine~esokz IN s_esokz AND  eina~erdat IN s_erdat AND eina~loekz <> 'X' AND eine~loekz <> 'X'
          AND eine~werks <> '' AND eine~ekorg <> ''.
        DELETE it_out WHERE ekorg IS INITIAL.
        DELETE it_out WHERE werks IS INITIAL.
      ELSE.
        SELECT * FROM eine INNER JOIN eina ON eine~infnr = eina~infnr INTO CORRESPONDING FIELDS OF TABLE it_out
                   WHERE eina~matnr IN s_matnr AND eina~lifnr IN s_lifnr AND eine~infnr IN s_infnr AND  eine~werks IN s_werks
                   AND  eine~ekorg IN s_ekorg  AND  eine~ekgrp IN  s_ekgrp  AND  eine~esokz IN s_esokz AND  eina~erdat IN s_erdat AND ( eina~loekz = 'X' OR eine~loekz = 'X').
      ENDIF.
      LOOP AT it_out INTO wa_out.
        SELECT SINGLE * FROM a017   WHERE lifnr = wa_out-lifnr AND matnr = wa_out-matnr AND ekorg = wa_out-ekorg AND werks = wa_out-werks AND kschl = 'PB00'
   AND datab <=  sy-datum  AND datbi >= sy-datum  AND kappl = 'M'.
        IF sy-subrc = 0.
          wa_out-kschl = 'PB00'.
        ENDIF.
        SELECT SINGLE * FROM a017   WHERE lifnr = wa_out-lifnr AND matnr = wa_out-matnr AND ekorg = wa_out-ekorg AND werks = wa_out-werks AND kschl = 'RA02'
         AND datab <=  sy-datum  AND datbi >= sy-datum  AND kappl = 'M'.
        IF sy-subrc = 0.
          wa_out-kschl_a = 'RA02'.
        ENDIF.
        SELECT SINGLE * FROM a017   WHERE lifnr = wa_out-lifnr AND matnr = wa_out-matnr AND ekorg = wa_out-ekorg AND werks = wa_out-werks AND kschl = 'RA04'
          AND datab <=  sy-datum  AND datbi >= sy-datum AND kappl = 'M'.
        IF sy-subrc = 0.
          wa_out-kschl_b = 'RA04'.
        ENDIF.
        SELECT SINGLE  matkl FROM mara INTO  wa_out-matkl  WHERE matnr = wa_out-matnr.
        SELECT SINGLE  zeinr FROM mara INTO  wa_out-zeinr  WHERE matnr = wa_out-matnr.
        SELECT SINGLE loekz  FROM eina INTO  wa_out-loekz_a   WHERE infnr = wa_out-infnr.
        SELECT SINGLE loekz  FROM eine INTO  wa_out-loekz   WHERE infnr = wa_out-infnr AND ekorg = wa_out-ekorg AND  esokz = wa_out-esokz AND  werks = wa_out-werks .
        "增加读取采购信息记录文本add byLuD20220808
        CLEAR lv_tdname .
        lv_tdname  = wa_out-infnr .
        PERFORM frm_read_text USING lv_tdname  CHANGING wa_out-ztxt1 wa_out-ztxt2  wa_out-ztxt4.
        MODIFY it_out FROM wa_out.
        CLEAR wa_out.
      ENDLOOP.
      IF  s_matkl IS NOT INITIAL.
        LOOP AT it_out INTO wa_out.
          IF wa_out-matkl NOT IN s_matkl.
            DELETE it_out.
          ENDIF.
          CLEAR wa_out.
        ENDLOOP.

      ENDIF.
    ENDIF.
  ENDIF.

  IF ww = 'X'.
    IF sy-uname = 'PP014'.
      MESSAGE e910(z01) WITH '你没有权限'.
      ROLLBACK WORK .
    ELSE.
      SELECT * FROM plpo INNER JOIN mapl ON plpo~plnnr = mapl~plnnr
        INTO CORRESPONDING FIELDS OF TABLE it_out
           WHERE mapl~matnr IN s_matnr AND mapl~werks IN s_werks AND mapl~plnty = 'N' AND  plpo~steus = 'HTT2' AND  plpo~lifnr IN s_lifnr AND plpo~ekorg IN s_ekorg
           AND plpo~ekgrp IN s_ekgrp AND plpo~matkl IN s_matkl.
      LOOP AT it_out INTO wa_out.
        SELECT SINGLE lifnr FROM plpo INTO wa_out-lifnr WHERE steus = 'HTT2' AND plnty = 'N' AND  plnnr = wa_out-plnnr .
        SELECT SINGLE plifz FROM plpo INTO wa_out-aplfz WHERE steus = 'HTT2' AND plnty = 'N' AND  plnnr = wa_out-plnnr .
        SELECT SINGLE preis FROM plpo INTO wa_out-netpr WHERE steus = 'HTT2' AND plnty = 'N' AND  plnnr = wa_out-plnnr .
        SELECT SINGLE  peinh FROM plpo INTO wa_out-peinh WHERE steus = 'HTT2' AND plnty = 'N' AND  plnnr = wa_out-plnnr .
        SELECT SINGLE  meinh FROM plpo INTO wa_out-bprme WHERE steus = 'HTT2' AND plnty = 'N' AND  plnnr = wa_out-plnnr .
        SELECT SINGLE meins  FROM mara INTO wa_out-meins WHERE matnr = wa_out-matnr.
        SELECT SINGLE mtart FROM mara INTO  wa_out-mtart WHERE  matnr  = wa_out-matnr.
        SELECT SINGLE  name1  FROM  lfa1   INTO wa_out-name1 WHERE lifnr = wa_out-lifnr.
        SELECT SINGLE beskz FROM marc INTO  wa_out-beskz WHERE  matnr  = wa_out-matnr.
        SELECT SINGLE  maktx   FROM  makt INTO wa_out-maktx WHERE matnr = wa_out-matnr.
        SELECT SINGLE  wgbez   FROM  t023t INTO wa_out-wgbez WHERE matkl = wa_out-matkl.
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
          EXPORTING
            input  = wa_out-matnr
          IMPORTING
            output = wa_out-matnr.
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
          EXPORTING
            input  = wa_out-lifnr
          IMPORTING
            output = wa_out-lifnr.

        MODIFY it_out FROM wa_out.
        CLEAR wa_out.
      ENDLOOP.

    ENDIF.
  ENDIF.
  IF wj = 'X'.
    SELECT * FROM a017 INTO CORRESPONDING FIELDS OF TABLE it_a017.
    SELECT * FROM marc INTO CORRESPONDING FIELDS OF TABLE it_out  WHERE werks IN s_werks  AND  beskz <> 'E'  .
    LOOP AT it_out INTO wa_out.
      SELECT SINGLE mtart FROM mara INTO  wa_out-mtart WHERE  matnr  = wa_out-matnr.
      MODIFY it_out FROM wa_out.
      CLEAR wa_out.
    ENDLOOP.
    IF s_mtart IS NOT INITIAL.
      DELETE it_out WHERE mtart NOT IN s_mtart.
    ENDIF.
    SORT it_a017 BY matnr.
    SORT it_out BY matnr.
    LOOP AT it_out INTO wa_out.
      READ TABLE it_a017 INTO wa_a017 WITH KEY  matnr = wa_out-matnr.
      IF sy-subrc = 0.
        DELETE it_out .
      ENDIF.
      CLEAR wa_out.
    ENDLOOP.


  ENDIF.
  IF ww <> 'X'.
    SELECT a017~kschl  a017~lifnr a017~matnr   a017~ekorg a017~werks  a017~esokz a017~datbi   a017~datab  a017~knumh "*
      INTO CORRESPONDING FIELDS OF TABLE it_a017 FROM a017
      JOIN konp ON a017~knumh = konp~knumh
      FOR ALL ENTRIES IN it_out WHERE a017~kappl = 'M' AND a017~lifnr = it_out-lifnr
      AND a017~matnr = it_out-matnr AND a017~ekorg = it_out-ekorg AND a017~werks = it_out-werks AND a017~esokz =  it_out-esokz AND konp~loevm_ko <> 'X'.

    LOOP AT it_a017 INTO  wa_a017.
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = wa_a017-matnr
        IMPORTING
          output = wa_a017-matnr.
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = wa_a017-lifnr
        IMPORTING
          output = wa_a017-lifnr.
      MODIFY it_a017 FROM  wa_a017.
      CLEAR  wa_a017.
    ENDLOOP.


    LOOP AT it_out INTO wa_out.
      CLEAR:wa_out-datab , wa_out-prdat.
      SELECT SINGLE  datab FROM a017 INTO  wa_out-datab  WHERE matnr = wa_out-matnr AND lifnr = wa_out-lifnr AND werks = wa_out-werks AND
            ekorg = wa_out-ekorg AND esokz = wa_out-esokz AND kschl = 'PB00' AND kappl = 'M' AND datab <= sy-datum AND datbi >= sy-datum.
      SELECT SINGLE  datbi  FROM a017 INTO  wa_out-prdat  WHERE matnr = wa_out-matnr AND lifnr = wa_out-lifnr AND werks = wa_out-werks AND
          ekorg = wa_out-ekorg AND esokz = wa_out-esokz AND kschl = 'PB00' AND kappl = 'M' AND datab <= sy-datum AND datbi >= sy-datum.
      SELECT SINGLE  knumh FROM a017 INTO  wa_out-knumh  WHERE matnr = wa_out-matnr AND lifnr = wa_out-lifnr AND werks = wa_out-werks AND
           ekorg = wa_out-ekorg AND esokz = wa_out-esokz AND kschl = 'PB00' AND kappl = 'M' AND datab <= sy-datum AND datbi >= sy-datum.
      SELECT SINGLE  kbetr FROM  konp INTO wa_out-netpr WHERE knumh = wa_out-knumh AND loevm_ko <> 'X' .
      IF sy-subrc = 0.
      ELSE.
        wa_out-netpr = 0.
      ENDIF.
      SELECT SINGLE  kpein FROM  konp INTO wa_out-peinh WHERE knumh = wa_out-knumh.
      SELECT SINGLE  kumne FROM  konp INTO wa_out-bpumn WHERE knumh = wa_out-knumh. "D20210818
      SELECT SINGLE  kumza FROM  konp INTO wa_out-bpumz WHERE knumh = wa_out-knumh.
      SELECT SINGLE  kmein FROM  konp INTO wa_out-bprme WHERE knumh = wa_out-knumh.
      SELECT SINGLE  maktx   FROM  makt INTO wa_out-maktx WHERE matnr = wa_out-matnr.
      SELECT SINGLE  name1  FROM  lfa1   INTO wa_out-name1 WHERE lifnr = wa_out-lifnr.
      SELECT SINGLE  wgbez   FROM  t023t INTO wa_out-wgbez WHERE matkl = wa_out-matkl.
      SELECT SINGLE mtart FROM mara INTO  wa_out-mtart WHERE  matnr  = wa_out-matnr.
      SELECT SINGLE beskz FROM marc INTO  wa_out-beskz WHERE  matnr  = wa_out-matnr.

      "2023年10月12日--新增 工厂特定的物料状态字段--PAN
      SELECT SINGLE  mmsta FROM marc INTO  wa_out-mmsta WHERE  matnr  = wa_out-matnr AND werks = wa_out-werks.
      "2023年10月12日--新增 配额字段
      SELECT SINGLE  quote FROM equp
        JOIN equk ON equk~qunum = equp~qunum
        INTO  wa_out-quote
        WHERE equk~matnr  = wa_out-matnr
        AND equk~werks = wa_out-werks
        AND equp~lifnr = wa_out-lifnr
        AND equk~bdatu > s_data
        AND  equk~vdatu  < s_data
        .
      "2023年10月12日-PAN-检查配额是否合理
*      IF wa_out-quote  = 0.
*        wa_out-ztxt3 = '1'.
*      ENDIF.
      IF wa_out-netpr  = 0.
        wa_out-ztxt3 = '1'.
      ENDIF.
      IF wa_out-mmsta  = '04'.
        wa_out-ztxt3 = '1'.
      ENDIF.
      IF contains( val =  wa_out-lifnr regex = 'HTT' ).
        wa_out-ztxt3 = '1'.
      ENDIF.



      SELECT SINGLE netpr FROM ekpo INTO  wa_out-netpr_po WHERE  ebeln  = wa_out-ebeln AND ebelp = wa_out-ebelp.
      SELECT SINGLE peinh FROM ekpo INTO  wa_out-peinh_po WHERE  ebeln  = wa_out-ebeln AND ebelp = wa_out-ebelp.



      wa_out-z_bpum = wa_out-bpumz / wa_out-bpumn.
      CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT'
        EXPORTING
          input    = wa_out-meins
          language = '1'
        IMPORTING
          output   = wa_out-meins.
      CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT'
        EXPORTING
          input    = wa_out-bprme
          language = '1'
        IMPORTING
          output   = wa_out-bprme.

      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = wa_out-matnr
        IMPORTING
          output = wa_out-matnr.
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = wa_out-lifnr
        IMPORTING
          output = wa_out-lifnr.
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = wa_out-ebelp
        IMPORTING
          output = wa_out-ebelp.
      SELECT SINGLE prdat FROM eine INTO wa_out-prdat_last WHERE infnr = wa_out-infnr.
      IF wa_out-mwskz IS NOT INITIAL.  "txx20211008
        IF wa_out-mwskz = 'J0'.
          wa_out-z_netpr = wa_out-netpr.
        ENDIF.
        IF wa_out-mwskz = 'J1'.
          suilv = '1.17'.
          wa_out-z_netpr = wa_out-netpr * suilv.
        ENDIF.
        IF wa_out-mwskz = 'J2'.
          suilv = '1.13'.
          wa_out-z_netpr = wa_out-netpr * suilv.
        ENDIF.
        IF wa_out-mwskz = 'J3'.
          suilv = '1.06'.
          wa_out-z_netpr = wa_out-netpr * suilv.
        ENDIF.
        IF wa_out-mwskz = 'J4'.
          suilv = '1.03'.
          wa_out-z_netpr = wa_out-netpr * suilv.
        ENDIF.
        IF wa_out-mwskz = 'J6'.
          suilv = '1.16'.
          wa_out-z_netpr = wa_out-netpr * suilv.
        ENDIF.
        IF wa_out-mwskz = 'J7'."2023年4月14日增加税码J7
          suilv = '1.01'.
          wa_out-z_netpr = wa_out-netpr * suilv.
        ENDIF.
      ENDIF.

*      wa_out-color =  'C110'."设置行的颜色

      MODIFY it_out FROM wa_out.
      CLEAR wa_out.
    ENDLOOP.
    "价格记录排除了Konp表删除的,由于有按价格期间删除的操作,排除记录LuD20221107
*    DELETE it_out WHERE netpr = 0.

    LOOP AT it_out INTO wa_out.
      MOVE-CORRESPONDING wa_out TO wa_out_ls.
      APPEND   wa_out_ls TO it_out_ls .
      CLEAR  wa_out_ls .
    ENDLOOP.

    "2023年10月12日--PAN--检查配额是否正常
    SORT it_out BY  matnr esokz  netpr.
    CLEAR wa_out.
    IF it_out IS NOT INITIAL.
      LOOP AT it_out INTO wa_out . "取价格最低,且不为0的记录
        IF wa_out-netpr <> '0'  AND   wa_out-mmsta  <> '04' AND NOT contains( val =  wa_out-lifnr regex = 'HTT' ).
          z_check_matnr  = wa_out-matnr.
          z_check_price  = wa_out-netpr.
          z_check_esokz  = wa_out-esokz.
          EXIT.
        ENDIF.
      ENDLOOP.

    ENDIF.

    "2023年11月7日--修正BUG点,如果只存在两条记录的情况,一个配额为0的是1,但是配额100的是2的情况
    CLEAR wa_out.
    LOOP AT it_out INTO wa_out.

      IF  wa_out-netpr <> 0   AND  wa_out-mmsta  <> '04' AND  wa_out-ztxt3 IS INITIAL ."wa_out-quote  <>  0
        wa_out-ztxt3 = '1'.

        IF wa_out-matnr  = z_check_matnr AND wa_out-esokz =  z_check_esokz AND wa_out-netpr <> z_check_price AND wa_out-netpr <> '0' ." AND wa_out-quote <> 0.
          IF wa_out-quote <> 0.
            wa_out-ztxt3 = '2'.
          ELSE.
            wa_out-ztxt3 = '1'.
          ENDIF.

          MODIFY it_out FROM wa_out TRANSPORTING ztxt3 WHERE matnr = wa_out-matnr AND lifnr = wa_out-lifnr AND netpr  = wa_out-netpr.
        ELSE.
          IF wa_out-matnr <> z_check_matnr .
            z_check_matnr  = wa_out-matnr.
            z_check_price  = wa_out-netpr.
            z_check_esokz  = wa_out-esokz.
          ENDIF.

        ENDIF.
        MODIFY it_out FROM wa_out TRANSPORTING ztxt3 WHERE matnr = wa_out-matnr AND lifnr = wa_out-lifnr AND netpr  = wa_out-netpr.
      ENDIF.



      CLEAR:wa_out.
    ENDLOOP.

    "如果配额是2的话,那么物料 + 和工厂维度全部替换为2
    CLEAR:z_check_matnr , z_check_werks.
    SORT it_out BY matnr  werks ztxt3 DESCENDING.
    LOOP AT  it_out  INTO  wa_out.
      IF wa_out-ztxt3  = '2'.
        z_check_matnr = wa_out-matnr.
        z_check_werks = wa_out-werks.
      ELSE.
        IF z_check_matnr = wa_out-matnr AND z_check_werks = wa_out-werks.
          wa_out-ztxt3 = '2'.
          MODIFY it_out FROM wa_out TRANSPORTING ztxt3 WHERE matnr = wa_out-matnr AND lifnr = wa_out-lifnr AND netpr  = wa_out-netpr.
        ENDIF.
      ENDIF.

      CLEAR:wa_out.
    ENDLOOP.


    "条件查询,删除全部的不符合的条件
    IF s_quote IS NOT INITIAL .
      DELETE  it_out  WHERE  ztxt3 <> s_quote.
    ENDIF.





    "-----------------------------------------------------
    SORT it_out BY  lifnr matnr ekorg werks esokz.
    SORT it_a017 BY  lifnr matnr ekorg werks esokz.
    LOOP AT it_a017 INTO  wa_a017.
      READ TABLE it_out INTO wa_out WITH KEY lifnr = wa_a017-lifnr  matnr = wa_a017-matnr  ekorg = wa_a017-ekorg  werks = wa_a017-werks  esokz = wa_a017-esokz .
      IF sy-subrc = 0.
        MOVE-CORRESPONDING wa_out TO wa_out_ls.
        IF wa_a017-knumh <> wa_out-knumh  AND wa_a017-kschl = 'PB00'.
          wa_out_ls-knumh  = wa_a017-knumh.
          wa_out_ls-datab = wa_a017-datab.
          wa_out_ls-prdat = wa_a017-datbi.
          SELECT SINGLE kbetr INTO wa_out_ls-netpr  FROM konp WHERE knumh = wa_out_ls-knumh. "净价
          SELECT SINGLE konwa INTO wa_out_ls-waers  FROM konp WHERE knumh = wa_out_ls-knumh.  "货币
          SELECT SINGLE kpein INTO  wa_out_ls-peinh FROM konp WHERE knumh = wa_out_ls-knumh.  "每
          SELECT SINGLE kumne INTO  wa_out_ls-bpumn FROM konp WHERE knumh = wa_out_ls-knumh. "D20210818
          SELECT SINGLE kumza INTO  wa_out_ls-bpumz FROM konp WHERE knumh = wa_out_ls-knumh.
          SELECT SINGLE kmein INTO  wa_out_ls-bprme FROM konp WHERE knumh = wa_out_ls-knumh.  "订单价格单位
          APPEND   wa_out_ls TO it_out_ls .

        ELSE.
          IF wa_a017-datbi  <>  wa_out-prdat AND wa_a017-kschl = 'PB00'.
            wa_out_ls-knumh  = wa_a017-knumh.
            wa_out_ls-datab = wa_a017-datab.
            wa_out_ls-prdat = wa_a017-datbi.
            SELECT SINGLE kbetr INTO wa_out_ls-netpr  FROM konp WHERE knumh = wa_out_ls-knumh. "净价
            SELECT SINGLE konwa INTO wa_out_ls-waers  FROM konp WHERE knumh = wa_out_ls-knumh.  "货币
            SELECT SINGLE kpein INTO  wa_out_ls-peinh FROM konp WHERE knumh = wa_out_ls-knumh.  "每
            SELECT SINGLE kumne INTO  wa_out_ls-bpumn FROM konp WHERE knumh = wa_out_ls-knumh. "D20210818
            SELECT SINGLE kumza INTO  wa_out_ls-bpumz FROM konp WHERE knumh = wa_out_ls-knumh.
            SELECT SINGLE kmein INTO  wa_out_ls-bprme FROM konp WHERE knumh = wa_out_ls-knumh.  "订单价格单位
            APPEND   wa_out_ls TO it_out_ls .
          ENDIF.
          IF wa_a017-kschl <> 'PB00'.
            wa_out_ls-kschl  = wa_a017-kschl.
            wa_out_ls-knumh  = wa_a017-knumh.
            wa_out_ls-datab = wa_a017-datab.
            wa_out_ls-prdat = wa_a017-datbi.
            SELECT SINGLE kbetr INTO wa_out_ls-netpr  FROM konp WHERE knumh = wa_out_ls-knumh. "净价
            SELECT SINGLE konwa INTO wa_out_ls-waers  FROM konp WHERE knumh = wa_out_ls-knumh.  "货币
            SELECT SINGLE kpein INTO  wa_out_ls-peinh FROM konp WHERE knumh = wa_out_ls-knumh.  "每
            SELECT SINGLE kumne INTO  wa_out_ls-bpumn FROM konp WHERE knumh = wa_out_ls-knumh. "D20210818
            SELECT SINGLE kumza INTO  wa_out_ls-bpumz FROM konp WHERE knumh = wa_out_ls-knumh.
            SELECT SINGLE kmein INTO  wa_out_ls-bprme FROM konp WHERE knumh = wa_out_ls-knumh.  "订单价格单位
            APPEND   wa_out_ls TO it_out_ls .
          ENDIF.
        ENDIF.
      ENDIF.
      CLEAR  wa_a017.
    ENDLOOP.
    LOOP AT  it_out_ls INTO wa_out_ls.
      SELECT SINGLE kschl INTO wa_out_ls-kschl  FROM konp WHERE knumh = wa_out_ls-knumh. "净价
      IF wa_out_ls-mwskz IS NOT INITIAL.  "txx20211008
        IF wa_out_ls-mwskz = 'J0'.
          wa_out_ls-z_netpr = wa_out_ls-netpr.
        ENDIF.
        IF wa_out_ls-mwskz = 'J1'.
          suilv = '1.17'.
          wa_out_ls-z_netpr = wa_out_ls-netpr * suilv.
        ENDIF.
        IF wa_out_ls-mwskz = 'J2'.
          suilv = '1.13'.
          wa_out_ls-z_netpr = wa_out_ls-netpr * suilv.
        ENDIF.
        IF wa_out_ls-mwskz = 'J3'.
          suilv = '1.06'.
          wa_out_ls-z_netpr = wa_out_ls-netpr * suilv.
        ENDIF.
        IF wa_out_ls-mwskz = 'J4'.
          suilv = '1.03'.
          wa_out_ls-z_netpr = wa_out_ls-netpr * suilv.
        ENDIF.
        IF wa_out_ls-mwskz = 'J6'.
          suilv = '1.16'.
          wa_out_ls-z_netpr = wa_out_ls-netpr * suilv.
        ENDIF.
        IF wa_out_ls-mwskz = 'J7'."2023年4月14日增加税码J7
          suilv = '1.01'.
          wa_out_ls-z_netpr = wa_out_ls-netpr * suilv.
        ENDIF.
      ENDIF.
      MODIFY it_out_ls FROM wa_out_ls.
      CLEAR wa_out_ls.
    ENDLOOP.

    SORT it_out_ls BY  lifnr matnr ekorg werks esokz.
  ENDIF.
ENDFORM.

FORM frm_user_command  USING r_ucomm LIKE sy-ucomm
                             rs_selfield TYPE slis_selfield.
  DATA: lo_guid TYPE REF TO cl_gui_alv_grid.

  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      e_grid = lo_guid.
  CALL METHOD lo_guid->check_changed_data.
  CALL METHOD lo_guid->refresh_table_display.

  CASE r_ucomm.

    WHEN '&LS'.
      IF ww IS NOT INITIAL.
      ELSE.
        PERFORM alv_ls.
      ENDIF.
    WHEN '&EX_CAL'.
      PERFORM ex_cal.
    WHEN'&COPY_INFO'.


      "获取全部的选中的行,并写入到一个内表中
      CLEAR:wa_out.
      LOOP AT it_out INTO wa_out WHERE sel = 'X'.

*        "优先剔除掉以前的数据先。
        IF wa_out-input_retu IS NOT  INITIAL.
          wa_out-input_retu  = ''.
        ENDIF.
*
*        "校验用户输入的数据
        IF wa_out-input_werks IS INITIAL.
          wa_out-input_retu = '工厂不允许为空'.
          wa_out_input-input_retu = '工厂不允许为空'.
          wa_out-color =  'C610'."设置行的颜色
        ENDIF.
*
        IF wa_out-input_esokz IS INITIAL.
          wa_out-input_retu = '信息记录的类别不允许为空'.
          wa_out_input-input_retu = '信息记录的类别不允许为空'.
          wa_out-color =  'C610'."设置行的颜色

        ELSE.
          IF wa_out-input_esokz ='0'OR  wa_out-input_esokz ='2' OR wa_out-input_esokz ='3'.
          ELSE.
            wa_out-input_retu = '信息类别异常,请检查'.
            wa_out_input-input_retu = '信息类别异常,请检查'.
            wa_out-color =  'C610'."设置行的颜色
          ENDIF.

        ENDIF.




*        IF wa_out-input_esokz IS NOT INITIAL AND  wa_out-input_werks  IS NOT INITIAL.
*          SELECT * FROM marc INTO CORRESPONDING FIELDS OF TABLE it_marc WHERE werks = wa_out-input_werks  AND matnr =  wa_out-matnr.
*          IF sy-subrc <> 0.
*            wa_out-input_retu = '物料在该扩展工厂没有维护,请先扩展'.
*            wa_out_input-input_retu = '物料在该扩展工厂没有维护,请先扩展'.
*          ENDIF.
*        ENDIF.




        MODIFY  it_out FROM  wa_out TRANSPORTING  input_retu color WHERE matnr = wa_out-matnr AND lifnr = wa_out-lifnr AND werks = wa_out-werks AND esokz = wa_out-esokz AND ekorg = wa_out-ekorg .


        APPEND wa_out TO it_out_input.
        CLEAR wa_out.

      ENDLOOP.
      "处理复制信息记录
      PERFORM copy_infomation .

  ENDCASE.

  rs_selfield-refresh = 'X'.
  rs_selfield-col_stable = 'X'.
  rs_selfield-row_stable = 'X'.


ENDFORM.

FORM frm_user_command_l  USING r_ucomm LIKE sy-ucomm
                             rs_selfield TYPE slis_selfield.
  DATA: lo_guid TYPE REF TO cl_gui_alv_grid.

*------------将ALV上修改的内容保存到内表---------------------------------*
  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
    IMPORTING
      e_grid = lo_guid.
  CALL METHOD lo_guid->check_changed_data.
  rs_selfield-refresh = 'X'.
  CALL METHOD lo_guid->refresh_table_display.

  CASE r_ucomm.


    WHEN '&XY'.
      IF ww IS NOT INITIAL.
      ELSE.
        PERFORM alv.
      ENDIF.
    WHEN '&EX_CAL'.
      PERFORM ex_cal.

  ENDCASE.

  rs_selfield-refresh = 'X'.
  rs_selfield-col_stable = 'X'.
  rs_selfield-row_stable = 'X'.
ENDFORM.


FORM alv.
  DATA: w_repid     LIKE sy-repid,
        wa_variant  LIKE disvariant,
        wa_layout   TYPE slis_layout_alv,
        wa_fieldcat TYPE slis_fieldcat_alv,
        it_fieldcat TYPE TABLE OF slis_fieldcat_alv,
        it_events   TYPE slis_t_event.
*  DATA: gs_layout TYPE slis_layout_alv. "布局结构
  DATA: f_title TYPE lvc_title.
  f_title = '采购信息记录报表'.





  DATA col_pos TYPE i.

  gs_layout-zebra                = 'X'.
  w_repid                        = sy-repid.
*  gs_layout-no_vline             = space.
*  gs_layout-detail_initial_lines = 'X'.
*  wa_layout-box_fieldname        = 'FLAG'.
*  gs_layout-colwidth_optimize    = 'X'.

  DEFINE hout.



*    col_pos = col_pos + 1.
*    wa_fieldcat-tabname     = 'it_out[]'.
*    wa_fieldcat-fieldname = '&1'.
*    wa_fieldcat-seltext_m =  &2.
*    wa_fieldcat-col_pos   =  col_pos.
*    wa_fieldcat-outputlen =  &3.
*    wa_fieldcat-datatype  = '&4'.
*    wa_fieldcat-edit    = '&5'.
*
*
*
*    wa_fieldcat-lzero     = 'X'.
*    wa_fieldcat-no_zero   = ''.
*    wa_fieldcat-no_sign   = ''.
*    wa_fieldcat-icon      = ''.
*
*
*    APPEND wa_fieldcat TO it_fieldcat.


    col_pos = col_pos + 1.
gs_fld-tabname     = 'it_out[]'.
gs_fld-fieldname = '&1'.
gs_fld-coltext = gs_fld-scrtext_l = gs_fld-scrtext_m = gs_fld-scrtext_s = &2."字段名称
gs_fld-col_pos   =  col_pos.
gs_fld-outputlen =  '&3'.
gs_fld-datatype  = '&4'.
gs_fld-edit    = &5.
gs_fld-f4availabl = &6.



gs_fld-lzero     = 'X'.
gs_fld-no_zero   = ''.
gs_fld-no_sign   = ''.
gs_fld-icon      = ''.

*  IF gs_fld-fieldname = 'input_esokz'.
*    gs_fld-ref_field = 'ESOKZ'.
*    gs_fld-ref_table = 'EINE'.
*    gs_fld-edit  = 'X'.
*  ENDIF.

 APPEND gs_fld TO gt_fld.


  wa_layout-zebra                = 'X'.
  w_repid                        = sy-repid.
*  wa_layout-no_vline             = space.
*  wa_layout-detail_initial_lines = 'X'.
*  wa_layout-box_fieldname        = 'FLAG'.
*  wa_layout-colwidth_optimize    = 'X'.
  gs_layout-info_fname = 'COLOR'.
  gs_layout-zebra         = 'X'.
  gs_layout-cwidth_opt    = 'X'.
  gs_layout-box_fname = 'SEL'.  "指定这个字段为【选择块】



  END-OF-DEFINITION.
  IF yj = 'X'.
    hout  infnr     '采购信息记录'       10       char  '' ''.
  ENDIF.
  hout  matnr     '物料编码'           18       char  ''  ''.
  hout  maktx     '物料编码描述'       40       char '' ''.
  hout  werks     '工厂'               10       char '' ''.
  IF yj = 'X'.
    hout  esokz     '信息类别'           6       char ''  ''.
  ENDIF.
  AUTHORITY-CHECK OBJECT 'ZINFO_AUTH'
   ID 'ZINFO_AUTH' FIELD '01'.
  IF sy-subrc = 0.
    hout  input_werks     '新增信息记录的工厂'      6       char 'X' ''.
    hout  input_esokz     '信息记录的类别'      40       char 'X' 'X'.
    hout  input_retu     '复制结果'       40       char  '' ''.
  ENDIF.


  IF yj = 'X' OR ww = 'X'.
    hout  matkl     '物料组'             9       char '' ''.
    hout  wgbez     '物料组描述'             16       char '' ''.
    hout  lifnr     '供应商'             10       char '' ''.
    hout  name1     '供应商名称'         35       char '' ''.
    hout  ekorg     '采购组织'           4       char '' ''.
  ENDIF.
  hout  mtart     '物料类型'            8       char ''  ''.
  hout  beskz     '采购类型'            10       char ''  ''.
  hout  zeinr     '图号'            10       char  ''  '' .
  hout  mmsta     '工厂特定的物料状态' 12 char ''  ''."2023年10月12日-PAN-新增
  hout  quote    '配额' 12 char ''  ''."2023年10月12日-PAN-新增
  hout  ztxt3    '配额标记' 12 char ''  ''."2023年10月12日-PAN-新增

  hout  ekgrp     '采购组'             10       char  ''  ''.
  IF yj = 'X' OR ww = 'X'.
    hout  aplfz     '计划交货时间'        10      dec '' ''.
    IF yj = 'X'.
      hout  minbm     '最小订单数量'        13       quan ''  ''.
    ENDIF.
    hout  meins     '基本单位'            6       unit ''  ''.
    hout  netpr     '净价'               12       curr ''  ''.
    hout  z_netpr     '含税单价'               12       curr ''  ''.
    hout  waers     '货币'               4       char ''  ''.
    hout  peinh     '每'           8        unit '' ''.
    hout  bprme     '订单价格单位'       10       unit  ''   ''.
    hout  z_bpum     '单个重量'       10       unit '' '' .     "20210818

    IF yj = 'X'.
      hout  datab     '有效期从'           12       dats ''  ''.
      hout  prdat     '有效期至'           12       dats '' ''.
      hout  mwskz     '税码'               4       char '' ''.
*    hout  bstyp     '采购凭证类型'       10       char .
*    hout  ebeln     '采购订单号'         10       char .
*    hout  ebelp     '项目'              4       char .
*    hout  netpr_po   'PO净价'            12       curr .
*    hout  peinh_po     'PO每'              8        unit .
      hout  kschl_a   '促销率'          4       char '' ''.
      hout  kschl_b   '促销减免价'      8      char '' ''.
      hout  ztxt1   '文本'      20      char '' ''."增加读取采购信息记录文本add byLuD20220808
      hout  ztxt2   '姓名'      20      char '' ''."增加读取采购信息记录文本add byLuD20220808
      hout  ztxt4   '是否复制'      20      char '' ''."增加读取采购信息记录文本add byLuD20220808
      hout  erdat     '创建日期'          12       dats '' ''.
      hout  ernam     '创建者'            10       char '' ''.
      hout  loekz      '采购组织删除标志'  12      char  '' ''.
      hout  loekz_a    '完整信息删除标志'  12      char  '' ''.
      hout  prdat_last  '最后有效期至'           12       dats '' ''.
    ENDIF.
  ENDIF.



*  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
*    EXPORTING
*      i_callback_program       = w_repid
*      i_callback_pf_status_set = 'PF_STATUS_SET'
*      i_callback_user_command  = 'FRM_USER_COMMAND'
*      i_grid_title             = f_title
*      is_layout                = wa_layout
*      it_fieldcat              = it_fieldcat[]
*      i_default                = 'X'
*      i_save                   = 'A'
*      is_variant               = wa_variant
*      it_events                = it_events
*    TABLES
*      t_outtab                 = it_out[].



  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    EXPORTING
      i_callback_program       = sy-repid
      i_callback_pf_status_set = 'PF_STATUS_SET'
      i_callback_user_command  = 'FRM_USER_COMMAND'
      is_layout_lvc            = gs_layout
      it_fieldcat_lvc          = gt_fld
      it_events                = lt_events
    TABLES
      t_outtab                 = it_out
*     t_outtab                 = lt_alvs
    EXCEPTIONS
      program_error            = 1
      OTHERS                   = 2.



ENDFORM.
*&---------------------------------------------------------------------*
*& Form ALV_LS
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM alv_ls .

  DATA: gs_layout TYPE lvc_s_layo.
  DATA: f_title TYPE lvc_title.
  f_title = '采购信息记录历史报表'.

  DATA col_pos TYPE i.

  wa_layout-zebra                = 'X'.
  w_repid                        = sy-repid.
*  wa_layout-no_vline             = space.
*  wa_layout-detail_initial_lines = 'X'.
*  wa_layout-box_fieldname        = 'FLAG'.
*  wa_layout-colwidth_optimize    = 'X'.
  gs_layout-info_fname = 'COLOR'.
  gs_layout-zebra         = 'X'.
  gs_layout-cwidth_opt    = 'X'.
  gs_layout-box_fname = 'SEL'.  "指定这个字段为【选择块】



  DEFINE hout.
    col_pos = col_pos + 1.
    wa_fieldcat-tabname     = 'it_out_ls[]'.
    wa_fieldcat-fieldname = '&1'.
    wa_fieldcat-seltext_m =  &2.
    wa_fieldcat-col_pos   =  col_pos.
    wa_fieldcat-outputlen =  &3.
    wa_fieldcat-datatype  = '&4'.
*    wa_fieldcat-do_sum    = '&5'.
    wa_fieldcat-lzero     = 'X'.
    wa_fieldcat-no_zero   = ''.
    wa_fieldcat-no_sign   = ''.
    wa_fieldcat-icon      = ''.
    APPEND wa_fieldcat TO it_fieldcat.
  END-OF-DEFINITION.


  IF yj = 'X'.
    hout  infnr     '采购信息记录'       10       char .
  ENDIF.
  hout  matnr     '物料编码'           40       char .
  hout  maktx     '物料编码描述'       40       char .


  IF yj = 'X'.
    hout  matkl     '物料组'             9       char .
    hout  wgbez     '物料组描述'             16       char .
    hout  lifnr     '供应商'             10       char .
    hout  name1     '供应商名称'         35       char .
    hout  ekorg     '采购组织'           4       char .
    hout  esokz     '信息类别'           6       char .
  ENDIF.
  hout  mtart     '物料类型'            8       char .
  hout  beskz     '采购类型'            10       char .
  hout  werks     '工厂'               10       char .
  hout  ekgrp     '采购组'             10       char .
  IF yj = 'X'.
    hout  aplfz     '计划交货时间'        10      dec .
    hout  minbm     '最小订单数量'        13       quan .
    hout  meins     '基本单位'            6       unit .
    hout  kschl      '条件类型'           10       char .
    hout  netpr     '净价'               12       curr .
    hout  z_netpr     '含税单价'               12       curr .
    hout  waers     '货币'               4       char .
    hout  peinh     '每'           8        unit .
    hout  bprme     '订单价格单位'       10       unit .
    hout  z_bpum     '转换数量'       10       unit .           "20210818
    hout  meins     '转换单位'            6       unit .
    hout  datab     '有效期从'           12       dats .
    hout  prdat     '有效期至'           12       dats .
    hout  mwskz     '税码'               4       char .
*    hout  bstyp     '采购凭证类型'       10       char .
*    hout  ebeln     '采购订单号'         10       char .
*    hout  ebelp     '项目'              4       char .
*    hout  netpr_po   'PO净价'            12       curr .
*    hout  peinh_po     'PO每'              8        unit .
    hout  kschl_a   '促销率'          4       char .
    hout  kschl_b   '促销减免价格'      8      char .
    hout  erdat     '创建日期'          12       dats .
    hout  ernam     '创建者'            10       char .


  ENDIF.


*  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
*    EXPORTING
*      i_callback_program       = w_repid
*      i_callback_pf_status_set = 'PF_STATUS_SET_L'
*      i_callback_user_command  = 'FRM_USER_COMMAND_L'
*      i_grid_title             = f_title
*      is_layout                = wa_layout
*      it_fieldcat              = it_fieldcat[]
*      i_default                = 'X'
*      i_save                   = 'A'
*      is_variant               = wa_variant
*      it_events                = it_events
*    TABLES
*      t_outtab                 = it_out_ls[].


  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    EXPORTING
      i_callback_program       = sy-repid
      i_callback_pf_status_set = 'PF_STATUS_SET'
      i_callback_user_command  = 'FRM_USER_COMMAND'
      is_layout_lvc            = gs_layout
      it_fieldcat_lvc          = gt_fld
      it_events                = lt_events
    TABLES
      t_outtab                 = it_out
*     t_outtab                 = lt_alvs
    EXCEPTIONS
      program_error            = 1
      OTHERS                   = 2.


ENDFORM.
*&---------------------------------------------------------------------*
*& Form EX_CAL
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM ex_cal .

  DATA t_rsparams TYPE TABLE OF rsparams.
  REFRESH t_rsparams.
  CALL FUNCTION 'RS_REFRESH_FROM_SELECTOPTIONS'
    EXPORTING
      curr_report     = sy-repid
    TABLES
      selection_table = t_rsparams
    EXCEPTIONS
      not_found       = 1
      no_report       = 2
      OTHERS          = 3.

  SUBMIT zpurcha_infrecord WITH SELECTION-TABLE t_rsparams VIA SELECTION-SCREEN.

ENDFORM.
*&---------------------------------------------------------------------*
*& Form FRM_CHECK_AUTH
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM frm_check_auth .
*authority check 权限控制 add D20190926
  TYPES:BEGIN OF ty_werks,
          werks TYPE t001w-werks,
        END OF ty_werks.

  DATA:lt_werks TYPE STANDARD TABLE OF  ty_werks,
       lw_werks TYPE ty_werks.

  SELECT werks
    FROM t001w
    INTO CORRESPONDING FIELDS OF TABLE lt_werks
    WHERE werks IN s_werks AND land1 EQ 'CN'.

  LOOP AT lt_werks INTO lw_werks.
    AUTHORITY-CHECK OBJECT 'ZMM_WERKS'
     ID  'WERKS' FIELD  lw_werks-werks
     ID  'ACTVT' FIELD '03'.
    IF sy-subrc NE 0.
      MESSAGE i398(00) WITH '无工厂' lw_werks-werks  '的权限!' .
      STOP.
    ENDIF.

  ENDLOOP.


ENDFORM.
*&---------------------------------------------------------------------*
*& Form FRM_READ_TEXT
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*      -->P_LV_TDNAME  text
*      <--P_WA_OUT_ZTXT  text
*&---------------------------------------------------------------------*
FORM frm_read_text  USING    p_lv_tdname
                    CHANGING p_wa_out_ztxt1
                      p_wa_out_ztxt2  p_wa_out_ztxt4.
  DATA: lt_lines LIKE  TABLE OF tline,
        lw_lines LIKE  tline.

  DATA:lv_tdname TYPE stxh-tdname.
  CLEAR:lv_tdname.
  SELECT SINGLE tdname FROM stxh INTO lv_tdname WHERE tdobject = 'EINA' AND tdname = p_lv_tdname.
  IF lv_tdname IS NOT INITIAL .
    CALL FUNCTION 'READ_TEXT'
      EXPORTING
*       CLIENT   = SY-MANDT
        id       = 'AT'
        language = sy-langu
        name     = p_lv_tdname
        object   = 'EINA'
*       ARCHIVE_HANDLE                = 0
*       LOCAL_CAT                     = ' '
*   IMPORTING
*       HEADER   =
*       OLD_LINE_COUNTER              =
      TABLES
        lines    = lt_lines
*   EXCEPTIONS
*       ID       = 1
*       LANGUAGE = 2
*       NAME     = 3
*       NOT_FOUND                     = 4
*       OBJECT   = 5
*       REFERENCE_CHECK               = 6
*       WRONG_ACCESS_TO_ARCHIVE       = 7
*       OTHERS   = 8
      .
    IF sy-subrc <> 0.
* Implement suitable error handling here
    ENDIF.

*    LOOP AT lt_lines INTO lw_lines  .
*      CONCATENATE p_wa_out_ztxt lw_lines-tdline INTO p_wa_out_ztxt.
*    ENDLOOP.
    CLEAR:lw_lines.
    READ TABLE lt_lines INTO lw_lines  INDEX 1.
    p_wa_out_ztxt1 = lw_lines-tdline .
    CLEAR:lw_lines.
    READ TABLE lt_lines INTO lw_lines  INDEX 2.
    p_wa_out_ztxt2 = lw_lines-tdline .
    READ TABLE lt_lines INTO lw_lines  INDEX 3.
    IF sy-subrc = 0.
      p_wa_out_ztxt4 = lw_lines-tdline .
    ENDIF.



  ENDIF.


ENDFORM.



FORM copy_infomation .

  CLEAR: it_info_create[] ,  it_info_out[].

  LOOP AT it_out_input INTO  wa_out_input  WHERE input_retu IS INITIAL..
    wa_info_create-lifnr = wa_out_input-lifnr.
    wa_info_create-matnr = wa_out_input-matnr.
    wa_info_create-ekorg = wa_out_input-ekorg.
    wa_info_create-werks = wa_out_input-input_werks."IT023改,用户自己传入的工厂
    wa_info_create-esokz = wa_out_input-input_esokz."IT023改,信息类别让用户自己填写 2024年6月19日17点13分
    wa_info_create-ekgrp = wa_out_input-ekgrp.
    wa_info_create-aplfz = wa_out_input-aplfz.
    wa_info_create-minbm = wa_out_input-minbm.
    wa_info_create-mwskz = wa_out_input-mwskz.
*    wa_info_create-VERID = wa_out_input-VERID.
*    wa_info_create-LMEIN = wa_out_input-LMEIN.
    wa_info_create-meins = wa_out_input-meins.
    wa_info_create-netpr = wa_out_input-netpr.
    wa_info_create-waers = wa_out_input-waers.
    wa_info_create-peinh = wa_out_input-peinh.
    wa_info_create-bprme = wa_out_input-bprme.
    wa_info_create-erdat = wa_out_input-erdat.
    wa_info_create-prdat = wa_out_input-prdat.
*    wa_info_create-HID = wa_out_input-HID.
*    wa_info_create-TEXT1 = wa_out_input-TEXT1.
    wa_info_create-text3 = 'SAP复制'.



    APPEND wa_info_create TO it_info_create .
    CLEAR:wa_info_create.

  ENDLOOP.

*  CLEAR:wa_out_input.


  "调用BAPI复制信息记录
  CALL FUNCTION 'ZRFC_INCHA_INFORECORD'
    EXPORTING
      p_me       = 'A'
* IMPORTING
*     LV_REPORTHEAD       =
*     V_SUBRC    =
*     V_MESSAGE  =
    TABLES
      it_tab     = it_info_create
      it_tab_out = it_info_out.

  LOOP AT it_info_out ASSIGNING FIELD-SYMBOL(<fs_it_info_out>).
    IF  sy-subrc = 0.
      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = <fs_it_info_out>-matnr
        IMPORTING
          output = <fs_it_info_out>-matnr.


      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
        EXPORTING
          input  = <fs_it_info_out>-lifnr
        IMPORTING
          output = <fs_it_info_out>-lifnr.



      READ TABLE it_out ASSIGNING FIELD-SYMBOL(<fs_it_out>) WITH  KEY lifnr = <fs_it_info_out>-lifnr  matnr  = <fs_it_info_out>-matnr input_werks = <fs_it_info_out>-werks   ekorg  = <fs_it_info_out>-ekorg  input_esokz =  <fs_it_info_out>-esokz.
      IF sy-subrc = 0.
        IF <fs_it_info_out>-zlx  ='E' .
          <fs_it_out>-input_retu  =  <fs_it_info_out>-zmess.
          <fs_it_out>-color =  'C610'."设置行的颜色
        ELSE.
          <fs_it_out>-input_retu  =  <fs_it_info_out>-zmess.
           <fs_it_out>-color =  ''."设置行的颜色
        ENDIF.
      ENDIF.
    ENDIF.


  ENDLOOP.

*  READ TABLE  it_out_input INTO wa_out_input WITH  KEY input_retu LIKE  '%1%' .
*  IF sy-subrc <> 0.


*    "调用BAPI复制信息记录
*    CALL FUNCTION 'ZRFC_INCHA_INFORECORD'
*      EXPORTING
*        p_me       = 'A'
** IMPORTING
**       LV_REPORTHEAD       =
**       V_SUBRC    =
**       V_MESSAGE  =
*      TABLES
*        it_tab     = it_info_create
*        it_tab_out = it_info_out.
*
*    LOOP AT it_info_out ASSIGNING FIELD-SYMBOL(<fs_it_info_out>).
*      IF  sy-subrc = 0.
*        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
*          EXPORTING
*            input  = <fs_it_info_out>-matnr
*          IMPORTING
*            output = <fs_it_info_out>-matnr.
*
*
*        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
*          EXPORTING
*            input  = <fs_it_info_out>-lifnr
*          IMPORTING
*            output = <fs_it_info_out>-lifnr.
*
*
*
*        READ TABLE it_out ASSIGNING FIELD-SYMBOL(<fs_it_out>) WITH  KEY lifnr = <fs_it_info_out>-lifnr  matnr  = <fs_it_info_out>-matnr input_werks = <fs_it_info_out>-werks   ekorg  = <fs_it_info_out>-ekorg  input_esokz =  <fs_it_info_out>-esokz.
*        IF sy-subrc = 0.
*          <fs_it_out>-input_retu  =  <fs_it_info_out>-zmess.
*        ENDIF.
*      ENDIF.
*    ENDLOOP.


*  ENDIF.


*  DATA LS_STBL      TYPE LVC_S_STBL.
*  DATA: LO_GRID TYPE REF TO CL_GUI_ALV_GRID.
*  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
*    IMPORTING
*      E_GRID = LO_GRID.
*  "稳定刷新
*  LS_STBL-ROW = 'X'." 基于行的稳定刷新
*  LS_STBL-COL = 'X'." 基于列稳定刷新
*  IF LO_GRID IS NOT INITIAL.
*    CALL METHOD LO_GRID->REFRESH_TABLE_DISPLAY
*      EXPORTING
*        IS_STABLE = LS_STBL.
*  ENDIF.


  CLEAR: it_info_create[] ,  it_info_out[],it_info_create ,  it_info_out  ,it_out_input ,it_out_input[].
*  FREE:it_info_create[] ,  it_info_out[],it_out_input[].



ENDFORM.


"输出的内表里面的搜索帮助---IT023-----2024年6月20日

*GS_FCAT-F4AVAILABL = 'X'.

*&---------------------------------------------------------------------*
*& Form FRM_ALV_SET_EVENTS
*&---------------------------------------------------------------------*
*& ALV事件注册
*&---------------------------------------------------------------------*
FORM frm_alv_set_events .
  DATA: ls_events TYPE slis_alv_event.

  ls_events-name = 'CALLER_EXIT' .
  ls_events-form =  'FRM_CALLER_EXIT'.
  APPEND ls_events TO lt_events.
ENDFORM.



*&---------------------------------------------------------------------*
*& 包含               ZHYR_202308_HF04_CLASS
*&---------------------------------------------------------------------*
DATA: go_grid TYPE REF TO cl_gui_alv_grid.
*&-----------------------------------------------------------------*
*&  类定义
*&-----------------------------------------------------------------*
CLASS   lcl_event_receiver DEFINITION.
  PUBLIC SECTION.
    METHODS: handle_f4
                  FOR EVENT onf4 OF cl_gui_alv_grid
      IMPORTING e_fieldname      "字段名称
                  es_row_no        "行号,注意这是个结构
                  er_event_data .  "事件数据
ENDCLASS.

*&-----------------------------------------------------------------*
*&  类实现
*&-----------------------------------------------------------------*
CLASS: lcl_event_receiver IMPLEMENTATION.
  METHOD handle_f4.
    DATA: ls_stable TYPE lvc_s_stbl.   "定义基于稳定的刷新 所需要参数。
    ls_stable-row = 'X'.    "行固定
    ls_stable-col = 'X'.   "列固定
    IF e_fieldname = 'INPUT_ESOKZ'.   "又是小写的问题,一定要注意
      PERFORM f4_help_zxm USING e_fieldname    "字段名称
                                es_row_no       "行号,注意这是个结构
                                er_event_data .    "事件数据
    ENDIF.
****使用类:CL_GUI_ALV_GRID的实例的方法,稳定刷新
    CALL METHOD go_grid->refresh_table_display
      EXPORTING
        is_stable = ls_stable.
  ENDMETHOD.
ENDCLASS.
*&---------------------------------------------------------------------*
*& Form F4_HELP_ZXM
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*&      --> E_FIELDNAME
*&      --> ES_ROW_NO
*&      --> ER_EVENT_DATA
*&---------------------------------------------------------------------*
FORM f4_help_zxm  USING    p_e_fieldname   TYPE lvc_fname   "输入的: 列名称
                           p_es_row_no     TYPE lvc_s_roid   "输入的: 行号
                           p_er_event_data TYPE REF TO cl_alv_event_data.
  DATA: lt_return_tab TYPE STANDARD TABLE OF ddshretval,
        ls_return_tab TYPE ddshretval.
  READ TABLE it_out INTO wa_out INDEX p_es_row_no-row_id.
  SELECT  ernam , esokz
    INTO TABLE @DATA(lt_f4_help)
    FROM eine.
  SORT lt_f4_help BY esokz.
  DELETE ADJACENT DUPLICATES FROM lt_f4_help COMPARING esokz.

  LOOP AT lt_f4_help ASSIGNING FIELD-SYMBOL(<fs_lt_f4_help>).
    IF sy-subrc = 0.

      IF  <fs_lt_f4_help>-esokz = '0'.
        <fs_lt_f4_help>-ernam  = '标准'.
      ENDIF.
      IF  <fs_lt_f4_help>-esokz = '2'.
        <fs_lt_f4_help>-ernam  = '寄售'.
      ENDIF.
      IF  <fs_lt_f4_help>-esokz = '3'.
        <fs_lt_f4_help>-ernam  = '委外'.
      ENDIF.

    ENDIF.

  ENDLOOP.

  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
      retfield         = 'INPUT_ESOKZ' "搜索帮助表:GT_F4_HELP 里的字段:ZXM
      dynpprog         = sy-repid    " 当前程序
      dynpnr           = sy-dynnr     "当前屏幕号
      value_org        = 'S'           "默认为C但是此处不用S不行
      callback_program = sy-repid     "回诘程序,也为当前程序
    TABLES
      value_tab        = lt_f4_help   " F4 搜索帮助表 (说明:函数对这个表参照类型并未做规定,但返回表的类型是定死的为:DDSHRETVAL
      return_tab       = lt_return_tab   "选择后,返回表值:已经选的值。准备用来回写到ALV表对应字段上
    EXCEPTIONS
      parameter_error  = 1
      no_values_found  = 2
      OTHERS           = 3.
  IF sy-subrc = 0.
    READ TABLE lt_return_tab INTO ls_return_tab INDEX 1.
    IF ls_return_tab-fieldval IS NOT INITIAL.
      wa_out-input_esokz = ls_return_tab-fieldval.
    ENDIF.

    MODIFY it_out FROM wa_out INDEX p_es_row_no-row_id TRANSPORTING input_esokz. "注意工作区内唯一发生改变的是PLANETYPE 字段
****X表示事件已经处理,不会去调取系统标准搜索帮助
    p_er_event_data->m_event_handled = 'X'.
  ENDIF.


  "刷新数据回写
*  DATA: lo_guid TYPE REF TO cl_gui_alv_grid.
*  CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
*    IMPORTING
*      e_grid = lo_guid.
*  CALL METHOD lo_guid->check_changed_data.
*  CALL METHOD lo_guid->refresh_table_display.


ENDFORM.

*&---------------------------------------------------------------------*
*& Form FRM_CALLER_EXIT
*&---------------------------------------------------------------------*
*& CALLER_EXIT响应
*&---------------------------------------------------------------------*
FORM frm_caller_exit USING e_grid TYPE slis_data_caller_exit.
  DATA: lo_event_receiver TYPE REF TO lcl_event_receiver,
        lt_f4             TYPE lvc_t_f4 WITH HEADER LINE.

  IF go_grid IS INITIAL.
    CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
      IMPORTING
        e_grid = go_grid.
  ENDIF.

**注册ALV事件-单元格修改
  CALL METHOD go_grid->register_edit_event
    EXPORTING
      i_event_id = cl_gui_alv_grid=>mc_evt_enter
    EXCEPTIONS
      error      = 1
      OTHERS     = 2.

**指定OOALV 中F4字段
  lt_f4-fieldname = 'INPUT_ESOKZ'.   "指定字段'PLANE'有搜索帮助
  lt_f4-register  = 'X'.
  lt_f4-getbefore = 'X'.
  lt_f4-chngeafter  = 'X'.
  APPEND lt_f4.
  CALL METHOD go_grid->register_f4_for_fields
    EXPORTING
      it_f4 = lt_f4[].
**** 注册F4 搜索帮助处理方法
  CREATE OBJECT lo_event_receiver.
  SET HANDLER lo_event_receiver->handle_f4 FOR go_grid.
ENDFORM.
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟主要经济体公布的最新数据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家中的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与中国已互相成为双方最大的交易伙伴。中国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占中国外贸总值的15.4%。在过去20余年中,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家主要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗商品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营商环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理商 客户情况:东南亚本地客户及偏好分析 营商环境:东南亚营商环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com
完整版:https://download.csdn.net/download/qq_27595745/89522468 【课程大纲】 1-1 什么是java 1-2 认识java语言 1-3 java平台的体系结构 1-4 java SE环境安装和配置 2-1 java程序简介 2-2 计算机中的程序 2-3 java程序 2-4 java类库组织结构和文档 2-5 java虚拟机简介 2-6 java的垃圾回收器 2-7 java上机练习 3-1 java语言基础入门 3-2 数据的分类 3-3 标识符、关键字和常量 3-4 运算符 3-5 表达式 3-6 顺序结构和选择结构 3-7 循环语句 3-8 跳转语句 3-9 MyEclipse工具介绍 3-10 java基础知识章节练习 4-1 一维数组 4-2 数组应用 4-3 多维数组 4-4 排序算法 4-5 增强for循环 4-6 数组和排序算法章节练习 5-0 抽象和封装 5-1 面向过程的设计思想 5-2 面向对象的设计思想 5-3 抽象 5-4 封装 5-5 属性 5-6 方法的定义 5-7 this关键字 5-8 javaBean 5-9 包 package 5-10 抽象和封装章节练习 6-0 继承和多态 6-1 继承 6-2 object类 6-3 多态 6-4 访问修饰符 6-5 static修饰符 6-6 final修饰符 6-7 abstract修饰符 6-8 接口 6-9 继承和多态 章节练习 7-1 面向对象的分析与设计简介 7-2 对象模型建立 7-3 类之间的关系 7-4 软件的可维护与复用设计原则 7-5 面向对象的设计与分析 章节练习 8-1 内部类与包装器 8-2 对象包装器 8-3 装箱和拆箱 8-4 练习题 9-1 常用类介绍 9-2 StringBuffer和String Builder类 9-3 Rintime类的使用 9-4 日期类简介 9-5 java程序国际化的实现 9-6 Random类和Math类 9-7 枚举 9-8 练习题 10-1 java异常处理 10-2 认识异常 10-3 使用try和catch捕获异常 10-4 使用throw和throws引发异常 10-5 finally关键字 10-6 getMessage和printStackTrace方法 10-7 异常分类 10-8 自定义异常类 10-9 练习题 11-1 Java集合框架和泛型机制 11-2 Collection接口 11-3 Set接口实现类 11-4 List接口实现类 11-5 Map接口 11-6 Collections类 11-7 泛型概述 11-8 练习题 12-1 多线程 12-2 线程的生命周期 12-3 线程的调度和优先级 12-4 线程的同步 12-5 集合类的同步问题 12-6 用Timer类调度任务 12-7 练习题 13-1 Java IO 13-2 Java IO原理 13-3 流类的结构 13-4 文件流 13-5 缓冲流 13-6 转换流 13-7 数据流 13-8 打印流 13-9 对象流 13-10 随机存取文件流 13-11 zip文件流 13-12 练习题 14-1 图形用户界面设计 14-2 事件处理机制 14-3 AWT常用组件 14-4 swing简介 14-5 可视化开发swing组件 14-6 声音的播放和处理 14-7 2D图形的绘制 14-8 练习题 15-1 反射 15-2 使用Java反射机制 15-3 反射与动态代理 15-4 练习题 16-1 Java标注 16-2 JDK内置的基本标注类型 16-3 自定义标注类型 16-4 对标注进行标注 16-5 利用反射获取标注信息 16-6 练习题 17-1 顶目实战1-单机版五子棋游戏 17-2 总体设计 17-3 代码实现 17-4 程序的运行与发布 17-5 手动生成可执行JAR文件 17-6 练习题 18-1 Java数据库编程 18-2 JDBC类和接口 18-3 JDBC操作SQL 18-4 JDBC基本示例 18-5 JDBC应用示例 18-6 练习题 19-1 。。。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值