Como deve funcionar um sistema multi-loja?
Bom dia a todos.
Andei pesquisando aqui no fórum sobre sistemas multi-loja e apareceram várias formas de controle.
Estou pensando em adotar a opção de criar um campo ´loja´ em todas as tabelas para efetuar este controle, mas estou receoso se este é o melhor tipo de controle.
Gostaria de saber qual a melhor forma de controle, pois estou migrando de mono para multi-loja.
Grato pela atenção.
Andei pesquisando aqui no fórum sobre sistemas multi-loja e apareceram várias formas de controle.
Estou pensando em adotar a opção de criar um campo ´loja´ em todas as tabelas para efetuar este controle, mas estou receoso se este é o melhor tipo de controle.
Gostaria de saber qual a melhor forma de controle, pois estou migrando de mono para multi-loja.
Grato pela atenção.
Turbo Drive
Curtidas 0
Respostas
Aroldo Zanela
26/07/2006
Colega,
Coloque o atual modelo de dados numa ferramenta CASE como o PowerDesigner, adicione uma tabela loja e faça as ligações de dependências que você irá obter com exatidão quais são as tabelas que deverão receber a chave estrangeira para loja. Mas o caminho é esse mesmo, apesar de existirem diversas outras formas.
Coloque o atual modelo de dados numa ferramenta CASE como o PowerDesigner, adicione uma tabela loja e faça as ligações de dependências que você irá obter com exatidão quais são as tabelas que deverão receber a chave estrangeira para loja. Mas o caminho é esse mesmo, apesar de existirem diversas outras formas.
GOSTEI 0
Richard Lima
26/07/2006
O campo ´loja´ (e suas infinitas variações de acordo com o nome das tabela) pra sistemas multi-lojas é necessário, pois serve de identificação de origem para o registro, mas, criar um campo pra cada loja nas tabelas existentes (nao to dizendo que você pensou nisso) é gambiarra problemática e explosiva (mas se pensou, nao faça)..
Modificar um software para que ele funciona com várias lojas muitas vezes requer mudanças brutais no funcionamento de todo o sistema...
Alguns pre-requisitos são necessários, tais como, a separação de dados que sejam compartilhado entre lojas e as informações unicas de cada lojas..
Exemplo:
Cadastro de produtos -> tabela com registro unico compartilhado entre todas as lojas
Estoque dos produtos -> tabela própria contendo o registro de informação de estoque das lojas para os produto registrado na tabela de cadastro
e por aí vai com cadastro de clientes, histórico de vendas, pagamentos etc...
um abraço!
Modificar um software para que ele funciona com várias lojas muitas vezes requer mudanças brutais no funcionamento de todo o sistema...
Alguns pre-requisitos são necessários, tais como, a separação de dados que sejam compartilhado entre lojas e as informações unicas de cada lojas..
Exemplo:
Cadastro de produtos -> tabela com registro unico compartilhado entre todas as lojas
Estoque dos produtos -> tabela própria contendo o registro de informação de estoque das lojas para os produto registrado na tabela de cadastro
e por aí vai com cadastro de clientes, histórico de vendas, pagamentos etc...
um abraço!
GOSTEI 0
Aasn
26/07/2006
Caro colega,
O que eu aconselho é que vc tenha uma banco para cada loja, pois assim vc evita que o mesmo creça demasiadamente, além do mais, dependendo do número de lojas, determinadas sentenças podem ficar muito pesadas e demoradas.
Vc pode (e deve ao meu ver) fazer o gerenciamento dos diversos bancos através do seu soft, criando dinâmicamente as conexões etc.
[]´s
AASN
O que eu aconselho é que vc tenha uma banco para cada loja, pois assim vc evita que o mesmo creça demasiadamente, além do mais, dependendo do número de lojas, determinadas sentenças podem ficar muito pesadas e demoradas.
Vc pode (e deve ao meu ver) fazer o gerenciamento dos diversos bancos através do seu soft, criando dinâmicamente as conexões etc.
[]´s
AASN
GOSTEI 0
Turbo Drive
26/07/2006
Vou passar a seguinte situação:
Tenho um cliente que possui duas lojas, separadas por 500 m, interligadas por uma rede wireless.
Este veio até mim e pediu para controlar as duas lojas ao mesmo tempo. Os clientes são os mesmos para as lojas e os produtos, mas as contas dos clientes são individuais (cada um tem o seu), bem como o caixa. Pois no fim do dia, este quer verificar qual está tenddo maior rentabilidade.
Em uma situação como essa, o q vcs me aconselhariam? Deixar um campo loja para o mesmo banco ou deixar bancos distintos ?
Tenho um cliente que possui duas lojas, separadas por 500 m, interligadas por uma rede wireless.
Este veio até mim e pediu para controlar as duas lojas ao mesmo tempo. Os clientes são os mesmos para as lojas e os produtos, mas as contas dos clientes são individuais (cada um tem o seu), bem como o caixa. Pois no fim do dia, este quer verificar qual está tenddo maior rentabilidade.
Em uma situação como essa, o q vcs me aconselhariam? Deixar um campo loja para o mesmo banco ou deixar bancos distintos ?
GOSTEI 0
Aasn
26/07/2006
Bom nesse caso, parece que não existe uma tendência de crescimento a curto prazo do seu cliente, então acredito que criar um campo LOJA nas tabelas seja realmente a melhor solução! tendo em vista que estão interligadas em rede etc.
Agora, em âmbito geral, para rede de lojas o meu conselho é de se trabalhar com arquivos separados para cada loja.
[]´s
AASN
Agora, em âmbito geral, para rede de lojas o meu conselho é de se trabalhar com arquivos separados para cada loja.
[]´s
AASN
GOSTEI 0
Richard Lima
26/07/2006
Tratar de várias lojas no mesmo banco de dados requer um campo loja tanto no caixa quanto no estoque ou em outra movimentação que deva ser distinta entre lojas.. você tá indo no caminho certo.. mas nunca deixe em uma mesma tabela registros que devam ser distintos entre lojas, como por exemplo: cadastro de produto que contem um campo ´estoque´.. o estoque deve ser em uma tabela própria com um campo loja, contendo saldo, saldo devedor e demais informações...
boa sorte na sua implementação multi-lojas...
boa sorte na sua implementação multi-lojas...
GOSTEI 0