. ÁREA RECURSOS SAP - RECURSOS TÉCNICOS ABAP

 E-SAP

CAPACITACION
PROFESIONALES EGRESADOS
INGRESO ALUMNOS
CAPACITACION EMPRESAS
PLATAFORMA BLEARNING SAP
PREGUNTAS FRECUENTES

CARRERAS
:: CONSULTOR SAP ABAP
PROGRAMADOR ABAP INICIAL
PROGRAMADOR ABAP AVANZ.
:: CONSULTOR SAP PORTAL
WEBDYNPRO JAVA INICIAL
WEBDYNPRO JAVA AVANZADO
:: ANALISTA SAP BI / BW
DESARROLLADOR BI INICIAL
DESARROLLADOR BI AVANZ.
:: ADMIN. SAP NETWEAVER
CONSULTOR BASIS INICIAL
CONSULTOR BASIS AVANZADO
CURSOS
INTRODUCCION A SAP R/3

RECURSOS
SERVICIOS CONSULTORIA SAP
BOLETIN DE NOTICIAS SAP
ACTUALIDAD DEL MUNDO SAP
RECURSOS TECNICOS SAP
RECURSOS HUMANOS
BECAS ESTUDIO
REPRESENTANTES ESAP

 :: RECURSOS TECNICOS ABAP

ESAP - CENTRO DE CAPACITACION CAPACITACION SAP ESAP - CENTRO DE CAPACITACIÓN PROFESIONAL SAP

    FUNCIONES Y METODOS


En esta sección analizaremos diversas funciones y metodos ABAP.


Estos y otros temas fundamentales son explicados en profundidad en la carrera "Programador Abap Nivel Inicial", por ello le recomendamos visitarla para profundizar sus conocimientos en el area.

recursos programacion SAP ABAP


Capacitación SAP - ABAP 1. PARAMETROS EN CREACION DE FUNCIONES.
-----------------------------------------------------------

CURSO ABAP - CAPACITACION SAP1.0 ALCANCE DE LAS VARIABLES DE IMPORTING
CURSO ABAP - CAPACITACION SAP1.1 HACER QUE UNA FUNCION RETORNE UN RAISE CON UN TEXTO


Capacitación SAP - ABAP 2. TRATAMIENTO DE DINPROS.
-----------------------------------------------------------

CURSO ABAP - CAPACITACION SAP2.1 Averiguar valores de campos dentro de una pantalla de seleccion
CURSO ABAP - CAPACITACION SAP2.2 Ventana POPUP para confirmar accion

Capacitación SAP - ABAP 3. TRATAMIENTO DE FICHEROS.
-----------------------------------------------------------

CURSO ABAP - CAPACITACION SAP3.1 Despliega FRONTEND para seleccion de ficheros REMOTOS
CURSO ABAP - CAPACITACION SAP3.2 FRONTEND para seleccion de ficheros LOCALES
CURSO ABAP - CAPACITACION SAP3.3 Apertura de ficheros REMOTOS para lectura.
CURSO ABAP - CAPACITACION SAP3.4 Apertura de ficheros LOCALES para lectura.


Capacitación SAP - ABAP 4. INTERACCION CON LA BASE DE DATOS
-----------------------------------------------------------

CURSO ABAP - CAPACITACION SAP4.1 Obtengo los posibles valores de un campo en una tabla diccionario


Capacitación SAP - ABAP 5. TRATAMIENTOS DE FECHAS
-----------------------------------------------------------

CURSO ABAP - CAPACITACION SAP5.1 Agrego un mes a una fecha determinada
CURSO ABAP - CAPACITACION SAP5.2 Diferencia de años transcurridos entre dos fechas
CURSO ABAP - CAPACITACION SAP5.3 Cantidad de días transcurridos entre dos de fechas


Capacitación SAP - ABAP 6. FINALIZACION DE UNA FUNCION y RECOLECCION DE ERRORES.
-----------------------------------------------------------
CURSO ABAP - CAPACITACION SAP6.1 RETURN_SET


Capacitación SAP - ABAP V. VARIOS
-----------------------------------------------------------

CURSO ABAP - CAPACITACION SAPV.1 Constructor de un mensaje de err
CURSO ABAP - CAPACITACION SAPV.2 Crea una ayuda de busqueda personalizada

 


 
Inscríbete a nuestro Exclusivo Boletín de Noticias SAP, para recibir mensualmente las mejores notas y recursos técnicos gratuitos directamente en tu casilla de correos.
>> Inscribirte
ESAP - CURSOS SAP  ABAP
 


*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*
  ::Te invitamos a conocer nuestras carreras ::
  Carrera Consultor ABAP - Modulo Programador ABAP INICIAL



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*

------------------------------------------------------------------------
Capacitación SAP - ABAP 1. CREACION DE FUNCIONES
========================================================

1.0
::> ALCANCE DE LAS VARIABLES DE IMPORTING
-------------------------------------------------------

El alcance de las variables de importing de las funciones
dentro del sector "Cód.Fte" es local.

Si no se los redefine como GLOBALES dentro del sector CAMPOS
se los deben pasar explicitamente a las rutinas que en
el código fuente existan.

Ej: Dentro del cod.fte de la función:
-------------------------------------

* Se les pasan los valores explicitamente a los valores
PERFORM ffnc_obtener_grupo_estado TABLES zerror
USING i_trata_canc
CHANGING returncode.

 


                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP



1.1
::> HACER QUE UNA FUNCION RETORNE UN RAISE CON UN TEXTO
------------------------------------------------------------------

Dentro del codigo fuente de un programa, si se desea que
se termine la ejecucion y se emita un mensaje colocar:

* Se envia el mensaje "Error en los parámetros de la llamada".
* Se generará una excepción ERROR_PARAMETROS + finaliza el proceso.
message W001(ZSFW1) raising ERROR_PARAMETROS.

 

*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*
  :: La mejor capacitación en SAP está a tu alcance. ::
  ESAP Posee el más avanzado y efectivo sistema de Capacitación SAP. Conocelo!



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*

 

 

 

------------------------------------------------------------------------
Capacitación SAP - ABAP 2. TRATAMIENTOS DE DINPROS.
========================================================

2.1
::> Averiguar valores de campos dentro de una pantallade seleccion
-----------------------------------------------------------------------

Funcion: CALL FUNCTION 'DYNP_VALUES_READ'
USO: Averiguar valores de campos dentro de una pantallade seleccion
INFO: Le paso
- Numero de reporte.
- Id de la dynpro.
Me devuelve:
- Una tabla con los campos-valores de la dynpro.

> Ejemplo:

* Leo el campo P_REGION DE LA DINPRO.
* Util para levantar valores en una ayuda de busqueda

PERFORM parametro_region USING p_region.

*&---------------------------------------------------------------------*
*& Form PARAMETRO_REGION
*&---------------------------------------------------------------------*
FORM parametro_region USING p_region.
DATA: BEGIN OF t_valores OCCURS 0.
INCLUDE STRUCTURE dynpread.
DATA: END OF t_valores.

t_valores-fieldname = 'P_REGION'.
APPEND t_valores.
CLEAR t_valores.

CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = 'ZRDAOR009'
dynumb = '1000'
TABLES
dynpfields = t_valores
EXCEPTIONS
invalid_abapworkarea = 1
invalid_dynprofield = 2
invalid_dynproname = 3
invalid_dynpronummer = 4
invalid_request = 5
no_fielddescription = 6
invalid_parameter = 7
undefind_error = 8
double_conversion = 9
stepl_not_found = 10
OTHERS = 11.
IF sy-subrc = 0.
LOOP AT t_valores WHERE fieldvalue NE space.
p_region = t_valores-fieldvalue.
ENDLOOP.
ENDIF.

ENDFORM. " PARAMETRO_REGION



                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP

 



 


2.2
::> Ventana POPUP para confirmar acción
--------------------------------------------

Funcion: POPUP_TO_CONFIRM
Uso: Desplegar una ventana popup que hace un apregunta y muestra 2 opciones
posibles.

Le paso:
- El titulo de la ventana.
- El texto de la pregunta.
- Botón 1
- Botón 2
Me devuelve:
- Un entero que representa el boton presionado



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*
  ::Te invitamos a conocer nuestras carreras ::
  Carrera Consultor ABAP - Módulo Programador ABAP AVANZADO



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*

 

------------------------------------------------------------------------
Capacitación SAP - ABAP 3. TRATAMIENTO DE FICHEROS.
========================================================

3.1
::> Despliega FRONTEND para seleccion de ficheros REMOTOS
---------------------------------------------------------------

FUNCION: CALL FUNCTION '/SAPDMC/LSM_F4_SERVER_FILE'
USO: Despliega FRONTEND para seleccion de ficheros REMOTOS
INFO: Le paso
- Directorio preseleccionado (Opcional).
- Tipos de archivos a mostrar
Me devuelve:
- Variable con el path + nombre del archivo que selecciono el usuario.


                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP

 



 

3.2
::> FRONTEND para seleccion de ficheros LOCALES
------------------------------------------------------

CALL METHOD cl_gui_frontend_services=>file_open_dialog
USO: FRONTEND para seleccion de ficheros LOCALES
INFO: Le paso
- Tipos de archivos a mostrar
Me devuelve:
- Tabla donde donde contiene (entre otros) el nombre + path del archivo.

 

                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP



3.3
::> Apertura de ficheros REMOTOS para lectura.
---------------------------------------------------

CALL METHOD cl_gui_frontend_services=>gui_upload
USO: Apertura de ficheros LOCALES para lectura.
se le pasa un path LOCAL y devuelve el fichero dentro de una tabla (CHANGING)
INFO: Le paso
- Nombre de archivo
- Tipo de archivo
Me devuelve:
- Tabla donde con el contenido del archivo.
IMPORTANTE! : REcordar llamar a la funcion que cierra el DATASET luego de usarlo


                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP

 



3.4
::> Apertura de ficheros LOCALES para lectura.
--------------------------------------------------

OPEN DATASET p_path FOR INPUT IN TEXT MODE ENCODING DEFAULT.
USO: Abrir Fichero MODO REMOTO

* Leo el fichero
DO.
READ DATASET p_path INTO w_fich.
ENDDO.

* Cierro el fichero
CLOSE DATASET p_path.


                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP




*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*
  ::Te invitamos a conocer nuestras carreras ::
  Carrera Consultor ABAP - Módulo Programador ABAP AVANZADO



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*

 


------------------------------------------------------------------------
Capacitación SAP - ABAP 4. INTERACCION CON LA BASE DE DATOS
========================================================

4.1
::> Obtengo los posibles valores de un campo en una tabla diccionario
-------------------------------------------------------------------------

Funcion: CALL FUNCTION 'GET_DOMAIN_VALUES'
USO: Obtengo los posibles valores de un campo en una tabla diccionario
INFO: Le paso
- Nombre del dominio de un campo.
Me devuelve:
- Una tabla con los posibles valores (ENUM) de un campo.

 


                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP



 


*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*
  ::Te invitamos a conocer nuestras carreras ::
  Carrera Consultor ABAP - Modulo Programador ABAP INICIAL



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*

 



------------------------------------------------------------------------
Capacitación SAP - ABAP 5. TRATAMIENTO DE FECHAS
========================================================

5.1
::> Agrego un mes a una fecha determinada
----------------------------------------------

Funcion: RE_ADD_MONTH_TO_DATE
USO: Se le pasa un mes y le suma un mes
INFO: Le paso
- una fecha.
- la cantidad de meses a incrementar
Me devuelve:
- la fecha tratada


CALL FUNCTION 'RE_ADD_MONTH_TO_DATE'
EXPORTING
months = '-1'
olddate = sy-datum
IMPORTING
newdate = s_datum-low.

 

                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP

 



5.2
::> Diferencia de años transcurridos entre dos fechas
--------------------------------------------------------

Funcion: RE_ADD_MONTH_TO_DATE
USO: Se le pasa un mes y le suma un mes
INFO: Le paso
- dos fechas.
Me devuelve:
- la cantidad de años transcurridos entre ellas


CALL FUNCTION 'FIMA_DAYS_AND_MONTHS_AND_YEARS'
EXPORTING
i_date_from = p_gbdat
i_date_to = p_fech
i_flg_separate = '1'
IMPORTING
e_days = p_dias
e_months = p_meses
e_years = p_anyos
EXCEPTIONS
OTHERS = 1.

CHECK sy-subrc NE 0.
MOVE 'X' TO p_err.



                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP



 

5.3
::> Cantidad de días transcurridos entre dos de fechas
---------------------------------------------------------

OBTENER DIAS TRANSCURRIDOS ENTRE 2 fechas.


>> PERFORM fotr_fnc_dias_transcurridos USING vl_fecha_ult
vl_fecha_actual
vl_dias_transc

*&---------------------------------------------------------------------*
*& Form fotr_fnc_dias_transcurridos
*&---------------------------------------------------------------------*
* Calcular los días transcurridos entre las dos fechas pasadas
*----------------------------------------------------------------------*
* -->P_VL_FECHA_ULT text
* -->P_VL_FECHA_ACTUAL text
* -->P_VL_DIAS_TRANSC text
*----------------------------------------------------------------------*
FORM fotr_fnc_dias_transcurridos USING p_vl_fecha_ult
p_vl_fecha_actual
p_vl_dias_transc .

DATA: vl_endda TYPE d,
vl_begda TYPE d.

vl_begda = p_vl_fecha_ult.
vl_endda = p_vl_fecha_actual.


CALL FUNCTION 'HR_99S_INTERVAL_BETWEEN_DATES'
EXPORTING
begda = vl_begda
endda = vl_endda
IMPORTING
days = p_vl_dias_transc.

ENDFORM. " fotr_fnc_dias_transcurridos

 


                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP

 



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*
  :: La mejor capacitación en SAP está a tu alcance. ::
  ESAP Posee el más avanzado y efectivo sistema de Capacitación SAP. Conocelo!



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*

 

 

------------------------------------------------------------------------
Capacitación SAP - ABAP 6. FINALIZACION DE UNA FUNCION y RECOLECCION DE ERRORES.
========================================================

6.1
::> Finalizacion de una funcion en caso de error
--------------------------------------------------

EJEMPLO EN: ZMI_ALMACEN_USUMAT2

* Si el centro está en blanco se envia un error.
IF centro IS INITIAL.
PERFORM return_set TABLES return
USING 'E'
'014'
' '
' '
' '
' '.
EXIT.
ENDIF.


FORM RETURN_SET TABLES P_P_RETURN STRUCTURE BAPIRET2
USING P_A
P_B
P_C
P_D
P_E
P_F.


DATA: LDS_RETURN LIKE BAPIRET2.

* Log de errores
CLEAR: LDS_RETURN, P_P_RETURN.

LDS_RETURN-MESSAGE_V1 = P_C.
LDS_RETURN-MESSAGE_V2 = P_D.
LDS_RETURN-MESSAGE_V3 = P_E.
LDS_RETURN-MESSAGE_V4 = P_F.


CALL FUNCTION 'ZMEREP_RETURN_GET'
EXPORTING
ZTYPE = P_A
ID = 'ZMI'
NUMBER = P_B
PAR1 = LDS_RETURN-MESSAGE_V1
PAR2 = LDS_RETURN-MESSAGE_V2
PAR3 = LDS_RETURN-MESSAGE_V3
PAR4 = LDS_RETURN-MESSAGE_V4
IMPORTING
RETURN = LDS_RETURN.

MOVE-CORRESPONDING LDS_RETURN TO P_P_RETURN.
P_P_RETURN-LOG_MSG_NO = P_C.
P_P_RETURN-MESSAGE_V1 = P_D.

COLLECT P_P_RETURN.

ENDFORM. " return_set

                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP

 


*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*
  ::Te invitamos a conocer nuestras carreras ::
  Carrera Consultor ABAP - Módulo Programador ABAP AVANZADO



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*

 

 

------------------------------------------------------------------------
Capacitación SAP - ABAP V. VARIOS.
========================================================

V.1
::> Constructor de un mensaje de err
---------------------------------------

Funcion: CALL FUNCTION 'MESSAGE_TEXT_BUILD'
USO: Constructor de un mensaje de err.
INFO: Le paso
- Numero de mensaje.
- ID de mensaje.
- TExtos de mensaje
Me devuelve:
- Una cadena con el el mensaje armado.

 


                                                                                          [ˆ Subir]

**--------------------------------------------------------------**
ESAP - CENTRO DE CAPACITACION CAPACITACION SAP
                                                                                                                    Centro de capacitacion SAP



V.2
::> Crea una ayuda de busqueda personalizada
--------------------------------------------------

Funcion: CALL function 'F4IF_INT_TABLE_VALUE_REQUEST'
USO: Crea una ayuda de busqueda personalizada.
Solo para tablas con referencias a campos de diccionario

INFO: Le paso:
- Se le pasa la tabla con los registros a mostrar en la ayuda de busqueda.
Los titulos de las columnas los toma referenciando a los campos dicc (en el campo "value_tab" ).
- Definir "retfield" -> CAmpo de la ayuda de busqueda a devolver cuando el usr selecciona.
- Definir "dynprofield" -> Contenedor donde devolverá el valor seleccionado por el usuario (normalmente un parameter)

Me devuelve:
- Una ventanita de ayuda de busqueda, que muestra los registros pasados.

 

 

*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*
  :: Capacitate en SAP con especialistas en el área ::
  No dejes tu carrera en manos impovisadas, ESAP es tu mejor elección.



*------------------------------------------------------------------------------*
*------------------------------------------------------------------------------*





   

© CVOSOFT CONST_PAIS_NOMBRE | www.cvosoft.com | info@cvosoft.com