Sei sulla pagina 1di 3

Dicas e truques BC

Converses
1) A correspondncia entre CATEGORIA DE DADOS e TIPO DE DADOS se encontra no help
da clusula INTO do comando SELECT.
2) Para converter uma data no formato interno (AAAAMMDD) para o formato que o usurio
est trabalhando utilizar: WRITE SY-DATUM TO V_DATA. Onde o SY-DATUM pode ser
qualquer varivel tipo data e a V_DATA deve ser uma varivel caractere de 10 posies.
Ou utilizar a funo:

Call Function 'PERIOD_AND_DATE_CONVERT_OUTPUT'


Exporting
Internal_Date = varivel like sy-datum
Internal_Period = 1
Importing
External_Date = varivel char(10) .
3) Para converter um campo numrico para um alfa retirando pontos e vrgulas, alinhando
direita, arredondando, desconsiderando o sinal e preenchendo com zeros esquerda usar:
WRITE: <campo_num> TO <campo_char> DECIMALS 3 USING EDIT MASK RR______
(a quantidade de traos deve ser igual a quantidade de casas do campo_char)
TRANSLATE <campo_char> USING 0
Para considerar o sinal necessrio acrescer um V na ltima casa excluindo um dos traos
'RR_____V'. Porm quando o sinal for positivo a posio ficar em branco.
4) Para converter uma quantidade em outra unidade de medida utilizar a funo
UNIT_CONVERSION_SIMPLE
5) Para converter o ms por extenso utilizar a tabela transparente T247

Tabelas internas e dicionrio


1) Para eliminar entradas repetidas de uma tabela interna usar:
SORT <ITAB> BY F1 F2 F3...
DELETE ADJACENT DUPLICATES FROM <ITAB> COMPARING F1 F2 F3...
2) Alguns campos de tabela possuem formatos diferentes de exibio (OUTPUT) e gravao
(INPUT). Para converter esses valores, ou para saber se o campo possui essa
caracterstica, verificar se o domnio do campo possui um valor no campo Conversion exit.
Por exemplo, o campo LIKP-VBELN possui em seu domnio o Conversion exit ALPHA.
Isso indica que existem duas funes standard para converter o valor desse campo:
CONVERSION_EXIT_ALPHA_INPUT converte o campo para o formato de gravao,
neste caso, alinhado direita e preenchido com zeros esquerda.
CONVERSION_EXIT_ALPHA_OUTPUT converte o campo para o formato de exibio,
neste caso, alinhado esquerda sem zeros direita.
3) Para transportar somente o contedo de uma tabela transparente, criar uma change
request, e no EDITOR inserir a entrada: PgmID = R3TR , Obj = TABU e no campo
Obj.name colocar o nome da tabela transparente. Depois de inserido a linha dar um duplo
clique para preenchimento da chave. Para transportar todos os registros inserir apenas um
asterisco no primeiro campo genrico.

4) Para encontrar os textos descritivos de uma informao geralmente h uma tabela de


nome semelhante terminada em T. Como por exemplo, a tabela TVKGR - Grupo de
Vendedores possui o nome dos vendedores na tabela TVGRT. Ao fazer um trace SQL na
transao SE16 na tabela TVKGR por exemplo, possivel achar o relacionamento.
5) O limite de uma tabela interna so 4.394.608 registros.
6) Cardinalidade das chaves externas do dicionrio
Lado Esquerdo:
1 = Para cada registro da ChvExt, existe exatamente um registro na Check Table
C = No precisa existir o registro, Pode ser Branco
Lado Direito:
1 = Existe somente um registro para cada valor da Check Table
C = No mximo um registro dependente para cada registro da Check Table
N = Tem pelo menos um registro dependente para cada registro da Check Table.
CN = Qualquer nmero de registros para cada registro da Check Table

Funes standard
1) Para trabalhar com Notas Fiscais:
J_1B_NF_NUMBER_SEPARATE - Nota Fiscal System - Number Separate (NF number +
Series)
J_1B_NF_NUMBER_CONDENSE - Nota Fiscal System - Number Condense (NF number +
Series)
J_1B_NF_NUMBER_GET_NEXT - Nota Fiscal System - Get next Nota Fiscal number
J_1B_NF_DOCUMENT_READ - Carrega o header da nota fiscal em uma estrutura
J_1B_NF_VALUE_DETERMINATION - Carrega os itens, seus impostos e o total lquido do
item da nota fiscal
Por questes de performance, os itens podem ser passados para a funo
J_1B_NF_VALUE_DETERMINATION para que ela efetue somente os clculos
2) Para se obter a BOM de um material usar a funo CS_BOM_EXPL_MAT_V2
3) Para testar o status de uma ordem usar a funo STATUS_CHECK_BY_SELSCHEM e
verificar o retorno FULLFILL se inicial porque a ordem no se encontra no esquema de
status indicado
4) Para criar jobs dentro de um programa abap utilizar as funes: JOB_OPEN, JOB_SUBMIT
e JOB_CLOSE
As tabelas que armazenam as informaes de JOBS so:
TBTCO
Job status overview table
TBTCP
Batch job step overview
5) READ_TEXT
O nome do texto simplesmente a chave completa da tabela em questo, existe uma
dificuldade
de
descobrir
o
ID
e
o
Objeto
a
serem
passados.
Para acess-los facilmente, bastar clicar (2x) sobre o texto na transao em que ele
aparece, (o modo editor ser acionado) em seguida ir no menu: Saltar -> Cabealho e
pronto, os campos necessrios esto nesta tela.

Comandos
1) Para mandar um relatrio direto para a impressora
new-page
print on
no dialog

keep in spool X
immediately X
destination ZP05
copies quantidade de cpias
2) Comandos CONTINUE posicionados antes de eventos AT NEW dentro de um loop fazem
os eventos perderem a seqncia correta
3) Para concatenar variveis em um nico parmetro utilizar o &:
Perform f_teste using LIXO1 & LIXO3.
Form f_teste using char.
char possui LIXO1 LIXO3.
Endform.

Enhancements
1) Para que um field-exit funcione necessrio que o profile parameter abap/fieldexit esteja
com o valor YES.
Para modificar os valores de um profile parameter utiliza-se a transao RZ11.
2) Enhancements para pedido de vendas userexit
SPRO - Vendas e distribuio
Adaptao do sistema
User exits

Diversos
1) Quando o frontend sair do ar, para recuperar o que estava fazendo, entrar no logon do
SAP, digitar o user e a senha, no teclar enter, opo de menu Usurio / Aceitar sesso.
Caso o mesmo usurio estiver mais de uma vez na mesma instncia isto no funciona.
2) Ativar o screen painter grfico:
Para que o screen painter grfico funcione na estao so necessrios os arquivos:
GNEUX.exe / GNETX.exe / EUMFCDLL.dll
3) Transporte de textos standard (texto sapscript)
Para transportar textos standard devemos criar uma request manual e no editor inserir as
entradas:
R3TR TEXT <objeto>,<nome do texto>,ST (ID),S (Idioma)
Exemplo:
PgmID
Obj Obj.name
R3TR
TEXT TEXT,WHIRPOOL-2,ST,E
R3TR
TEXT TEXT,LOGO_57_MM ,ST,E
R3TR
TEXT TEXT,LOGO_57_MM ,ST,P

Potrebbero piacerti anche