PDA

Ver la Versión Completa : Validaciones en ACtivos fijos


gomezja01
14/04/09, 11:18:35
He intentado crear una validacion para asegurarme de que los activos fijos tengan al menos un registro de fomento a la inversion (subvenciones). Pero en la user exit no puedo acceder a la tabla interna que contiene estos datos. Alguien sabe cómo funciona el tema de validaciones desde el punto de vista de ABAP?
Cualquier documentación también me sirve.
Gracias

Atlas
14/04/09, 18:59:46
normalmente tienes tres tipos de validaciones por lo menos en las de finanzas (creo que en las de activos tambien)

cabecera
posicion
documento completo

Las tablas que puedes validar son las que aparecen cuando creas una validación de campo (seleccionas crear validacion de campo y aparecen la serie de tablas/campos que puedes validar) cada tipo de validacíon permite unas tablas, si no está ahi la tabla que buscas habría que hacerlo referenciando por field symbols y es complicado...

gomezja01
15/04/09, 08:08:30
Gracias Atlas.
Ya intenté con las tablas que aparecen allí pero no veo los datos. Cómo sería eso de los field symbols?

Atlas
15/04/09, 09:27:15
Pues es complicado, y depende de muschos factores. Primero tienes que localizar la tabla en el programa de control de la transaccion que quieres validar.

Despues creas una constante de la siguiente forma:

constante: c_tabla(longitud) value '(Programa)tabla'.

asignas esta tabla a un field symbol de tipo table:

Field-symbols: <f1> type table.

assign (ctabla) to <F1>.

Y en <F1> tienes la tabla que necesitas.

gomezja01
15/04/09, 10:43:35
en qué punto hago el assign?
La transacción estandar no la puedo tocar. Y desde la user exit donde programo la validación, pueso no tengo la tabla interna disponible. Si hago el assign desde aquí, pues ni siquiera me deja generarlo.

Gracias de nuevo por tu colaboración.

Atlas
15/04/09, 11:29:09
he ahi la clave de (Programa)tabla entre parentesis va el programa de control ( el de la transaccion ) y la tabla es dicha tabla del report standard naunque no este aparentemente disponible en la user, si que se puede recuperar

gomezja01
15/04/09, 16:15:30
Ya lo hice, pero puedo acceder unicamente a la cabecera de la tabla interna. No recupero todos los registros que están llenos en el programa original.
Por qué puede ser?

Atlas
15/04/09, 16:41:36
fallo mio >_< es (programa)tabla[] ( y field symbol de tipo table

gomezja01
16/04/09, 09:37:24
Lo hice y funcionó.
Muchas gracias Atlas.