• Nenhum resultado encontrado

P redigl o bal Pesquisa de Imóveis D o c u m e n t o d e I m p l e m e n t a ç ã o d e M ó d u l o s

N/A
N/A
Protected

Academic year: 2021

Share "P redigl o bal Pesquisa de Imóveis D o c u m e n t o d e I m p l e m e n t a ç ã o d e M ó d u l o s"

Copied!
8
0
0

Texto

(1)

E l a b o r a d o p o r : V e r i f i c a d o p o r : A p r o v a d o p o r : V e r s ã o : 1 p . 1/8

Rafael Pais Data: 07-08-2008

Módulo de Adicionar Imóveis – Arquitectura de dados

Este módulo manipula a tabela “Imóveis” que se encontra na Base de Dados e faz inserções dos respectivos dados sob a mesma:

(2)

Módulo de Adicionar Imóveis – Arquitectura de dados

Descrição de cada uma das tabelas:

 Imóveis:

Tabela onde fica guardado os Imóveis;

 Codigos_Postais:

Tabela onde fica armazenado os códigos Postais (3 + 2 Dígitos) e a respectiva Localidade;

 Distritos:

Tabela onde fica armazenado os Distritos;

 Concelhos:

Tabela onde fica armazenado os Concelhos que pertencem a um determinado Distrito;

 Freguesias:

Tabela onde fica armazenado as Freguesias que pertencem a um determinado Concelho e Distrito.

(3)

E l a b o r a d o p o r : V e r i f i c a d o p o r : A p r o v a d o p o r : V e r s ã o : 1 p . 3/8

Rafael Pais Data: 07-08-2008

Módulo de Adicionar Imóveis – Estruturas tecnológicas

O código a seguir implementa a inserção de um determinado imóvel na Base de Dados conforme os parâmetros inseridos pelo Administrador. As tecnologias utilizadas são o VB.net e o Microsoft SQL Server. Quando este carrega no botão de inserir os dados, o código é executado:

Sub inserir(ByVal Source As Object, ByVal E As EventArgs) Handles

BtnInserir.Click

Dim inserirImovel As New SqlDataSource()

inserirImovel.ConnectionString =

ConfigurationManager.ConnectionStrings("ImobiliariaConnectionString2")

.ToString()

'Comando para Inserir Imóvel

inserirImovel.InsertCommand = "INSERT INTO

Imoveis(Cod_Imovel,Tipo,Preco,Area,Num_Quartos,Num_Frentes,Num_Pisos,P roximidade,Disponibilidade,Pe_Direito,Observacoes,Morada,CodPostal_4Di gitos,CodPostal_3Digitos,Cod_Freguesia,Cod_Concelho,Cod_Distrito) VALUES (@cod, @tipo, @preco, @area, @quartos, @frentes, @pisos, @proximidade, @disp, @pe_direito, @obs, @morada, @codpostal_4dig, @codpostal_3dig, @codfreguesia, @codconcelho, @coddistrito)"

'Parâmetros do Imóvel (Caixas de Texto)

inserirImovel.InsertParameters.Add("cod", TxtCod.Text)

inserirImovel.InsertParameters.Add("tipo", TxtTipo.Text)

inserirImovel.InsertParameters.Add("preco", TxtPreco.Text)

inserirImovel.InsertParameters.Add("area", TxtArea.Text)

inserirImovel.InsertParameters.Add("quartos", TxtQuartos.Text)

inserirImovel.InsertParameters.Add("frentes", TxtFrentes.Text)

inserirImovel.InsertParameters.Add("pisos", TxtPisos.Text)

inserirImovel.InsertParameters.Add("proximidade", TxtProximidade.Text) inserirImovel.InsertParameters.Add("disp", TxtDisponibilidade.Text) inserirImovel.InsertParameters.Add("pe_direito", TxtPeDireito.Text)

inserirImovel.InsertParameters.Add("obs", TxtObs.Text)

inserirImovel.InsertParameters.Add("morada", TxtMorada.Text)

inserirImovel.InsertParameters.Add("codpostal_4dig", TxtCodPostal_4Digitos.Text) inserirImovel.InsertParameters.Add("codpostal_3dig", TxtCodPostal_3Digitos.Text) inserirImovel.InsertParameters.Add("codfreguesia", TxtCodFreguesia.Text) inserirImovel.InsertParameters.Add("codconcelho", TxtCodConcelho.Text) inserirImovel.InsertParameters.Add("coddistrito", TxtCodDistrito.Text)

(4)

'Executa o Comando (Fazendo o tratamento de erros) e actualiza a lista dos Imóveis

Try

inserirImovel.Insert()

Catch ex As Exception

MsgBox("Erro ao Inserir Imóvel" + Chr(13) + "Verifique os

Dados", MsgBoxStyle.Critical, "Erro")

Return

End Try

MsgBox("Os Dados Foram Inseridos Com Sucesso!",

MsgBoxStyle.Information, "Informação")

GridView1.DataBind()

(5)

E l a b o r a d o p o r : V e r i f i c a d o p o r : A p r o v a d o p o r : V e r s ã o : 1 p . 5/8

Rafael Pais Data: 07-08-2008

Módulo de Pesquisa de Imóveis – Arquitectura de dados

(6)

Módulo de Pesquisar Imóveis – Arquitectura de dados

Descrição de cada uma das tabelas:

 Imóveis:

Tabela onde fica guardado os Imóveis;

 Codigos_Postais:

Tabela onde fica armazenado os códigos Postais (3 + 2 Dígitos) e a respectiva Localidade;

 Distritos:

Tabela onde fica armazenado os Distritos;

 Concelhos:

Tabela onde fica armazenado os Concelhos que pertencem a um determinado Distrito;

 Freguesias:

Tabela onde fica armazenado as Freguesias que pertencem a um determinado Concelho e Distrito.

(7)

E l a b o r a d o p o r : V e r i f i c a d o p o r : A p r o v a d o p o r : V e r s ã o : 1 p . 7/8

Rafael Pais Data: 07-08-2008

Módulo de Pesquisa de Imóveis – Estruturas tecnológicas

Em primeiro lugar, para que apareçam as listas de Distritos, Concelhos e Freguesias tem que se apontar a fonte onde se encontram estes, que neste caso é na Base de Dados, nas tabelas “Distritos”, “Concelhos” e “Freguesias”, respectivamente. Portanto, em cada uma das “DropDownList”, tem que se criar um “SqlDataSource” apontando para cada uma das tabelas. No caso dos Distritos, basta somente fazer uma Query: SELECT * FROM [Distritos]. Assim na DropDownList dos Distritos, irão aparecer os Distritos que estão na tabela “Distritos” da Base de Dados. Para os Concelhos, como terá que aparecer os concelhos que pertencem ao Distrito Seleccionado, a Query terá que um pouco diferente da anterior: SELECT * FROM [Concelhos] WHERE ([Cod_Distrito] = @Cod_Distrito). Assim, só aparecer os concelhos que pertencem ao Distrito seleccionado.

Para as freguesias, o conceito é o mesmo: SELECT * FROM [Freguesias] WHERE

(([Cod_Concelho] = @Cod_Concelho) AND ([Cod_Distrito] =

@Cod_Distrito)).

No carregamento da página, terá que se fazer uma conexão à Base de Dados e indicar à tabela a Query desejada para mostrar os resultados consoante o utilizador seleccionou (as variáveis @Cod_Distrito, @Cod_Concelho e @Cod_Freguesia estão ligados aos controlos DropDownList respectivos. As tecnologias utilizadas são o VB.net e SQL Server. Protected Sub Page_Load(ByVal sender As Object, ByVal e As

System.EventArgs) Handles Me.Load

Dim conexaoBD As String = "Data

Source=.\SQLEXPRESS;AttachDbFilename=C:\Imobiliaria.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"

'Query por Ordem Crescente

SqlDataSource4.SelectCommand = "SELECT [Tipo], [Area],

[Num_Quartos], [Num_Frentes], [Num_Pisos], [Pe_Direito],

[Proximidade], [Disponibilidade], [Observacoes], [Morada], [Preco] FROM [Imoveis] WHERE (([Cod_Concelho] = @Cod_Concelho) AND

([Cod_Distrito] = @Cod_Distrito) AND ([Cod_Freguesia] = @Cod_Freguesia) AND ([Tipo] = @Tipo)) ORDER BY Preco ASC" SqlDataSource4.ConnectionString = conexaoBD

'Query por Ordem Decrescente

SqlDataSource5.SelectCommand = "SELECT [Tipo], [Area],

[Num_Quartos], [Num_Frentes], [Num_Pisos], [Pe_Direito],

[Proximidade], [Disponibilidade], [Observacoes], [Morada], [Preco] FROM [Imoveis] WHERE (([Cod_Concelho] = @Cod_Concelho) AND

([Cod_Distrito] = @Cod_Distrito) AND ([Cod_Freguesia] = @Cod_Freguesia) AND ([Tipo] = @Tipo)) ORDER BY Preco DESC" SqlDataSource5.ConnectionString = conexaoBD

(8)

Finalmente, o código a seguir envia para uma tabela os resultados pretendidos. Este utiliza das tecnologias VB.net e SQL Server:

Sub Pesquisa(ByVal Source As Object, ByVal E As EventArgs) Handles

BtnPesquisar.Click

'Verifica se o utilizador escolheu a lista por ordem Crescente

If DropOrdenar.SelectedValue = "crescente" Then

GridView1.DataSourceID = "SqlDataSource4"

GridView1.DataBind()

GridView1.Visible = True

End If

'Verifica se o utilizador escolheu a lista por ordem

Decrescente

If DropOrdenar.SelectedValue = "decrescente" Then

GridView1.DataSourceID = "SqlDataSource5" GridView1.DataBind() GridView1.Visible = True End If End Sub

Referências

Documentos relacionados

O 1º Nível de desenvolvimento de Qigong corresponde ao desbloqueio da circulação da energia vital nos dois meridianos centrais ou vasos principais denominados

Durante a do segundo, estava acompanhado do comandante e mais dois

Esse documento é um brief dedicado a simulação virtual na rede IVAO e não deve ser usado de maneira alguma na aviação real ou em outras redes virtuais. Documento TOUR

Destas, 7 casos foram justificados por afastamento por tratamento de saúde, 1 caso a chefia justificou devido ao prazo, 2 casos a chefia justificou solicitando

Estas informações também fazem parte do Manual de Instalação e Manutenção do equipamento que se encontra em poder do representamte Técnico autorizado Gnatus... Recomendações

• Representação Numérica: Os objetos das novas mídias são compostos por códigos digitais. Esses códigos são representações numéricas, ou seja, são

Conclusão: Vistos e analisados os presentes autos, decide os integrantes da Câmara Técnica n.º 1 pelo CONHECIMENTO E PROVIMENTO DO RECURSO, reformando-se integralmente a decisão

Relatora: Conselheira Federal LÚCIA DE FÁTIMA SALES DA COSTA.. Recorrente: FARMÁCIAS FARMAPAULO LTDA –