PDA

Ver la Versión Completa : Modificar comportamiento estándar IW31.


Dlanor20777
12/05/14, 14:10:36
Hola amigos se me presenta un problema al momento de crear una OT, tratare de explicarme lo mejor posible a ver si pueden ayudarme:

Cree un programa para la verificación y actualización de la disponibilidad de las OTs en masa, todo mediante una grabación que posteriormente modifique. Hice que el programa seleccionara cada posición y la verificara individualmente. Esta seria una OT con sus componentes:

http://i57.tinypic.com/2tfrt.jpg

Si se fijan en el orden de los componentes, no están organizados por el numero de posición, ya que los agrupa por numero de posición y allí es donde radica mi problema, no quisiera que el sistema lo organizara de esa manera sino por posición es decir, 10 - 20 - 30 y así sucesivamente, ahora les explico por que:

El programa busca la posición a verificar según el numero de posición en la tabla de la base de datos RESB, y allí si están por numero de posición.

http://i62.tinypic.com/168d7xy.jpg

Supongamos que vaya a verificar la posición numero 2, que en la tabla es el REPU36043959 FUSIBLE MECANICO DE ACOPLE, al momento de seleccionar la posición en la pantalla la posición 2 es el REPU36045202 TUERCA GUIA P/BARRA, es decir, que se esta verificando el componente incorrecto.

Por eso es que quisiera que la organización de los componentes sea por numero de posición y que no los agrupe por numero de operación.

Espero me puedan dar una idea de que hacer.

Saludos.

Ferchin54
12/05/14, 16:17:03
Me parece que lo que debes es tratar de verificar por posición de operación de orden y no por posición de materiales pues es desde la operación donde procedimentalmente se definen las necesidades y a la vez se pueden verificar las disponibilidades.
Esos son los inconvenientes que se presentan con los desarrollos de usuario. Personalmente le insisto a mis usuarios sobre la práctica en SAP, la cual a veces riñe con las adecuaciones que hacen los usuarios y que al final se convierten en las transacciones "Z" o las rutinas propias de cliente que en la mayoría de las ocasiones tratan de obviar los procedimientos correctos del proceso.
No tengo idea de la programación pero yo creo que es mejor desarrollar un nuevo programa de verificación que parta desde la operación.
Buen día.

Dlanor20777
12/05/14, 16:40:37
Me parece que lo que debes es tratar de verificar por posición de operación de orden y no por posición de materiales pues es desde la operación donde procedimentalmente se definen las necesidades y a la vez se pueden verificar las disponibilidades.
Esos son los inconvenientes que se presentan con los desarrollos de usuario. Personalmente le insisto a mis usuarios sobre la práctica en SAP, la cual a veces riñe con las adecuaciones que hacen los usuarios y que al final se convierten en las transacciones "Z" o las rutinas propias de cliente que en la mayoría de las ocasiones tratan de obviar los procedimientos correctos del proceso.
No tengo idea de la programación pero yo creo que es mejor desarrollar un nuevo programa de verificación que parta desde la operación.
Buen día.

Gracias amigo, tomare tu recomendación y tratare de adecuar el Z, y así evitar meterle mano al estándar.

Saludos.

fnovoac
12/05/14, 20:22:08
¿Y si desde la IW38 vas al menú "Pasar a > Disponibilidad lista material"? Saludos.

Dlanor20777
13/05/14, 11:58:40
¿Y si desde la IW38 vas al menú "Pasar a > Disponibilidad lista material"? Saludos.

Hola amigo fnovoac, en todo este rollo he aprendido como funciona eso que me comentas, creo que eso te lleva a la IWBK, esa transacción solo es un reporte que te muestra la información de la ultima verificación de disponibilidad de los materiales en una orden.

Para que esa transacción funcione correctamente o por decirlo de otra forma, para que la información sea precisa, se debe correr la IW3K, para cada una de las ordenes que quieras visualizar en la IWBK, lo que estoy haciendo es un programa que corra la IW3K en masa, y llegue al problema antes indicado.

Saludos y gracias por su apoyo.

fnovoac
13/05/14, 14:40:37
Entiendo el proceso que estás automatizando. En mi caso, tenía configurado que la verificación de disponibilidad se realice en automático al grabar la orden.
Una consulta, ¿tienes habilitado el control de disponibilidad en la orden y al momento de hacer la salida de mercancía desde la MIGO? La verificación de disponibilidad sirve para saber si lo que hay en almacén cubre lo que necesitas en tu reserva pero si no tienes configurado el control de disponibilidad, se puede dar el caso que por ejemplo, exista 10 unidades de un producto y 2 reservas con cantidades de 8 y 7 unidades de dicho producto respectivamente. Si realizas la verificación de disponibilidad unicamente, el sistema confirmará para ambas que existe el material suficiente (cuando no es verdad).
Si tienes habilitado el control de disponibilidad en la orden, el sistema confirmará la cantidad que se tenga como disponible a la primera reserva que haga la verificación (desde la orden por supuesto). En este caso podría ser por ejemplo a la reserva de 8 und mientras que cuando lo realice la segunda, únicamente le confirmará 2 unidades de las 7 que necesita (10 stock - 8 de la primera reserva) y podrá tomar la decisión de hacer una solped o coordinar con el responsable de la otra reserva para liberar el stock.
Hasta aca es el control de disponibilidad en la orden. Independiente de a quien confirmó el sistema primero, cuando cualquiera vaya al almacén, su reserva podrá ser atendida. En mi oponión esto no debería ser porque desvirtúa el sentido de verificación de disponibilidad pero ya depende de cada compañia y sus procesos internos.
Si tienes habilitado el control de disponibilidad en la MIGO, cuando traten de atender una reserva que no ha sido confirmada como sería en este ejemplo la segunda reserva de 7 unidades (con el proceso estándar o con la automatización que estas haciendo), no podrán hacer la salida.
Cuando quize automatizar la verificación de disponibilidad teniendo habilidad el control de disponibilidad en la orden y en el MIGO, entré en un dilema... :confused: ¿Que secuencia seguirá el job para hacer la verificación? ¿por clase de orden? ¿por usuario? ¿por número de orden? Ninguna me parecía 100% justa. Se podría decir que los correctivos deberian ir primero por la urgencia pero que pasa con lo planificadores que pidieron con mucha anticipación sus repuestos? Finalmente lo dejamos manual teniendo un work flow que enviaba un correo al solicitante cuando su SolPed tenía EM para que pueda ingresar a su orden y realizar la verificación de disponibilidad. Si se necesitaba para un correctivo, se le debía pedir al planificador que libere el stock y se determine si de todas maneras se necesitaría el repuesto y crear una solped, o el correctivo incluiría la actividad preventiva que se pensaba hacer.
Creo que me extendí mucho :D pero es un tema que se tiene que analizar bien para obtener lo que se desea y acorde al proceso de la compañía.
Saludos.

Dlanor20777
13/05/14, 14:57:51
Gracias amigo Fernando, por tomarte tu tiempo para prestarme el apoyo y tu experiencia, te comento que si tengo todo eso, incluso como indicas que el sistema valida ambas reservas en el caso que expones, ya que los gerentes indicaron que los materiales no deben amarrarse a ninguna reserva, el que llega primero gana jaja.

Como indicas "es un tema que se tiene que analizar bien para obtener lo que se desea y acorde al proceso de la compañía", por ello es que estoy realizando el Z, tratando de automatizar la IW3K, y bueno los diferentes tipos de escenarios que se pueden encontrar complican todo mucho mas.

Voy a intentar hacer algo entre hoy y mañana, y les estoy informando, creo que ya he visto la luz para corregir el error del Z.

Saludos.

Dlanor20777
13/05/14, 16:51:14
Amigos lo logre, gracias por sus recomendaciones, les explicare lo que hice, sin colocarle los códigos para no confundirlos:

Como les dije en el primer mensaje me percate de que el estándar agrupa los componentes por numero de posición, así que tome la recomendación de Ferchin54 y simule dentro del programa las posiciones de los componentes en la pantalla, es decir, también los agrupe:

Pantalla IW3K:

http://i58.tinypic.com/pyt0h.jpg

Y así los agrupe en una tabla dentro del programa, agregue el campo REAL_RSPOS:

http://i57.tinypic.com/muh0g4.jpg

Ahora si, verifico la disponibilidad correctamente, y solo de los componentes que no tengan activa la tilde o check de salida final.

Así: LOOP AT TI_RESB WHERE KZEAR NE 'X'.

Ya tengo un programa para verificar la disponibilidad de los componentes dentro de una o mas ordenes en forma masiva. :D

Saludos y gracias por su ayuda, espero no me encuentre con otro escenario donde el programa reviente jaja.

Ferchin54
14/05/14, 14:04:00
Qué bueno que hayas solucionado tu problema. La estrategia con los programas para facilitar la gestión de los usuarios es que deben de ir de acuerdo con la manera como se ha diseñado la práctica en SAP, cada proceso en SAP viene considerado dentro de la integración y es así como debe atacarse el desarrollo.
A partir de allí los desarrollos de usuario funcionan bien hasta que viene el upgrade donde deben revisarse.
Buen día.

Dlanor20777
14/05/14, 14:54:09
Si exactamente, en este caso el desarrollo es independiente, solo ejecuta una tx estándar en este caso la IW3, en forma masiva, no interfiere en ningún proceso estándar, ya que no es una ampliación.

Gracias por el apoyo.

Saludos.