source: trunk/workflow/inc/report/includes/php/listagem/lst_indicadores.php @ 5307

Revision 5307, 7.4 KB checked in by pereira.jair, 12 years ago (diff)

Ticket #2416 - Inclusao da nova ferramenta de relatorios do workflow.

Line 
1<?php
2
3$form           = new Formulario("FrmCadListagem");
4$form->setAction($BASE_URL);
5$listagem       = new Listagem("listResultado","Indicadores",$conn);
6$listagem->setUrlBasePath($GLOBALS['phpgw_info']['server']['webserver_url'] . "/workflow/inc/report");
7
8
9$lsioid = (isset($_POST['lsioid'])) ? $_POST['lsioid'] : $_GET['lsioid'];
10
11if ($acao == "excluir_indicador") {
12    $sql = "delete from listagem.listagem_indicador where lsioid = $lsioid ";
13    pg_query($conn,$sql);
14    $msg = "Parâmetro Excluído com sucesso!";
15}
16
17if ($form->isSubmit("atualizar_parametro",true)) {
18   
19   
20    $lsiidindicador = $_POST['lsiidindicador'];
21    $lsiidindicador = str_replace("{","",$lsiidindicador);
22    $lsiidindicador = str_replace("}","",$lsiidindicador);
23   
24    $lsitipo = $_POST['lsitipo'];
25    $lsiimagem = $_POST['lsiimagem'];
26    $lsilegenda = $_POST['lsilegenda'];
27    $lsilegenda_csv = $_POST['lsilegenda_csv'];
28    $lsicondicao = $_POST['lsicondicao'];
29   
30   
31    try {
32
33        pg_query($conn,"BEGIN;");
34       
35        $lsilegenda =  htmlspecialchars($lsilegenda, ENT_QUOTES);
36        $lsilegenda_csv =  htmlspecialchars($lsilegenda_csv, ENT_QUOTES);
37        $lsicondicao =  htmlspecialchars($lsicondicao, ENT_QUOTES);   
38       
39        if ($lsioid == "") {
40   
41           
42                $sql = "insert into
43                            listagem.listagem_indicador (
44                            lsilstoid,
45                            lsiidindicador,
46                            lsitipo,
47                            lsiimagem,
48                            lsilegenda,
49                            lsilegenda_csv,
50                            lsicondicao
51                        ) values (
52                            $lstoid,
53                            '$lsiidindicador',
54                            '$lsitipo',
55                            '$lsiimagem',
56                            '$lsilegenda',
57                            '$lsilegenda_csv',
58                            '$lsicondicao'
59                        );";
60   
61                        echo $sql;
62                $res = pg_query($conn,$sql);
63                //ATUALIZA A VERSÃO DA LISTAGEM PARA MANTER O PROCESSO DE SINCRONIZAÇÃO
64                //atualizarVersao($conn,$lstoid);
65               
66                $msg=  "Indicador adicionado com Sucesso!";
67           
68        } else {
69            $sql = "update
70                        listagem.listagem_indicador
71                    set lsiidindicador = '$lsiidindicador',
72                        lsitipo = '$lsitipo',
73                        lsiimagem = '$lsiimagem',
74                        lsilegenda = '$lsilegenda',
75                        lsilegenda_csv = '$lsilegenda_csv',
76                        lsicondicao = '$lsicondicao'
77                    where lsioid = $lsioid ";
78   
79           $res = pg_query($conn,$sql);
80           //ATUALIZA A VERSÃO DA LISTAGEM PARA MANTER O PROCESSO DE SINCRONIZAÇÃO
81           //atualizarVersao($conn,$lstoid);
82           $msg=  "Indicador atualizado com Sucesso!";
83           $lsioid = "";
84           $acao = "editar";
85        }
86     pg_query($conn,"COMMIT;");
87   
88     } catch (exception $e) {
89                $msg = "ERRO: " . $e->getMessage();
90                pg_query($conn,"ROLLBACK;");
91     }
92}
93
94if ($acao == "editar") {
95    if ($lsioid != "") {
96        $sql = "select * from listagem.listagem_indicador where lsioid = $lsioid ";
97        $res = pg_query($sql);
98        $dados = pg_fetch_object($res);
99
100        $lsiidindicador = $dados->lsiidindicador;
101        $lsitipo = $dados->lsitipo;
102        $lsiimagem = $dados->lsiimagem;
103        $lsilegenda = $dados->lsilegenda;
104        $lsilegenda_csv = $dados->lsilegenda_csv;
105        $lsicondicao = $dados->lsicondicao;
106
107    } else {
108        $lsiidindicador = "";
109        $lsitipo = "";
110        $lsiimagem = "";
111        $lsilegenda = "";
112        $lsilegenda_csv = "";
113        $lsicondicao = "";
114
115    }
116}
117
118
119if(isset($lstoid{0})){
120   
121    $lsilegenda         =  html_entity_decode($lsilegenda, ENT_QUOTES);
122    $lsilegenda_csv     =  html_entity_decode($lsilegenda_csv, ENT_QUOTES);
123    $lsicondicao        =  html_entity_decode($lsicondicao, ENT_QUOTES); 
124
125    $form->adicionarHidden("lstoid",$lstoid);
126    $form->adicionarHidden("lsioid",$lsioid);
127    $form->adicionarHidden("abaMenu",$abaMenu);
128    $form->adicionarHidden("acao","editar");
129    $form->adicionarCampo("lsiidindicador","lsiidindicador","ID do Indicador:","Identificador do Indicador",$lsiidindicador,true,"20","","Identificador do Indicador. (Não usar {}).");
130   
131    $arrTipoIndicador = array (  '' => '---',
132                                 'Q'        => 'Quadrado' ,
133                                 'R'      => 'Redondo' ,
134                                 'T'      => 'Triangulo',
135                                 'I'      => 'Ícone');
136    $form->adicionarSelect("lsitipo","Tipo do Indicador:","Tipo do Indicador:",$lsitipo,$arrTipoIndicador,true);
137    $form->adicionarCampoAcao("lsitipo","onchange","selecionaTipoIndicador(this.value,'$lsiimagem');");
138
139    $arrImagemIndicador = array();
140    $form->adicionarSelect("lsiimagem","Imagem do Indicador:","Imagem do Indicador:",$lsiimagem,$arrImagemIndicador,true,"","150");
141   
142    $form->adicionarCampo("lsilegenda","lsilegenda","Legenda:","Legenda",$lsilegenda,false,"30","","(Deixe em branco para não exibir)");
143    $form->adicionarCampo("lsilegenda_csv","lsilegenda_csv","Legenda CSV:","Legenda",$lsilegenda_csv,false,"30","","Legenda que será exibida no arquivo CSV.");
144    $form->adicionarCampo("lsicondicao","lsicondicao","Condição de Exibição:","Condição",$lsicondicao,false,"50","","Condição para exibir o indicador. Ex: (({meustatus} == 1) && ({tipo} > 200))");
145   
146    $form->adicionarQuadro("quadro2","Cadastro de Indicadores");
147    $form->adicionarSubmit("quadro2","btn_cadastrar","Atualizar","atualizar_parametro");
148
149    //LISTAGEM DE PARÂMETROS
150    $sql = "SELECT * FROM listagem.listagem_indicador WHERE lsilstoid=$lstoid order by lsioid";
151    $res = pg_query($sql);
152   
153    $listagem->carregar($sql);
154   
155   
156    while ($indicador = pg_fetch_object($res)) {
157        $lsioid = $indicador->lsioid;
158        $tipo = $indicador->lsitipo;
159        $imagem = $indicador->lsiimagem;
160        $legenda = $indicador->lsilegenda;
161        $listagem->adicionarIndicador("indicador","({lsioid} == $lsioid)",$tipo,$imagem,$legenda);
162    }
163   
164    $listagem->adicionarColuna("indicador","","{indicador}","text","center","20px");
165    $listagem->adicionarColuna("lsiidindicador","ID do indicador","{lsiidindicador}","text","left","100px");
166    $listagem->adicionarColuna("lsilegenda","Legenda","{lsilegenda}","text","left","200px");
167    $listagem->adicionarColuna("lsilegenda_csv","Legenda CSV","{lsilegenda_csv}","text","left","200px");
168    $listagem->adicionarColuna("lsicondicao","Condição de Exibição","{lsicondicao}","text","left","200px");
169
170    $listagem->adicionarColuna("lsioid","Excluir","[Excluir]","text","center","50px");
171    $listagem->adicionarLink("lsioid",$BASE_URL . "&abaMenu=indicadores&lstoid=$lstoid&lsioid={lsioid}&acao=excluir_indicador");
172    $listagem->adicionarLink("lsiidindicador",$BASE_URL . "&abaMenu=indicadores&lstoid=$lstoid&lsioid={lsioid}&acao=editar");
173    $listagem->setMensagemRegistrosEncontrados("indicadores(s) cadastrado(s)");
174    $listagem->setMostrarLegendaTopo(false);
175    $listagem->setMostrarLegendaRodape(true);
176}
177
178if ($msg != "") {
179    echo "<script>ExibirMensagem('$msg')</script>";
180}
181$form->desenhar();
182$listagem->desenhar();
183echo "<script>selecionaTipoIndicador('$lsitipo','$lsiimagem')</script>";
184echo "<div id='div_result_colunas'></div>";
185?>
Note: See TracBrowser for help on using the repository browser.