PDA

Ver la Versión Completa : Función para tratar infotipos


davidsap
01/12/06, 08:43:46
¿Sabéis como se puede modificar los infotipos de candidatos directamente a través de la función HR_MAINTAIN_MASTERDATA? Cuando le paso los datos me devuelve "cosas raras". Pongamos por ejemplo que quisiere modificar el email del candidato. Pues le paso lo siguiente:

IT_MODIFICA-INFTY = '0105'.
IT_MODIFICA-FNAME = 'USRID_LONG'.
IT_MODIFICA-FVAL = 'otrocorreo@hotmail.com'.

CALL FUNCTION 'HR_MAINTAIN_MASTERDATA'
EXPORTING
PERNR = '123'
* MASSN =
ACTIO = 'MOD'
TCLAS = 'B'
BEGDA = '20061130' "Hay que poner fecha exacta
ENDDA = '99991231'
* OBJPS =
* SEQNR =
* SPRPS =
* SUBTY =
* WERKS =
* PERSG =
* PERSK =
* PLANS =
DIALOG_MODE = '0'
LUW_MODE = '1'
* NO_EXISTENCE_CHECK = ' '
* NO_ENQUEUE = ' '
* IMPORTING
* RETURN =
* RETURN1 =
* HR_RETURN =
TABLES
PROPOSED_VALUES = IT_MODIFICA.
* MODIFIED_KEYS =


Y no me devuelve error pero no actualiza nada. He encontrado navegando por internet esta página: http://perso.wanadoo.es/valdelomare/ pero no me dice gran cosa.

También me serviría cualquier otra función equivalente, lo que no puedo hacer son INSERT, UPDATE o DELETES directamente sobre la tabla de BD.

davidsap
01/12/06, 11:38:52
Me autorespondo:

El error era que había que incluir el nombre de la tabla dentro del nombre del campo:

IT_MODIFICA-FNAME = 'P0105-USRID_LONG'.

anama
02/02/11, 15:55:42
Hola,

a mi me pasa lo mismo con la funcion HR_MAINTEAIN_MASTERDATA.

Le paso todos los valores bien, la tabla de valores propuesto lleva la estructura pxxxx-campo, pero el problema que tengo es que cuando le indico crear si lo crea bien, pero cuando el tipo de operacion es MOD, no hace nada, ni devuelve error.

CALL FUNCTION 'HR_MAINTAIN_MASTERDATA'
EXPORTING
PERNR = P_V_PERSON
MASSN = SPACE
ACTIO = 'MOD'
TCLAS = 'A'
BEGDA = P_V_BEGDA
ENDDA = P_V_ENNDA
* OBJPS = SPACE
* SEQNR = SPACE
* SPRPS = SPACE
* SUBTY = SPACE
* WERKS = SPACE
* PERSG = SPACE
* PERSK = SPACE
* PLANS = SPACE
DIALOG_MODE = '0'
LUW_MODE = '1'
NO_EXISTENCE_CHECK = ' '
NO_ENQUEUE = ' '
IMPORTING
RETURN = W_RETURN
RETURN1 = W_RETURN1
HR_RETURN = W_HR_RETURN
TABLES
PROPOSED_VALUES = P_I_PPROP
* MODIFIED_KEYS =
.

donde p_i_pprop contiene

P0022-PERNR 00000426
P0022-INFTY 0022
P0022-SUBTY F6
P0022-ENDDA 99991231
P0022-BEGDA 20110201
P0022-AEDTM 27012011
P0022-UNAME xxxxx
P0022-SLART F6
P0022-SLABS 34


Alguien puede decirme algo, por favor,

Muchas gracias¡¡¡¡