Commit e8d6bbe27dfedc4dc2de8ac7c50837e4c6db054c
1 parent
faf55975
Exists in
master
and in
7 other branches
inclusão de cubos virtuais para cada variável
Showing
2 changed files
with
357 additions
and
496 deletions
Show diff stats
ferramentas/saiku/esquemaxml.php
... | ... | @@ -7,9 +7,9 @@ |
7 | 7 | //utilize $regiao para obter o xml de uma so regiao |
8 | 8 | // |
9 | 9 | /** |
10 | -http://localhost/i3geo/ferramentas/saiku/esquemaxml.php?output=&xmlesquema=http://localhost/i3geo/ferramentas/saiku/testemondrian.xml&output=xml | |
11 | -http://localhost/i3geo/ferramentas/saiku/esquemaxml.php?xmlesquema=&output=xml®iao=1 | |
12 | -*/ | |
10 | + http://localhost/i3geo/ferramentas/saiku/esquemaxml.php?output=xml | |
11 | + http://localhost/i3geo/ferramentas/saiku/esquemaxml.php?xmlesquema=&output=xml®iao=1 | |
12 | + */ | |
13 | 13 | |
14 | 14 | // |
15 | 15 | //quando o saiku e iniciado de fora do i3geo, e necessario inicializar um mapfile para uso como base dos mapas |
... | ... | @@ -90,9 +90,14 @@ $VirtualCubeDimensionDaRegiao = array(); |
90 | 90 | $VirtualCubeMeasureDaRegiao = array(); |
91 | 91 | $nivelDaDimensao = array(); |
92 | 92 | |
93 | +$VirtualCubeDimensionDaMedida = array(); | |
94 | +$CubosPorMedida = array(); | |
95 | + | |
93 | 96 | $dimRegioes = dimensoesGeo(); |
94 | 97 | |
95 | -$xmlRegioes = array_map(function($element){return $element['xml'];}, $dimRegioes); | |
98 | +$xmlRegioes = array_map(function($element){ | |
99 | + return $element['xml']; | |
100 | +}, $dimRegioes); | |
96 | 101 | $xmlRegioes = implode(" ",$xmlRegioes); |
97 | 102 | |
98 | 103 | // |
... | ... | @@ -116,8 +121,10 @@ $xmlCuboTodas = cuboTodas(); |
116 | 121 | // |
117 | 122 | $xmlCuboRegioes = cuboRegioes(); |
118 | 123 | |
124 | +$xmlCuboVariaveis = cuboVariaveis(); | |
125 | + | |
119 | 126 | $xml = "<Schema name='i3Geo Metaestat'>"; |
120 | -$xml .= $xmlTempo.$xmlRegioes.$xmlOutrasDim.$xmlDimensoesTabelas.$xmlCuboRegioes.$xmlCuboTodas; | |
127 | +$xml .= $xmlTempo.$xmlRegioes.$xmlOutrasDim.$xmlDimensoesTabelas.$xmlCuboRegioes.$xmlCuboTodas.$xmlCuboVariaveis; | |
121 | 128 | $xml .= "</Schema>"; |
122 | 129 | |
123 | 130 | //xml pronto!!!!! |
... | ... | @@ -298,8 +305,8 @@ function pegaSelecaoRegioes(){ |
298 | 305 | } |
299 | 306 | } |
300 | 307 | return array( |
301 | - "selecaoRegiao"=>$selecaoRegiao, | |
302 | - "codigo_tipo_regiao"=>$codigo_tipo_regiao | |
308 | + "selecaoRegiao"=>$selecaoRegiao, | |
309 | + "codigo_tipo_regiao"=>$codigo_tipo_regiao | |
303 | 310 | ); |
304 | 311 | } |
305 | 312 | } |
... | ... | @@ -360,7 +367,7 @@ function sqlDasRegioes($regiao,$caminho,$chavesRegiao){ |
360 | 367 | $nomesColunas[] = " nome".$regiaoJoin["codigo_tipo_regiao"]; |
361 | 368 | |
362 | 369 | $juncoes .= " JOIN {$regiaoJoin['esquemadb']}.{$regiaoJoin['tabela']} as $tabelaAtual ON |
363 | - $tabelaAtual.$colunaLigacaoAtual::text = $tabelaAnterior.$colunaLigacaoAnterior::text | |
370 | + $tabelaAtual.$colunaLigacaoAtual::text = $tabelaAnterior.$colunaLigacaoAnterior::text | |
364 | 371 | "; |
365 | 372 | $codRegioes[] = $regiaoJoin["codigo_tipo_regiao"]; |
366 | 373 | } |
... | ... | @@ -403,12 +410,12 @@ function dimensoesGeo(){ |
403 | 410 | $sqls = array(); |
404 | 411 | $temp = converte($regiao["nome_tipo_regiao"]); |
405 | 412 | $xml1 = " |
406 | - <Dimension name='codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."' caption='Onde:".$temp."'> | |
407 | - <Hierarchy hasAll='true' primaryKey='codigo{$regiao["codigo_tipo_regiao"]}'> | |
413 | + <Dimension name='codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."' caption='Onde:".$temp."'> | |
414 | + <Hierarchy hasAll='true' primaryKey='codigo{$regiao["codigo_tipo_regiao"]}'> | |
408 | 415 | "; |
409 | 416 | $xml2 = " |
410 | - <Dimension name='codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."_geocod' caption='GeoCod:".$temp."'> | |
411 | - <Hierarchy hasAll='true' primaryKey='codigo{$regiao["codigo_tipo_regiao"]}'> | |
417 | + <Dimension name='codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."_geocod' caption='GeoCod:".$temp."'> | |
418 | + <Hierarchy hasAll='true' primaryKey='codigo{$regiao["codigo_tipo_regiao"]}'> | |
412 | 419 | "; |
413 | 420 | // |
414 | 421 | //cria uma view juntando as tabelas da hierarquia de regioes |
... | ... | @@ -433,13 +440,13 @@ function dimensoesGeo(){ |
433 | 440 | |
434 | 441 | $temp = converte($regiao["nome_tipo_regiao"]); |
435 | 442 | $niveisXml1[] = " |
436 | - <Level name='".$temp."' column='codigo{$regiao["codigo_tipo_regiao"]}' nameColumn='nome".$regiao["codigo_tipo_regiao"]."' | |
437 | - uniqueMembers='false' /> | |
438 | - "; | |
443 | + <Level name='".$temp."' column='codigo{$regiao["codigo_tipo_regiao"]}' nameColumn='nome".$regiao["codigo_tipo_regiao"]."' | |
444 | + uniqueMembers='false' /> | |
445 | + "; | |
439 | 446 | $niveisXml2[] = " |
440 | - <Level name='".$temp." - GeoCod #".$regiao["codigo_tipo_regiao"]."' column='codigo{$regiao["codigo_tipo_regiao"]}' nameColumn='codigo".$regiao["codigo_tipo_regiao"]."' | |
441 | - uniqueMembers='false' /> | |
442 | - "; | |
447 | + <Level name='".$temp." - GeoCod #".$regiao["codigo_tipo_regiao"]."' column='codigo{$regiao["codigo_tipo_regiao"]}' nameColumn='codigo".$regiao["codigo_tipo_regiao"]."' | |
448 | + uniqueMembers='false' /> | |
449 | + "; | |
443 | 450 | //juncoes |
444 | 451 | while($caminho){ |
445 | 452 | $a = array_shift($caminho); |
... | ... | @@ -482,14 +489,14 @@ function dimensoesGeo(){ |
482 | 489 | $sqlreg = " WHERE tabela{$regiao["codigo_tipo_regiao"]}.".$rs["sql"]; |
483 | 490 | } |
484 | 491 | $xml1 .= " |
485 | - <view alias='view_codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."' > | |
486 | - <SQL dialect='generic' >".$dadosSelect["select"].$sqlreg."</SQL> | |
487 | - </view> | |
492 | + <view alias='view_codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."' > | |
493 | + <SQL dialect='generic' >".$dadosSelect["select"].$sqlreg."</SQL> | |
494 | + </view> | |
488 | 495 | "; |
489 | 496 | $xml2 .= " |
490 | - <view alias='view_codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."_GeoCod' > | |
491 | - <SQL dialect='generic' >".$dadosSelect["select"].$sqlreg."</SQL> | |
492 | - </view> | |
497 | + <view alias='view_codigo_tipo_regiao_".$regiao["codigo_tipo_regiao"]."_GeoCod' > | |
498 | + <SQL dialect='generic' >".$dadosSelect["select"].$sqlreg."</SQL> | |
499 | + </view> | |
493 | 500 | "; |
494 | 501 | $niveisXml1 = array_reverse($niveisXml1); |
495 | 502 | $niveisXml2 = array_reverse($niveisXml2); |
... | ... | @@ -553,7 +560,7 @@ function dimensoesOutras(){ |
553 | 560 | return $xml3; |
554 | 561 | } |
555 | 562 | function dimensoesTabelas(){ |
556 | - global $nivelDaDimensao,$dimRegioes, $filhosDaRegiao, $m, $VirtualCubeDimension, $VirtualCubeMeasure, $chavesRegiao, $medidas, $codigo_tipo_regiao, $VirtualCubeDimensionDaRegiao, $VirtualCubeMeasureDaRegiao; | |
563 | + global $VirtualCubeDimensionDaMedida, $CubosPorMedida, $nivelDaDimensao, $dimRegioes, $filhosDaRegiao, $m, $VirtualCubeDimension, $VirtualCubeMeasure, $chavesRegiao, $medidas, $codigo_tipo_regiao, $VirtualCubeDimensionDaRegiao, $VirtualCubeMeasureDaRegiao; | |
557 | 564 | |
558 | 565 | $xml = ""; |
559 | 566 | $tbs = array(); |
... | ... | @@ -567,6 +574,8 @@ function dimensoesTabelas(){ |
567 | 574 | else{ |
568 | 575 | array_push($tbs[$k],$medida); |
569 | 576 | } |
577 | + $CubosPorMedida[$medida["nome_variavel"]] = array(); | |
578 | + $VirtualCubeDimensionDaMedida[$medida["nome_variavel"]] = array(); | |
570 | 579 | } |
571 | 580 | } |
572 | 581 | //monta os cubos para cada esquema.tabela diferente |
... | ... | @@ -581,13 +590,24 @@ function dimensoesTabelas(){ |
581 | 590 | "; |
582 | 591 | |
583 | 592 | array_push( |
584 | - $VirtualCubeDimensionDaRegiao[$c["codigo_tipo_regiao"]], | |
585 | - "<VirtualCubeDimension name='codigo_tipo_regiao_{$c["codigo_tipo_regiao"]}' />" | |
586 | - ); | |
593 | + $VirtualCubeDimensionDaRegiao[$c["codigo_tipo_regiao"]], | |
594 | + "<VirtualCubeDimension name='codigo_tipo_regiao_{$c["codigo_tipo_regiao"]}' />" | |
595 | + ); | |
587 | 596 | array_push( |
588 | - $VirtualCubeDimensionDaRegiao[$c["codigo_tipo_regiao"]], | |
589 | - "<VirtualCubeDimension name='codigo_tipo_regiao_{$c["codigo_tipo_regiao"]}_geocod' />" | |
590 | - ); | |
597 | + $VirtualCubeDimensionDaRegiao[$c["codigo_tipo_regiao"]], | |
598 | + "<VirtualCubeDimension name='codigo_tipo_regiao_{$c["codigo_tipo_regiao"]}_geocod' />" | |
599 | + ); | |
600 | + | |
601 | + array_push( | |
602 | + $VirtualCubeDimensionDaMedida[$c["nome_variavel"]], | |
603 | + "<VirtualCubeDimension name='codigo_tipo_regiao_{$c["codigo_tipo_regiao"]}' />" | |
604 | + ); | |
605 | + array_push( | |
606 | + $VirtualCubeDimensionDaMedida[$c["nome_variavel"]], | |
607 | + "<VirtualCubeDimension name='codigo_tipo_regiao_{$c["codigo_tipo_regiao"]}_geocod' />" | |
608 | + ); | |
609 | + | |
610 | + | |
591 | 611 | //verifica as dimensoes do tipo tempo |
592 | 612 | $dimEnsoes = array(); |
593 | 613 | |
... | ... | @@ -629,6 +649,7 @@ function dimensoesTabelas(){ |
629 | 649 | //$dimEnsoes[] = '<DimensionUsage foreignKey="coduf" name="codigo_tipo_regiao_2" source="codigo_tipo_regiao_2"/>'; |
630 | 650 | |
631 | 651 | $xml .= "<Cube cache='false' name='Tabela: {$c["esquemadb"]}{$c["tabela"]}'>"; |
652 | + | |
632 | 653 | $incluirChaves = array("tabelamedida{$c["id_medida_variavel"]}.*"); |
633 | 654 | //colunas quando o nome da coluna com os valores for vazia |
634 | 655 | foreach($tb as $mdd){ |
... | ... | @@ -651,7 +672,7 @@ function dimensoesTabelas(){ |
651 | 672 | } |
652 | 673 | $r = $chavesRegiao[$c["codigo_tipo_regiao"]]; |
653 | 674 | $sql = " |
654 | - select ".implode(",",$incluirChaves).", tabelamedida{$c["id_medida_variavel"]}.{$c["colunaidgeo"]}::text as codigoreg | |
675 | + select ".implode(",",$incluirChaves).", tabelamedida{$c["id_medida_variavel"]}.{$c["colunaidgeo"]}::text as codigoreg | |
655 | 676 | "; |
656 | 677 | if(count($dimRegioes[$c["codigo_tipo_regiao"]]["colunas"]) > 0){ |
657 | 678 | $sql .= ",".implode(",",$dimRegioes[$c["codigo_tipo_regiao"]]["colunas"]); |
... | ... | @@ -659,38 +680,38 @@ function dimensoesTabelas(){ |
659 | 680 | } |
660 | 681 | |
661 | 682 | $sql .= " |
662 | - from {$c["esquemadb"]}.{$c["tabela"]} as tabelamedida{$c["id_medida_variavel"]} | |
663 | - JOIN {$r["esquemadb"]}.{$r["tabela"]} as tabela{$r["codigo_tipo_regiao"]} | |
664 | - ON tabela{$r["codigo_tipo_regiao"]}.{$r["identificador"]}::text = tabelamedida{$c["id_medida_variavel"]}.{$c["colunaidgeo"]}::text | |
665 | - "; | |
683 | + from {$c["esquemadb"]}.{$c["tabela"]} as tabelamedida{$c["id_medida_variavel"]} | |
684 | + JOIN {$r["esquemadb"]}.{$r["tabela"]} as tabela{$r["codigo_tipo_regiao"]} | |
685 | + ON tabela{$r["codigo_tipo_regiao"]}.{$r["identificador"]}::text = tabelamedida{$c["id_medida_variavel"]}.{$c["colunaidgeo"]}::text | |
686 | + "; | |
666 | 687 | $sql .= $dimRegioes[$c["codigo_tipo_regiao"]]["juncoes"]; |
667 | 688 | $f = array(); |
668 | 689 | foreach($tb as $mdd){ |
669 | 690 | if($mdd["filtro"] != ""){ |
670 | 691 | $f[] = str_replace('"',"'",$mdd["filtro"]); |
671 | 692 | } |
672 | - } | |
693 | + } | |
673 | 694 | if(count($f) > 0){ |
674 | 695 | $sql .= " WHERE ".implode(" OR ",$f); |
675 | 696 | } |
676 | 697 | |
677 | 698 | $xml .= " |
678 | - <view alias='view_{$c["esquemadb"]}{$c["tabela"]}' ><SQL dialect='generic' >$sql</SQL></view> | |
699 | + <view alias='view_{$c["esquemadb"]}{$c["tabela"]}' ><SQL dialect='generic' >$sql</SQL></view> | |
679 | 700 | "; |
680 | 701 | //dimensoes vinculadas |
681 | 702 | $temp = $dimRegioes[$c["codigo_tipo_regiao"]]["codRegioes"]; |
682 | 703 | $temp[] = $c["codigo_tipo_regiao"]; |
683 | 704 | foreach($temp as $cod){ |
684 | 705 | $xml .= " |
685 | - <DimensionUsage foreignKey='codigo{$cod}' name='codigo_tipo_regiao_{$cod}' source='codigo_tipo_regiao_{$cod}'/> | |
686 | - <DimensionUsage foreignKey='codigo{$cod}' name='codigo_tipo_regiao_{$cod}_geocod' source='codigo_tipo_regiao_{$cod}_geocod'/> | |
706 | + <DimensionUsage foreignKey='codigo{$cod}' name='codigo_tipo_regiao_{$cod}' source='codigo_tipo_regiao_{$cod}'/> | |
707 | + <DimensionUsage foreignKey='codigo{$cod}' name='codigo_tipo_regiao_{$cod}_geocod' source='codigo_tipo_regiao_{$cod}_geocod'/> | |
687 | 708 | "; |
688 | 709 | } |
689 | 710 | //inclui as dimensoes filhas |
690 | 711 | foreach($filhosDaRegiao[$c["codigo_tipo_regiao"]] as $fr){ |
691 | 712 | $xml .= " |
692 | - <DimensionUsage foreignKey='codigoreg' name='codigo_tipo_regiao_".$fr."' source='codigo_tipo_regiao_".$fr."'/> | |
693 | - <DimensionUsage foreignKey='codigoreg' name='codigo_tipo_regiao_".$fr."_geocod' source='codigo_tipo_regiao_".$fr."_geocod'/> | |
713 | + <DimensionUsage foreignKey='codigoreg' name='codigo_tipo_regiao_".$fr."' source='codigo_tipo_regiao_".$fr."'/> | |
714 | + <DimensionUsage foreignKey='codigoreg' name='codigo_tipo_regiao_".$fr."_geocod' source='codigo_tipo_regiao_".$fr."_geocod'/> | |
694 | 715 | "; |
695 | 716 | } |
696 | 717 | |
... | ... | @@ -719,6 +740,10 @@ function dimensoesTabelas(){ |
719 | 740 | "; |
720 | 741 | $VirtualCubeMeasure[] = $u; |
721 | 742 | array_push($VirtualCubeMeasureDaRegiao[$c["codigo_tipo_regiao"]],$u); |
743 | + //verifica em qual variavel entra | |
744 | + //<VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_12]'/> | |
745 | + $u = "<VirtualCubeMeasure cubeName='Tabela: {$c["esquemadb"]}{$c["tabela"]}' name='[Measures].[id_medida_variavel_".$medida["id_medida_variavel"]."]'/>"; | |
746 | + array_push($CubosPorMedida[$c["nome_variavel"]],$u); | |
722 | 747 | } |
723 | 748 | $xml .= " |
724 | 749 | </Cube> |
... | ... | @@ -755,4 +780,19 @@ function cuboRegioes(){ |
755 | 780 | } |
756 | 781 | return $xml; |
757 | 782 | } |
783 | + | |
784 | +function cuboVariaveis(){ | |
785 | + global $CubosPorMedida, $VirtualCubeDimensionDaMedida; | |
786 | + //var_dump($VirtualCubeDimensionDaMedida);exit; | |
787 | + $xml = ""; | |
788 | + $chaves = array_keys($CubosPorMedida); | |
789 | + foreach ($chaves as $c){ | |
790 | + $xml .= '<VirtualCube name="'.converte($c).'" >'; | |
791 | + $xml .= '<VirtualCubeDimension name="Tempo" />'; | |
792 | + $xml .= implode(" ",$VirtualCubeDimensionDaMedida[$c]); | |
793 | + $xml .= implode(" ",$CubosPorMedida[$c]); | |
794 | + $xml .= '</VirtualCube>'; | |
795 | + } | |
796 | + return $xml; | |
797 | +} | |
758 | 798 | ?> | ... | ... |
ferramentas/saiku/testemondrian.xml
1 | 1 | <Schema name='i3Geo Metaestat'> |
2 | 2 | <Dimension name='Anual' type='TimeDimension' caption='Tempo: Anual'> |
3 | - <Hierarchy hasAll='true' primaryKey='nu_ano'> | |
4 | - <view alias='tempo_ano'> | |
5 | - <SQL dialect='generic'>select nu_ano from | |
6 | - i3geo_metaestat.dim_tempo group | |
7 | - by nu_ano order by nu_ano | |
8 | - </SQL> | |
9 | - </view> | |
10 | - <Level name='Ano' column='nu_ano' type='Numeric' uniqueMembers='true' | |
11 | - levelType='TimeYears' /> | |
12 | - </Hierarchy> | |
3 | + <Hierarchy hasAll='true' primaryKey='nu_ano'> | |
4 | + <view alias='tempo_ano' ><SQL dialect='generic' >select nu_ano from i3geo_metaestat.dim_tempo group by nu_ano order by nu_ano</SQL></view> | |
5 | + <Level name='Ano' column='nu_ano' type='Numeric' uniqueMembers='true' levelType='TimeYears'/> | |
6 | + </Hierarchy> | |
13 | 7 | </Dimension> |
14 | 8 | <Dimension name='Mensal' type='TimeDimension' caption='Tempo: Mensal'> |
15 | - <Hierarchy hasAll='true' primaryKey='nu_anomes'> | |
16 | - <view alias='tempo_ano'> | |
17 | - <SQL dialect='generic'>select | |
18 | - nu_ano::text,nu_mes::text,ds_mes_abreviado as | |
19 | - mes,COALESCE | |
20 | - (nu_ano::text||'-'||nu_mes::text,nu_ano::text) as | |
21 | - nu_anomes from | |
22 | - i3geo_metaestat.dim_tempo group by | |
23 | - nu_ano,nu_mes,mes,nu_anomes | |
24 | - order by nu_ano,nu_mes | |
25 | - </SQL> | |
26 | - </view> | |
27 | - <Level name='Ano' column='nu_ano' type='Numeric' uniqueMembers='true' | |
28 | - levelType='TimeYears' /> | |
29 | - <Level nameColumn='mes' name='Mes' column='nu_mes' type='Numeric' | |
30 | - uniqueMembers='false' levelType='TimeMonths' /> | |
31 | - </Hierarchy> | |
9 | + <Hierarchy hasAll='true' primaryKey='nu_anomes'> | |
10 | + <view alias='tempo_ano' ><SQL dialect='generic' >select nu_ano::text,nu_mes::text,ds_mes_abreviado as mes,COALESCE (nu_ano::text||'-'||nu_mes::text,nu_ano::text) as nu_anomes from i3geo_metaestat.dim_tempo group by nu_ano,nu_mes,mes,nu_anomes order by nu_ano,nu_mes</SQL></view> | |
11 | + <Level name='Ano' column='nu_ano' type='Numeric' uniqueMembers='true' levelType='TimeYears'/> | |
12 | + <Level nameColumn='mes' name='Mes' column='nu_mes' type='Numeric' uniqueMembers='false' levelType='TimeMonths'/> | |
13 | + </Hierarchy> | |
32 | 14 | </Dimension> |
33 | 15 | <Dimension name='Tempo' type='TimeDimension' caption='Tempo'> |
34 | - <Hierarchy hasAll='true' primaryKey='nu_anomes'> | |
35 | - <view alias='tempo'> | |
36 | - <SQL dialect='generic'>select | |
37 | - nu_ano::text,nu_mes::text,ds_mes_abreviado as | |
38 | - mes,COALESCE | |
39 | - (nu_ano::text||'-'||nu_mes::text,nu_ano::text) as | |
40 | - nu_anomes from | |
41 | - i3geo_metaestat.dim_tempo group by | |
42 | - nu_ano,nu_mes,mes,nu_anomes | |
43 | - order by nu_ano,nu_mes | |
44 | - </SQL> | |
16 | + <Hierarchy hasAll='true' primaryKey='nu_anomes'> | |
17 | + <view alias='tempo' ><SQL dialect='generic' >select nu_ano::text,nu_mes::text,ds_mes_abreviado as mes,COALESCE (nu_ano::text||'-'||nu_mes::text,nu_ano::text) as nu_anomes from i3geo_metaestat.dim_tempo group by nu_ano,nu_mes,mes,nu_anomes order by nu_ano,nu_mes</SQL></view> | |
18 | + <Level name='Ano' column='nu_ano' type='String' uniqueMembers='true' levelType='TimeYears'/> | |
19 | + <Level nameColumn='mes' name='Mes' column='nu_mes' type='String' uniqueMembers='false' levelType='TimeMonths'/> | |
20 | + </Hierarchy> | |
21 | + </Dimension> | |
22 | + | |
23 | + <Dimension name='codigo_tipo_regiao_1' caption='Onde:Bairro (IBGE)'> | |
24 | + <Hierarchy hasAll='true' primaryKey='codigo1'> | |
25 | + | |
26 | + <view alias='view_codigo_tipo_regiao_1' > | |
27 | + <SQL dialect='generic' >SELECT tabela1.co_bairro::text as codigo, tabela1.co_bairro::text AS codigo1,tabela1.no_bairro::text AS nome1,tabela2.co_municipio::text AS codigo2,tabela2.no_cidade::text AS nome2,tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 FROM i3geo_metaestat.bairros as tabela1 | |
28 | + JOIN i3geo_metaestat.municipios as tabela2 ON | |
29 | + tabela2.co_municipio::text = tabela1.co_municipio::text | |
30 | + JOIN i3geo_metaestat.uf as tabela3 ON | |
31 | + tabela3.co_uf::text = tabela2.co_uf::text | |
32 | + </SQL> | |
45 | 33 | </view> |
46 | - <Level name='Ano' column='nu_ano' type='String' uniqueMembers='true' | |
47 | - levelType='TimeYears' /> | |
48 | - <Level nameColumn='mes' name='Mes' column='nu_mes' type='String' | |
49 | - uniqueMembers='false' levelType='TimeMonths' /> | |
34 | + | |
35 | + <Level name='Estado' column='codigo3' nameColumn='nome3' | |
36 | + uniqueMembers='false' /> | |
37 | + | |
38 | + <Level name='Munic&iacute;pio' column='codigo2' nameColumn='nome2' | |
39 | + uniqueMembers='false' /> | |
40 | + | |
41 | + <Level name='Bairro (IBGE)' column='codigo1' nameColumn='nome1' | |
42 | + uniqueMembers='false' /> | |
43 | + | |
50 | 44 | </Hierarchy> |
51 | - </Dimension> | |
52 | - | |
53 | - <Dimension name='codigo_tipo_regiao_1' caption='Onde:Bairro (IBGE)'> | |
54 | - <Hierarchy hasAll='true' primaryKey='co_bairro'> | |
55 | - | |
56 | - <view alias='view_codigo_tipo_regiao_1'> | |
57 | - <SQL dialect='generic'>SELECT regiao.co_bairro as codigo | |
58 | - ,regiao.no_bairro | |
59 | - AS nome,j0.no_cidade AS | |
60 | - j0no_cidade,j0.co_municipio AS | |
61 | - j0co_municipio,j1.no_uf AS | |
62 | - j1no_uf,j1.co_uf AS | |
63 | - j1co_uf,regiao.co_bairro as | |
64 | - co_bairro,regiao.no_bairro as | |
65 | - no_bairro,regiao.no_distr as | |
66 | - no_distr,regiao.no_municip as | |
67 | - no_municip FROM | |
68 | - i3geo_metaestat.bairros AS regiao INNER JOIN | |
69 | - i3geo_metaestat.municipios | |
70 | - AS j0 ON j0.co_municipio::text = | |
71 | - regiao.co_municipio::text | |
72 | - INNER JOIN i3geo_metaestat.uf | |
73 | - AS j1 ON | |
74 | - j1.co_uf::text = j0.co_uf::text | |
75 | - </SQL> | |
45 | + </Dimension> | |
46 | + | |
47 | + <Dimension name='codigo_tipo_regiao_1_geocod' caption='GeoCod:Bairro (IBGE)'> | |
48 | + <Hierarchy hasAll='true' primaryKey='codigo1'> | |
49 | + | |
50 | + <view alias='view_codigo_tipo_regiao_1_GeoCod' > | |
51 | + <SQL dialect='generic' >SELECT tabela1.co_bairro::text as codigo, tabela1.co_bairro::text AS codigo1,tabela1.no_bairro::text AS nome1,tabela2.co_municipio::text AS codigo2,tabela2.no_cidade::text AS nome2,tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 FROM i3geo_metaestat.bairros as tabela1 | |
52 | + JOIN i3geo_metaestat.municipios as tabela2 ON | |
53 | + tabela2.co_municipio::text = tabela1.co_municipio::text | |
54 | + JOIN i3geo_metaestat.uf as tabela3 ON | |
55 | + tabela3.co_uf::text = tabela2.co_uf::text | |
56 | + </SQL> | |
76 | 57 | </view> |
77 | - | |
78 | - <Level name='Estado' column='j1co_uf' nameColumn='j1no_uf' | |
58 | + | |
59 | + <Level name='Estado - GeoCod #3' column='codigo3' nameColumn='codigo3' | |
60 | + uniqueMembers='false' /> | |
61 | + | |
62 | + <Level name='Munic&iacute;pio - GeoCod #2' column='codigo2' nameColumn='codigo2' | |
63 | + uniqueMembers='false' /> | |
64 | + | |
65 | + <Level name='Bairro (IBGE) - GeoCod #1' column='codigo1' nameColumn='codigo1' | |
79 | 66 | uniqueMembers='false' /> |
80 | - | |
81 | - <Level name='Munic&iacute;pio' column='j0co_municipio' | |
82 | - nameColumn='j0no_cidade' uniqueMembers='false' /> | |
83 | - | |
84 | - <Level name='Bairro (IBGE)' column='codigo' nameColumn='nome' | |
85 | - uniqueMembers='true'> | |
86 | - </Level> | |
87 | - | |
67 | + | |
88 | 68 | </Hierarchy> |
89 | - </Dimension> | |
90 | - | |
91 | - <Dimension name='codigo_tipo_regiao_47' | |
92 | - caption='Onde:Colegiado de gest&atilde;o em sa&uacute;de'> | |
93 | - <Hierarchy hasAll='true' primaryKey='co_colegiado'> | |
94 | - | |
95 | - <view alias='view_codigo_tipo_regiao_47'> | |
96 | - <SQL dialect='generic'>SELECT regiao.co_colegiado as codigo | |
97 | - ,regiao.no_colegiado AS nome FROM i3geo_metaestat.colegiado_gestao | |
98 | - AS regiao | |
99 | - </SQL> | |
69 | + </Dimension> | |
70 | + | |
71 | + <Dimension name='codigo_tipo_regiao_47' caption='Onde:Colegiado de gest&atilde;o em sa&uacute;de'> | |
72 | + <Hierarchy hasAll='true' primaryKey='codigo47'> | |
73 | + | |
74 | + <view alias='view_codigo_tipo_regiao_47' > | |
75 | + <SQL dialect='generic' >SELECT tabela47.co_colegiado::text as codigo, tabela47.co_colegiado::text AS codigo47,tabela47.no_colegiado::text AS nome47 FROM i3geo_metaestat.colegiado_gestao as tabela47 | |
76 | +</SQL> | |
100 | 77 | </view> |
101 | - | |
102 | - <Level name='Colegiado de gest&atilde;o em sa&uacute;de' | |
103 | - column='codigo' nameColumn='nome' uniqueMembers='true'> | |
104 | - </Level> | |
105 | - | |
78 | + | |
79 | + <Level name='Colegiado de gest&atilde;o em sa&uacute;de' column='codigo47' nameColumn='nome47' | |
80 | + uniqueMembers='false' /> | |
81 | + | |
106 | 82 | </Hierarchy> |
107 | - </Dimension> | |
108 | - | |
109 | - <Dimension name='codigo_tipo_regiao_3' caption='Onde:Estado'> | |
110 | - <Hierarchy hasAll='true' primaryKey='codigo'> | |
111 | - <view alias='view_codigo_tipo_regiao_3'> | |
112 | - <SQL dialect='generic'> | |
113 | - SELECT | |
114 | - co_uf::text as codigo, | |
115 | - co_uf::text as co_uf, | |
116 | - no_uf::text | |
117 | - FROM | |
118 | - i3geo_metaestat.uf | |
119 | - | |
120 | - </SQL> | |
83 | + </Dimension> | |
84 | + | |
85 | + <Dimension name='codigo_tipo_regiao_47_geocod' caption='GeoCod:Colegiado de gest&atilde;o em sa&uacute;de'> | |
86 | + <Hierarchy hasAll='true' primaryKey='codigo47'> | |
87 | + | |
88 | + <view alias='view_codigo_tipo_regiao_47_GeoCod' > | |
89 | + <SQL dialect='generic' >SELECT tabela47.co_colegiado::text as codigo, tabela47.co_colegiado::text AS codigo47,tabela47.no_colegiado::text AS nome47 FROM i3geo_metaestat.colegiado_gestao as tabela47 | |
90 | +</SQL> | |
121 | 91 | </view> |
122 | - <Level name='Estado' column='co_uf' nameColumn='no_uf' | |
123 | - uniqueMembers='true' /> | |
92 | + | |
93 | + <Level name='Colegiado de gest&atilde;o em sa&uacute;de - GeoCod #47' column='codigo47' nameColumn='codigo47' | |
94 | + uniqueMembers='false' /> | |
95 | + | |
124 | 96 | </Hierarchy> |
125 | - | |
126 | - </Dimension> | |
127 | - /////////////////////////////////////////////////////////////////////////// | |
128 | - <Dimension name='codigo_tipo_regiao_2' caption='Onde:Munic&iacute;pio'> | |
129 | - <Hierarchy hasAll='true' primaryKey='codigo'> | |
130 | - <view alias='view_codigo_tipo_regiao_2'> | |
131 | - <SQL dialect='generic'> | |
132 | - SELECT a0.co_municipio::text as codigo ,a0.co_municipio::text AS co_municipio , | |
133 | - a0.no_cidade::text AS no_cidade ,b0.co_uf::text AS co_uf ,b0.no_uf::text AS no_uf | |
134 | - FROM i3geo_metaestat.municipios as a0 JOIN i3geo_metaestat.uf as b0 ON | |
135 | -a0.co_uf::text = b0.co_uf::text | |
136 | -UNION | |
137 | -SELECT a1.co_uf::text as codigo ,'','',a1.co_uf::text AS co_uf ,a1.no_uf::text AS no_uf FROM i3geo_metaestat.uf as a1 | |
138 | - </SQL> | |
97 | + </Dimension> | |
98 | + | |
99 | + <Dimension name='codigo_tipo_regiao_3' caption='Onde:Estado'> | |
100 | + <Hierarchy hasAll='true' primaryKey='codigo3'> | |
101 | + | |
102 | + <view alias='view_codigo_tipo_regiao_3' > | |
103 | + <SQL dialect='generic' >SELECT tabela3.co_uf::text as codigo, tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 FROM i3geo_metaestat.uf as tabela3 | |
104 | +</SQL> | |
139 | 105 | </view> |
140 | - <Level name='Estado' column='no_uf' nameColumn='no_uf' | |
141 | - uniqueMembers='true' /> | |
142 | - <Level name='Munic&iacute;pio' column='no_cidade' | |
143 | - nameColumn='no_cidade' uniqueMembers='true' /> | |
106 | + | |
107 | + <Level name='Estado' column='codigo3' nameColumn='nome3' | |
108 | + uniqueMembers='false' /> | |
109 | + | |
144 | 110 | </Hierarchy> |
145 | - </Dimension> | |
146 | - | |
147 | - <Dimension name='codigo_tipo_regiao_1_geocod' caption='GeoCod:Bairro (IBGE)'> | |
148 | - <Hierarchy hasAll='true' primaryKey='co_bairro'> | |
149 | - | |
150 | - <view alias='view_codigo_tipo_regiao_1_GeoCod'> | |
151 | - <SQL dialect='generic'>SELECT regiao.co_bairro as codigo | |
152 | - ,regiao.no_bairro | |
153 | - AS nome,j0.no_cidade AS | |
154 | - j0no_cidade,j0.co_municipio AS | |
155 | - j0co_municipio,j1.no_uf AS | |
156 | - j1no_uf,j1.co_uf AS | |
157 | - j1co_uf,regiao.co_bairro as | |
158 | - co_bairro,regiao.no_bairro as | |
159 | - no_bairro,regiao.no_distr as | |
160 | - no_distr,regiao.no_municip as | |
161 | - no_municip FROM | |
162 | - i3geo_metaestat.bairros AS regiao INNER JOIN | |
163 | - i3geo_metaestat.municipios | |
164 | - AS j0 ON j0.co_municipio::text = | |
165 | - regiao.co_municipio::text | |
166 | - INNER JOIN i3geo_metaestat.uf | |
167 | - AS j1 ON | |
168 | - j1.co_uf::text = j0.co_uf::text | |
169 | - </SQL> | |
111 | + </Dimension> | |
112 | + | |
113 | + <Dimension name='codigo_tipo_regiao_3_geocod' caption='GeoCod:Estado'> | |
114 | + <Hierarchy hasAll='true' primaryKey='codigo3'> | |
115 | + | |
116 | + <view alias='view_codigo_tipo_regiao_3_GeoCod' > | |
117 | + <SQL dialect='generic' >SELECT tabela3.co_uf::text as codigo, tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 FROM i3geo_metaestat.uf as tabela3 | |
118 | +</SQL> | |
170 | 119 | </view> |
171 | - | |
172 | - <Level name='Munic&iacute;pio - GeoCod #2' column='j0co_municipio' | |
173 | - nameColumn='j0co_municipio' uniqueMembers='false' /> | |
174 | - | |
175 | - <Level name='Estado - GeoCod #3' column='j1co_uf' nameColumn='j1co_uf' | |
120 | + | |
121 | + <Level name='Estado - GeoCod #3' column='codigo3' nameColumn='codigo3' | |
176 | 122 | uniqueMembers='false' /> |
177 | - | |
178 | - <Level name='Bairro (IBGE) - GeoCod #1' column='codigo' | |
179 | - nameColumn='codigo' uniqueMembers='true' /> | |
180 | - | |
181 | - </Hierarchy> | |
182 | - </Dimension> | |
183 | - | |
184 | - <Dimension name='codigo_tipo_regiao_47_geocod' | |
185 | - caption='GeoCod:Colegiado de gest&atilde;o em sa&uacute;de'> | |
186 | - <Hierarchy hasAll='true' primaryKey='co_colegiado'> | |
187 | - | |
188 | - <view alias='view_codigo_tipo_regiao_47_GeoCod'> | |
189 | - <SQL dialect='generic'>SELECT regiao.co_colegiado as codigo | |
190 | - ,regiao.no_colegiado AS nome FROM i3geo_metaestat.colegiado_gestao | |
191 | - AS regiao | |
192 | - </SQL> | |
193 | - </view> | |
194 | - | |
195 | - <Level | |
196 | - name='Colegiado de gest&atilde;o em sa&uacute;de - GeoCod #47' | |
197 | - column='codigo' nameColumn='codigo' uniqueMembers='true' /> | |
198 | - | |
123 | + | |
199 | 124 | </Hierarchy> |
200 | - </Dimension> | |
201 | - | |
202 | - <Dimension name='codigo_tipo_regiao_3_geocod' caption='GeoCod:Estado'> | |
203 | - <Hierarchy hasAll='true' primaryKey='co_uf'> | |
204 | - | |
205 | - <view alias='view_codigo_tipo_regiao_3_GeoCod'> | |
206 | - <SQL dialect='generic'>SELECT regiao.co_uf as codigo | |
207 | - ,regiao.no_uf AS | |
208 | - nome,regiao.co_uf as co_uf,regiao.sg_uf as | |
209 | - sg_uf,regiao.no_uf as | |
210 | - no_uf,regiao.no_regiao as no_regiao FROM | |
211 | - i3geo_metaestat.uf AS | |
212 | - regiao | |
213 | - </SQL> | |
125 | + </Dimension> | |
126 | + | |
127 | + <Dimension name='codigo_tipo_regiao_2' caption='Onde:Munic&iacute;pio'> | |
128 | + <Hierarchy hasAll='true' primaryKey='codigo2'> | |
129 | + | |
130 | + <view alias='view_codigo_tipo_regiao_2' > | |
131 | + <SQL dialect='generic' >SELECT tabela2.co_municipio::text as codigo, tabela2.co_municipio::text AS codigo2,tabela2.no_cidade::text AS nome2,tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 FROM i3geo_metaestat.municipios as tabela2 | |
132 | + JOIN i3geo_metaestat.uf as tabela3 ON | |
133 | + tabela3.co_uf::text = tabela2.co_uf::text | |
134 | + </SQL> | |
214 | 135 | </view> |
215 | - | |
216 | - <Level name='Estado - GeoCod #3' column='codigo' nameColumn='codigo' | |
217 | - uniqueMembers='true' /> | |
218 | - | |
136 | + | |
137 | + <Level name='Estado' column='codigo3' nameColumn='nome3' | |
138 | + uniqueMembers='false' /> | |
139 | + | |
140 | + <Level name='Munic&iacute;pio' column='codigo2' nameColumn='nome2' | |
141 | + uniqueMembers='false' /> | |
142 | + | |
219 | 143 | </Hierarchy> |
220 | - </Dimension> | |
221 | - | |
222 | - <Dimension name='codigo_tipo_regiao_2_geocod' caption='GeoCod:Munic&iacute;pio'> | |
223 | - <Hierarchy hasAll='true' primaryKey='co_municipio'> | |
224 | - | |
225 | - <view alias='view_codigo_tipo_regiao_2_GeoCod'> | |
226 | - <SQL dialect='generic'>SELECT regiao.co_municipio as codigo | |
227 | - ,regiao.no_cidade AS nome,j0.no_uf AS j0no_uf,j0.co_uf AS | |
228 | - j0co_uf,regiao.co_municipio as co_municipio,regiao.no_cidade as | |
229 | - no_cidade,regiao.co_uf as co_uf,regiao.sg_uf as | |
230 | - sg_uf,regiao.area_territorial as | |
231 | - area_territorial,regiao.nu_ano_instalacao as nu_ano_instalacao FROM | |
232 | - i3geo_metaestat.municipios AS regiao INNER JOIN i3geo_metaestat.uf | |
233 | - AS j0 ON j0.co_uf::text = regiao.co_uf::text | |
234 | - </SQL> | |
144 | + </Dimension> | |
145 | + | |
146 | + <Dimension name='codigo_tipo_regiao_2_geocod' caption='GeoCod:Munic&iacute;pio'> | |
147 | + <Hierarchy hasAll='true' primaryKey='codigo2'> | |
148 | + | |
149 | + <view alias='view_codigo_tipo_regiao_2_GeoCod' > | |
150 | + <SQL dialect='generic' >SELECT tabela2.co_municipio::text as codigo, tabela2.co_municipio::text AS codigo2,tabela2.no_cidade::text AS nome2,tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 FROM i3geo_metaestat.municipios as tabela2 | |
151 | + JOIN i3geo_metaestat.uf as tabela3 ON | |
152 | + tabela3.co_uf::text = tabela2.co_uf::text | |
153 | + </SQL> | |
235 | 154 | </view> |
236 | - | |
237 | - <Level name='Estado - GeoCod #3' column='j0co_uf' nameColumn='j0co_uf' | |
155 | + | |
156 | + <Level name='Estado - GeoCod #3' column='codigo3' nameColumn='codigo3' | |
157 | + uniqueMembers='false' /> | |
158 | + | |
159 | + <Level name='Munic&iacute;pio - GeoCod #2' column='codigo2' nameColumn='codigo2' | |
238 | 160 | uniqueMembers='false' /> |
239 | - | |
240 | - <Level name='Munic&iacute;pio - GeoCod #2' column='codigo' | |
241 | - nameColumn='codigo' uniqueMembers='true' /> | |
242 | - | |
243 | - </Hierarchy> | |
244 | - </Dimension> | |
245 | - | |
246 | - <Dimension name='public_sfb_teste_descncm' caption='NCM'> | |
247 | - <Hierarchy hasAll='true' primaryKey='codigo'> | |
248 | - <view alias='public_sfb_teste_descncm'> | |
249 | - <SQL dialect='generic'>SELECT dim.descncm as codigo, dim.descncm | |
250 | - AS nome | |
251 | - FROM public.sfb_teste as dim group by codigo | |
252 | - </SQL> | |
253 | - </view> | |
254 | - <Level name='NCM' column='codigo' nameColumn='nome' | |
255 | - uniqueMembers='true' /> | |
161 | + | |
256 | 162 | </Hierarchy> |
257 | - </Dimension> | |
258 | - <Cube cache='false' name='Tabela: idsustb_indicador'> | |
259 | - <view alias='view_idsustb_indicador'> | |
260 | - <SQL dialect='generic'> | |
261 | - select tb_indicador.*,ibge::text as codigodim,uf.co_uf::text as co_uf, ano::text as ano_ from | |
262 | - idsus.tb_indicador | |
263 | - JOIN i3geo_metaestat.municipios as municipio ON ibge::text = co_municipio::text | |
264 | - JOIN i3geo_metaestat.uf as uf ON municipio.co_uf::text = uf.co_uf::text | |
265 | - </SQL> | |
266 | - </view> | |
267 | - <DimensionUsage foreignKey='codigodim' name='codigo_tipo_regiao_2' | |
268 | - source='codigo_tipo_regiao_2' /> | |
269 | - <DimensionUsage foreignKey='codigodim' | |
270 | - name='codigo_tipo_regiao_2_geocod' source='codigo_tipo_regiao_2_geocod' /> | |
271 | - | |
272 | - <DimensionUsage foreignKey='co_uf' | |
273 | - name='codigo_tipo_regiao_3' source='codigo_tipo_regiao_3' /> | |
274 | - | |
275 | - <DimensionUsage foreignKey='ano_' name='Tempo' source='Tempo' /> | |
276 | - | |
277 | - <Measure name='id_medida_variavel_12' caption='IDSUS municipal' | |
278 | - column='idsus_mun' aggregator='avg' /> | |
279 | - | |
280 | - <Measure name='id_medida_variavel_15' | |
281 | - caption='&Iacute;ndice da aten&ccedil;&atilde;o b&aacute;sica' | |
282 | - column='idatb' aggregator='avg' /> | |
283 | - | |
284 | - <Measure name='id_medida_variavel_16' | |
285 | - caption='&Iacute;ndice de m&eacute;dia e alta complexidade' | |
286 | - column='idmac' aggregator='avg' /> | |
287 | - | |
288 | - <Measure name='id_medida_variavel_17' caption='&Iacute;ndice de acesso do SUS' | |
289 | - column='id_acesso_sus' aggregator='avg' /> | |
290 | - | |
291 | - <Measure name='id_medida_variavel_18' | |
292 | - caption='&Iacute;ndice de acesso da aten&ccedil;&atilde;o b&aacute;sica' | |
293 | - column='atbas_acess' aggregator='avg' /> | |
294 | - | |
295 | - <Measure name='id_medida_variavel_19' | |
296 | - caption='&Iacute;ndice de acesso da m&eacute;dia complexidade ambulatorial e hospitalar' | |
297 | - column='acess_ah_medc' aggregator='avg' /> | |
298 | - | |
299 | - <Measure name='id_medida_variavel_20' | |
300 | - caption='&Iacute;ndice de acesso da alta complexidade, urg&ecirc;ncia e emerg&ecirc;ncia' | |
301 | - column='acess_ah_altc' aggregator='avg' /> | |
302 | - | |
303 | - <Measure name='id_medida_variavel_21' caption='&Iacute;ndice de efetividade do SUS' | |
304 | - column='id_quali_sus' aggregator='avg' /> | |
305 | - | |
306 | - <Measure name='id_medida_variavel_22' | |
307 | - caption='&Iacute;ndice de efetividade da aten&ccedil;&atilde;o b&aacute;sica' | |
308 | - column='atbas_quali' aggregator='avg' /> | |
309 | - | |
310 | - <Measure name='id_medida_variavel_23' | |
311 | - caption='&Iacute;ndice de efetividade ambiental e hospitalar da m&eacute;dia e alta complexidade' | |
312 | - column='quali_ah_mac' aggregator='avg' /> | |
313 | - | |
314 | - </Cube> | |
315 | - | |
316 | - <Cube cache='false' name='Tabela: ibgepopulacao_residente'> | |
317 | - <view alias='view_ibgepopulacao_residente'> | |
318 | - <SQL dialect='generic'> | |
319 | - select a.*,a.co_municipio::text as codigo,uf.co_uf::text as co_uf, ano::text as ano_ | |
320 | - from | |
321 | - ibge.populacao_residente as a | |
322 | - JOIN i3geo_metaestat.municipios AS municipio ON municipio.co_municipio::text = a.co_municipio::text | |
323 | - JOIN i3geo_metaestat.uf as uf ON municipio.co_uf::text = uf.co_uf::text | |
324 | - </SQL> | |
325 | - </view> | |
326 | - <DimensionUsage foreignKey='codigo' name='codigo_tipo_regiao_2' | |
327 | - source='codigo_tipo_regiao_2' /> | |
328 | - <DimensionUsage foreignKey='codigo' | |
329 | - name='codigo_tipo_regiao_2_geocod' source='codigo_tipo_regiao_2_geocod' /> | |
330 | - | |
331 | - <DimensionUsage foreignKey='co_uf' | |
332 | - name='codigo_tipo_regiao_3' source='codigo_tipo_regiao_3' /> | |
333 | - | |
334 | - <DimensionUsage foreignKey='ano_' name='Tempo' source='Tempo' /> | |
335 | - | |
336 | - <Measure name='id_medida_variavel_25' caption='Popula&ccedil;&atilde;o total' | |
337 | - column='pop_res_tot' aggregator='sum' /> | |
338 | - | |
339 | - </Cube> | |
340 | - | |
341 | - <Cube cache='false' name='Tabela: dbacoes_saudetb_farmacia_pop'> | |
342 | - <view alias='view_dbacoes_saudetb_farmacia_pop'> | |
343 | - <SQL dialect='generic'>select *,ano_farm||'-'||mes_farm_pop::text | |
344 | - as | |
345 | - ano_farm_mes_farm_pop_ from dbacoes_saude.tb_farmacia_pop | |
346 | - </SQL> | |
347 | - </view> | |
348 | - <DimensionUsage foreignKey='co_ibge' name='codigo_tipo_regiao_2' | |
349 | - source='codigo_tipo_regiao_2' /> | |
350 | - | |
351 | - <DimensionUsage foreignKey='co_ibge' | |
352 | - name='codigo_tipo_regiao_2_geocod' source='codigo_tipo_regiao_2_geocod' /> | |
353 | - | |
354 | - <DimensionUsage foreignKey='ano_farm_mes_farm_pop_' | |
355 | - name='Tempo' source='Tempo' /> | |
356 | - | |
357 | - <Measure name='id_medida_variavel_40' caption='Farm&aacute;cias populares existentes' | |
358 | - column='nu_farm_funcionando' aggregator='sum' /> | |
359 | - | |
360 | - </Cube> | |
361 | - | |
362 | - <Cube cache='false' name='Tabela: publicsfb_teste'> | |
363 | - <view alias='view_publicsfb_teste'> | |
364 | - <SQL dialect='generic'>select *,coduf::text as codigo,ano::text as ano_ from | |
365 | - public.sfb_teste | |
366 | - </SQL> | |
367 | - </view> | |
368 | - | |
369 | - <DimensionUsage foreignKey='codigo' | |
370 | - name='codigo_tipo_regiao_3' source='codigo_tipo_regiao_3' /> | |
371 | - | |
372 | - <DimensionUsage foreignKey='codigo' | |
373 | - name='codigo_tipo_regiao_2' source='codigo_tipo_regiao_2' /> | |
374 | - | |
375 | - | |
376 | - <DimensionUsage foreignKey='ano_' name='Tempo' source='Tempo' /> | |
377 | - <DimensionUsage foreignKey='descncm' name='nome' | |
378 | - source='public_sfb_teste_descncm' /> | |
379 | - | |
380 | - <Measure name='id_medida_variavel_42' caption='Kg liq P1' | |
381 | - column='kgliqp1' aggregator='sum' /> | |
382 | - | |
383 | - <Measure name='id_medida_variavel_43' caption='Mil d&oacute;lares' | |
384 | - column='us1000' aggregator='sum' /> | |
385 | - | |
386 | - </Cube> | |
387 | - | |
388 | - <VirtualCube name="Regi&atilde;o: Estado"> | |
389 | - | |
390 | - <VirtualCubeDimension name='codigo_tipo_regiao_3' /> | |
391 | - | |
392 | - <VirtualCubeDimension name='codigo_tipo_regiao_3_geocod' /> | |
393 | - | |
394 | - <VirtualCubeDimension name='Tempo' /> | |
395 | - | |
396 | - <VirtualCubeDimension name='public_sfb_teste_descncm' /> | |
397 | - | |
398 | - <VirtualCubeMeasure cubeName='Tabela: publicsfb_teste' | |
399 | - name='[Measures].[id_medida_variavel_42]' /> | |
400 | - | |
401 | - <VirtualCubeMeasure cubeName='Tabela: publicsfb_teste' | |
402 | - name='[Measures].[id_medida_variavel_43]' /> | |
403 | - | |
404 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
405 | - name='[Measures].[id_medida_variavel_12]' /> | |
406 | - | |
407 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
408 | - name='[Measures].[id_medida_variavel_15]' /> | |
409 | - | |
410 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
411 | - name='[Measures].[id_medida_variavel_16]' /> | |
412 | - | |
413 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
414 | - name='[Measures].[id_medida_variavel_17]' /> | |
415 | - | |
416 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
417 | - name='[Measures].[id_medida_variavel_18]' /> | |
418 | - | |
419 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
420 | - name='[Measures].[id_medida_variavel_19]' /> | |
421 | - | |
422 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
423 | - name='[Measures].[id_medida_variavel_20]' /> | |
424 | - | |
425 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
426 | - name='[Measures].[id_medida_variavel_21]' /> | |
427 | - | |
428 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
429 | - name='[Measures].[id_medida_variavel_22]' /> | |
430 | - | |
431 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
432 | - name='[Measures].[id_medida_variavel_23]' /> | |
433 | - | |
434 | - <VirtualCubeMeasure cubeName='Tabela: ibgepopulacao_residente' | |
435 | - name='[Measures].[id_medida_variavel_25]' /> | |
436 | - | |
437 | - <VirtualCubeMeasure cubeName='Tabela: dbacoes_saudetb_farmacia_pop' | |
438 | - name='[Measures].[id_medida_variavel_40]' /> | |
439 | - </VirtualCube> | |
440 | - | |
441 | - <VirtualCube name="Regi&atilde;o: Munic&iacute;pio"> | |
163 | + </Dimension> | |
164 | + <Cube cache='false' name='Tabela: idsustb_indicador'> | |
165 | + <view alias='view_idsustb_indicador' ><SQL dialect='generic' > | |
166 | + select tabelamedida12.*,ano::text as ano_, tabelamedida12.ibge::text as codigoreg | |
167 | + ,tabela2.co_municipio::text AS codigo2,tabela2.no_cidade::text AS nome2,tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 | |
168 | + from idsus.tb_indicador as tabelamedida12 | |
169 | + JOIN i3geo_metaestat.municipios as tabela2 | |
170 | + ON tabela2.co_municipio::text = tabelamedida12.ibge::text | |
171 | + JOIN i3geo_metaestat.uf as tabela3 ON | |
172 | + tabela3.co_uf::text = tabela2.co_uf::text | |
173 | + </SQL></view> | |
174 | + | |
175 | + <DimensionUsage foreignKey='codigo3' name='codigo_tipo_regiao_3' source='codigo_tipo_regiao_3'/> | |
176 | + <DimensionUsage foreignKey='codigo3' name='codigo_tipo_regiao_3_geocod' source='codigo_tipo_regiao_3_geocod'/> | |
177 | + | |
178 | + <DimensionUsage foreignKey='codigo2' name='codigo_tipo_regiao_2' source='codigo_tipo_regiao_2'/> | |
179 | + <DimensionUsage foreignKey='codigo2' name='codigo_tipo_regiao_2_geocod' source='codigo_tipo_regiao_2_geocod'/> | |
180 | + | |
181 | + <DimensionUsage foreignKey='ano_' name='Tempo' source='Tempo'/> | |
182 | + | |
183 | + <Measure name='id_medida_variavel_12' caption='1 - IDSUS municipal' column='idsus_mun' aggregator='avg' /> | |
184 | + | |
185 | + <Measure name='id_medida_variavel_16' caption='2 - &Iacute;ndice de m&eacute;dia e alta complexidade' column='idmac' aggregator='avg' /> | |
186 | + | |
187 | + <Measure name='id_medida_variavel_15' caption='3 - &Iacute;ndice da aten&ccedil;&atilde;o b&aacute;sica' column='idatb' aggregator='avg' /> | |
188 | + | |
189 | + <Measure name='id_medida_variavel_20' caption='&Iacute;ndice de acesso da alta complexidade, urg&ecirc;ncia e emerg&ecirc;ncia' column='acess_ah_altc' aggregator='avg' /> | |
190 | + | |
191 | + <Measure name='id_medida_variavel_18' caption='&Iacute;ndice de acesso da aten&ccedil;&atilde;o b&aacute;sica' column='atbas_acess' aggregator='avg' /> | |
192 | + | |
193 | + <Measure name='id_medida_variavel_19' caption='&Iacute;ndice de acesso da m&eacute;dia complexidade ambulatorial e hospitalar' column='acess_ah_medc' aggregator='avg' /> | |
194 | + | |
195 | + <Measure name='id_medida_variavel_17' caption='&Iacute;ndice de acesso do SUS' column='id_acesso_sus' aggregator='avg' /> | |
196 | + | |
197 | + <Measure name='id_medida_variavel_23' caption='&Iacute;ndice de efetividade ambiental e hospitalar da m&eacute;dia e alta complexidade' column='quali_ah_mac' aggregator='avg' /> | |
198 | + | |
199 | + <Measure name='id_medida_variavel_22' caption='&Iacute;ndice de efetividade da aten&ccedil;&atilde;o b&aacute;sica' column='atbas_quali' aggregator='avg' /> | |
200 | + | |
201 | + <Measure name='id_medida_variavel_21' caption='&Iacute;ndice de efetividade do SUS' column='id_quali_sus' aggregator='avg' /> | |
202 | + | |
203 | + </Cube> | |
204 | + <Cube cache='false' name='Tabela: dbacoes_saudetb_farmacia_pop'> | |
205 | + <view alias='view_dbacoes_saudetb_farmacia_pop' ><SQL dialect='generic' > | |
206 | + select tabelamedida40.*,'1'::numeric as contagem40,ano_farm||'-'||mes_farm_pop::text as ano_farm_mes_farm_pop_, tabelamedida40.co_ibge::text as codigoreg | |
207 | + ,tabela2.co_municipio::text AS codigo2,tabela2.no_cidade::text AS nome2,tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 | |
208 | + from dbacoes_saude.tb_farmacia_pop as tabelamedida40 | |
209 | + JOIN i3geo_metaestat.municipios as tabela2 | |
210 | + ON tabela2.co_municipio::text = tabelamedida40.co_ibge::text | |
211 | + JOIN i3geo_metaestat.uf as tabela3 ON | |
212 | + tabela3.co_uf::text = tabela2.co_uf::text | |
213 | + </SQL></view> | |
214 | + | |
215 | + <DimensionUsage foreignKey='codigo3' name='codigo_tipo_regiao_3' source='codigo_tipo_regiao_3'/> | |
216 | + <DimensionUsage foreignKey='codigo3' name='codigo_tipo_regiao_3_geocod' source='codigo_tipo_regiao_3_geocod'/> | |
217 | + | |
218 | + <DimensionUsage foreignKey='codigo2' name='codigo_tipo_regiao_2' source='codigo_tipo_regiao_2'/> | |
219 | + <DimensionUsage foreignKey='codigo2' name='codigo_tipo_regiao_2_geocod' source='codigo_tipo_regiao_2_geocod'/> | |
220 | + | |
221 | + <DimensionUsage foreignKey='ano_farm_mes_farm_pop_' name='Tempo' source='Tempo'/> | |
222 | + | |
223 | + <Measure name='id_medida_variavel_40' caption='Farm&aacute;cias populares existentes' column='contagem40' aggregator='sum' /> | |
224 | + | |
225 | + </Cube> | |
226 | + <Cube cache='false' name='Tabela: ibgepopulacao_residente'> | |
227 | + <view alias='view_ibgepopulacao_residente' ><SQL dialect='generic' > | |
228 | + select tabelamedida25.*,ano::text as ano_, tabelamedida25.munic::text as codigoreg | |
229 | + ,tabela2.co_municipio::text AS codigo2,tabela2.no_cidade::text AS nome2,tabela3.co_uf::text AS codigo3,tabela3.no_uf::text AS nome3 | |
230 | + from ibge.populacao_residente as tabelamedida25 | |
231 | + JOIN i3geo_metaestat.municipios as tabela2 | |
232 | + ON tabela2.co_municipio::text = tabelamedida25.munic::text | |
233 | + JOIN i3geo_metaestat.uf as tabela3 ON | |
234 | + tabela3.co_uf::text = tabela2.co_uf::text | |
235 | + </SQL></view> | |
236 | + | |
237 | + <DimensionUsage foreignKey='codigo3' name='codigo_tipo_regiao_3' source='codigo_tipo_regiao_3'/> | |
238 | + <DimensionUsage foreignKey='codigo3' name='codigo_tipo_regiao_3_geocod' source='codigo_tipo_regiao_3_geocod'/> | |
239 | + | |
240 | + <DimensionUsage foreignKey='codigo2' name='codigo_tipo_regiao_2' source='codigo_tipo_regiao_2'/> | |
241 | + <DimensionUsage foreignKey='codigo2' name='codigo_tipo_regiao_2_geocod' source='codigo_tipo_regiao_2_geocod'/> | |
242 | + | |
243 | + <DimensionUsage foreignKey='ano_' name='Tempo' source='Tempo'/> | |
244 | + | |
245 | + <Measure name='id_medida_variavel_25' caption='Popula&ccedil;&atilde;o total' column='pop_res_tot' aggregator='sum' /> | |
246 | + | |
247 | + </Cube> | |
248 | + <VirtualCube name="Regi&atilde;o: Munic&iacute;pio" ><VirtualCubeDimension name='codigo_tipo_regiao_2' /> <VirtualCubeDimension name='codigo_tipo_regiao_2_geocod' /> <VirtualCubeDimension name='Tempo' /> | |
249 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_12]'/> | |
250 | + | |
251 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_16]'/> | |
252 | + | |
253 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_15]'/> | |
254 | + | |
255 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_20]'/> | |
256 | + | |
257 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_18]'/> | |
258 | + | |
259 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_19]'/> | |
260 | + | |
261 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_17]'/> | |
262 | + | |
263 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_23]'/> | |
264 | + | |
265 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_22]'/> | |
266 | + | |
267 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_21]'/> | |
268 | + | |
269 | + <VirtualCubeMeasure cubeName='Tabela: dbacoes_saudetb_farmacia_pop' name='[Measures].[id_medida_variavel_40]'/> | |
270 | + | |
271 | + <VirtualCubeMeasure cubeName='Tabela: ibgepopulacao_residente' name='[Measures].[id_medida_variavel_25]'/> | |
272 | + </VirtualCube><VirtualCube name="Todas as medidas" > | |
442 | 273 | <VirtualCubeDimension name='codigo_tipo_regiao_2' /> |
274 | + | |
443 | 275 | <VirtualCubeDimension name='codigo_tipo_regiao_2_geocod' /> |
444 | - <VirtualCubeDimension name='Tempo' /> | |
445 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
446 | - name='[Measures].[id_medida_variavel_12]' /> | |
447 | - | |
448 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
449 | - name='[Measures].[id_medida_variavel_15]' /> | |
450 | - | |
451 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
452 | - name='[Measures].[id_medida_variavel_16]' /> | |
453 | - | |
454 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
455 | - name='[Measures].[id_medida_variavel_17]' /> | |
456 | - | |
457 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
458 | - name='[Measures].[id_medida_variavel_18]' /> | |
459 | - | |
460 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
461 | - name='[Measures].[id_medida_variavel_19]' /> | |
462 | - | |
463 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
464 | - name='[Measures].[id_medida_variavel_20]' /> | |
465 | - | |
466 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
467 | - name='[Measures].[id_medida_variavel_21]' /> | |
468 | - | |
469 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
470 | - name='[Measures].[id_medida_variavel_22]' /> | |
471 | - | |
472 | - <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' | |
473 | - name='[Measures].[id_medida_variavel_23]' /> | |
474 | - | |
475 | - <VirtualCubeMeasure cubeName='Tabela: ibgepopulacao_residente' | |
476 | - name='[Measures].[id_medida_variavel_25]' /> | |
477 | - | |
478 | - <VirtualCubeMeasure cubeName='Tabela: dbacoes_saudetb_farmacia_pop' | |
479 | - name='[Measures].[id_medida_variavel_40]' /> | |
480 | - </VirtualCube> | |
481 | -</Schema> | |
276 | + | |
277 | + <VirtualCubeDimension name='Tempo' /> | |
278 | + | |
279 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_12]'/> | |
280 | + | |
281 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_16]'/> | |
282 | + | |
283 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_15]'/> | |
284 | + | |
285 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_20]'/> | |
286 | + | |
287 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_18]'/> | |
288 | + | |
289 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_19]'/> | |
290 | + | |
291 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_17]'/> | |
292 | + | |
293 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_23]'/> | |
294 | + | |
295 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_22]'/> | |
296 | + | |
297 | + <VirtualCubeMeasure cubeName='Tabela: idsustb_indicador' name='[Measures].[id_medida_variavel_21]'/> | |
298 | + | |
299 | + <VirtualCubeMeasure cubeName='Tabela: dbacoes_saudetb_farmacia_pop' name='[Measures].[id_medida_variavel_40]'/> | |
300 | + | |
301 | + <VirtualCubeMeasure cubeName='Tabela: ibgepopulacao_residente' name='[Measures].[id_medida_variavel_25]'/> | |
302 | + </VirtualCube></Schema> | |
482 | 303 | \ No newline at end of file | ... | ... |