La Web del Programador: Comunidad de Programadores
 
    Pregunta:  18133 - RECORRER LOS CONTROLES DE UN SUBINFORME
Autor:  Mayte
Hola, Espero que me podaís ayudar.
He creado un informe que contiene varios subinformes.
Cuando abro el informe necesito utilizar una función que se recorra todos los controles de los subinformes y les cambie las etiquetas(de estos subinformes) dependiendo del idioma escogido.

He utilizado la opción:

Reports( nombre_infome).Controls( nombre_subinforme).Controls(nombre_control).caption=descripcion_en_idioma_escogido

Pero, creo que los Reports no se recorren igual que los Forms, ya que esto funciona cuando son formularios, pero no cuando son Reports.

Alguien puede ayudarme???
Gracias.

  Respuesta:  JAVIER DANILO ROMERO
hola.

Para referirte a una propiedad de un control de un subinforme simplemente escribe el nombre del informe principal, luego escribes el simbolo ! despues el nombre del subinforme, nuevamente el simbolo ! despues el nombre del control al que deseas cambiar la propiedad, luego punto seguido de la referencia de la propiedad, el signo igual y el nuevo valor de la propiedad.

Por ejemplo: Cambiemosle la propiedad etiqueta de un control llamado cantidad de un subinforme llamado pedidos de un informe llamado cliente.

ME![PEDIDOS]![CANTIDAD].CAPTION = CANTIDADES

El ME reemplaza el nombre del informe principal activo, si no puedes utilizar el nombre del informe.

Esta expresion tienes que insertarla en la seccion donde esta el subinforme en el evento que dice "al imprimir".

Tienes que escribir la expresion para cada uno de los controles que deseas cambiarle la propiedad.

Pruebalo y me comentas si te funciona.

Suerte, espero que te sirva