Modelo de dados para cotações de serviços com o MS Access

1

Estou tentando criar uma ferramenta de cotação simples usando o MS Access. É supostamente uma variação do modelo padrão de Pedidos - OrderDetails - Produtos do tipo M2M, no entanto, a complicação é que cada "produto" é composto de vários recursos de várias quantidades. Eu pesquisei um pouco e continuei vendo o mesmo modelo muitos-para-muitos, mas isso é do tipo muitos-para-muitos-para-muitos.

Plano de fundo: cada citação contém itens de linha para um ou mais projetos. Cada projeto é composto por vários recursos (web dev, desenvolvedor, gerente de projeto, designer, etc.) por uma quantidade de horas. Se você multiplicar o tempo de horas da taxa de recursos para cada recurso, adicione o tempo para o projeto e obterá o custo do projeto. Então todos os projetos somados seriam o custo total da cotação.

Usando um relacionamento muitos-para-muitos estendido, eu o coloquei onde posso adicionar vários projetos e, em seguida, adicionar recursos aos projetos usando apenas as tabelas aninhadas. No entanto, o que eu gostaria de poder fazer é ter um "catálogo" de projetos em que os recursos e horas padrão são armazenados e, em seguida, poder adicionar um projeto a uma cotação. Então, preciso poder editar as horas de cada recurso na cotação sem alterar a "versão do catálogo" do projeto. Como modelei até agora, as horas dos itens de linha seriam armazenadas separadamente das horas de catálogo.

Eu teria que usar algum código VBA para copiar os projetos de catálogo em um item de linha de cotação?

Veja como seria a estrutura:

Quote 1234

  • Projeto: construção de página da Web
    • Gerente de projetos: 10 horas
    • Designer: 20 horas
    • Desenvolvedor: 50 horas
  • Projeto: Sessão de treinamento
    • Treinador: 6 horas

Cite 12345 ...

Eu tenho os relacionamentos no diagrama do Access, mas não o suficiente para postar a imagem.

ORDENS (1-M para pedidos_projetos)
.....................
OrdersID
Descrição

ORDERS_PROJECTS (1-M para orders_projects_resources, M-1 para projetos)
.......................
Orders_ProjectsID
fkOrdersID
fkProjectsID

ORDERS_PROJECTS_RESOURCES (M-1 para recursos)
..........................
ID
fkResourceID
fkOrders_ProjectsID
QtyHours

RECURSOS (1-M a Projects_Resources)
..................
ResourcesID
Título
RateHourly

PROJETOS (1-M para Projects_Resources)
.................
ID
Descrição

PROJECTS_RESOURCES (M-1 para recursos, M-1 para projetos)
..............................
Projects_ResourcesID
fkResourcesID
fkProjectsID
QtyHoursDefault

    
por jay_miller 10.11.2014 / 05:13

0 respostas