SCC1 - Copy by Transport Request

SAP 2010. 11. 24. 11:56 Posted by KindKay

'SAP' 카테고리의 다른 글

SAP Event  (5) 2011.01.17
Scheduling background job by triggering an event  (0) 2011.01.17
ALV Buffer Reset  (1) 2010.11.16
PP - Long-Term Planning  (2) 2010.09.22
Frequently Used Tables  (1) 2010.09.20

Search help exit

SAP/ABAP 개발 2010. 11. 17. 09:50 Posted by KindKay





  function zpp_wooden_f4_help_exit.
*"----------------------------------------------------------------------
*"*"Local Interface:
*"  TABLES
*"      SHLP_TAB TYPE  SHLP_DESCT
*"      RECORD_TAB STRUCTURE  SEAHLPRES
*"  CHANGING
*"     REFERENCE(SHLP) TYPE  SHLP_DESCR
*"     REFERENCE(CALLCONTROL) TYPE  DDSHF4CTRL
*"----------------------------------------------------------------------

  data: lv_matnr  type matnr,
        lv_aufnr  type aufnr,
        lv_maktx  type maktx,
        lv_inch   like ztpp1140-inch01,
        lv_width  like ztpp1140-width01,
        lv_height like ztpp1140-height01,
        lv_char.

  clear: lv_matnr, lv_maktx, lv_aufnr.

  case sy-tcode.
    when 'CO01' or 'CO01' or 'CO01'.
      get parameter id 'MAT' field lv_matnr.
      get parameter id 'ANR' field lv_aufnr.

    when others.
      clear: lv_matnr, lv_maktx, lv_aufnr.
  endcase.

  if callcontrol-step = 'PRESEL1'.
    clear: g_check_first.
    return.
  endif.

  check lv_matnr is not initial or lv_aufnr is not initial.

  if lv_matnr is initial.
    select single matnr
      into lv_matnr
      from afpo
     where aufnr eq lv_aufnr.
  endif.

  select single maktx
    into lv_maktx
    from makt
   where matnr eq lv_matnr
     and spras eq sy-langu.

  if lv_maktx cs 'RTC'.
    clear: lv_char.
    call function 'ZPP_GETCHAR_SHIFT_LEFT'
      exporting
        i_matnr       = lv_matnr
        i_left        = 5
      importing
        e_char        = lv_char.

    if lv_char ne 'E'.
      clear: record_tab[].
      return.
    endif.
  else.
    clear: record_tab[].
    return.
  endif.

  call function 'F4UT_OPTIMIZE_COLWIDTH'
    tables
      shlp_tab = shlp_tab
      record_tab = record_tab
    changing
      shlp = shlp
      callcontrol = callcontrol.

  data: lt_ztpp1130   like table of ztpp1130 with header line,
        ls_record_tab like seahlpres.

  data: lt_ddshselops type table of ddshselopt.

  if callcontrol-step = 'SELECT'.
    perform get_characteristic using lv_matnr
                            changing lv_inch
                                     lv_width
                                     lv_height.

    clear: lt_ddshselops[].
    lt_ddshselops[] = shlp-selopt[].

    if lt_ddshselops[] is initial and g_check_first is initial.
      if lv_inch is not initial.
        perform append_model_selopt  tables lt_ddshselops
                                      using 'INCH01' lv_inch.

        perform append_model_selopt  tables lt_ddshselops
                                      using 'WIDTH01' lv_width.

        perform append_model_selopt  tables lt_ddshselops
                                      using 'HEIGHT01' lv_height.
      endif.

      shlp-selopt[] = lt_ddshselops[].
      g_check_first = 'X'.
    endif.

  endif.

endfunction.

WHERE - (cond_syntax)

SAP/ABAP 개발 2010. 11. 17. 08:15 Posted by KindKay

    data: cond_syntax type string.

  clear: cond_syntax

  case pa_werks.
    when 'P100'.
      lr_vstel-low = 'H110'.
      concatenate ' ( D~AUART LIKE ' '''' 'ZCD%' ''''
             into cond_syntax.
      concatenate cond_syntax 'OR D~AUART LIKE ' '''' 'ZEX%' ''''
             into cond_syntax.
      concatenate cond_syntax 'OR D~AUART LIKE ' '''' 'ZFB%' ''''
             into cond_syntax.
      concatenate cond_syntax 'OR D~AUART LIKE ' '''' 'ZFD%' ''''
             into cond_syntax.
      concatenate cond_syntax 'OR D~AUART LIKE ' '''' 'ZOR%' '''' ' )'
             into cond_syntax.
    when 'P200'.
      lr_vstel-low = 'H210'.
      concatenate ' D~AUART EQ ' '''' 'ZA1' ''''
             into cond_syntax.
  endcase.

  select a~edatu c~kunnr  a~vbeln a~posnr b~route
         b~matnr b~kwmeng b~zieme b~werks a~wmeng
    into corresponding fields of table gt_base
    from vbep as a inner join vbap as b
                           on a~vbeln eq b~vbeln
                          and a~posnr eq b~posnr
                   inner join vbpa as c
                           on a~vbeln eq c~vbeln
                          and c~parvw eq 'WE'     "Ship-to-party(SH)
                   inner join vbak as d
                           on a~vbeln eq d~vbeln
                   inner join mara as e
                           on b~matnr eq e~matnr
   where a~edatu in s_edatu
     and a~vbeln in s_vbeln
     and b~matnr in s_matnr
     and c~kunnr in s_kunnr
     and b~kwmeng ne ''
     and (cond_syntax).