Академический Документы
Профессиональный Документы
Культура Документы
Tecnologia em
Informtica
para Negcios
Projeto Interdisciplinar
3 Perodo
SISCON
Junho de 2015
Sumrio
1
Introduo..............................................................................................................................1
1.1 Objetivo............................................................................................................................1
1.2 Justificativa......................................................................................................................1
Recursos Utilizados............................................................................................................10
4.1 Softwares utilizados.....................................................................................................10
4.2 Hardwares utilizados...................................................................................................10
Consideraes Finais.........................................................................................................10
5.1 Concluso......................................................................................................................10
5.2 Referncias...................................................................................................................10
1 Introduo
Nr.
Aluno(s) envolvido(s)
E-mail(s)
01
Carolinacarvalhomartins@hotmail.com.br
02
Lucasbrandao_10@hotmail.com
03
Pablo_cronos182@hotmail.com
1.1 Objetivo
O SISCON tem como objetivo principal proporcionar a possibilidade do cliente por meio de um
funcionrio lanar viagens e abastecimentos efetuados pelos seus veculos e motoristas, alm de
demonstrar ao cliente a mdia de combustvel gasta para cada veculo de sua frota, assim como
documentar viagens efetuadas e distncias percorridas em cada viagem por perodo.
1.2 Justificativa
Com este sistema o usuario ter o controle de quanto dar em dinheiro para um motorista em cada
viagem efetuada e quais os automveis que apresentam problemas de consumo, assim facilitando na
identificao de reparos, alm de visualizar aqueles com melhores desempenhos e futuramente serem
escolhidos para viagens com mais frequncia.
Descrio do Sistema
Uma transportadora efetua entregas em cidades nas redondezas de So Jos do Rio Preto. Caso
alguma dessas cidades no esteja cadastrada esta atividade realizada. Para cada viagem utilizado
2
um veculo, cada veiculo pode ter diferentes motoristas e cada motorista pode utilizar vrios veculos, na
viagem registrada origem de sada que sempre ser So Jos do Rio Preto e para onde ser a viagem
que o destino, no caso da origem de volta sempre ser o destino informado anteriormente e o destino
de volta sempre ser So Jos do Rio Preto.
Os veculos so caracterizados por placa, ano de fabricao, capacidade de tanque e quilometragem,
os motoristas so cadastrados com nome, CNH, endereo, data de nascimento e o carro o qual pertence,
j as cidades so cadastrar com nome, UF e a distncia em quilmetros da origem que sempre ser So
Jos do Rio Preto, os fornecedores so cadastrados com Razo social, CNPJ, inscrio estadual e
endereo. e por fim aquele que efetua os cadastros no sistema, o usurio tem como atributos Login e
senha.
Durante as viagens os veculos necessitam serem abastecidos em fornecedores cadastrados, cada
abastecimento necessita informar qual foi o fornecedor, qual o veiculo, o valor unitrio, o valor total, a
data, a quantidade de litros e a quilometragem atual do veculo.
2.2
Nome
Cadastrar Veculo
02
Cadastrar Motorista
03
Cadastrar Cidade
04
Cadastrar Fornecedor
05
Cadastrar Usurio
06
Lanar Viagem
07
Lanar Abastecimento
Breve Descrio
Funcionalidade necessria para efetuar
cadastro (incluso, alterao e excluso)
Veculos.
Funcionalidade necessria para efetuar
cadastro (incluso, alterao e excluso)
Motorista.
Funcionalidade necessria para efetuar
cadastro (incluso, alterao e excluso)
Cidade.
Funcionalidade necessria para efetuar
cadastro (incluso, alterao e excluso)
Fornecedor.
Funcionalidade necessria para efetuar
cadastro (incluso, alterao e excluso)
Usurio.
Funcionalidade necessria para efetuar
cadastro (incluso, alterao e excluso)
Viagem.
Funcionalidade necessria para efetuar
cadastro (incluso, alterao e excluso)
Abastecimento.
o
de
o
de
o
de
o
de
o
de
o
de
o
de
3.3 Mapeamento
pessoas (id, nome, cpf, status).
telefone (ddd, numero).
usuario (#pessoa_id, login, senha).
motorista (#pessoa_id, cnh, numseg).
fornecedores (id, razao, cnpj, insc_est, rua, bairro, cidade, numero, cep).
veiculo (frota, placa, captanque, ano, #motorista_id).
cidadedestino (id, nome, distancia_origem).
abastecimentos (#frota, #fornecedor, #data, qntlitros, vrunitario, vrtotal, km, horario).
viagens (id, #frota, #destino).
veiculosmotorista (#veiculo_id, #motorista_id).
Tabela
Colunas
Id
nome
Rg
cpf
datanasc
Pessoas
Tipo
Int
varchar
varchar
varchar
date
Tamanho
4
80
9
11
8
Preciso
10
-o10
-o10
Escala
0
-o2
-o0
Tabela
Colunas
id
login
Tipo
Int
varchar
Tamanho
4
15
Preciso
10
-o-
Escala
0
-o-
Tipo
Int
varchar
varchar
Tamanho
4
11
9
Preciso
10
-o10
Null
No
No
Escala
0
-o2
UK
Sim
No
No
Sim
No
Referncia
-o-o-o-o-o-
Check
-o-o> 500
-o(1,2,3,4)
PK
Sim
No
FK
Sim
No
UK
Sim
No
Referncia
pessoas
-o-
Check
-o-o-
Null
No
No
No
PK
Sim
No
No
FK
Sim
No
No
UK
Sim
No
No
Referncia
pessoas
-o-o-
Check
-o-o> 500
FK
No
No
No
No
UK
Sim
No
Sim
Sim
Referncia
pessoas
-o-o-o-
Check
-o-o-o-o-
Fornecedores
Tipo
Int
varchar
varchar
varchar
Tamanho
4
100
14
12
Preciso
10
-o10
-o-
Escala
0
-o2
-o-
Tabela
Colunas
Frota
placa
captanque
ano
motorista_i
d
FK
No
No
No
No
No
Motoristas
Tabela
Colunas
id
razao
cnpj
Insc_est
PK
Sim
No
No
No
No
Usuarios
Tabela
Colunas
id
cnh
numseg
Null
No
No
No
No
No
Null
No
No
Nao
No
PK
Sim
No
No
No
Veiculos
Tipo
int
varchar
Int
varchar
Tamanho
4
8
3
4
Preciso
10
-o10
-o-
Escala
0
-o2
-o-
Null
No
No
No
No
PK
Sim
No
No
No
FK
No
No
No
No
int
-o-
-o-
No
No
Sim
UK
Sim
No
No
No
Sim
Referncia
-o-o-o-omotoristas
Check
-o-o>0
-o-o-
Tabela
Colunas
frota
fornecedor
qntlitros
vrunitario
vrtotal
km
data
horrio
Abastecimentos
Tipo
int
Tamanho
4
Preciso
10
Escala
0
Null
No
PK
Sim
FK
Sim
varchar
-o-
-o-
No
Sim
Sim
float
decimal
decimal
Int
date
varchar
10,2
10,2
10,2
6
8
4
10
-o-o10
-o-o-
2
-o-o2
-o-o-
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
Tabela
Colunas
Id
nome
distancia_orige
m
Tipo
Int
varchar
Tamanho
4
8
Preciso
10
-o-
Escala
0
-o-
Null
No
No
PK
Sim
No
FK
No
No
int
10
No
No
No
FK
No
Sim
UK
Sim
No
No
Tipo
Int
int
int
Tamanho
4
4
6
Preciso
10
-o10
>0
>0
>0
>0
-o-o-
UK
Sim
No
No
Referncia
-o-o-o-
Check
-o-o>0
Escala Null PK
0
No Sim
-oNo No
2
No
No
Sim
Referncia
-oveiculos
cidadedestin
o
Check
-o-o-o-
Telefones
Tipo
Int
int
Tamanho
4
4
Preciso
10
-o-
Tabela
Colunas
frota_id
motorista_id
Check
-o-o-
Viagens
Tabela
Colunas
ddd
numero
No
No
No
No
No
No
Referncia
veiculos
fornecedore
s
-o-o-o-o-o-o-
Cidadesdestino
Tabela
Colunas
Id
frota
destino
UK
Sim
No
Escala
0
-o-
Null
No
No
PK
Sim
No
FK
No
Sim
UK Referncia
Sim
-oNo
-o-
Check
-o-o-
UK Referncia
Sim
veiculos
No motoristas
Check
-o-o-
VeiculosMotoristas
Tipo
Int
int
Tamanho
4
4
Preciso
10
-o-
Escala
0
-o-
Null
No
No
PK
Sim
Sim
FK
Sim
Sim
(1,
(2,
(3,
(4,
(5,
(6,
32190816)
14677890)
92029302)
92009302)
92886717)
92093020)
3.7 Views
p.datanasc DataNasc,
p.nome Nome,
p.rg RG
from usuario u, pessoas p
where
u.id = p.id
select * from v_usuariosj
--join veiculos-create view v_veiculosj
as
select v.placa Placa,
v.captanque Cap_Tanque,
v.ano Ano,
vi.destino Destino
from veiculos v, viagens vi
where
v.frota = vi.frota
select * from v_veiculosj
--join viagens-create view v_viagensj
as
select vg.frota Frota,
vg.id ID,
cid.distancia_origem Distancia_Origem,
cid.nome Nome
from viagens vg, cidadesdestino cid
where
vg.destino = cid.id
select * from v_viagensj
--join Veiculos Motoristas-create view v_veiculosMotoristaj
as
select vM.frota_id Frota,
m.cnh CNH,
m.numseg Num_Seg
from veiculosMotoristas vM, motoristas m
where
vM.motorista_id = m.pessoa_id
select * from v_veiculosMotoristaj
3.8
Procedures
-----------------PROCEDURES------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--PROCEDURE ADD MOTORISTA---------------------create procedure motAdd
(
@nome varchar(80),
@rg varchar(09),
@cpf varchar(11),
@datanasc date,
@cnh varchar(11),
@numseg varchar(09)
14
)
as
begin
insert into pessoas values (@nome, @rg, @cpf, @datanasc)
insert into motoristas values (@@IDENTITY, @cnh, @numseg)
end
--teste execuo-exec motAdd 'Carol Martins', '292657839', '42583088780','1995/07/21','999968', '9080099'
select * from motoristas
select * from pessoas
--PROCEDURE ALTERA MOTORISTA------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure motAlt1
(
@id int,
@cnh varchar(11),
@numseg varchar(09),
@nome varchar(80),
@rg varchar(09),
@cpf varchar(11),
@datanasc date
)
as
begin
update pessoas set
nome = @nome,
rg = @rg,
cpf = @cpf,
datanasc = @datanasc
where ID = @id
update motoristas set
cnh = @cnh,
numseg = @numseg
where ID = @id
end
--Teste da execucao-exec motAlt1 1, '029300909', '29283839', 'Carlos', '1098726549', '76517181875', '1980/10/03'
select*from motoristas
select*from pessoas
--PROCEDURE ADD ABASTECIMENTO---------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure abasAdd
(
@frota int,
@fornecedor int,
@qntlitros float,
@vrunitario decimal(10,2),
@vrtotal decimal(10,2),
@km int,
@data date,
@horario varchar(4)
)
15
as
begin
insert into abastecimentos values (@frota, @fornecedor, @qntlitros, @vrunitario, @vrtotal, @km,
@data, @horario)
end
--teste execuo-exec abasAdd 3, 3, '99', '3', '300', 2000, '1900/10/01', '0930'
select * from abastecimentos
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--PROCEDURE ALTERA ABASTECIMENTO-------------------------create procedure abasAlt
(
@frota int,
@fornecedor int,
@qntlitros float,
@vrunitario decimal(10,2),
@vrtotal decimal(10,2),
@km int,
@data date,
@horario varchar(4)
)
as
begin
update abastecimentos set
fornecedor = @fornecedor,
qntlitros = @qntlitros,
vrunitario = @vrunitario ,
vrtotal = @vrtotal,
km = @km,
data = @data,
horario = @horario
where frota = @frota
end
--Teste da execucao-exec abasAlt 2, 2, '90', '3', '270', 1140, '2016/07/01', '1900'
select*from abastecimentos
--PROCEDURE ADD VEICULO---------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure veiculoAdci
(
@placa varchar(8),
@captanque int,
@ano varchar (4),
@cnh varchar(11),
@numseg varchar(09)
)
as
begin
insert into veiculos values (@placa, @captanque, @ano)
insert into motoristas values(@@IDENTITY, @cnh, @numseg)
end
16
as
begin
update cidadesdestino set
nome = @nome,
distancia_origem = @distancia_origem
where id = @id
end
--Teste da execucao-exec cidadeAlt1 2, 'Votuporanga', 100
select*from cidadesdestino
--PROCEDURE ADD FORNECEDORES--------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure forneceAdd
(
@razao varchar(100),
@cnpj varchar(50),
@insc_est varchar(50)
)
as
begin
insert into fornecedores values (@razao, @cnpj, @insc_est)
end
--teste execuo-exec forneceAdd 'Auto Posto Brazilian LTDA ME', '13813863000120', '647507960114'
select* from fornecedores
--PROCEDURE ALTERA FORNECEDORES-------------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure forneceAlt
(
@id int,
@razao varchar(100),
@cnpj varchar(50),
@insc_est varchar(50)
)
as
begin
update fornecedores set
razao = @razao,
cnpj = @cnpj,
insc_est = @insc_est
where id = @id
end
--Teste da execucao-exec forneceAlt 1, 'Posto Vip Ipiranga LTDA ME', '06094814000119', '647350954110'
select*from fornecedores
--PROCEDURE ADD TELEFONES--------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
18
GO
create procedure telefoneAdd
(
@numero int
)
as
begin
insert into telefones values (@@IDENTITY, @numero)
end
--teste execuo-exec telefoneAdd 33537591
select* from telefones
--PROCEDURE ALTERA TELEFONES-------------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure telefoneAlt
(
@pessoa_id int,
@numero int
)
as
begin
update telefones set
numero = @numero
where pessoa_id = @pessoa_id
end
--Teste da execucao-exec telefoneAlt 1, 32171335
select*from telefones
--PROCEDURE ADD USUARIO---------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure usuarioAdd
(
@id int,
@login varchar(15),
@senha varchar(10)
)
as
begin
insert into usuario values (@id, @login, @senha)
end
--teste execuo-exec usuarioAdd 7, 'Fernando', '1990'
select* from usuario
--PROCEDURE ALTERA USURIOS-------------------------SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
19
4 Recursos Utilizados
4.1 Softwares utilizados
Microsoft SQL Enterprise 2010 Express Edition
Microsoft Office 2010
Astah
BrModelo.
21
5 Consideraes Finais
5.1 Concluso
Benefcios:
Diante da demanda por corte de custos nas empresas, o software SISCON facilitar ao usurio e aos
gestores da empresa a tomada de deciso, devido o relatrio gerado pelo sistema onde detalhado qual
o consumo de combustvel para cada veculo, o valor unitrio que esta sendo praticado por cada
fornecedor, possibilitando a escolha dos melhores pontos de abastecimentos.
Dificuldades e Problemas enfrentados:
A principal dificuldade encontrada pelo grupo no desenvolvimento do projeto foi o relatrio de consumo,
devido a complexidade de juno de mais de uma tabela do banco.
Trabalhos futuros:
O grupo tem como objetivo seguir com o projeto durante sua graduao, e desenvolver novas
ferramentas de gerao de relatrios para que possa proporcionar ao usurio uma abrangncia de
informaes geradas.
5.2 Referncias
Livro Modelagem de Dado Srgio Ricardo Borges Junior
Livro Programao em Banco de Dados Srgio R., Francisco A., Jose AP. de A., Djalma D.
22