arquivo

Function / Funções RFC


*——————————————————————–*
*Buscar equipamento vinculado à Nº Ordem
*——————————————————————–*
CALL FUNCTION ‘BAPI_ALM_ORDER_GET_DETAIL’
EXPORTING
number    = iv_aufnr
IMPORTING
        es_header = ls_header
TABLES
return    = lt_return.


Pessoal,

Seguem algumas funções para manipulação de data no SAP:

DATE_CHECK_WORKINGDAY Retorna se a data é dia util
HOLIDAY_CHECK_AND_GET_INFO Verificar se uma data é feriado
DAY_ATTRIBUTES_GET Retorna os dias uteis apartir de uma data
FORMAT_DATE_4_OUTPUT Formata data de acordo com a mascara
GET_WEEK_INFO_BASED_ON_DATE Retorna a segunda-feira e a sexta-feira de uma semana baseado em uma data
DATE_GET_WEEK Obtem o numero da semana a partir da data atual
WEEK_GET_FIRST_DAY Obtem o primeiro dia da próxima semana (Segunda-Feira, no formato DATE):
MM_LAST_DAY_OF_MONTHS Obtem o valor do último dia do mês
DATE_COMPUTE_DAY Obtem o dia da semana ref. ao dia do mês
RP_CALC_DATE_IN_INTERVAL Adiciona/subtrai anos/mêses/dias de uma data
SD_DATETIME_DIFFERENCE Retorna a diferença entre duas datas e Hora
RH_GET_DATE_DAYNAME Retorna o dia da semana apartir de uma data
C14B_ADD_TIME onde você informa um horário inicial e data e quantas horas você quer acrescentar e ela retorna a data e hora final.
CONVERT_DATE_INPUT Converte a data de entrada
SLS_MISC_CONVERT_TO_DATE Passa uma string e retorna uma data formatada
POPUP_TO_SELECT_MONTH Seleciona Mes e Ano no popUp
MM_LAST_DAY_OF_MONTHS Obtem o valor do último dia do mês
C14B_ADD_TIME Função para adicionar horas em uma data
RTP_US_API_MAX_DAYS_IN_MONTH Retorna o número de dias do mês

Dialog Box, Abrir Arquivo

Função para exibir caixa de Seleção de Arquivos:

O caminho selecionado, é carregado para o parâmetro, que pode ser usado no programa.

PARAMETERS p_path LIKE rlgrap-filename.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
CALL FUNCTION ‘F4_FILENAME’
IMPORTING
file_name = p_path.


Esta função é interessante para informar ao usuário o status do processo, por exemplo dentro de LOOP´s, ou em seleção de dados demoradas, os parâmetros recebem a mensagem e o valor de um campo, isso pode ser mudado.

Exemplo de chamada:

PERFORM f_lupa “Selecionados dados do Documento…” space.

Ou

PERFORM f_lupa “Processando documento: ” it_grid-belnr.

FORM f_lupa USING p_msg1
p_msg2.

DATA: vl_message(150) TYPE c.

CLEAR vl_message.

CONCATENATE p_msg1 p_msg2 INTO vl_message SEPARATED BY space.

CALL FUNCTION ‘SAPGUI_PROGRESS_INDICATOR’
EXPORTING
percentage = 75
text = vl_message.

ENDFORM. "f_lupa

Lupinha SAP

Reloginho


Criar lote

DATA: st_ymcha TYPE mcha, "Param VB_CREATE_BATCH

it_new_batch TYPE mcha OCCURS 0 WITH HEADER LINE,

st_clas_lote TYPE ty_clas_lote.

st_ymcha-matnr = st_header-matnr. “Parametro material
st_ymcha-werks = st_header-werks. “Parametro Centro
st_ymcha-charg = wa_news_lote-charg. “Parametro novo número do lote ( ver post, como obter número de lote )

REFRESH it_new_batch. "Tabela de retorno da BAPI de criação de lotes

* Preenche dados para criação do lote
CLEAR: st_ymcha. "Estrutura de retorno para BAPI

CALL FUNCTION ‘VB_CREATE_BATCH’
EXPORTING
ymcha = st_ymcha
kzcla = ‘2’
class = st_clas_lote-e_class
no_cfc_calls = ‘X’
IMPORTING
ymcha = st_ymcha
TABLES
new_batch = it_new_batch.

IF sy-subrc = 0.

* Se it_new_batch preenchida, criou o lote
IF it_new_batch[] IS NOT INITIAL.

* Verificar se existe mensagem tipo E, senão, commitar

ENDIF.