Módulo: CÂMBIO FINANCEIRO
Funcionalidade: Remessa
Data/Hora da Publicação: 28/09/2006 00:00:00
Data/Hora Última Alteração: 18/02/2011 11:43:44
Descrição da Nota: REMESSA - DA STATUS CAMPOS TELA PAGAMENTO/RECEBIMENTO
Sintoma
Na criação da remessa financeira de recebimento, o campo centro de custo está obrigatório, quando
deveria ser obrigatório apenas para o pagamento. Ao alterar o parâmetro da tabela PWS/ZYGL009 -
Atualização de Grupos de Campos por Funcionalidade tornando o campo facultativo, o sistema não faz
distinção entre pagamento e recebimento.
Solução
Criar uma nova tela de recebimento(0108) no programa de remessa,onde a mesma será em branco só para
não ser utilizada por outra funcionalidade da mesma, pois não há necessidade de duplicar as telas
0105(Principal) e 0104(Objetos de Resultado). Com isso será tratado no próprio código do programa a
separação de Recebimento e Pagamento referente ao status dos campos parametrizado na /PWS/ZYGL009,
onde Recebimento utiliza tela 0108 e Pagamento ultiliza as telas atuais: 0105 e 0104.
Criar tela 0004 para selecionar o tipo de remessa antes de criar a mesma, quando for sem origem.
Nesta tela terão as opções Recebimento e Pagamento. Com isso, o campo /pws/zycbt124-tpoper ficará
fechado e já virá carregado de acordo com a seleção: Recebimento = R, Pagamento = P.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 02171 Data: 28/09/2006 Hora: 13:42:19
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 02171
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00025
Agrupamento : 00133
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
REMESSA - DA STATUS CAMPOS TELA PAGAMENTO/RECEBIMENTO
----------------------------------------------------------------------------------------------------
Palavras Chave:
REMESSA DA STATUS CAMPOS TELA PAGAMENTO/RECEBIMENTO
/PWS/ZYGL009 CLASSIFICAÇÃO CONTÁBIL OBJETO DE RESULTADO
----------------------------------------------------------------------------------------------------
Objetos da nota:
CUAD /PWS/SAPMZYCA109
DYNP /PWS/SAPMZYCA109 0004
DYNP /PWS/SAPMZYCA109 0101
DYNP /PWS/SAPMZYCA109 0105
DYNP /PWS/SAPMZYCA109 0106
DYNP /PWS/SAPMZYCA109 0108
REPS /PWS/MZYCA109F01
REPS /PWS/MZYCA109I01
REPS /PWS/MZYCA109O01
REPS /PWS/MZYCA109TOP
----------------------------------------------------------------------------------------------------
Modificações efetuadas em CUAD /PWS/SAPMZYCA109
Criar:
STATUS: 0004
ATRIBUTOS DE STATUS
TEXTO BREVE: CA - Status Tela 004
Classe de Desenvolvimento /PWS/ZYCA
CATEGORIA DE STATUS
(X) - STATUS DIÁLOGO
(_) - CAIXA DE DIÁLOGO
(_) - MENU DE CONTEXTO
Barra de Botões
BOTÃO ESTÁTICO
CÓDIGO DE FUNÇÃO: ENTE
TEXTO DE FUNÇÃO: Enter
NOME DE ÍCONE: ICON_OKAY
CÓDIGO DE FUNÇÃO: BACK
TEXTO DE FUNÇÃO: Cancelar
NOME DE ÍCONE: ICON_CANCEL
Teclas de Função
ENTE
BACK
TÍTS GUI
Criar:
Classe de Desenvolvimento /PWS/ZYCA
CODE TÍTULO: 0004
TÍTULO: CB - Tipo de Remessa
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA109 0004
Criar tela
Descrição breve CA - Remessas - Tela de Seleção Tipo(Recebimento/Pagamento)
Idioma original P
Classe de Desenvolvimento /PWS/ZYCA
Tipo tela Normal
Tela seguin 0004
Linhas/colunas Ocupado 4 24
Atual. 27 120
Lay-out Tela - Criar dois campos Radiobutton, dentro de um quadro.
O Pagamento
O Recebimento
Abaixo posicionamento de cada:
Quadr 1 1 24 24 1 CHAR
RB_PAG
Rádio 2 2 1 1 1 CHAR Ent Off
RB_PAG
Rádio 2 4 9 9 1 CHAR
RB_REC
Rádio 3 2 1 1 1 CHAR Ent Off
RB_REC
Rádio 3 4 11 11 1 CHAR
OK_CODE
OK
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA109 0101
Tornar o campo /PWS/ZYCBE124-TPOPER fechado para digitação.
PROCESS BEFORE OUTPUT.
MODULE status_0004.
PROCESS AFTER INPUT.
MODULE: user_command_0004.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA109 0105
Descrição Breve:
De: CA - Rateio por centro - principal
Para: CA - Rateio por centro - Principal - Pagamento
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA109 0106
Descrição Breve:
De: CA - Rateio por centro - impostos/contribuições
Para: CA - Rateio por centro - Impostos/Contribuições - Pagamento
----------------------------------------------------------------------------------------------------
Modificações efetuadas em DYNP /PWS/SAPMZYCA109 0108
Criar tela em branco, apenas para registrar que a mesma é utilizada pelo programa.
Descrição breve CA - Remessas - Tela de Seleção Tipo(Recebimento/Pagamento)
Idioma original P
Classe de Desenvolvimento /PWS/ZYCA
Tipo tela Normal
Tela seguin 0108
Linhas/colunas Ocupado 0 0
Atual. 27 120
PROCESS BEFORE OUTPUT.
* TELA EM BRANCO QUE NÃO DEVE SER UTILIZADA
* O número da mesma é utilizado na parametrização da /PWS/ZYGL009,
* separando Principal de Recebimento(0108) e Principal de
* Pagamento(0105)
* MODULE STATUS_0108.
*
PROCESS AFTER INPUT.
* MODULE USER_COMMAND_0108.
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA109F01
...
CLEAR: itab_t320[],
itab_nome_campo[],
v_nome_campo,
v_comp.
MOVE 'CCO' TO v_cod_grupo.
* >> Início da inclusão: FORM TRATA_CAMPOS_FUNCIONALIDADE
IF sy-dynnr = '0105' AND /pws/zycbe124-tpoper = 'R'.
* << Fim da inclusão
SELECT campo flag
FROM /pws/zyglt320
INTO TABLE itab_t320
WHERE programa EQ sy-repid AND
* >> Início da inclusão: FORM TRATA_CAMPOS_FUNCIONALIDADE
tela EQ '0108' AND
cod_grupo EQ v_cod_grupo.
ELSE.
SELECT campo flag
FROM /pws/zyglt320
INTO TABLE itab_t320
WHERE programa EQ sy-repid AND
* << Fim da inclusão
tela EQ sy-dynnr AND
cod_grupo EQ v_cod_grupo.
* >> Início da inclusão: FORM TRATA_CAMPOS_FUNCIONALIDADE
ENDIF.
* << Fim da inclusão
CASE sy-dynnr.
WHEN '0105'.
LOOP AT tc_principal-cols
INTO wa_cols.
MOVE wa_cols-screen-name TO itab_nome_campo-nome_campo_tela.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA109I01
...
MODULE user_command_0002 INPUT.
CASE ok_code.
WHEN 'ENTE'.
IF v_sori = 'X'.
/pws/zycbe124-criacao = 'S'.
* >> Início da inclusão: MODULE USER_COMMAND_0002
CALL SCREEN '0004' STARTING AT 2 2 ENDING AT 27 4.
IF ok_code EQ 'ENTE'.
if rb_rec = 'X'.
/pws/zycbe124-tpoper = 'R'.
else.
/pws/zycbe124-tpoper = 'P'.
endif.
* << Fim da inclusão
LEAVE TO SCREEN '0100'.
* >> Início da inclusão: MODULE USER_COMMAND_0002
ELSE.
LEAVE SCREEN.
ENDIF.
* << Fim da inclusão
ELSEIF v_ordem = 'X'.
/pws/zycbe124-criacao = 'O'.
PERFORM criar_remessa_ordem.
ELSEIF v_doc = 'X'.
/pws/zycbe124-criacao = 'D'.
...
...
MESSAGE e061 WITH text-178.
ENDIF.
ENDIF.
ENDIF.
ENDMODULE.
* >> Início da inclusão:
MODULE user_command_0004 INPUT.
CASE ok_code.
WHEN 'ENTE' or 'BACK'.
SET SCREEN 0.
LEAVE SCREEN.
ENDCASE.
ENDMODULE.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA109O01
...
v_nome_campo,
v_comp.
IF sy-dynnr EQ '0104' .
v_cod_grupo = 'CCR'.
ENDIF.
* >> Início da inclusão: MODULE TRATA_CAMPOS
IF sy-dynnr = '0104' AND /pws/zycbe124-tpoper = 'R'.
SELECT campo flag
FROM /pws/zyglt320
INTO TABLE itab_t320
WHERE programa EQ sy-repid AND
tela EQ '0108' AND
cod_grupo EQ v_cod_grupo.
ELSE.
* << Fim da inclusão
SELECT campo flag
FROM /pws/zyglt320
INTO TABLE itab_t320
WHERE programa = sy-repid AND
tela = sy-dynnr AND
cod_grupo = v_cod_grupo.
* >> Início da inclusão: MODULE TRATA_CAMPOS
ENDIF.
* << Fim da inclusão
SORT itab_t320 BY campo.
LOOP AT SCREEN.
itab_nome_campo-nome_campo_tela = screen-name.
APPEND itab_nome_campo.
ENDLOOP.
...
...
SET HANDLER evt_receiver->on_sapevent
FOR html_control.
PERFORM load_home_page.
ENDIF.
ENDMODULE.
* >> Início da inclusão:
MODULE status_0004 OUTPUT.
SET PF-STATUS '0004'.
SET TITLEBAR '004'.
ENDMODULE.
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCA109TOP
...
v_parafator LIKE tcurr-ffact,
v_control_ci(10) TYPE n,
v_control_is(10) TYPE n,
v_control_pi(10) TYPE n,
v_control_co(10) TYPE n,
* >> Início da exclusão:
v_indice TYPE i.
* << Fim da exclusão
* >> Início da inclusão:
v_indice TYPE i,
rb_rec(1) type c,
rb_pag(1) type c.
* << Fim da inclusão
DATA: v_nome_campo(35) TYPE c,
v_comp(35) TYPE c,
v_cod_grupo LIKE /pws/zyglt320-cod_grupo,
cont TYPE i VALUE 0,
v_tela LIKE sy-ucomm,
...