MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
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 20/07/06, 19:01:42
aconnell
 
Mensajes: n/a
Question Inclusión de logo en reporte

Hola Chicos.
Necesito que me ayuden..
Estoy buscando la manera de incluir en un reporte el logo de la empresa. alguno de ustedes conoce una menera de hacerlo.
Se los agradezco.. Ayudenme..
Responder Con Cita
  #2  
Viejo 20/07/06, 20:59:28
Mauricio Hidalgo Mauricio Hidalgo is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Santiago, Chile
Mensajes: 481
Sigue por acá y encontrarás lo que buscas

Responder Con Cita
  #3  
Viejo 21/07/06, 16:08:33
aconnell
 
Mensajes: n/a
Question

Gracias Mauricio,
pero esto me sirve para un formulario no para un reporte.
Lo que quiero es agregar el logo a un programa hecho en casa por la se38.
Responder Con Cita
  #4  
Viejo 21/07/06, 17:36:39
Mauricio Hidalgo Mauricio Hidalgo is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Santiago, Chile
Mensajes: 481
Malas Noticias mi amigo entonces



Mauricio Hidalgo
Responder Con Cita
  #5  
Viejo 26/07/06, 23:23:45
HellJanitor HellJanitor is offline
Junior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 5
Con objetos

Hola ACONNELL, la solución sería crear tu dynpro propia y en ella crear un custom control donde irá el logo, luego en tu programa creas un objeto con referencia a la clase CL_GUI_CUSTOM_CONTAINER

DATA: CC_LOGO TYPE REF TO CL_GUI_CUSTOM_CONTAINER.

Instancias el objeto con el nombre del container creado en la dynpro:

CREATE OBJECT: CC_LOGO EXPORTING CONTAINER_NAME = 'CC_LOGO'.

Creas un objeto con referencia a la clase CL_GUI_PICTURE

data: PI_LOGO TYPE REF TO CL_GUI_PICTURE.

Instancias el logo pasándole como parámetro el nombre del objeto del container

CREATE OBJECT: PI_LOGO EXPORTING PARENT = CC_LOGO.

Obtienes el URL de cualquier imagen pasándole el ID (ene ste caso 'FLIGTHS')

TYPES PICT_LINE(256) TYPE X.
DATA: PICT_TAB TYPE TABLE OF PICT_LINE,
URL(255) TYPE C.
IMPORT PICT_TAB = PICT_TAB FROM DATABASE ABTREE(PI)
ID 'FLIGHTS'
IN CHAR-TO-HEX MODE.
CALL FUNCTION 'DP_CREATE_URL'
EXPORTING
TYPE = 'IMAGE'
SUBTYPE = 'GIF'
TABLES
DATA = PICT_TAB
CHANGING
URL = URL.

por último, llamas al método LOAD_PICTURE_FROM_URL para Cargar la imagen

CALL METHOD: PI_LOGO->LOAD_PICTURE_FROM_URL
EXPORTING
URL = URL,
PI_LOGO->SET_DISPLAY_MODE
EXPORTING
DISPLAY_MODE = PI_LOGO->DISPLAY_MODE_FIT.

Espero esto te sirva de ayuda.

Saludos.

Los objetos al poder.....






Responder Con Cita
  #6  
Viejo 27/07/06, 15:08:05
Mauricio Hidalgo Mauricio Hidalgo is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Santiago, Chile
Mensajes: 481
Con poco ajuste al codigo proporcionado, funciona lo del logo. Pero y la parte del reporte estandar como la escribes en esta dynpro...Write no funcionó....

Gracias por el aporte.
Responder Con Cita
  #7  
Viejo 27/07/06, 17:46:14
HellJanitor HellJanitor is offline
Junior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 5
Adicionando algo más

Hola Mauricio, la respuesta es sencilla, creamos un área subscreen, cargamos otra screen dentro, digamos una 200, y en el pBO de esta última subscreen, ponemos las siguientes líneas:

LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN 0.
* aquí imprimes lo que quieras, puedes poner un perform de lista
LOOP AT TI_SPFLI INTO ST_SPFLI.
WRITE:/ ST_SPFLI-CARRID.
ENDLOOP.
LEAVE SCREEN.

Espero sea de ayuda.

Saludos.

Julio L.

Los objetos al poder...


Responder Con Cita
  #8  
Viejo 27/07/06, 19:16:11
Mauricio Hidalgo Mauricio Hidalgo is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Santiago, Chile
Mensajes: 481
Uyy, se me fue en collera esta cosa.

"creamos un área subscreen, cargamos otra screen dentro"...como lo haces?

me fui a la dynpro donde creé el custom control para el logo, a continuación le agregué un subscreen....y ahora, donde le engancho la dynpro 200 que me propones?, en la propiedades del suscreen no encontré nada.

°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
SERA que la solución completa va por el lado de la POO..me huele a que sí. Bueno estuve revisando que interfaces hay para subscreen y me encontré con esto CL_PT_GUI_SAP_DYNPRO_SUBSCREEN. Será que por acá podré asociar la Dynpro a las subscreen?......como verás no programo con orientación a objetos......

Gracias

Úlima edición por Mauricio Hidalgo fecha: 27/07/06 a las 19:35:55.
Responder Con Cita
  #9  
Viejo 27/07/06, 19:52:24
HellJanitor HellJanitor is offline
Junior Member
 
Fecha de Ingreso: jul 2006
Mensajes: 5
Ejemplos en la ayuda

Hola Mauricio, para setear un subscreen dentro de un área debes utilizar el CALL SUBSCREEN dentro de tu PBO inicial. Existe un ejemplo de subscreens en la ayuda de SAP. La ruta es la siguiente: Documentación ABAP y Ejemplos/BC-Programación ABAP/Imágenes en pantalla ABAP/Dynpros/elementos de pantalla complejos/Subscreens.

Espero te sirva de ayuda.

Saludos.

Julio L.

Los objetos al poder...

Responder Con Cita
  #10  
Viejo 28/07/06, 21:00:02
Mauricio Hidalgo Mauricio Hidalgo is offline
Senior Member
 
Fecha de Ingreso: may 2006
Localización: Santiago, Chile
Mensajes: 481
Hola yo de nuevo.

Un poco de historia....
"Hola Mauricio, la respuesta es sencilla, creamos un área subscreen, cargamos otra screen dentro, digamos una 200, y en el pBO de esta última subscreen, ponemos las siguientes líneas:"

con la indicación de usar CALL SUBSSCREEN....ni un problema. Pero el PBO siguiente

LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN 0.
* aquí imprimes lo que quieras, puedes poner un perform de lista
LOOP AT TI_SPFLI INTO ST_SPFLI.
WRITE:/ ST_SPFLI-CARRID.
ENDLOOP.
LEAVE SCREEN.

no funciona porque justo una de las restricciones para subscreen screen es que no puedo ocupar comandos como LEAVE, segun u extracto de la librería de SAP.

"The flow logic of a subscreen screen may not contain any dialog modules containing the statements SET TITLEBAR, SET PF-STATUS, SET SCREEN, LEAVE SCREEN, or LEAVE TO SCREEN. Any of these statements causes a runtime error. You cannot change the GUI status of a main screen in a subscreen screen."

No está explicitamenet mensionado al instrucción LIVE To LIST-PROCESSING, pero este comando implicitamente hace SET SCREEN..con lo cual estoy violando la regla anterior.

De todas maneras ha estado interesente la investigación.

Gracias

Úlima edición por Mauricio Hidalgo fecha: 28/07/06 a las 21:04:12.
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 16:48:48.


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