[Teste] Função de expansão da rota do processo

Durante o desenvolvimento, será necessário exibir a lista de receitas mestre C203 em lotes. Normalmente, quando fazemos a lista de processos da indústria de manufatura discreta geral, podemos acessar diretamente os números através dos links mútuos das tabelas a seguir.

  1. MAPL-Atribuir lista de tarefas ao material
  2. PLKO-Lista de Tarefas-Cabeçalho
  3. PLAS-Lista de Tarefas-Processo / Seleção de Trabalho
  4. PLPO-Lista de Tarefas-Processo / Trabalho
  5. CRHD-Work Center Header

Código de amostra:

  SELECT A~WERKS A~MATNR A~PLNTY 
         A~PLNNR A~PLNAL A~DATUV
         B~KTEXT D~BMSCH D~MEINH
         D~LAR01 D~VGE01 D~VGW01
         D~LAR02 D~VGE02 D~VGW02
         D~LAR03 D~VGE03 D~VGW03
         D~LAR04 D~VGE04 D~VGW04
         D~LAR05 D~VGE05 D~VGW05
         D~LAR06 D~VGE06 D~VGW06
         D~PLNKN D~DATUV AS DATUV_P
         E~NAME1 F~MAKTX G~ARBPL
         H~KTEXT AS ARBPL_KTEXT

  FROM MAPL AS A

  INNER JOIN PLKO AS B
        ON A~PLNTY = B~PLNTY AND
           A~PLNNR = B~PLNNR AND
           A~PLNAL = B~PLNAL

  INNER JOIN PLAS AS C
        ON A~PLNTY = C~PLNTY AND
           A~PLNNR = C~PLNNR AND
           A~PLNAL = C~PLNAL

  INNER JOIN PLPO AS D
        ON D~PLNTY = C~PLNTY AND
           D~PLNNR = C~PLNNR AND
           D~PLNKN = C~PLNKN

  INNER JOIN T001W AS E
        ON A~WERKS = E~WERKS

  INNER JOIN MAKT AS F
        ON A~MATNR = F~MATNR

  INNER JOIN CRHD AS G
        ON D~ARBID = G~OBJID

  INNER JOIN CRTX AS H
        ON G~OBJID = H~OBJID

  INNER JOIN MARA AS I
        ON A~MATNR = I~MATNR
  INNER JOIN MARC AS J
        ON A~WERKS = J~WERKS AND
           A~MATNR = J~MATNR

  INTO CORRESPONDING FIELDS OF TABLE GT_ROUTING_LIST

  WHERE A~WERKS IN S_WERKS AND
        A~MATNR IN S_MATNR AND
        A~LOEKZ = ' ' AND
        B~LOEKZ = ' ' AND
        C~LOEKZ = ' ' AND
        D~LOEKZ = ' ' AND
        A~PLNTY IN S_PLNTY AND
        F~SPRAS = SY-LANGU AND
        H~SPRAS = SY-LANGU AND
        I~MTART IN S_MTART AND
        J~DISPO IN S_DISPO.

Mas a indústria de manufatura por processo não é o caso, geralmente sua fórmula mestre é semelhante à seguinte figura:

Verifique a tabela de PLPO e alguns centros de trabalho (ou seja, os recursos mencionados aqui) não serão exibidos, causando alguns problemas ao desenvolvimento. Não tenho certeza sobre o negócio específico. Amigos que estão familiarizados com a indústria de manufatura de processos podem deixar uma mensagem para informar.

 

Aqui está uma função útil: CP_EX_PLAN_READ

      CALL FUNCTION 'CP_EX_PLAN_READ'
        EXPORTING
          CMODE_IMP     = 'R'
          PLNTY_IMP     = GT_TAB-PLNTY
          PLNNR_IMP     = GT_TAB-PLNNR
          PLNAL_IMP     = GT_TAB-ALNAL
          STTAG_IMP     = SY-DATUM
*         CHECK_IMP     = 'X'
*         CUOBJ_IMP     =
*         PARNT_IMP     = ' '
*         FCAPO_IMP     = ' '
*         TCA11_IMP     = ' '
*         FLG_VAL_REC_IMP                      = ' '
*         STLNR_IMP     =
*         I_PLAS_KEY_TAB                       =
*         PRODCOST      = ' '
*         I_BUSINESS_OBJECT                    =
*         I_FLG_CHARACTERISTICS_PLANNING       = ' '
*         I_EDGNO       =
*         VBELN_IMP     = ' '
*         POSNR_IMP     = 0
*         LOSGR_IMP     = 1
*         I_PLANT       =
*         I_FLG_CALLED_F_MRP                   = ' '
*   IMPORTING
*         RES_APPR_CHK_EXP                     =
*         ERROR_EXP     =
*         E_MAPL        =
*         PI_SET_USED   =
        TABLES
*         MLST_EXP      =
*         PLAB_EXP      =
*         PLAS_EXP      =
*         PLFH_EXP      =
*         PLFL_EXP      =
*         PLFT_EXP      =
*         PLFV_EXP      =
          PLKO_EXP      = LT_PLKO_EXP
*         PLMZ_EXP      =
          PLPO_EXP      = LT_PLPO_EXP
*         PLTX_EXP      =
*         AENNR_EXP     =
*         PLMK_EXP      =
*         PLMW_EXP      =
        EXCEPTIONS
          NOT_FOUND     = 1
          PLNAL_INITIAL = 2
          OTHERS        = 3.
      IF SY-SUBRC <> 0.
      ENDIF.

Basta inserir os seguintes parâmetros:

  • Tipo de lista de tarefas PLNTY (tipo "2")
  • PLNNR-Código do Grupo de Lista de Tarefas
  • Contador de grupo PLNAL
  • STTAG-Data de vigência (data atual)

Atenção especial deve ser dada ao campo "PLNAL" (contador de grupo). Zeros à esquerda precisam ser adicionados, caso contrário, a função não obterá um valor.

      CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
        EXPORTING
          INPUT  = GT_TAB-ALNAL
        IMPORTING
          OUTPUT = GT_TAB-ALNAL.

 

 

Apenas este registro é inútil, por favor, não exclua minha postagem do blog pelo administrador da CSDN, obrigado.

 

Acho que você gosta

Origin blog.csdn.net/zhongguomao/article/details/108027723
Recomendado
Clasificación