Conditional to print in PL / SQL

2

I have a report developed in Sybase InfoMaker (similar to Crystal Reports) which displays two pages, however I need to print the second page only if there is a calculation.

On the second page you see several calculations, but if the report (project confirmation) does not have the calculation, print only the first page.

But I do not know how to implement this in PL / SQL.

Below is the report's SQL code.



  select orcamentos.idempresa,   
         orcamentos.idorcamento,   
         orcamentos_cons.idconsumidor,
         orcamentos_cons.nome,
         orcamentos_cons.endereco,
         orcamentos_cons.bairro,   
         orcamentos_cons.cep,   
         orcamentos_cons.idcidade,   
            orcamentos_cons.idassociado,
            orcamentos_cons.idsequencia,
         (select nome  ||'/'||uf 
            from cidades
           where cidades.idcidade = orcamentos_cons.idcidade) as nome_cidade_cons,
         orcamentos.local_atendimento                                       as local_aten,
         (select nome 
            from tipo_projeto
           where idempresa = orcamentos.idempresa
             and idtipoprojeto = orcamentos.idtipoprojeto)          as tipo_obra,
         orcamentos.valor_total                                             as vlr_total, 
         orcamentos.valor_total - (select sum(valor_part)
                                  from orcamentos_cobranca oc
                                 where oc.idempresa = :al_empresa
                                   and oc.idorcamento = :al_orcamento) as vlr_part_empresa_2, 
         (select sum(valor_part)
                from orcamentos_cobranca oc
              where oc.idempresa = :al_empresa
                 and oc.idorcamento = :al_orcamento)                              as part_consum_2, 
            case when orcamentos.valor_calc_erd + orcamentos.valor_calc_erc  0  and orcamentos.cobrar_orcamento = 'S' then
                (orcamentos.valor_total - (orcamentos.valor_calc_erd + orcamentos.valor_calc_erc))  else 0 end as part_consum, 
         empresas.apelido, 
         empresas.nome,
         empresas.ddd_fone,
         empresas.fone,
         empresas.endereco,
         empresas.numero_end,
         empresas.cep,
         empresas.bairro,
         empresas.inscricao,
         empresas.insc_estad,
         empresas.email,
         (select nome ||'/'||uf 
            from cidades
           where idcidade = empresas.idcidade)  as cidade,
            to_char(substr(orcamentos.idprocesso, 1, length(orcamentos.idprocesso)-2)) || '/' || to_char(substr(orcamentos.idprocesso, length(orcamentos.idprocesso)-1, length(orcamentos.idprocesso))) as processo, 
            orcamentos.endereco                             as endereco_obra,
            orcamentos.bairro                               as bairro_obra,
            orcamentos.idcidade                             as idcidade_obra,
            (select nome ||'/'||uf 
            from cidades
           where idcidade = orcamentos.idcidade) as cidade_obra, 
            param_orc.engenheiro                         as engenheiro, 
         (select cidades.nome ||'/'||cidades.uf 
            from cidades
           where cidades.idcidade = empresas.idcidade) as nome_cidade_cob,  
         sysdate as datahora,
            param_orc.dias_contratacao,
            param_orc.dias_inicio_obras,
            param_orc.dias_final_obras,
            orcamentos.idtipofinalidade, 
         (select descricao 
            from tipo_finalidade 
           where orcamentos.idempresa = tipo_finalidade.idempresa
             and orcamentos.idtipofinalidade = tipo_finalidade.idtipofinalidade) as descricao_finalidade,
            orcamentos.observacao,
            orcamentos.solicitante,
            orcamentos.idtipofornec,
            (select descricao
                from tipo_fornecimento
              where tipo_fornecimento.idempresa = orcamentos.idempresa
                 and tipo_fornecimento.idtipofornec = orcamentos.idtipofornec
                 and tipo_fornecimento.idtensao = orcamentos.idtensao) as nome_fornecimento,
         orcamentos.idtensao,
            (select descricao
                from tensao_fornecimento
              where tensao_fornecimento.idempresa = orcamentos.idempresa
                 and tensao_fornecimento.idtensao = orcamentos.idtensao) as nome_tensao,
            orcamentos.carga_instalada            
    from orcamentos, 
            empresas, 
            param_orc, 
         orcamentos_cons 
   where orcamentos.idempresa   = orcamentos_cons.idempresa 
      and orcamentos.idorcamento = orcamentos_cons.idorcamento 
      and empresas.idempresa     = orcamentos.idempresa 
      and param_orc.idempresa    = orcamentos.idempresa 
     and orcamentos.idempresa   = :al_empresa 
     and orcamentos.idorcamento = :al_orcamento 



    
asked by anonymous 19.04.2014 / 17:55

1 answer

1

In InfoMaker it is possible to program the Visible property, type: If (calculation = 5, 1.0) Note: 1 = true and 0 = False)

    
27.04.2014 / 21:28