source: publico/ILSAPL/trunk/skins/sk_sapl/zsql/autor_obter_zsql.zsql @ 3766

Última Alteração nesse arquivo desde 3766 foi 3766, incluída por gustavolepri, 11 anos atrás

Correção na verificação do conector

File size: 6.2 KB
Linha 
1<dtml-comment>
2connection_id : dbcon_interlegis
3arguments : parlamentar="" comissao="" cod_parlamentar="" cod_comissao="" cod_autor="" ind_excluido=0 ncod_autor="" nom_autor="" nom_autor_match="" des_tipo_autor="" col_username=""
4max_rows : 1000
5max_cache : 100
6</dtml-comment>
7<dtml-comment>
8*********************************************************************************
9*   Os parâmetros parlamentar e comissao são passados a partido do autoria_form,*
10* quando se faz necessário que essa query obtenha apenas as linhas com ou       *
11* cod_parlamentar!=null  ou  cod_comissao!=null.                                *
12*********************************************************************************
13MUDANÇA                                                                         *
14Trocou-se o sqltest do ind_excluido para OPTIONAL, o que não deve afetar em nada*
15o funcionamento, já que ele está atribuído acima. Tal mudança foi feita para que*
16funcione a pesquisa de materia para geração de PDFs.                            *
17Por Daniel C. Azevedo   17/04/2002.                                             *
18*********************************************************************************
19</dtml-comment>
20<dtml-if expr="pysc.verifica_conector_bd_pysc">
21SELECT
22     REPLACE(autor.cod_autor, 'L', '') as cod_autor,
23     autor.tip_autor,
24     REPLACE(autor.cod_parlamentar, 'L', '') as cod_parlamentar,
25     REPLACE(autor.cod_comissao, 'L', '') as cod_comissao,
26     autor.nom_autor,
27     autor.des_cargo,
28     REPLACE(autor.cod_partido, 'L', '') as cod_partido,
29     tipo_autor.des_tipo_autor,
30     autor.col_username,
31     if (tipo_autor.des_tipo_autor='Parlamentar',parlamentar.nom_parlamentar, if(tipo_autor.des_tipo_autor='Comissao', comissao.nom_comissao, autor.nom_autor)) as nom_autor_join
32
33FROM
34     tipo_autor, autor left join parlamentar on (autor.cod_parlamentar=parlamentar.cod_parlamentar and parlamentar.ind_excluido=0),
35     autor a left join comissao on (a.cod_comissao=comissao.cod_comissao and comissao.ind_excluido=0)
36
37<dtml-sqlgroup where>  ((parlamentar.cod_parlamentar is not null and tipo_autor.des_tipo_autor='Parlamentar') or
38(comissao.cod_comissao is not null and tipo_autor.des_tipo_autor='Comissao') or (tipo_autor.des_tipo_autor!='Parlamentar' and tipo_autor.des_tipo_autor!='Comissao'))<dtml-and>
39  <dtml-sqltest cod_parlamentar column="autor.cod_parlamentar"     op="=" type="int"  optional><dtml-and>
40  <dtml-sqltest cod_comissao    column="autor.cod_comissao"        op="=" type="int"  optional><dtml-and>
41  <dtml-sqltest ncod_autor      column="autor.cod_autor"           op="!=" type="int" optional><dtml-and>
42  <dtml-sqltest nom_autor       column="autor.nom_autor"           op="=" type="nb"   optional><dtml-and>
43  <dtml-sqltest col_username    column="autor.col_username"        op="=" type="nb"   optional><dtml-and>
44  <dtml-sqltest cod_autor       column="autor.cod_autor"           op="=" type="int"  optional><dtml-and>
45  <dtml-sqltest des_tipo_autor  column="tipo_autor.des_tipo_autor" op="=" type="nb"   optional><dtml-and>
46  <dtml-sqltest ind_excluido    column="autor.ind_excluido"        op="=" type="int"  optional><dtml-and>
47  autor.tip_autor = tipo_autor.tip_autor <dtml-and>
48  autor.cod_autor = a.cod_autor <dtml-and>
49  <dtml-if expr="parlamentar!=''">
50     autor.cod_parlamentar is not null
51     <dtml-if nom_autor_match> and </dtml-if>
52  <dtml-elif expr="comissao!=''">
53     autor.cod_comissao is not null
54     <dtml-if nom_autor_match> and </dtml-if>
55  </dtml-if>
56<dtml-comment>O caso abaixo é quando se quer que retorne os autores cujo nome contenham o
57     pedaço passado por NOM_AUTOR_MATCH no nome do autor. Por Daniel C. Azevedo 13/05/2002.</dtml-comment>
58  <dtml-if nom_autor_match>
59   match (autor.nom_autor) against (<dtml-sqlvar nom_autor_match type="string">)
60  </dtml-if>
61</dtml-sqlgroup>
62order by autor.nom_autor
63
64<dtml-else>
65
66SELECT
67     autor.cod_autor as cod_autor,
68     autor.tip_autor,
69     autor.cod_parlamentar as cod_parlamentar,
70     autor.cod_comissao as cod_comissao,
71     autor.nom_autor,
72     autor.des_cargo,
73     autor.cod_partido as cod_partido,
74     tipo_autor.des_tipo_autor,
75     autor.col_username,
76     if (tipo_autor.des_tipo_autor='Parlamentar',parlamentar.nom_parlamentar, if(tipo_autor.des_tipo_autor='Comissao', comissao.nom_comissao, autor.nom_autor)) as nom_autor_join
77
78FROM
79     tipo_autor, autor left join parlamentar on (autor.cod_parlamentar=parlamentar.cod_parlamentar and parlamentar.ind_excluido=0),
80     autor a left join comissao on (a.cod_comissao=comissao.cod_comissao and comissao.ind_excluido=0)
81
82<dtml-sqlgroup where>  ((parlamentar.cod_parlamentar is not null and tipo_autor.des_tipo_autor='Parlamentar') or
83(comissao.cod_comissao is not null and tipo_autor.des_tipo_autor='Comissao') or (tipo_autor.des_tipo_autor!='Parlamentar' and tipo_autor.des_tipo_autor!='Comissao'))<dtml-and>
84  <dtml-sqltest cod_parlamentar column="autor.cod_parlamentar"     op="=" type="int"  optional><dtml-and>
85  <dtml-sqltest cod_comissao    column="autor.cod_comissao"        op="=" type="int"  optional><dtml-and>
86  <dtml-sqltest ncod_autor      column="autor.cod_autor"           op="!=" type="int" optional><dtml-and>
87  <dtml-sqltest nom_autor       column="autor.nom_autor"           op="=" type="nb"   optional><dtml-and>
88  <dtml-sqltest col_username    column="autor.col_username"        op="=" type="nb"   optional><dtml-and>
89  <dtml-sqltest cod_autor       column="autor.cod_autor"           op="=" type="int"  optional><dtml-and>
90  <dtml-sqltest des_tipo_autor  column="tipo_autor.des_tipo_autor" op="=" type="nb"   optional><dtml-and>
91  <dtml-sqltest ind_excluido    column="autor.ind_excluido"        op="=" type="int"  optional><dtml-and>
92  autor.tip_autor = tipo_autor.tip_autor <dtml-and>
93  autor.cod_autor = a.cod_autor <dtml-and>
94  <dtml-if expr="parlamentar!=''">
95     autor.cod_parlamentar is not null
96     <dtml-if nom_autor_match> and </dtml-if>
97  <dtml-elif expr="comissao!=''">
98     autor.cod_comissao is not null
99     <dtml-if nom_autor_match> and </dtml-if>
100  </dtml-if>
101<dtml-comment>O caso abaixo é quando se quer que retorne os autores cujo nome contenham o
102     pedaço passado por NOM_AUTOR_MATCH no nome do autor. Por Daniel C. Azevedo 13/05/2002.</dtml-comment>
103  <dtml-if nom_autor_match>
104   match (autor.nom_autor) against (<dtml-sqlvar nom_autor_match type="string">)
105  </dtml-if>
106</dtml-sqlgroup>
107order by autor.nom_autor
108</dtml-if>
Note: Veja TracBrowser para ajuda no uso do navegador do trac.
 

The contents and data of this website are published under license:
Creative Commons 4.0 Brasil - Atribuir Fonte - Compartilhar Igual.