Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di arw
    Registrato dal
    Dec 2007
    Messaggi
    149

    formula IF usando ireport

    Ciao, scusate, ho inserito in una campo varibile questa sintassi per gestire un IF, ma mi da errore, dove sbaglio?

    codice:
    (($F{idtipologiacontrattuale}==1) ? $V{calcoloricavoprogTK}.doubleValue() : 
    (($F{idtipologiacontrattuale}==2) ? $V{calcoloricavoprogTM}.doubleValue()):
    (($F{idtipologiacontrattuale}==3) ? $V{calcoloRicavoProgA}.doubleValue()):
    (($F{idtipologiacontrattuale}==4) ? $V{calcoloricavoprogTK}.doubleValue()):
    (($F{idtipologiacontrattuale}==6) ? $V{calcoloRicavoProgA}.doubleValue()))

    grazie

  2. #2
    puoi postare l'errore?
    ti dà errore di validazione?

    $F{idtipologiacontrattuale}==1 è errata come sintassi!!!!!!
    devi utilizzare le proprietà disponibili per la tipologia del tuo campo oppure nel caso si tratti di campi INTEGER
    $F{idtipologiacontrattuale}==new Integer(1)
    eccetera...
    tutte queste informazioni le puoi comunque trovare nel manuale di ireport gratuito che si trova in rete.

  3. #3
    Utente di HTML.it L'avatar di arw
    Registrato dal
    Dec 2007
    Messaggi
    149
    questo è l'errore:
    codice:
    net.sf.jasperreports.engine.JRException:_Errors_were_encountered_when_compiling_report_expressions_class_file: 1._Syntax_error_on_token_")",_delete_this_token ((((java.lang.Integer)field_idtipologiacontrattuale.getValue())==2)_?_((java.lang.Double)variable_calcoloricavoprogTM.getValue()).doubleValue())://$JR_EXPR_ID=29$ _______________________________________________________________________________________________________________________________________________^ 2._Syntax_error_on_token(s),_misplaced_construct(s) ((((java.lang.Integer)field_idtipologiacontrattuale.getValue())==3)_?_((java.lang.Double)variable_calcoloRicavoProgA.getValue()).doubleValue())://$JR_EXPR_ID=29$ ((((java.lang.Integer)field_idtipologiacontrattuale.getValue())==4)_?_((java.lang.String)variable_calcoloricavoprogTK.getValue()).doubleValue())://$JR_EXPR_ID=29$ ((((java.lang.Integer)field_idtipologiacontrattuale.getValue())==6)_?_((java.lang.Double)variable_calcoloRicavoProgA.getValue()).doubleValue())));//$JR_EXPR_ID=29$ _
    ho provato ad eliminare delle parentesi ma cmq non andava. Sbaglio la sintassi?

  4. #4
    sì è un problema di sintassi.
    di che tipo è il Field? di che tipo è il campo che inserisci?
    potresti allegare qui il file xml/jrxml o postarne il codice per favore?

  5. #5
    Utente di HTML.it L'avatar di arw
    Registrato dal
    Dec 2007
    Messaggi
    149
    dunque la varibile che contiene la mia formula è Double.

    $F{idtipologiacontrattuale} è Integer
    le variabili :calcolaricavoprog.. sono Double (e fanno dei calcoli)


    quindi mi servirebbe che la mia formula mi restituisse un Double.
    Mi sto incasinando con sta cosa.....!

  6. #6
    modifica la tua espressione seguendo questa linea:

    Codice PHP:
    $F{idtipologiacontrattuale}.compareTo( new Integer(1) )) ? $V{calcoloricavoprogTK} : new Double (1

  7. #7
    Utente di HTML.it L'avatar di arw
    Registrato dal
    Dec 2007
    Messaggi
    149
    ok ti ringrazio!!!
    ora ci provo.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.