Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-02-2012
lmir lmir is offline
Miembro
 
Registrado: feb 2010
Posts: 20
Poder: 0
lmir Va por buen camino
Problema con herencia en RBuilder 14 y XE2

Hola amigos

Estoy tratando de migrar a XE2 un proyecto hecho hace tiempo en Delphi 6. Ahi usaba un formulario que contenía un componente ppReportBase (hecho a partir de ppReport de ReportBuilder), ese formulario era heredado para cada reporte en el proyecto (bueno de esa manera tenia la posibilidad de meter mi código en varias partes de la funcionaliadd de RBuilder).

Bien, eso estuvo bien en Delphi 6 y luego he probado que funciona en Delphi 7, ... hasta Delphi 2007.

Pero en XE2 me dan varios problemas, al parecer algo en la herencia, pienso yo, pero no acierto a adivinar que puede ser. El componente ppReportBase me funciona bien, el solo, pero cuando trabajo con los formularios heredados es el rollo.
Cuando en diseño voy a colocar un ppLabel (en el diseñador de reportes del formulario heredado), por ejemplo me salta el error List out of bounds y curiosamente se crea un ppLabel en el PAS pero no en el DFM y si pincho en Details me sale algo así:

Código:
[500A3234]{rtl160.bpl  } System.Classes.TList.Insert (Line 3932, "System.Classes.pas" + 5) + $1
[11EF1E98]{rbRCL1416.bpl} Ppclass.TppBand.AddObject + $84
[11EF5700]{rbRCL1416.bpl} Ppclass.TppComponent.SetBand + $54
[11DDCC80]{rbRCL1416.bpl} Ppctrls.TppCustomText.SetBand + $0
[120D079A]{rbIDE1416.bpl} Ppdesignworkspacecontroller.TppDesignWorkspaceController.AddComponent + $E6
[120D17CA]{rbIDE1416.bpl} Ppdesignworkspacecontroller.TppDesignWorkspaceController.ehWorkspace_MouseUp + $BA
[11CD6627]{rbRTL1416.bpl} Ppmulticast.TppMulticastEvent.Notify + $27
[120BEF56]{rbIDE1416.bpl} Ppdesignerworkspace.TppWorkspace.MouseUp + $4A
[503331A8]{vcl160.bpl  } Vcl.Controls.TControl.DoMouseUp (Line 7448, "Vcl.Controls.pas" + 2) + $28
[50333224]{vcl160.bpl  } Vcl.Controls.TControl.WMLButtonUp (Line 7461, "Vcl.Controls.pas" + 9) + $6
[50332814]{vcl160.bpl  } Vcl.Controls.TControl.WndProc (Line 7204, "Vcl.Controls.pas" + 91) + $6
[121C6660]{rbIDE1416.bpl} Ppsynuedit.TSynEditPlugin + $70
[503369AB]{vcl160.bpl  } Vcl.Controls.TWinControl.IsControlMouseMsg (Line 9745, "Vcl.Controls.pas" + 1) + $9
[50337163]{vcl160.bpl  } Vcl.Controls.TWinControl.WndProc (Line 9976, "Vcl.Controls.pas" + 152) + $6
[503367B8]{vcl160.bpl  } Vcl.Controls.TWinControl.MainWndProc (Line 9689, "Vcl.Controls.pas" + 3) + $6
[500B5FCC]{rtl160.bpl  } System.Classes.MakeObjectInstance (Line 13921, "System.Classes.pas" + 0) + $0
[504524EF]{vcl160.bpl  } Vcl.Forms.TApplication.ProcessMessage (Line 10164, "Vcl.Forms.pas" + 23) + $1
[50452532]{vcl160.bpl  } Vcl.Forms.TApplication.HandleMessage (Line 10194, "Vcl.Forms.pas" + 1) + $4
[50452865]{vcl160.bpl  } Vcl.Forms.TApplication.Run (Line 10331, "Vcl.Forms.pas" + 26) + $3
Les agradecería mucho su ayuda.

lmir
Responder Con Cita
  #2  
Antiguo 16-02-2012
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
"List out of bounds" siginifica que se está intentando acceder a un elemente de una lista, pero el índice está fuera de rango, bien por encima o por debajo de los límites. Que se cree en el archivo fuente pero no se coloque en el formulario es sólo porque no es capaz de crear el objeto debido al error.

Nunca he usado esos componentes "pp", pero por lo que dices yo apostaría por una mala instalación o por una desincronización entre las versiones (que la versión de los componentes entren en conflicto con tu versión de Delphi).
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #3  
Antiguo 17-02-2012
lmir lmir is offline
Miembro
 
Registrado: feb 2010
Posts: 20
Poder: 0
lmir Va por buen camino
Muchas gracias por su ayuda. Lo que es un poco dificil revisar todo el codigo de ese ReportBuilder (decidi usarlo en una epoca en que el FastReport solo tenia una documentacion minima y en ruso... y ahora ya no estoy tan contento con aquella decisión ...).

Pensé que a lo mejor hay algún tipo de incompatibilidad conocida entre las versiones de estos componentes anteriores al Delphi 2009 y las últimas en lo referente a la herencia, porque repito, hasta en Delphi 2007 todo va bien.

Y lo de convertir de ReportBuilder a FastReport creo que es demasiado elemental.

Pero muchas gracias ...
Responder Con Cita
  #4  
Antiguo 18-02-2012
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Cita:
Empezado por lmir Ver Mensaje
(...) una epoca en que el FastReport solo tenia una documentacion minima y en ruso... (...)
Anda que, vaya ganas...

Siento no poder ayudarte más.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #5  
Antiguo 18-02-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
ReportBuilder tiene un buen sistema de soporte al usuario, ¿has preguntado a ellos?, también tienen una inmensa lista de correos que seguro que está comentado ese problema, en todo caso puedes preguntar tú también.
Deberías preguntar en el soporte técnico, ya que te has gastado un buen dinero en el programa.
Responder Con Cita
  #6  
Antiguo 18-02-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Hola.

Esto no te será de gran ayuda, pero te comento que también uso ReportBuilder, desde hace más de 10 años (cuando la única alternativa factible era Quick Report). Es algo que espero cambiar este año por alguna otra biblioteca de reportes más actual y libre (agradezco recomendaciones ).

El caso es que ya desde Delphi 5 venía experimentando problemas como el que describes con la herencia visual en ReportBuilder. Entonces el acceso a material en Internet era poco (de hecho no tenía Internet permanente), y tras muchas pruebas y revisiones infructuosas decidí que con ReportBuilder no añadiría una sola etiqueta TppXXX en una plantilla (formulario o módulo de datos base de la cual se derivan otros). En tales plantillas los únicos objetos que pongo de ReportBuilder son TppReport (el reporte vacío), TppDBPipeline (el enlace con la fuente de datos sin especificar cuál) y TppViewer (el presentador de vista preliminar); el resto de objetos TppXXX los agrego siempre en los formularios finales. Es un hábito que mantengo desde entonces para evitar los problemas de la herencia visual en ReportBuilder.

Eso sí, en las plantillas suelo colocar manejadores de eventos (código) que luego en los formularios derivados asigno a etiquetas TppXXX mediante el inspector de objetos. Es decir, al menos el código sí puede ser centralizado en la plantilla sin problemas con la herencia.

Un saludo dial-up.

Al González.
Responder Con Cita
  #7  
Antiguo 18-02-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Aunque he estado usando reportbuilder desde hace 11 años, nunca tuve ese problema, seguramente porque es delphi 5 con reportbuilder 3

Al, actual y libre... no la conozco, salvo report manager, que es fabulosa pero tiene un problema, que su creador parece que la está dejando morir, hace unos meses que la abandonó a su suerte en mitad del gran océano y ni siquiera ha vuelto la vista atrás para despedirse de ella
Responder Con Cita
  #8  
Antiguo 20-02-2012
lmir lmir is offline
Miembro
 
Registrado: feb 2010
Posts: 20
Poder: 0
lmir Va por buen camino
Muchas gracias por sus sugerencias. Trataré de averiguar en el sitio de RB como me aconsejan .....


lmir
Responder Con Cita
  #9  
Antiguo 21-02-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Al, actual y libre... no la conozco, salvo report manager, que es fabulosa pero tiene un problema, que su creador parece que la está dejando morir, hace unos meses que la abandonó a su suerte en mitad del gran océano y ni siquiera ha vuelto la vista atrás para despedirse de ella

Vaya, si antes lo digo... por fin han solucionado los problemas en la web de reportmanager y han puesto cosas nuevas
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problema con herencia Decker OOP 9 06-09-2012 17:13:59
Problema herencia visual en form diegofhernando OOP 8 19-05-2008 16:41:33
Closstab de RBuilder pato02 Impresión 0 11-11-2003 14:59:58
Configuración de CLOSSTAB en RBuilder pato02 Impresión 0 06-11-2003 12:53:03


La franja horaria es GMT +2. Ahora son las 22:22:05.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi