Autor Tópico: KISC  (Lida 2605 vezes)

Offline saunde

  • Try-Catch User
  • ***
  • Mensagens: 284
    • SemCafeína
Re: KISC
« Responder #15 em: 04 de Janeiro de 2008, 17:58 »
Bem... vamos lá dar vida a isto... vamos modelar todos juntos a Base de Dados.

Ora... tive a dar uma vista de olhos ao projecto e penso o seguinte:

Tabelas :


Produto (idProduto, nome, descricao, quantidade, validade, gastoMedioMes)

Fornecedor(idFornecedor, nomeFornecedor, idProduto,descricao, validade, preco)

ListaCompras(numeroEncomenda, quantidade) , esta tabela terá uma relação um para muitos para produto, ou seja, cada lista de compras terá obrigatoriamente um ou mais produtos.

Em relação à tabela receitas, tenho uma implementação já feita em SQLSERVER 2005 de minha autoria a qual pode ser adaptada às necessidades deste projecto, aqui vai uma pequena imagem do modelo entidade associação gerado pelo Visio.



Vamos lá começar a criticar e a deixar opiniões para andarmos com isto para a frente... vamos contribuir todos com os nossos conhecimentos para realizarmos este esplêndido projecto.
Aguardo críticas e sugestões.
« Última modificação: 04 de Janeiro de 2008, 18:02 por saunde »
Um blog :
Sem Cafeína

Offline M6

  • Líder da Revista PROGRAMAR
  • Moderador Global
  • Unsigned User
  • ******
  • Mensagens: 4063
  • Geração 48K
    • M6 on Software
Re: KISC
« Responder #16 em: 04 de Janeiro de 2008, 20:41 »
Excelente saunde. :)

No modelo físico, usa apenas tipos de dados da norma SQL, de forma a que seja possível usar um script único para todos os SGBDs.
10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

Offline saunde

  • Try-Catch User
  • ***
  • Mensagens: 284
    • SemCafeína
Re: KISC
« Responder #17 em: 04 de Janeiro de 2008, 20:45 »
Excelente saunde. :)

No modelo físico, usa apenas tipos de dados da norma SQL, de forma a que seja possível usar um script único para todos os SGBDs.

Sim, penso que é uma boa estratégia..
Um blog :
Sem Cafeína

Offline d_pintassilgo

  • David Pintassilgo
  • Administrador
  • Stack Overflow
  • ******
  • Mensagens: 7484
  • David Pintassilgo
    • http://david.pintassilgo.com
Re: KISC
« Responder #18 em: 04 de Janeiro de 2008, 23:27 »
Citar
ListaCompras(numeroEncomenda, quantidade)

Na tabela da lista de compras não sei se será o mais correcto de adicionar, mas na lista de compras propriamente dita deve de constar também o preço que se espera comprar (tendo em conta os ultimos preços de compra) bem como a quantidade mínima e máxima a comprar alem da quantidade (ideal) isso para que? Para no caso de o preço ser superior ao esperado comprar só o mínimo (que é o que o sistema sabe que faz falta eminente) e para se o preço for um bom bocado abaixo do esperado comprar o máximo tendo em conta o que se gasta e a validade.




Offline saunde

  • Try-Catch User
  • ***
  • Mensagens: 284
    • SemCafeína
Re: KISC
« Responder #19 em: 04 de Janeiro de 2008, 23:33 »
Citar
ListaCompras(numeroEncomenda, quantidade)

Na tabela da lista de compras não sei se será o mais correcto de adicionar, mas na lista de compras propriamente dita deve de constar também o preço que se espera comprar (tendo em conta os ultimos preços de compra) bem como a quantidade mínima e máxima a comprar alem da quantidade (ideal) isso para que? Para no caso de o preço ser superior ao esperado comprar só o mínimo (que é o que o sistema sabe que faz falta eminente) e para se o preço for um bom bocado abaixo do esperado comprar o máximo tendo em conta o que se gasta e a validade.


Bem pensado... se calhar colocava-se mais um campo em produto onde se colocava o último preço de compra.... o que acham ?
E depois em ListaDeCompras em vez de quantidade colocava-se quantidadeMinima e quantidadeMaxima, depois o submit ia ser feito comparando o preço que consta em produto com o preço que o Fornecedor quer....
Um blog :
Sem Cafeína

Offline saunde

  • Try-Catch User
  • ***
  • Mensagens: 284
    • SemCafeína
Re: KISC
« Responder #20 em: 04 de Janeiro de 2008, 23:36 »
Ou então pode-se criar uma outra tabela.. PRECOS .. em que tinha uma ligação a PRODUTO... tipo.. um PRODUTO tem um ou mais PRECOS em que constavam os ultimos preços de compra daquele produto.
Penso que esta solução não será pior..
Um blog :
Sem Cafeína

Offline saunde

  • Try-Catch User
  • ***
  • Mensagens: 284
    • SemCafeína
Re: KISC
« Responder #21 em: 10 de Janeiro de 2008, 01:00 »
Bem.. aqui vai o modelo físico....

Código (SQL): [Seleccione]
USE KISC;

IF object_id('PRODUTO_FORNECEDOR') IS NOT NULL
DROP TABLE PRODUTO_FORNECEDOR

IF object_id('PRODUTO_LISTACOMPRAS') IS NOT NULL
DROP TABLE PRODUTO_LISTACOMPRAS

IF object_id('PRECO') IS NOT NULL
DROP TABLE PRECO

IF object_id('PRODUTO') IS NOT NULL
DROP TABLE PRODUTO

IF object_id('FORNECEDOR') IS NOT NULL
DROP TABLE FORNECEDOR

IF object_id('LISTACOMPRAS') IS NOT NULL
DROP TABLE LISTACOMPRAS


CREATE TABLE PRODUTO
(
codProduto INT IDENTITY PRIMARY KEY,
nomeProduto VARCHAR(200),
descricaoProduto VARCHAR(1000),
qtStock INT,
validade DATETIME,
gastoMedioMensal INT
)

CREATE TABLE PRECO
(
precoProduto INT,
DATA DATETIME,
codProduto INT FOREIGN KEY REFERENCES PRODUTO(codProduto)
)

CREATE TABLE FORNECEDOR
(
codFornecedor INT IDENTITY PRIMARY KEY,
nomeFornecedor VARCHAR(200),
precoFornecedor INT,
descricaoFornecedor VARCHAR(1000),
validade DATETIME,
)

CREATE TABLE PRODUTO_FORNECEDOR
(
codProduto INT FOREIGN KEY REFERENCES PRODUTO(codProduto),
codFornecedor INT FOREIGN KEY REFERENCES FORNECEDOR(codFornecedor)
)

CREATE TABLE LISTACOMPRAS
(
codListaCompras INT IDENTITY PRIMARY KEY,
quantidadeMinima INT,
quantidadeMaxima INT
)

CREATE TABLE PRODUTO_LISTACOMPRAS
(
codProduto INT FOREIGN KEY REFERENCES PRODUTO(codProduto),
codListaCompras INT FOREIGN KEY REFERENCES LISTACOMPRAS(codListaCompras)
)


Vá pessoal quero críticas e ideias..... só assim se consegue fazer um projecto como este merece..
« Última modificação: 12 de Janeiro de 2008, 02:04 por saunde »
Um blog :
Sem Cafeína

Offline saunde

  • Try-Catch User
  • ***
  • Mensagens: 284
    • SemCafeína
Re: KISC
« Responder #22 em: 10 de Fevereiro de 2008, 15:25 »
Encontrei isto... que penso ser uma boa ideia para implementar no Kisc...
http://www.supercook.com/

Ou seja.. através da base de dados de ingredientes.. ele percorrer a tabela de receitas.. e indicar quais as que são possiveis com os ingredientes existentes......
Um blog :
Sem Cafeína