Autor Tema: ACTUALIZAR CAMPO DYNPRO CON PESTAÑAS  (Leído 18353 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado adge

  • Novato
  • *
  • Mensajes: 1
    • Ver Perfil
ACTUALIZAR CAMPO DYNPRO CON PESTAÑAS
« en: 13 de Julio de 2011, 10:47:47 am »
Hola, tengo un problema con una dynpro con pestañas:

Estoy creando una dynrpo con varias pestañas. Ya están creadas y pasan de una a otra bien. Y graban los datos que insertas por pantalla. Pero el problema es que si cambio un valor y pongo otro y le doy a enter no se me cambia al valor nuevo me sigue poniendo el antiguo, es decir si mi campo PCP le pongo 30 y lo borro y le pongo 50 al darle al enter me sale 30 en vez de dejar el 50.

Tengo 3 pestañas, y lo de refrescar me lo hace en la ultima pestaña pero en las dos primeras no me la hace. Siempre me lo hace en la última pero no se como controlar eso.

El código de mi screen principal es:

PROCESS BEFORE OUTPUT.



  MODULE BEFORE_OUTPUT.
  CALL SUBSCREEN subscreen_empl   INCLUDING empl_prog empl_dynnr.
  CALL SUBSCREEN subscreen_header INCLUDING header_prog header_dynnr.
 MODULE  F_ECONOMICA_ACTIVE_TAB_SET.
 call subscreen F_ECONOMICA_TAB1_REF1 including G_F_ECONOMICA-prog
G_F_ECONOMICA-subscreen.
 call subscreen F_ECONOMICA_TAB2_REF1 including G_F_ECONOMICA-prog
G_F_ECONOMICA-subscreen.
 call subscreen F_ECONOMICA_TAB3_REF1 including G_F_ECONOMICA-prog
G_F_ECONOMICA-subscreen.
*         infotype specific operations

  MODULE HIDDEN_DATA.
  MODULE P9801.




Y luego lo q pongo en la primera pestaña q no me va es (suponiendo q solo tengo un campo q es el q quiero refrescar PCP):

PROCESS BEFORE OUTPUT.
MODULE HIDDEN_DATA.
MODULE PRUEBA.
MODULE P9801.

MODULE modify_subscreen.
PROCESS AFTER INPUT.

MODULE PRE_INPUT_CHECKS.
  CHAIN.

    FIELD P9801-PCP.

  ENDCHAIN.
PROCESS ON VALUE-REQUEST.


Me puede ayudar alguien por favor?
Muchas gracias.

Desconectado Enrique.Borroni

  • Moderador_
  • Usuario Completo
  • *****
  • Mensajes: 89
    • Ver Perfil
Re:ACTUALIZAR CAMPO DYNPRO CON PESTAÑAS
« Respuesta #1 en: 15 de Julio de 2011, 02:53:25 am »
Estimado...supongo que los campos de las dynpros los tienes en una estructura o tabla interna que vas actualizando a medida que trabajas
con ellas...o estas utilizando ALV ... la verdad para poder ayudarte de una mejor forma necesito mas informacion...

En todo caso en la transaccion ABAPDOCU hay varios ejemplos que te spueden servir.
Saludos.

Atte.,
Enrique Borroni

maito : enrique.borroni@abap.es

Desconectado JustaIngham

  • Novato
  • *
  • Mensajes: 2
    • Ver Perfil
Re:ACTUALIZAR CAMPO DYNPRO CON PESTAÑAS
« Respuesta #2 en: 12 de Agosto de 2011, 12:44:42 pm »
Estoy creando una dynrpo con varias pestañas. Ya están creadas y pasan de una a otra bien. Y graban los datos que insertas por pantalla. Pero el problema es que si cambio un valor y pongo otro y le doy a enter no se me cambia al valor nuevo me sigue poniendo el antiguo, es decir si mi campo PCP le pongo 30 y lo borro y le pongo 50 al darle al enter me sale 30 en vez de dejar el 50.

I am not clear...........

Desconectado calberto

  • Novato
  • *
  • Mensajes: 1
    • Ver Perfil
Re:ACTUALIZAR CAMPO DYNPRO CON PESTAÑAS
« Respuesta #3 en: 31 de Enero de 2013, 09:36:38 pm »
Hola,

Como lograste resolver el problema, ya que tengo el mismo problema que mencionas.

Gracias.

Estoy creando una dynrpo con varias pestañas. Ya están creadas y pasan de una a otra bien. Y graban los datos que insertas por pantalla. Pero el problema es que si cambio un valor y pongo otro y le doy a enter no se me cambia al valor nuevo me sigue poniendo el antiguo, es decir si mi campo PCP le pongo 30 y lo borro y le pongo 50 al darle al enter me sale 30 en vez de dejar el 50.

I am not clear...........

Desconectado Enrique.Borroni

  • Moderador_
  • Usuario Completo
  • *****
  • Mensajes: 89
    • Ver Perfil
Re:ACTUALIZAR CAMPO DYNPRO CON PESTAÑAS
« Respuesta #4 en: 01 de Febrero de 2013, 04:23:41 am »
Estimado...te cuento como lo he hecho y no tengo problemas...por ejemplo tengo
una Dynpro principal del tipo normal y los TAB son Subscreen que son siete.

Si te fijas no he identificado ningun campo en la logica de proceso de las Dynpro...lo
que si estan definidos y declarados como estructuras en el TOP...una estructura para
cada Dynpro. con todos sus campos.

Otra forma es que en la logica del PAI... despues del USER_COMMAND...actualices valores sin necesidad de dar un ENTER...para esto tienes que utilizar la funcion "DYNP_VALUES_UPDATE".

Cualquier cosa avisame

Ojala esto te ayude...


La Dynpro principal es la : 3000
*
*----------------------------------------------------------------------*
* PBO
*----------------------------------------------------------------------*
*
PROCESS BEFORE OUTPUT.
*
  MODULE status_3000.                        " Aqui actualizo atributos de los campos de la dynpro
*
  MODULE t_ctrl_active_tab_set.                  " Aqui controlo en que TAB estoy
*
  CALL SUBSCREEN:
       3001_sca INCLUDING g_t_ctrl-prog '3001',
       3002_sca INCLUDING g_t_ctrl-prog '3002',
       3003_sca INCLUDING g_t_ctrl-prog '3003',
       3004_sca INCLUDING g_t_ctrl-prog '3004',
       3005_sca INCLUDING g_t_ctrl-prog '3005',
       3006_sca INCLUDING g_t_ctrl-prog '3006',
       3007_sca INCLUDING g_t_ctrl-prog '3007'.
*
*
*----------------------------------------------------------------------*
* PAI
*----------------------------------------------------------------------*
*
PROCESS AFTER INPUT.
*
  CALL SUBSCREEN:
         3001_sca,
         3002_sca,
         3003_sca,
         3004_sca,
         3005_sca,
         3006_sca,
         3007_sca.


  FIELD wa_dato_xx MODULE get_datos_generales_pai ON REQUEST.              " Aqui traigo y asigno valores de campos a la dynpro
*
  MODULE user_command_3000.                               " Aqui controlas botones y modifica valores...etc.






La Subscreen : 3001 ( primer TAB )
*
*----------------------------------------------------------------------*
* PBO
*----------------------------------------------------------------------*
*
PROCESS BEFORE OUTPUT.
*
  MODULE atrib_dynpro_3001.                              " Aqui modifico atributos de los campos en la pantalla
*
  MODULE act_data_dynpro_3001.                           " Aqui valido posibles modificaciones, traigo textos, etc.
*

*
*----------------------------------------------------------------------*
* PAI
*----------------------------------------------------------------------*
*
PROCESS AFTER INPUT.
*
*
  FIELD wa_dato_001           MODULE valida_dato_001.           " Validaciones especificas a un campo

*
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
*
  MODULE user_command_3001.                    " Aqui controlas botones y modifica valores de campos de la Subscreen etc.
*
*







Saludos.

Atte.,
Enrique Borroni

maito : enrique.borroni@abap.es