SAP ABAP - Batch Input Macker (Report)


Se você conhece batch Input sabe como é chato e trabalhoso montar um mapeamento.
Nada como usar a própria linguagem para construir e automatizar estes mapeamentos, certo?

Então aqui vai um programinha que já constroi tudo pra você.

Então da uma olhadinha no código no GitHub



Gostou da publicação? Então clica na raposinha e curta nossa fanpage \o/


Quer aprender ABAP definitivamente, sem precisar sair de casa?

Acessewww.abapfox.org


“O sucesso é a soma de pequenos esforços repetidos dia após dia” – Robert Collier


0 comentários:

ABAP SAP ~ AbapFox Importar arquivo do Excel em ABAP


Falaaaa galerinha da Fox,
Hoje vou dá um help em importação de arquivo do Excel para o mundo SAP \o//

0 comentários:

Importar arquivo do Excel em ABAP


Falaaaa galerinha da Fox,
Hoje vou dá um help em importação de arquivo do Excel para o mundo SAP \o//

3 comentários:

ABAP SAP ~ AbapFox ALV GRID com HOTSPOT e Cabeçalho no Relatório


HOTSPOT - São áreas especiais de uma lista de saída, como se fosse links. Se o usuário clicar uma vez em um campo de hotspot, um evento é acionado.

0 comentários:

ALV GRID com HOTSPOT e Cabeçalho no Relatório


HOTSPOT - São áreas especiais de uma lista de saída, como se fosse links. Se o usuário clicar uma vez em um campo de hotspot, um evento é acionado.

1 comentários:

ABAP SAP AbapFox - Curso Free de ABAP (Feito em WebDynpro)


Curso Free de ABAP - Da instalação do Minisap 7.00 até a construção de uma calculadora e cadastro no banco de dados.

Feito em WebDynpro. Confira!


Gostou da publicação? Então clica na raposinha e curta nossa fanpage \o/


Quer aprender ABAP definitivamente, sem precisar sair de casa?

Acessewww.abapfox.org

0 comentários:

ABAP SAP AbapFox - Curso Free de ABAP (Feito em WebDynpro)


Curso Free de ABAP - Da instalação do Minisap 7.00 até a construção de uma calculadora e cadastro no banco de dados.

Feito em WebDynpro. Confira!


Gostou da publicação? Então clica na raposinha e curta nossa fanpage \o/


Quer aprender ABAP definitivamente, sem precisar sair de casa?

Acessewww.abapfox.org

0 comentários:

ALV GRID - Cor e Semáforo entre Células


Falaaa galera da Fox!
Nesse post eu vou mostrar como colorir uma determinada célula do ALV, assim como mostrar semáforos entre as mesmas.

0 comentários:

Desbloqueio de Objeto - SM12


Fala galera da Fox!!!
Hoje vou falar um pouco sobre a transação SM12.

O sistema SAP é equipado com um grande mecanismo de bloqueio que sincroniza o acesso aos dados na base de dados. O propósito do mecanismo de bloqueio é para evitar que duas operações possam  alterar os mesmos dados na base de dados simultaneamente .

2 comentários:

Conhecendo o módulo de função: BTE - Adicionando campos em relatórios FBL's

Fala galerinha da Fox \o/

Nesse post vou falar um pouco sobre a ferramenta BTE. Tive que fazer uma demanda onde dependia dela e vi que poucas pessoas sabia do que se tratava. Se você precisar, só consultar aqui :)

BTE - Business Transaction Events, lembra um pouco o famoso enhancements. Muito comum o seu
uso no módulo FI, representam componentes de vendas e de distribuição a receber e a pagar.
As BTE’s não são utilizadas apenas pela SAP, mas também por clientes e terceiros.
A BTE tem uma interface pré-definida e permite anexar funcionalidade adicional na forma de
um Funtion Module.

O BTE é chamado pelo programa padrão SAP por uma chamada de função: OPEN_FI_PERFORM_ ou OUTBOUND_CALL_.
Esta função verifica se há algum BTE ativa de acordo com personalização.

Sem mais delongas, vamos  colocar a mão na massa. 

Descrição da requisição: " Inserir o nome do Fornecedor e Cliente em todos relatórios FBLs (Standard). Isso deverá ser feito através da ferramenta BTE.

Mãos a obra!!!

Primeiramente vamos na estrutura RFPOS e inserir os novos campos através da estrutura " .APPEND " que deverão aparecer no relatório.
>> SE11 >> Estrutura: RFPOS >> Exibir.


Procure se algum dos campos que você pretende utilizar já estar contido na estrutura, para não precisar criar outro igual (desnecessariamente).
Para isso você deverá pesquisar pelo elemento de dados que faz referência ao campo.
No meu caso como eu queria acrescentar 2 campos para exibição de nome, então meu elemento de dados é "NAME1_GP", mas você pode procurar da maneira que achar mais fácil :)


 Minha pesquisa trouxe o campo “ZNOMEF” que tem como elemento de dados “NAME1_GP” o mesmo que eu precisava. Procurei se tinha algum outro e não encontrei. Logo teria que adicionar apenas mais um campo para essa estrutura APPEND. Então eu cliquei no campo “.APPEND” e  acrescentei o campo “ZNOMEC” utilizando o mesmo elemento de dados “NAME1_GP”. Salve e ative.

Agora você deverá fazer exatamente a mesma coisa na estrutura RFPOSX.



Salve e ative.

OBS: Para minha necessidade o campo " ZNOMEF " já era destinado ao Fornecedor, mas caso o seu caso seja diferente, você pode adicionar uma outra estrutura " .APPEND " e colocar seus campos lá dentro por segurança ;)

Agora acesse a transação SE38 e execute o programa “ RFPOSXEXTEND ”, para atualizar as estruturas estendidas da RFPOS.
E também o programa “ BALVBUFDEL “, para atualizar o buffer do SAP com a nova estrutura.

Se liga nissoooo aquiiii que vai te poupar de criar um grupo de função atoaaaa 

Acesse a transação FIBF. Vai no Menu  >> Configurações  >> Módulos (P/S)  >>  ... de um cliente


Se vocês encontrarem uma função já associada ao mesmo evento que irá utilizar, apenas acessa a mesma e implemente sua lógica junto a que já estiver contida na função. Exemplo na imagem:


Caso não tenha nenhuma função associada a seu evento, você terá que criar uma ;)

Vamos na SE80 e crie um grupo de funções para a mesma.


O próximo passo é fazer a cópia da função SAMPLE_INTERFACE_00001650 para inserir a lógica correspondente ao preenchimento dos novos campos. (ex. ZINTERFACE_00001650 ).
Acesse  a transação SE37  e faça a cópia da função Standard.


Repetir o passo a seguir, informando o módulo que estará informando ao sistema:

Transação FIBF. Vai no MENU  >> Configurações  >> Módulos (P/S)  >>  ... de um cliente


Informar o seu Evento00001650 / Produto: Dê um nome ao mesmo / Módulo de FunçãoZINTERFACE_00001650 ( a sua função que você copiou )


Agoraaaaa é o seguinte, se você não fizer esse próximo passo, você vai virar uma raposa perturbada, vagando pela estrada sem entender nada \o/

Esse é pulo da raposa, pois aqui você irá cadastrar e ativar o produto. Se você não fizer isso, sua função será um fantasma para a SAP \o/.

Na transação FIBF. Vai no Menu  >> Configurações  >> Produtos  >>  ... de um cliente



Informe o nome do produto, um texto breve e ativaaaaaaaaaa. (flag: 'A').


OBS: Para essa situação onde eu quero apenas inserir novos campos no relatório, você pode ir direto na SE37 e copiar a função SAMPLE_INTERFACE_00001650, como eu fiz. Mas caso o seu objetivo não seja esse, então você deverá acessar a transação FIBF. No MENU acesse: Ambiente (U) >> Sistema de informação (P/S)


E está é a ferramenta BTE. Lembrando que existe dois tipos:
Publish & Subscribe as interfaces - Não é possível atualizar dados. Possível ter várias implementações
Interfaces Processes - Pode atualizar data. Apenas uma implementação ativa.

Caso você não sabia o parâmetro específico a informar, apenas execute a transação.


Logo será exibido uma lista de eventos e suas funcionalidades.


Caso você quisesse o evento " 00001650 ” (que foi o evento que nós utilizamos no tutorial), selecione a linha desejada e clique em “ Módulo de função modelo “.


Observe que simplesmente encurtou o passo que nós já havíamos feito antes.


Agora vamos editar a função que copiamos anteriormente.
Na guia “ Texto Fonte” é o bendito lugar onde você deverá inserir o seu código.


Abaixo vou postar o código que eu utilizei (para minha necessidade) para ajudar vocês a não colocar fogo na raposa, mas lembre-se que o seu caso pode ser diferente, então a lógica poderá ser outra \o/

Minha requisição: Inserir o nome do fornecedor e cliente em todas FBLs, ou seja, essa coisa linda que nós fizemos aqui, vai refletir nos relatórios: FBL1, FBL1H, FBL1N, FBL2, FBL2N, FBL5, FBL5H, FBL5N, FBL6 e FBL6N............. Loucooo né?!
Deixei bem comentado pra ficar fácil de entender.


FUNCTION ZINTERFACE_00001650.
*"----------------------------------------------------------------------
*"*"Interface local:
*"  IMPORTING
*"     VALUE(I_POSTAB) LIKE  RFPOS STRUCTURE  RFPOS
*"  EXPORTING
*"     VALUE(E_POSTAB) LIKE  RFPOS STRUCTURE  RFPOS
*"----------------------------------------------------------------------
* Declarando WA
DATA: wa_bseg TYPE bseg.

* Isso aqui já vem desse jeito, descomente apenas, se não entender faz o curso da Fox ;)
e_postab = i_postab.

* Limpa essa birosca para não correr o risco de dá merda lá na frente 
  CLEAR: wa_bseg.

* Selecione todos os campos da BSEG ( se vc quiser escolher os campos específicos, fica avonts )
  SELECT SINGLE *
           FROM bseg
           INTO wa_bseg                             “ Coloca os meninos aqui
          WHERE bukrs = i_postab-bukrs  “ Só vai pra WA_BSEG se isso aqui for verdadeiro
            AND gjahr = i_postab-gjahr       “ Isso aqui também
            AND belnr = i_postab-belnr.      “ E isso também \o/

* Se tiver encontrado algum código de fornecedor, procure seu nome
  IF wa_bseg-lifnr IS NOT INITIAL.

*  E_POSTAB é minha tabela de exportação
*  Buscando o NOME do Fornecedor
    SELECT SINGLE name1
             FROM lfa1
             INTO (e_postab-znomef)      “ ZNOMEF lembra dele lá na estrutura APPEND ? ;)
            WHERE lifnr EQ wa_bseg-lifnr.
  ENDIF.

* Se tiver encontrado algum código de cliente, procure seu nome
  IF wa_bseg-kunnr IS NOT INITIAL.

*  Buscando o NOME do Cliente
    SELECT SINGLE name1
             FROM kna1
             INTO (e_postab-znomec)    “ Haaa esse cara nós ascrencentamos na estrutura \o/
            WHERE kunnr EQ wa_bseg-kunnr.
  ENDIF.

* Wooow acabouuu, só isso \o///////////

ENDFUNCTION.

É isso aí pessoal, pode fazer um teste em qualquer um dos FBL's ( FBL1, FBL1H, FBL1N, FBL2, FBL2N, FBL5, FBL5H, FBL5N, FBL6 e FBL6N ) e executar o relatório.
Na exibição lembra de clicar no botão ''Modificar Layout" e selecionar os campos que você adicionou nas estruturas RFPOS e RFPOSX.


Prontoooo, ficou grandão, mas foi preciso para vocês não se perderem \o/////

Gostou da publicação? Então clica na raposinha e curta nossa fanpage \o/


Quer aprender ABAP definitivamente, sem precisar sair de casa?

Acessewww.abapfox.org

“O sucesso é a soma de pequenos esforços repetidos dia após dia” – Robert Collier

1 comentários:

SAP ABAP - Execute .JAR in ABAP Easy (Report RSBDCOS0)


I have to send emails from abap without configure all SMTP steps in sap. Then i built an .JAR that receive two parameters, execute and write in console the status.

to simplify, lets see the simplest example that i can get.

build a jar app:


This will send to output console the parameter passed .

Go to RSBDCOS0 in se38 and execute:


Change the directory (in my case, i didnt had the java_path configured, so i executed directly from java's path)



  Then I performed it passing the string 'ovos' (Eggs in portuguese)



And i received 'ovos'.

Now just debug this incredible report and see the magic:




Gostou da publicação? Então clica na raposinha e curta nossa fanpage \o/


Quer aprender ABAP definitivamente, sem precisar sair de casa?



Acessewww.abapfox.org







0 comentários:

ABAP SAP - Check Email Address FM SX_INTERNET_ADDRESS_TO_NORMAL


Function to check if the email address is ok!

Gostou da publicação? Então clica na raposinha e curta nossa fanpage \o/


Quer aprender ABAP definitivamente, sem precisar sair de casa?



Acessewww.abapfox.org

0 comentários:

ABAP SAP - WebDynpro DEMO Programs in MiniSap - Enjoy



Here i give a global view of a complete search of all demo programs that SAP give to us as example of Web Dynpro Applications. Look how they shine for you!

WDR_TEST_WEB_ICONS


DEMO_CONTEXT_PROP


DEMO_CUSTOM_EXT_FIELDS


DEMO_FLASH_BARCHART


DEMO_FLASH_FLIGHT


DEMO_CUSTOM_EXT_FIELDS

DEMO_MESSAGES


 DEMO_POPUPS_01

 DEMO_ROADMAP

DEMO_FLASH_PROFIT
DEMO_SELOPT_HIDE_BUTTONS - Demo SelectOptions -  Hide Standard Buttons


 DEMO_SILVERLIGHT_FLIGHTS



DEMO_SILVERLIGHT_SEATS


DEMO_SIMPLE_MAIN



 DEMO_TABLE

DEMO_TABLE_WITH_TREE


DEMO_TABSTRIP_VIEWS


DEMO_UIEL_MENU


DEMO_VALUE_HELP


DEMO_VARIABLE_DROPDOWN


DEMO_WD_CAR_RENTAL


FDT_WD_DEMO_EMBED_UI


salv_wd_demo_extended

POWL_EASY_DEMO

WDC_SPI_DEMO_AS


SALV_WD_TEST_UPLOAD_GEN


DEMOTREE


DEMO_CONTEXT_MENU_DYNAMIC





Gostou da publicação? Então clica na raposinha e curta nossa fanpage \o/


Quer aprender ABAP definitivamente, sem precisar sair de casa?



Acessewww.abapfox.org


















0 comentários:

Copyright © 2013 ABAP SAP - AbapFox! Aprenda ABAP Definitivamente