Light - O Rio ´ Light

<% '// ======================================================================= '// Função : Recuperar ítens do menu no banco de dados '// Autor : Celso Pacheco '// Criada em: 10/07/2006 '// Objetivo :Prover dados para montar o menu dinamicamente '// ======================================================================= '--------------------------------------------------------------------------- 'MENU - DEMONSTRAÇÕES FINANCEIRAS '--------------------------------------------------------------------------- function getDepInvestInfoFinanceira() 'Lista Categorias da área de Investidores/Informações Financeiras dim sql 'Seleciona as categorias que possuem documentos publicados SQL = "" SQL = SQL & " select Dpt.nome,Dpt.departamento_id " SQL = SQL & " from dct_Departamento Dpt " SQL = SQL & " where (Dpt.departamento_id =" & DPT_DCT_INFO_FINANC_LIGHTSA & " " SQL = SQL & " or Dpt.departamento_id = "& DPT_DCT_INFO_FINANC_LIGHTSESA & " " SQL = SQL & " or Dpt.departamento_id = "& DPT_DCT_INFO_FINANC_LIGHTENERGIA & ") " SQL = SQL & " and Dpt.departamento_id in " SQL = SQL & " (select departamento_id " SQL = SQL & " from dct_documento Dct " SQL = SQL & " Where Dct.dtDataIni <= Now() " SQL = SQL & " and Dct.dtDataFim >= Now()) " SQL = SQL & " order by ordem " 'Retorna um array de dictionary getDepInvestInfoFinanceira = RsToArr(SQL,cnnDef) end function '--------------------------------------------------------------------------- 'MENU - DIVULGAÇÃO '--------------------------------------------------------------------------- function getDepInvPressReleases() 'Lista Categorias da área de Investidores/Press Releases dim sql 'Seleciona as categorias que possuem documentos publicados SQL = "" SQL = SQL & " select nome,departamento_id " SQL = SQL & " from dct_Departamento Dpt " SQL = SQL & " where (Dpt.departamento_id =" & DPT_DCT_PRESS_RELEASES_LIGHTSA & " " SQL = SQL & " or Dpt.departamento_id = "& DPT_DCT_PRESS_RELEASES_LIGHTSESA & " " SQL = SQL & " or Dpt.departamento_id = "& DPT_DCT_PRESS_RELEASES_LIGHTENERGIA & ") " SQL = SQL & " and Dpt.departamento_id in " SQL = SQL & " (select departamento_id " SQL = SQL & " from dct_documento Dct " SQL = SQL & " Where Dct.dtDataIni <= Now() " SQL = SQL & " and Dct.dtDataFim >= Now()) " SQL = SQL & " order by ordem " 'Retorna um array de dictionary getDepInvPressReleases = RsToArr(SQL,cnnDef) end function '--------------------------------------------------------------------------- 'MENU - PRESS RELEASES '--------------------------------------------------------------------------- function getDepInvDivulgacao() 'Lista Categorias da área de Investidores/Divulgação dim SQL SQL = " SELECT nome,departamento_id " & _ " FROM dct_Departamento " & _ " WHERE " & _ " area_id = " & Area_Investidores_Divulgacao_Documentos & " AND " & _ " departamento_id IN (SELECT departamento_id FROM dct_Documento WHERE dtDataIni<=Now() and dtDataFim>=Now()) "& _ " ORDER BY ordem " 'Retorna um array de dictionary getDepInvDivulgacao = RsToArr(SQL,cnnDef) end function '--------------------------------------------------------------------------- 'Monta um array de dictonary apartir de uma instrução SQL '--------------------------------------------------------------------------- function RsToArr(ByVal sql, ByRef conexao) dim rs set rs = conexao.execute(sql) 'Caso não enconte nenhum registro retorna empty if (rs.EOF) then RsToArr = empty exit function end if 'Percorre o recordSet populando o Array com diconários de dados dim item,i dim arrReg() i=0 While not (rs.EOF) redim preserve arrReg(i) set arrReg(i) = server.CreateObject("Scripting.Dictionary") 'Cria uma chava para cada coluna do recordset com os dados do registro corrente for each item in rs.Fields arrReg(i).Add Ucase(item.name), item.value next i=i+1'incrementa contador do Array rs.MoveNext wend 'Retorna o Array populado RsToArr = arrReg end function '=========================================================================== 'Lista elementos(dictionary) do array 'Procedure criada por Celso Pacheco Para visualizar 'o resutado das funções para montagem do menu 'Ex: 'dim Arr ' Arr = getDepInvDivulgacao() ' inspecArray(xx) ' '=========================================================================== sub inspecArray(x) dim n_linas,n_colunas, i if isArray(x) then n_linas = ubound(x)+1 dim str str = str & "Inspeção de Array" str = str & "
" str = str & "" str = str & "" for each iten in x(i) n_colunas = x(i).count str = str & "" next str = str & "" for i=0 to ubound(x) str = str & "" for each iten in x(i) str = str & "" next str = str & "" next str = str & "
 " & iten & "
 " & x(i)(iten) & "
" str = str & "

" str = str & "Total: " str = str & n_linas & " linhas e " str = str & n_colunas & " colunas " str = str & "


" str = str & "

" response.Write(str) end if end sub %>
Fale Conosco
Disque-Light
  Agência Virtual   Disque-Light  Institucional  Ouvidoria
A LIGHT TEM UMA MODERNA CENTRAL DE ATENDIMENTO A SUA DISPOSIÇÃO
 

As equipes de atendimento da Light estão capacitadas para resolver, em menor tempo possível, as suas solicitações ou reclamações.

 

Disque-Light 24 horas:
0800 282 0120
Disque-Light deficientes auditivos:
0800 285 2453
Emergência:
0800 021 0196
Emergência Grandes Clientes:
0800 282 1380
© Light 2006 - Todos os direitos reservados
Fale Conosco Agência Virtual Disque-Light Institucional Ouvidoria