Commit 60ceb72f3a6305db288033983765ee731821d3bc

Authored by Edmar Moretti
1 parent 55a06a0e

--no commit message

Showing 1 changed file with 9 additions and 10 deletions   Show diff stats
ferramentas/saiku/esquemaxml.php
@@ -116,6 +116,7 @@ if($codigo_tipo_regiao == ""){ @@ -116,6 +116,7 @@ if($codigo_tipo_regiao == ""){
116 else{ 116 else{
117 $regioes = array($m->listaTipoRegiao($codigo_tipo_regiao)); 117 $regioes = array($m->listaTipoRegiao($codigo_tipo_regiao));
118 } 118 }
  119 +//echo "<pre>";var_dump($regioes);exit;
119 $regiao = ""; 120 $regiao = "";
120 $item = ""; 121 $item = "";
121 $registros = ""; 122 $registros = "";
@@ -155,11 +156,8 @@ $xml .= &quot; @@ -155,11 +156,8 @@ $xml .= &quot;
155 //uma delas contem o geocodigo que permite a geracao do mapa 156 //uma delas contem o geocodigo que permite a geracao do mapa
156 $xml1 = ""; 157 $xml1 = "";
157 $xml2 = ""; 158 $xml2 = "";
158 -$nomesDimensoesOnde = array();  
159 foreach($regioes as $regiao){ 159 foreach($regioes as $regiao){
160 $caminho = $m->hierarquiaPath($regiao["codigo_tipo_regiao"]); 160 $caminho = $m->hierarquiaPath($regiao["codigo_tipo_regiao"]);
161 - $nomesDimensoesOnde[] = "codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"];  
162 - $nomesDimensoesOnde[] = "codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."_geocod";  
163 $xml1 .= " 161 $xml1 .= "
164 <Dimension name='codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."' caption='Onde:".converte($regiao["nome_tipo_regiao"])."'> 162 <Dimension name='codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."' caption='Onde:".converte($regiao["nome_tipo_regiao"])."'>
165 <Hierarchy hasAll='true' primaryKey='codigo'> 163 <Hierarchy hasAll='true' primaryKey='codigo'>
@@ -176,6 +174,7 @@ foreach($regioes as $regiao){ @@ -176,6 +174,7 @@ foreach($regioes as $regiao){
176 $sql = "SELECT __COLUNAS__ FROM {$regiao['esquemadb']}.{$regiao['tabela']} AS regiao "; 174 $sql = "SELECT __COLUNAS__ FROM {$regiao['esquemadb']}.{$regiao['tabela']} AS regiao ";
177 $colunas[] = "regiao.{$regiao['identificador']} AS codigo "; 175 $colunas[] = "regiao.{$regiao['identificador']} AS codigo ";
178 $colunas[] = "regiao.{$regiao['colunanomeregiao']} AS nome"; 176 $colunas[] = "regiao.{$regiao['colunanomeregiao']} AS nome";
  177 + //$colunas[] = "regiao".$regiao['identificador'];
179 $tabelaAnt = "regiao"; 178 $tabelaAnt = "regiao";
180 for($i=0;$i<$n;$i++){ 179 for($i=0;$i<$n;$i++){
181 $r = $m->listaTipoRegiao($caminho[$i]); 180 $r = $m->listaTipoRegiao($caminho[$i]);
@@ -187,12 +186,12 @@ foreach($regioes as $regiao){ @@ -187,12 +186,12 @@ foreach($regioes as $regiao){
187 $tabelaAnt = "j".$i; 186 $tabelaAnt = "j".$i;
188 $niveis1[] = " 187 $niveis1[] = "
189 <Level name='".converte($r["nome_tipo_regiao"])."' 188 <Level name='".converte($r["nome_tipo_regiao"])."'
190 - column='j$i{$r['identificador']}' 189 + column='{$r['identificador']}'
191 nameColumn='j$i{$r["colunanomeregiao"]}' uniqueMembers='false'/> 190 nameColumn='j$i{$r["colunanomeregiao"]}' uniqueMembers='false'/>
192 "; 191 ";
193 $niveis2[] = " 192 $niveis2[] = "
194 <Level name='".converte($r["nome_tipo_regiao"])." - GeoCod #{$caminho[$i]}' 193 <Level name='".converte($r["nome_tipo_regiao"])." - GeoCod #{$caminho[$i]}'
195 - column='j$i{$r['identificador']}' 194 + column='{$r['identificador']}'
196 nameColumn='j$i{$r["identificador"]}' uniqueMembers='false'/> 195 nameColumn='j$i{$r["identificador"]}' uniqueMembers='false'/>
197 "; 196 ";
198 } 197 }
@@ -264,15 +263,15 @@ foreach($dimOutras as $d){ @@ -264,15 +263,15 @@ foreach($dimOutras as $d){
264 $k = $p["esquemadb"]."_".$d["tabela"]."_".$d["coluna"]; 263 $k = $p["esquemadb"]."_".$d["tabela"]."_".$d["coluna"];
265 $xml3 .= " 264 $xml3 .= "
266 <Dimension name='".$k."' caption='".converte($d["nome"])."'> 265 <Dimension name='".$k."' caption='".converte($d["nome"])."'>
267 - <Hierarchy hasAll='true' primaryKey='{$d["coluna"]}'> 266 + <Hierarchy hasAll='true' primaryKey='codigo'>
268 "; 267 ";
269 //cria uma view juntando as tabelas da hierarquia de regioes 268 //cria uma view juntando as tabelas da hierarquia de regioes
270 - $colunas = "dim.{$d['coluna']}, "; 269 + $colunas = "dim.{$d['coluna']} as codigo, ";
271 $colunas .= "dim.{$d['coluna']} AS nome"; 270 $colunas .= "dim.{$d['coluna']} AS nome";
272 - $sql = "SELECT {$colunas} FROM ".$d['esquemadb'].".".$d['tabela']." as dim group by ".$d['coluna']; 271 + $sql = "SELECT {$colunas} FROM ".$d['esquemadb'].".".$d['tabela']." as dim group by codigo";
273 $xml3 .= "<view alias='".$k."' ><SQL dialect='generic' >$sql</SQL></view>"; 272 $xml3 .= "<view alias='".$k."' ><SQL dialect='generic' >$sql</SQL></view>";
274 $xml3 .= "<Level name='".converte($d["nome"])."' 273 $xml3 .= "<Level name='".converte($d["nome"])."'
275 - column='{$d['coluna']}' 274 + column='codigo'
276 nameColumn='nome' uniqueMembers='true' /> 275 nameColumn='nome' uniqueMembers='true' />
277 "; 276 ";
278 $xml3 .= "</Hierarchy> 277 $xml3 .= "</Hierarchy>
@@ -315,7 +314,6 @@ foreach($tbs as $tb){ @@ -315,7 +314,6 @@ foreach($tbs as $tb){
315 foreach($tb as $medida){ 314 foreach($tb as $medida){
316 //echo "<pre>";var_dump($medida)."<br>"; 315 //echo "<pre>";var_dump($medida)."<br>";
317 $parametros = $m->listaParametro($medida["id_medida_variavel"],"","",false,false); 316 $parametros = $m->listaParametro($medida["id_medida_variavel"],"","",false,false);
318 -  
319 $parComposto = array(); //guarda a composicao da chave que liga com a dimensao 317 $parComposto = array(); //guarda a composicao da chave que liga com a dimensao
320 $colunaAdicionais = array(); 318 $colunaAdicionais = array();
321 //parametro do tipo tempo 319 //parametro do tipo tempo
@@ -345,6 +343,7 @@ foreach($tbs as $tb){ @@ -345,6 +343,7 @@ foreach($tbs as $tb){
345 } 343 }
346 } 344 }
347 } 345 }
  346 + //$dimEnsoes[] = '<DimensionUsage foreignKey="coduf" name="codigo_tipo_regiao_2" source="codigo_tipo_regiao_2"/>';
348 $xml .= " 347 $xml .= "
349 <Cube cache='false' name='{$c["esquemadb"]}{$c["tabela"]}'>"; 348 <Cube cache='false' name='{$c["esquemadb"]}{$c["tabela"]}'>";
350 $incluirChaves = array("*"); 349 $incluirChaves = array("*");