MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 21/04/08, 08:24:57
kaitarr kaitarr is offline
Junior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 20
IDOCS de materiales

Hola a todos,

Vereis, acabo de empezar con el tema de IDOCS y nos ha surgido el siguiente problema. Tratamos los IDOCS con el programa RBDAPP01, pero lo que queremos es que cuando aparezca un IDOC con un material dado de alta en el maestro de materiales. dicho IDOC no lo trate. Actualemente estos IDOCs lo intenta tratar y luego aparecen como erróneos.

Alguien sabe cuales serian los pasos a seguir o donde podria añadir una verificacion a la MARA ??

He investigado que a través de la WE57 se asocia un IDOC con un tipo de mensaje (MATMAS en mi caso) y Tipo basico(MATMAS05) a una funcion, y aqui creo que se podria intentar algo. Pero no sé muy bien por donde empezar.

Muchas gracias.

Un saludo.
Responder Con Cita
  #2  
Viejo 21/04/08, 13:16:19
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
En la tx BD60 tienes que mirar a que modulo de funciones esta asociado tu mensaje (el estandar asocia la funcion MASTERIDOC_CREATE_SMD_MATMAS al tipo de mensaje MATMAS) entonces dentro de ese modulo de funcion puedes implementar alguna de las enhancement que tiene para que chequee si el material existe y en ese caso no cree el idoc ni lo distribuya
Responder Con Cita
  #3  
Viejo 21/04/08, 14:20:35
kaitarr kaitarr is offline
Junior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 20
Muchas gracias por contestar ballan, pero sigo atascado con lo mismo.

Efectivamente ese es el modulo de funciones asociado a dicho mensaje, pero revisando el codigo no he encontrado ninguna user asociada a él ni sé donde podria implementar ese nuevo codigo.

¿ Quizá desde la BD60 se puede asociar ese mensaje a otra función Z y esta modificarla a mi gusto, o hay alguna forma de añadir codigo a esta MASTERIDOC_CREATE_SMD_MATMAS ?

Gracias de nuevo a todos los que nos ayudais a avanzar en esta historia
Responder Con Cita
  #4  
Viejo 21/04/08, 15:22:13
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
Podrias crearte una copia de la funcion MASTERIDOC_CREATE_SMD_MATMAS y cambiarlo en la BD60 para que apunte a tu funcion Z pero como te dije mas arriba la funcion MASTERIDOC_CREATE_SMD_MATMAS dispone de varios enhancement que probablemente te sirvan, te cuento como implementarlos

1. Ve a la tx SE37 e ingresas el nombre de la funcion MASTERIDOC_CREATE_SMD_MATMAS

2. Dale a F7 para visualizar el codigo

3. Dale a los prismaticos y busca enhancement

4. Como minimo te apareceran los siguientes

ENHANCEMENT-POINT MASTERIDOC_CREATE_SMD_MATMA_01 SPOTS ES_SAPLMV01.
ENHANCEMENT-POINT MASTERIDOC_CREATE_SMD_MATMA_02 SPOTS ES_SAPLMV01.
ENHANCEMENT-POINT MASTERIDOC_CREATE_SMD_MATMA_03 SPOTS ES_SAPLMV01.
ENHANCEMENT-POINT MASTERIDOC_CREATE_SMD_MATMA_04 SPOTS ES_SAPLMV01.
ENHANCEMENT-POINT MASTERIDOC_CREATE_SMD_MATMA_05 SPOTS ES_SAPLMV01.

5. Como ejemplo te voy a decir como implementar la enhancement ENHANCEMENT-POINT MASTERIDOC_CREATE_SMD_MATMA_01 SPOTS ES_SAPLMV01.

6. Presiona el boton de las ampliaciones (es un boton que tiene forma de espiral o presiona SHIFT + F4)

7. Te posiciones en la linea donde pone ENHANCEMENT-POINT MASTERIDOC_CREATE_SMD_MATMA_01 SPOTS ES_SAPLMV01. y pinchas con el boton derecho en donde pone ES_SAPLMV01, en el menu que te sale seleccionas Ampliaciones/Crear

8. Te saldra un cuadro donde te pide que le indiques la clase donde la vas a implementar, en dicho cuadro veras que abajo a la izquierda hay un icono de un folio en blanco que sirve para crear

9. Dale al icono de crear y en el cuadro de dialogo que te aparece te pide que le des un nombre a la clase y que le asignes una descripcion (el campo de composite enhancement no se rellena) asignale a tu clase un nombre descriptivo por ejemplo ZCL_CHEQUEO_MARA y en la descripcion ponle lo que hace, dale a enter

10. Te volvera al cuadro que te aparecia en el punto 8 pero ahora aparecera tu clase ZCL_CHEQUEO_MARA, selecciona esa linea y dale a enter

11. Ahora observaras que habra creado un bloque de codigo delimitado por las sentencias ENHANCEMENT (aqui un numero) ZCL_CHEQUEO_MARA
ENDENHANCEMENT

12. Dentro de ese bloque puedes introducir el codigo que tu quieras para realizar los chequeos o lo que haga falta

13. Lo que tendrias que buscar es de todas las enhancement que existen cual es la que te sirve para realizar el chequeo
Responder Con Cita
  #5  
Viejo 21/04/08, 16:05:03
kaitarr kaitarr is offline
Junior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 20
Gracias de nuevo, pero en mi codigo de la función no aparece ningún ENCHANCEMENT, asi que tendre que realizar una copia Z de la funcion y hacer alli los cambios.

Esperemos que funcione
Responder Con Cita
  #6  
Viejo 21/04/08, 16:06:02
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
Que version sap tienes?

Si has buscado enchancement fijate bien porque es ENHANCEMENT
Responder Con Cita
  #7  
Viejo 22/04/08, 07:13:48
kaitarr kaitarr is offline
Junior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 20
Hice lo que me comentaste en anteriores post y ENHANCEMENT no aparece en el codigo. Lo he vuelto a buscar tal como me dices y no aparece por ningún lado. Supongo que podría ser problema de versiones.

Aquí tienen la 6.20 en Basis y la 4.70 en la parte de Logistica y Finanzas

Ahora intentaré lo de la copia de la función a una Z.

Esperemos que esto funcione ... sino ya no sé que hacer.
Responder Con Cita
  #8  
Viejo 22/04/08, 08:04:09
kaitarr kaitarr is offline
Junior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 20
Por cierto, si alguien sabe como podria crear un IDOC de entrada de materiales forma rapida para comprobar si funcionan los cambios, se lo agradeceria !!!!!!

Me han dicho que hay una transaccion que lo hace directamente, pero no la encuentro
Responder Con Cita
  #9  
Viejo 22/04/08, 08:51:30
ballan ballan is offline
Senior Member
 
Fecha de Ingreso: oct 2006
Mensajes: 671
En la transaccion WE19 puedes reprocesar un idoc cambiandole valores
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 02:48:18.


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