Você está na página 1de 5

TABLES : t001w, cobrb, aufk.

IF sy-tcode = 'ME21N' OR sy-tcode = 'ME22N' OR sy-tcode = 'ME23N'.


**GIC SERVICES estrategia de liberacao 17/02/2005 - Inicio
DATA: v_kostl LIKE cobl-kostl,
v_sakto LIKE cekkozz-sakto,
v_knttp LIKE cekkozz-knttp,
v_kostv LIKE aufk-kostv,
v_aufnr LIKE aufk-aufnr.
DATA : line LIKE it_ekknu WITH HEADER LINE,
line2 LIKE it_bekpo WITH HEADER LINE.
*BOI - SC\Aspen - Thiago R.R. Escudeiro - 05/04/2005
DATA: BEGIN OF it_aufk OCCURS 0.
INCLUDE STRUCTURE aufk.
DATA: END OF it_aufk.
DATA: BEGIN OF it_cobrb OCCURS 0.
INCLUDE STRUCTURE cobrb.
DATA: END OF it_cobrb.
DATA: BEGIN OF it_cobrb_aux OCCURS 0.
INCLUDE STRUCTURE cobrb.
DATA: END OF it_cobrb_aux.
DATA: v_sort LIKE cobra-sort,
status(1) TYPE c.
*EOI - SC\Aspen - Thiago R.R. Escudeiro - 05/04/2005
**GIC SERVICES estrategia de liberacao 17/02/2005 - Fim

* SE O BOTAO FOR SALVAR OU VERIFICAR


IF sy-ucomm = 'MESAVE' OR sy-ucomm = 'MECHECKDOC'.
**GIC SERVICES estrategia de liberacao 17/02/2005 - Inicio
LOOP AT it_ekknu INTO line.
v_kostl = line-kostl.
v_sakto = line-sakto.
v_aufnr = line-aufnr.
ENDLOOP.

LOOP AT it_bekpo INTO line2.


v_knttp = line2-knttp.
ENDLOOP.

e_cekko = i_cekko.

IF v_knttp = 'F'.
* SC/ASPEN - Incio alterao - Renato Nicoleti - 06/04/2005
SELECT
FROM
INTO
WHERE

SINGLE objnr
aufk
aufk-objnr
aufnr = v_aufnr.

SELECT * FROM cobrb


INTO TABLE it_cobrb
WHERE objnr = aufk-objnr.
SORT it_cobrb DESCENDING by lfdnr.
READ TABLE it_cobrb INDEX 1.
IF it_cobrb-konty = 'CCS'.
e_cekko-kostl = it_cobrb-kontl.
ELSEIF it_cobrb-konty = 'ORD'.

IF it_cobrb-kontl = space.
WHILE status <> 'X'.
SELECT
FROM
INTO
WHERE

SINGLE objnr
aufk
aufk-objnr
aufnr = it_cobrb-aufnr.

SELECT * FROM cobrb


INTO TABLE it_cobrb
WHERE objnr = aufk-objnr.
SORT it_cobrb DESCENDING lfdnr.
READ TABLE it_cobrb INDEX 1.
IF it_cobrb-kontl = space.
status = space.
ELSE
status = 'X'.
e_cekko-kostl = it_cobrb-kontl
ENDIF.
ENDIF.
ENDWHILE.
ENDIF.

E_CEKKO-KOSTL = V_KOSTV.

*Fim da Alterao - SC\Aspen - Thiago R.R. Escudeiro - 05/04/2005


ELSE.
e_cekko-kostl = v_kostl.
ENDIF.
* PBF 01/04 INICIO
*
IF V_KNTTP = 'A'.
*
CLEAR V_KOSTV.
*
SELECT SINGLE KOSTL
*
INTO V_KOSTV
*
FROM ANLZ
*
WHERE BUKRS = I_CEKKO-BUKRS.
*
*
E_CEKKO-KOSTL = V_KOSTV.
*
*
ELSE.
*
*
E_CEKKO-KOSTL = V_KOSTL.
*
*
ENDIF.
* PBF 01/04 FIM

e_cekko-sakto = v_sakto.
e_cekko-knttp = v_knttp.
**GIC SERVICES estrategia de liberacao 17/02/2005 - Fim
************************************************************************
*inicio Comentario refenre a checagem do tipo de documento - 23.03.2005
************************************************************************
*GIC Services estrategia de liberacao 08/03/05 chamao 03050078 - Inicio
CASE i_cekko-bsart.
WHEN 'NB'.
IF v_knttp NE space.
MESSAGE e555(bctrain)
*
WITH 'Para este tipo de pedido a'
*
' Categoria da Class. Contbil'
*
' deve ser branco.'.
*** GIC - 21.03.2005
WITH 'Para Tipo de Pedido MRP'
' a Categoria da Class. Contbil'
' deve ser branco.'.
*** GIC - 21.03.2005
ENDIF.
WHEN 'ZR'.
IF v_knttp NE space.

MESSAGE e555(bctrain)
*
WITH 'Para este tipo de pedido a'
*
' Categoria da Class. Contbil'
*
' deve ser branco.'.
*** GIC - 21.03.2005
WITH 'Para Tipo de Pedido Remessa'
' a Categoria da Class. Contbil'
' deve ser branco.'.
*** GIC - 21.03.2005
ENDIF.
WHEN 'ZB'.
IF v_knttp NE 'K' AND v_knttp NE 'F'.
MESSAGE e555(bctrain)
*
WITH 'Para este tipo de pedido a'
*
' Categoria da Class. Contbil'
*
' deve ser K ou F.'.
*** GIC - 21.03.2005
WITH 'Para Tipo de Pedido Normal Manual'
' Categoria da Class. Contbil'
' deve ser K ou F.'.
*** GIC - 21.03.2005
ENDIF.
WHEN 'ZA'.
IF v_knttp NE 'A'.
MESSAGE e555(bctrain)
*
WITH 'Para este tipo de pedido a'
*
' Categoria da Class. Contbil'
*
' deve ser A.'.
*** GIC - 21.03.2005
WITH 'Para Tipo de Pedido Ativo'
' Categoria da Class. Contbil'
' deve ser A.'.
*** GIC - 21.03.2005
ENDIF.
ENDCASE.
**GIC Services estrategia de liberacao 08/03/05 chamao 03050078 - Final
************************************************************************
*Fim Comentario refenre a checagem do tipo de documento - 23.03.2005
************************************************************************
* SE O CENTRO PARA LIBERACAO ESTIVER VAZIO
IF i_cekko-submi = ' '.
MESSAGE e184(bctrain)
WITH 'Preencher centro p/liberao em dados adicionais.'.
ELSE.
* VERIFICAR CENTRO
SELECT SINGLE *
FROM t001w

WHERE werks = i_cekko-submi.


IF sy-subrc <> 0.
MESSAGE e184(bctrain)
WITH 'Centro para liberao inexistente'.
ENDIF.
ENDIF.
ENDIF.

ENDIF.
*>>SC/ASPEN: JUAN - 01/04/2005 - EXCLUSO
***GIC SERVICES estrategia de liberacao 17/02/2005 - Inicio
*e_cekko = i_cekko.
***GIC SERVICES estrategia de liberacao 17/02/2005 - Final
i_cekko = e_cekko.
*<<SC/ASPEN: JUAN - 01/04/2005 - EXCLUSO