Cómo usar variables compartidas en informes de Crystal Reports

Las variables compartidas (Shared Variables) en Crystal Reports son únicas: su valor puede establecerse y leerse en cualquier parte del informe (informe principal o cualquier subinforme), a diferencia de variables locales (solo en su fórmula) o globales (solo en informe principal).

Ejemplo: compartir "Edad" entre subinformes

Subinforme 1 calcula edad → guarda en variable compartida → Subinforme 2 la muestra.

Paso 1: Declarar y asignar (en cualquier fórmula)

Shared NumberVar UserAge;
UserAge := {Tabla1.Edad};
""  // Devuelve string vacío para no mostrar nada en esta fórmula

Paso 2: Leer/usar (en cualquier otra fórmula/informe)

Shared NumberVar UserAge;
UserAge  // Devuelve el valor para mostrar o usar en cálculos

Paso 3: Usar en fórmulas, secciones, gráficos...

Ya disponible globalmente en todo el informe.

Ventaja de rendimiento: Evita vincular (linkar) muchas tablas en un subinforme para pasar datos. Compartes solo el valor calculado → subinforme más ligero y rápido.
Reglas clave:
  • Debe declararse Shared en ambos lados (asignación y lectura).
  • Tipo de dato (NumberVar, StringVar, DateVar...) debe coincidir.
  • El ámbito es todo el informe principal + subinformes.