Professional Documents
Culture Documents
texto fonte:
FUNCTION ZZDMEE_EXIT_CNPJ_BP.
*"--------------------------------------------------------------------
--
*"*"Interface local:
*" IMPORTING
*" VALUE(I_TREE_TYPE) TYPE DMEE_TREETYPE
*" VALUE(I_TREE_ID) TYPE DMEE_TREEID
*" VALUE(I_ITEM)
*" VALUE(I_PARAM)
*" VALUE(I_UPARAM)
*" EXPORTING
*" REFERENCE(O_VALUE)
*" REFERENCE(C_VALUE)
*" REFERENCE(N_VALUE)
*" REFERENCE(P_VALUE)
*" TABLES
*" I_TAB
*"--------------------------------------------------------------------
--
*{ INSERT S4DK900961
1
* Template function module -------------------------------------------
-*
DATA: ls_item TYPE dmee_paym_if_type,
l_cnpj(20) TYPE c,
l_taxnum LIKE dfkkbptaxnum-taxnum.
ls_item = i_item.
CLEAR l_taxnum.
SELECT SINGLE taxnum INTO l_taxnum
FROM dfkkbptaxnum
WHERE partner EQ ls_item-fpayh-gpa1r
AND taxtype EQ 'BR1'.
IF NOT l_taxnum IS INITIAL.
CONCATENATE '000000'
l_taxnum
INTO l_cnpj.
c_value = l_cnpj.
ELSE.
CLEAR l_taxnum.
SELECT SINGLE taxnum INTO l_taxnum
FROM dfkkbptaxnum
WHERE partner EQ ls_item-fpayh-gpa1r
AND taxtype EQ 'BR2'.
IF NOT l_taxnum IS INITIAL.
CONCATENATE '000000000'
l_taxnum
INTO l_cnpj.
c_value = l_cnpj.
ENDIF.
ENDIF.
*} INSERT
ENDFUNCTION.
Função ZZDMEE_EXIT_BARCODE_EXT
texto fonte:
FUNCTION ZZDMEE_EXIT_BARCODE_EXT.
*"--------------------------------------------------------------------
*"*"Interface local:
*" IMPORTING
*" VALUE(I_TREE_TYPE) TYPE DMEE_TREETYPE_ABA
*" VALUE(I_TREE_ID) TYPE DMEE_TREEID_ABA
*" VALUE(I_ITEM)
*" VALUE(I_PARAM)
*" VALUE(I_UPARAM)
*" REFERENCE(I_EXTENSION) TYPE DMEE_EXIT_INTERFACE_ABA
*" EXPORTING
*" REFERENCE(O_VALUE)
*" REFERENCE(C_VALUE)
*" REFERENCE(N_VALUE)
*" REFERENCE(P_VALUE)
*" TABLES
*" I_TAB
*"--------------------------------------------------------------------
*{ INSERT S4DK901029
1
* Extended template function module ---------------------------------
--*
DATA: lv_glo_ref1 TYPE fac_glo_ref1,
lv_name TYPE thead-tdname,
ls_item TYPE dmee_paym_if_type.
*
ls_item = i_item.
lv_name = ls_item-fpayp-doc2r.
*
IF ls_item-fpayhx-formz EQ 'TAXUT'.
CLEAR lv_glo_ref1.
SELECT SINGLE glo_ref1 INTO lv_glo_ref1
FROM bseg
WHERE bukrs EQ ls_item-fpayp-doc2r(4)
AND belnr EQ ls_item-fpayp-doc2r+4(10)
AND gjahr EQ ls_item-fpayp-doc2r+14(4)
AND buzei EQ ls_item-fpayp-doc2r+18(3).
IF NOT lv_glo_ref1 IS INITIAL.
IF strlen( lv_glo_ref1 ) EQ 48.
IF LS_ITEM-FPAYHX-UBNKL(3) EQ '341'. " ITAU
c_value = lv_glo_ref1.
ELSEIF LS_ITEM-FPAYHX-UBNKL(3) EQ '237'. " BRADESCO
CONCATENATE lv_glo_ref1(11)
lv_glo_ref1+12(11)
lv_glo_ref1+24(11)
lv_glo_ref1+36(11)
INTO c_value.
ELSE. " OUTROS
c_value = lv_glo_ref1.
ENDIF..
CONDENSE c_value NO-GAPS.
ELSE.
c_value = lv_glo_ref1.
ENDIF.
ELSE.
c_value = lv_glo_ref1.
ENDIF.
ENDIF.
**
**** Linhas abaixo usar quando o cod de barras estiver no texto
*** DATA: lt_lines TYPE TABLE OF tline,
*** lw_lines TYPE tline,
*** lw_header TYPE thead,
*** lv_old_line TYPE thead-tdtxtlines,
*** lv_name TYPE thead-tdname,
*** ls_item TYPE dmee_paym_if_type.
***
*** ls_item = i_item.
***
*** lv_name = ls_item-fpayp-doc2r.
***
*** " Buscar o Código de barras gerado
*** CALL FUNCTION 'READ_TEXT'
*** EXPORTING
*** id = '0001'
*** language = sy-langu
*** name = lv_name
*** object = 'DOC_ITEM'
*** IMPORTING
*** header = lw_header
*** old_line_counter = lv_old_line
*** 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.
***
*** READ TABLE lt_lines INTO lw_lines INDEX 1.
*** IF sy-subrc IS INITIAL.
***
*** IF ls_item-fpayhx-formz EQ 'MUNIC' OR
*** ls_item-fpayhx-formz EQ 'DARF'.
***
*** IF strlen( lw_lines-tdline ) EQ 48.
*** CONCATENATE lw_lines-tdline(11)
*** lw_lines-tdline+12(11)
*** lw_lines-tdline+24(11)
*** lw_lines-tdline+36(11)
*** INTO c_value.
*** CONDENSE c_value NO-GAPS.
*** ELSE.
*** c_value = lw_lines-tdline.
*** ENDIF.
*** ELSE.
*** c_value = lw_lines-tdline.
*** ENDIF.
*** ENDIF.
*} INSERT
ENDFUNCTION.