MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Formularios - SAPScript - Smartforms
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 07/04/08, 10:19:24
usuarionavarra usuarionavarra is offline
Member
 
Fecha de Ingreso: dic 2007
Mensajes: 35
Mi primer formulario con SAPscript (Ayuda por favor)

Estoy haciendo mi primer formulario con Sapscript.

He creado dos páginas con varias windows (y page windows). He indicado para la primera página que next page sea la segunda página y para la segunda página
que el next page sea la primera (La idea es que si todas la filas de datos no me caben en la primera pueda ir avanzando por todas las página con scroll (El contenido de la segunda página he colocado las mismas page windows que para la primera).

Lo he probado y no veo el resto de datos o filas, solo veo la filas de al principio (de la primera página), supongo que en el código tengo que indicarle de alguna manera lo del scrolling o que cuando pulso los botones (first,next,previus, last) me vaya avanzando las páginas para poder ver el resto de las filas.

Otro problema que tengo es que, al sacar el informe, la primera fila de datos me la duplica. Es un ejemplo muy sencillo, consiste en sacar un informe con el contenido de la Tabla de diccionario de datos SPFLIGHT (Tabla que viene de ejemplo en el SAP) Es decir la primera fila de datos de la tabla SPFLIGHT la duplica y no sé por qué.

A continuación os mando el código de programa ABAP de el ejemplo para el formulario.

*************************************************

REPORT ZZSFLIGHT.

TABLES:SFLIGHT, ITCPO.

DATA:VAR_CARRID LIKE SFLIGHT-CARRID.
*DATA:VAR_CONNID LIKE SFLIGHT-CONNID.

FORM SACAR_INFORME.

VAR_CARRID = SFLIGHT-CARRID.
* VAR_CONNID = SFLIGHT-CONNID.

PERFORM ABRIR_FORMULARIO.

SELECT * FROM SFLIGHT
WHERE CARRID = VAR_CARRID.
PERFORM IMPRIMIR USING '' 'MAIN'.
ENDSELECT.

CALL FUNCTION 'CLOSE_FORM'
EXCEPTIONS
UNOPENED = 1
OTHERS = 2.
ENDFORM.

FORM ABRIR_FORMULARIO.
MOVE 1 TO ITCPO-TDCOPIES.
MOVE 'ESB6' TO ITCPO-TDDEST.
MOVE 'X' TO ITCPO-TDNEWID.
MOVE 'X' TO ITCPO-TDIMMED.
MOVE 'X' TO ITCPO-TDDELETE.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
DEVICE = 'SCREEN'
DIALOG = 'X'
FORM = 'ZZIVAN10'
LANGUAGE = 'S'
OPTIONS = ITCPO
EXCEPTIONS
CANCELED = 1
DEVICE = 2
FORM = 3
OPTIONS = 4
UNCLOSED = 5
OTHERS = 6.
ENDFORM.

FORM IMPRIMIR USING ELEMENTO VENTANA.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = ELEMENTO
WINDOW = VENTANA
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
OTHERS = 7.
ENDFORM.

*&---------------------------------------------------------------------*
*& Module STATUS_0001 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
module STATUS_0001 output.
SET PF-STATUS 'MENUINFORME'.
SET TITLEBAR 'SUPERTIT'.
endmodule. " STATUS_0001 OUTPUT
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0001 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
module USER_COMMAND_0001 input.
CASE SY-UCOMM.
WHEN 'INF'.
PERFORM SACAR_INFORME.
WHEN 'SAL'.
SET SCREEN 0. LEAVE SCREEN.
ENDCASE.
endmodule. " USER_COMMAND_0001 INPUT

***********************************************

Muchas gracias de antemano y cordiales saludos.

Buenos días a todos
Responder Con Cita
  #2  
Viejo 09/04/08, 14:26:37
hunterx hunterx is offline
Junior Member
 
Fecha de Ingreso: sep 2007
Mensajes: 5
Buenas,

no tenés que definir dos páginas para mostrar los datos, si las dos son iguales borra la segunda. Sapscript imprime en una nueva hoja cuando se queda sin espacio en la primera.

La página sería un contenedor de las ventanas, le das el formato que quieras (con las page-windows) y ese es el formato con que se imprimen, sea 1 o n páginas.

Se definen más páginas cuando tenés varios formatos distintos, por ejemplo si queres que en un listado la primerá página se imprima con un encabezado pero el resto no, ahi definis una página con todos los elementos y el encabezado y la segunda página sin el encabezado. A la primera le indicas que la siguiente es la segunda pero a la segunda (creo, no recuerdo ahora porque no hago hace mucho) no le tenes que indicar que la siguiente es la primera.

Espero haberte ayudado, saludos.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 22:07:35.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web