Un Usuario hizo la siguiente pregunta
Hola expertos
Estoy mostrando un informe AVL usando OOPS.
Es un informe interactivo en el que el usuario puede seleccionar un artículo de línea y llamar a otra pantalla, y desde allí llamar a la pantalla del informe.
Escribí CALL SELECTION-SCREEN 1000 para llamar a la pantalla seleccionada (Pantalla nº 1000) del Informe.
Se llama a la pantalla de selección. Pero cuando vuelvo a ejecutar (dentro de la misma sesión), la SELECCIÓN INICIAL no se ejecuta, por lo que no se completan datos en las tablas internas.
¿No está seguro de si esto se debe a CALL SELECTION-SCREEN?
Por favor ayuda.
Gracias por adelantado.
Rohan.
6 respuestas
>
> Escribí CALL SELECTION-SCREEN 1000 para llamar a la pantalla de selección (Pantalla No. 1000) del Informe.
> Se llama a la pantalla de selección. Pero cuando ejecuto nuevamente (dentro de la misma sesión), la SELECCIÓN INICIAL no se ejecuta, por lo que no se completan datos en las tablas internas.
>
HI Rohan utilizado
LLAME A SELECTION-SCREEN 1000 USANDO SELECTION-SET vari.
Esto activará los eventos de la pantalla de selección.
Sobre,
Rajesh
Ex miembro
Hola Rajesh,
Gracias por su respuesta.
Pero aún así, el arranque seleccionado no se ejecuta cuando lo vuelvo a ejecutar después de CALL SELECTION-SCREEN 1000.
¿Necesito configurar una versión de acuerdo con su respuesta?
Gracias.
Ex miembro
Hola Rohan,
La pantalla de selección predeterminada contiene un número 1000.
Para llamarlo a su programa úselo
Call selection screen 1000 USING Selection-set vari
.
Ex miembro
Hola Rohan,
Es posible que pueda utilizar «CALL TRANSACTION SY-TCODE» para recuperar el programa
en lugar de usar la pantalla de selección de llamadas ‘1000’.
Ojalá pudiera ayudarte.
La CALL SELECTION-SCREEN 1000 no activa el evento START-OF-SELECTION, pero activará los eventos EN SELECTION-SCREEN (otra PBO OUTPUT / PAI), y luego reiniciará la siguiente instrucción (con sy-subrc dando al usuario indica que la selección se ejecuta / cancela).
Podrías probar algo como esto
* Selection-screen definition PARAMETERS... * PBO AT SELECTION-SCREEN OUTPUT. " statements * PAI AT SELECTION-SCREEN? " statements START-OF-SELECTION DO. " statements CALL SELECTION-SCREEN 1000. IF sy-subrc NE 0. LEAVE PROGRAM. ENDIF. ENDDO.
Pero si tiene miedo de que el stock de la pantalla pueda provocar un vuelco después de algunos bucles. No haga nada y al final de la sección INICIO DE SELECCIÓN, el programa mostrará la primera PANTALLA DE SELECCIÓN.
Sobre,
Raymond.
Ex miembro
Hola,
Estás usando una pantalla de selección de 1000 llamadas. No será el comienzo de la selección.
En Ups, usarás otra forma
Cree una cuadrícula ALV en el Informe sin usar la pantalla
Defina una pantalla de selección en blanco en su programa y no utilice un pintor de pantallas.
ex:
Paso 1: seleccione el inicio de la pantalla de la pantalla 1001.
final de pantalla seleccionado 1001.
paso 2: Para mostrar, use como referencia lvc_s_layo, cl_gui_alv_grid.
paso 3: eventos en la salida de la pantalla seleccionada para usar
dando salida a la pantalla seleccionada.
al comienzo de la selección.
paso: 4 modo de llamada w_alv-> set_table_for_first_display (fieldcatalopgue)
Paso 5: seleccione la pantalla de llamada 1001.
Espero que te ayude.
Sobre,
Sekhar