MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   que pasa si no existen exits? (foro/showthread.php?t=11208)

bacha 21/02/08 20:40:55

que pasa si no existen exits?
 
Una enorme duda...

Que sucede si no existe una exit para una pantalla standard de sap ?

que procede ?

en mi caso hago una copia del programa (a hacerlo Z) y trabajar que sobre el....


alguna otra sugerencia.

Gracias!

ballan 22/02/08 08:19:11

Has mirado si puede haber BADIs o Enhancements?

bacha 22/02/08 12:38:05

No ballan..... como puedo ver eso... ??:confused:

ballan 25/02/08 08:57:48

Para localizar una BADI:

1.- Ir a tx SE24 e introducir la clase CL_EXITHANDLER, pulsar F7
2.- Hacer doble click en el metodo GET_INSTANCE y poner una break-point despues de la llamada CALL METHOD cl_exithandler=>get_class_name_by_interface

En el parametro CLASSNAME vendra el nombre de la clase y en el parametro EXITNAME tendremos el nombre de la BADI

3.- En la transaccion SE19 marcamos el radiobutton badi clasico del bloque Crear Implementacion, introducimos el valor del campo EXITNAME y le damos al boton Implement. (crear implementacion)

4.- Tenemos que asignar un nombre Z a la implementacion de la clase, despues colocamos una descripcion y en la pestaña de interface nos vendran todos los metodos que tenemos disponibles, donde haciendo doble click podamos introducir el codigo deseado

ENHANCEMENTS

Las user-exits y badis se estan sustituyendo por enhancements que son fragmentos de codigo estandar en los que podemos introducir nuestro codigo

Si te fijas en el codigo de la mayoria de transacciones standar veras que pone

ENHANCEMENT-POINT (nombre del enhancement) SPOTS (punto de ampliacion)

para poder implementar una enhancement haremos lo siguiente:

1.- Nos posicionaremos en el include donde este el codigo que deseamos ampliar y pulsaremos el boton de activar ampliaciones (es un botoncito que aparece como una especie de espiral o bien pulsar SHIFT + F4)

2.- Una vez pulsado el boton de ampliar veremos que la pantalla de codigo se pone blanca y con las letras en gris (como cuando aplicamos una nota manualmente), nos iremosa donde este nuestro punto de ampliacion y si por ejemplo pone ENHANCEMENT-POINT SAPLMIGO_01 SPOTS ES_SAPLMIGO STATIC. pincharemos con el boton derecho en donde pone ES_SAPLMIGO y seleccionaremos Ampliaciones->Crear

3.- Asignaremos un nombre a la clase que implementamos y luego nos aparecera un fragmento de codigo donde podremos introducir lo que deseemos

bacha 25/02/08 14:10:04

muchas gracias ballan, suena muy buena esta informacion !.

en un momento mas lo pondre en practica!!



Saludos.

Miriya 06/08/08 23:32:02

enhancement: A alguien le "desaparecieron" las ampliaciones???
 
Hola!!!! estoy realmente desesperada porque con unas modificaciones complicadas de codigo standar, usé un enhancement inserto en 4 includes. Lamentablemente, sin haber hecho nada en particular, estos desaparecieron. Se borro la ampliación con todo su código. Alguien tiene idea qué es lo que sucede? Me comentaron compañeros mios que a todos les pasó, no tuvieron otra explicación que fallan.

Por favor! alguna idea si a alguien le pasó.

Gracias :eek:

bisonye 07/08/08 08:57:38

A mi me ha pasado tambien esto que comentas.
Activo un enhacement le pongo código y un break point y desaparece del código standard.

La verdad no se por que ocurre, yo tuve que buscar otro enhancement.

Miriya 13/08/08 00:59:02

Bueno, les cuento como sigue esta historia porque empeoró. Luego de "perder" el codigo del enhacement del programa, lo usé con el editor desde el SE38 / se19. El tema es que después de estar 1/2 día trabajando, oh! de repente DUMP el estandar. Resulta que, por algún motivo (no sé si de instalación o que) el standar da un DUMP donde entra por una clase de mensaje que no existe en el sistema. La cuestión es que por ese motivo no puedo seguir ni trabajando ni creando de nuevo el enhacment.

manuelachetigue 07/11/11 22:01:24

respuesta
 
Miriya:
una vez que hayas ubicado el enhacement donde lo deseas, tienes que entrar a la se18 y colocar el nombre de la badi que vas a utilizar, dicha badi la tendras que copiar posteriormente con un nombre ZZ_<nombre_enhacement> y si sigues todos los pasos crearas el ZZ.
Confirma en que punto(metodo) es donde se desea que se haga la operación que deseas.
Ahi le pondrás el break-point.
haces tu codificación y por último le darás activar.
Espero te sirva la respuesta.


Husos Horarios son GMT. La hora en este momento es 06:52:36.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web