#1
|
|||
|
|||
funcion 'GET_DYNP_VALUE'
Buenas a todos, tengo un problemilla con la funcion 'GET_DYNP_VALUE', es algo raro, a ver si me echais una mano.
con esta funcion recupero la ubicacion tecnica al crear un aviso, data: v_ut like RIWO1-TPLNR. CALL FUNCTION 'GET_DYNP_VALUE' EXPORTING i_field = 'RIWO1-TPLNR' i_repid = 'SAPLIWO1' i_dynnr = '0100' CHANGING o_value = v_ut. LO RARO ES, q con mi usuario si me recupera la UT pero con el otro usuario no lo recupera, alguien tiene alguna idea porque???? he debugeado y parece q todo es igual y no entiendo de que con otro usuario NO recupere la UT, Gracias de antemano, |
#2
|
|||
|
|||
Verifica tus permisos
Revisa despues de ejecutarlo en la SU53 a ver si no te falta autorizacion para algun objeto.
|
#3
|
|||
|
|||
Muchas gracias jdelgado86.
No era por motivos de autorizacion, era porque en los avisos puedes ponerle valores propuestos, en el menú Detalles/parametrizacion/Ctrl./Valores propuesto (o pulsando Ctrl-F10) en la pestaña Objeto de ref. puedes cambiarle el escenario para cada usuario. el caso es q cuando le cambias el escenario el campo Ubicacion Tecnica no si le das a la ayuda veras que tiene otro numero de dynpro. La solucion la pongo por si le pasa a alguien mas..... *con esto recuperas el numero de escenario que parametrizo el usuario SELECT SINGLE * FROM TPMUS WHERE UNAME EQ SY-UNAME. IF SY-SUBRC = 0. CASE TPMUS-SCREENTY. WHEN '' or 'O100'. v_dynpro = '0100'. WHEN 'O120'. v_dynpro = '0120'. WHEN 'O160'. v_dynpro = '0310'. WHEN 'O180'. v_dynpro = '0140'. WHEN OTHERS. clear v_dynpro. ENDCASE. ENDIF. *con esto ya, se recupera el valor de la UT con la variable v_dynpro CALL FUNCTION 'GET_DYNP_VALUE' EXPORTING i_field = 'RIWO1-TPLNR' i_repid = 'SAPLIWO1' i_dynnr = v_dynpro CHANGING o_value = v_ut. Ahora lo q me pasa es que cuando compruebo el centro emplazamiento y el proveedor que exista en una tabla Z q mantiene el usuario, cuando salta el error me pone todos los campos en gris (no modificables) y tengo q salir para del aviso para seguir, alguna idea de como puedo controlar esto?? El mensaje es este: MESSAGE e000 WITH 'No existe contrato de Reclamaciones para este Proveedor'. Saludos y gracias a todos... |
Herramientas | Buscar en Tema |
Desplegado | |
|
|