Crystal Report: mostrar valores de parámetros

Resuelto
lionel38 -  
DelNC Mensajes publicados 2360 Estado Miembro -
Hola,

< breves espaciados >

Utilizo Crystal Report 11.0
Cuando uso un parámetro que puede tener varios valores (opción "usar varios valores" en sí), para ejecutar una consulta, lo pongo también en el título del informe, para conocer las tiendas que he seleccionado (es una consulta sobre las diferencias de inventario en una base de datos Oracle de un software de Mantenimiento GMAO CARL).

Sin embargo, si funciona bien con una única tienda, siempre indica solo una tienda incluso si selecciono varias.

¿Tienen alguna idea?

Gracias

Lionel

5 respuestas

  1. Starluck
     
    Hola,

    Hay que crear un campo de fórmula. Aquí está el código que he creado:

    // declarar e inicializar variables locales
    // resultado a devolver
    stringVar str := '';
    // índice
    numberVar i;

    // procesos
    for i := 1 to Count ({?selectEspece}) step 1 do (
    if (i > 1) then
    str := str + ',';
    str := str + {?selectEspece}[i];
    );

    // devolver resultado
    str;

    Salut,
    1
    1. criquet
       
      Gracias!
      0
    2. criquet
       
      Lionel para ser exacto!
      0
  2. Marion 03
     
    Hola Lionnel,

    Tengo el mismo problema que tú y quería saber si ya encontraste la solución.
    Si es así, ¡serías muy amable de dármela!

    Gracias
    0
  3. lionel
     
    Bueno... no, no he logrado encontrar cómo hacerlo, a pesar de que he hecho grandes avances en CR...
    No consigo enumerar los objetos de la lista.

    Atentamente

    Lionel
    0
  4. tutosbi
     
    Solo para completar la respuesta de Starluck, CR almacena los valores proporcionados por el usuario en una matriz que recorres para mostrarlos. Por eso Cr solo muestra el primer elemento cuando dejas solo el campo parámetro en tu informe.
    Puedes ver algunos tutorials en http://www.tutorielsbi.com

    Hope this helps...
    0
  5. DelNC Mensajes publicados 2360 Estado Miembro 2 010
     
    Puede obtener el valor de releve_km según un parámetro (1-param) de la siguiente manera:

    - Suponiendo que 1-param contiene la fecha de inicio y 2-param la fecha de fin, puede utilizar una fórmula de Crystal Reports para filtrar el registro adecuado y devolver releve_km solo cuando date_releve esté entre las fechas.
    - Cree una fórmula en el subestado o en el ámbito de la tabla releve con la lógica:
    - Si {date_releve} >= {?Param1} y {date_releve} <= {?Param2} entonces {releve_km} else 0 (o //no mostrar/Null dependiendo del manejo que desee).
    - Si necesita extraer releve_km para alguno de los registros que cumplen la condición, puede usar un campo de fórmula con:
    - Maximum ({releve_km}, {date_releve} >= {?Param1} and {date_releve} <= {?Param2})
    - o First (releve_km, {date_releve} >= {?Param1} and {date_releve} <= {?Param2}) si espera un único valor.
    - Otra opción es usar un paso de selección (Record Selection Formula) del informe o del subinforme para limitar los registros a los que cubran el rango de fechas y luego sumar o mostrar releve_km conforme a las filas visibles.

    Notas:
    - Reemplace {?Param1} y {?Param2} por sus parámetros reales.
    - Asegúrese de que date_releve esté en el mismo rango de fechas que los parámetros.
    - Si quiere mostrar releve_km para cada fila que cumpla la condición, no use agregaciones; solo muestre {releve_km} en el detalle filtrado por la condición.

    Si me comparte la versión exacta de Crystal Reports que usa y qué quiere exactamente como resultado (un único valor, una columna filtrada, o suma de km), puedo adaptar la fórmula.
    0