Jaime Casanova <[EMAIL PROTECTED]> writes: > CASE rs_dtran.fpg_codigo > WHEN ''EF'' THEN > IF rs_ttran.tra_tipo = ''+'' THEN > valor_ef := valor_ef + > rs_dtran.dtr_valor; > ELSE > valor_ef := valor_ef - > rs_dtran.dtr_valor; > END IF; > WHEN ''CH'' THEN > IF rs_ttran.tra_tipo = ''+'' THEN > valor_ch := valor_ch + > rs_dtran.dtr_valor; > ELSE > valor_ch := valor_ch - > rs_dtran.dtr_valor; > END IF; > END;
> but in that line there is a valid IF .. THEN .. ELSE > block. if/then/else is a statement, not a component of an expression. CASE is an expression construct, not a statement. I think you need to rewrite the CASE as an if/then/elsif statement. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 6: Have you searched our list archives? http://archives.postgresql.org