Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 9

https://www.acorel.

nl/2016/07/creating-qr-codes-from-abap/

https://wiki.scn.sap.com/wiki/display/Snippets/Step-by-
step+New+Barcode+Technology+for+Smart+Forms

Criar nova Fonte SE73


Criada nova fonte ZQRTEST.

Criar nova SmartStyles


Criar novo SmartForm utilizando o estilo.
Novo programa para chamar o smartform passando como parametro o texto do QRCode.
*&--------------------------------------------------------------------
-*
*& Report  Z_TESTE_LUCIANO_QRCODE
*&
*&--------------------------------------------------------------------
-*
*&
*&
*&--------------------------------------------------------------------
-*
REPORT z_teste_luciano_qrcode.

PERFORM f_chama_smartforms.

*PERFORM f_chama_adobe_forms.

*&--------------------------------------------------------------------
-*
*&      Form  F_CHAMA_SMARTFORMS
*&--------------------------------------------------------------------
-*
*       text
*---------------------------------------------------------------------
-*
*  -->  p1        text
*  <--  p2        text
*---------------------------------------------------------------------
-*
FORM f_chama_smartforms .
  DATA: fname TYPE rs38l_fnam.
  DATA le_control_parameters TYPE ssfctrlop.
  DATA le_output_options TYPE ssfcompop.
  DATA ls_dados_gerais TYPE zteste_qrcode.
  le_output_options-tddest    = 'LOCL'.
  le_output_options-tdnewid   = 'X'.
  le_output_options-tdimmed   = 'X'.
  le_output_options-tddelete  = 'X'.
  le_output_options-tdcopies  = '1'.
  le_output_options-tdcopies  = '1'.

  le_control_parameters-preview = 'X'.

  CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
    EXPORTING
      formname           = 'Z_TESTE_QRCODE_LUCIANO'
    IMPORTING
      fm_name            = fname
    EXCEPTIONS
      no_form            = 1
      no_function_module = 2
      OTHERS             = 3.

*  ls_dados_gerais-emv = '00020101021226880014br.gov.bcb.pix2566qrpix-
h.bradesco.com.br/qr/v2/30bd852b-b735-487c-87d2-
7164c54226dc5204000053039865802BR5923Aco Cearense Industrial6007Caucai
a62070503***6304BE4A'.
  ls_dados_gerais-emv = '00020101021226880014br.gov.bcb.pix2566qrpix-
h.bradesco.com.br/qr/v2/5da6bba9-4187-4ccd-9490-
72f3d7d807c85204000053039865802BR5923Aco Cearense Industrial6007Caucai
a62070503***6304F843'.

  CALL FUNCTION fname
    EXPORTING
      control_parameters = le_control_parameters
      output_options     = le_output_options
      dados_header       = ls_dados_gerais
    EXCEPTIONS
      formatting_error   = 1
      internal_error     = 2
      send_error         = 3
      user_canceled      = 4
      OTHERS             = 5.
  IF sy-subrc <> 0.
  ENDIF.

ENDFORM.                    " F_CHAMA_SMARTFORMS
*&--------------------------------------------------------------------
-*
*&      Form  F_CHAMA_ADOBE_FORMS
*&--------------------------------------------------------------------
-*
*       text
*---------------------------------------------------------------------
-*
*  -->  p1        text
*  <--  p2        text
*---------------------------------------------------------------------
-*
FORM f_chama_adobe_forms .

* 2. Get the correspending function module.
  DATA ls_docpara TYPE sfpdocparams.
  DATA ls_outpara TYPE sfpoutputparams.
  DATA ls_output  TYPE fpformoutput.
  DATA lv_fm      TYPE rs38l_fnam.
  DATA  ls_frmname TYPE fpname.
  DATA ls_dados_gerais TYPE zteste_qrcode.

  ls_frmname = 'ZTESTE_QRCODE'.
*ls_dados_gerais-emv = '00020101021226880014br.gov.bcb.pix2566qrpix-
h.bradesco.com.br/qr/v2/30bd852b-b735-487c-87d2-
7164c54226dc5204000053039865802BR5923Aco Cearense Industrial6007Caucai
a62070503***6304BE4A'.

  ls_outpara-nodialog = abap_false.
*ls_outpara-dest = 'LOCL'.
  ls_outpara-preview = abap_true.
  ls_outpara-noprint = abap_false.

*ls_outpara-getpdf = abap_true.
  CALL FUNCTION 'FP_JOB_OPEN'
    CHANGING
      ie_outputparams = ls_outpara
    EXCEPTIONS
      cancel          = 1
      usage_error     = 2
      system_error    = 3
      internal_error  = 4
      OTHERS          = 5.
  IF sy-subrc <> 0.
    RETURN.
  ENDIF.
  TRY.
      CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
        EXPORTING
          i_name     = ls_frmname
        IMPORTING
          e_funcname = lv_fm.
    CATCH cx_root.
      RETURN.
  ENDTRY.

* 3. Generate the PDF data.
  ls_docpara-langu = sy-langu.
  ls_docpara-country = 'BR'.

  CALL FUNCTION lv_fm
    EXPORTING
      /1bcdwb/docparams  = ls_docpara
      dados_gerais       = ls_dados_gerais
*  IMPORTING
*    /1bcdwb/formoutput = ls_output
    EXCEPTIONS
      usage_error        = 1
      system_error       = 2
      internal_error     = 3.
  IF sy-subrc <> 0.
    RETURN.
  ENDIF.

  CALL FUNCTION 'FP_JOB_CLOSE'
    EXCEPTIONS
      usage_error    = 1
      system_error   = 2
      internal_error = 3
      OTHERS         = 4.
ENDFORM.                    " F_CHAMA_ADOBE_FORMS

You might also like