Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Multiempresa
Message
From
24/05/2003 09:39:04
 
 
To
23/05/2003 10:19:40
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Title:
Miscellaneous
Thread ID:
00792206
Message ID:
00792544
Views:
18
Olá Pedro

Crie uma tabela de cadastro de empresas que ficará fora dos bancos de dados das empresas.
Crie um BD vazio com as tabelas que você usará para as empresas também vazias.
Crie uma janela com uma lista para Selecionar a empresa quando o programa for aberto.
Ao selecionar a empresa seu programa deverá verificar se o BD exisite para aquela e empresa e se não existir deve então criar a pasta ("Dados"+codigoempresa) dentro da pasta Dados e copiar o BD vazio para lá.
Crie uma variável de memória que contenha a Empresa selecionada e no DataEnvironment no evento BeforeOpenTables coloque:
** Ajusta o PATH dos Bancos de Dados nos Cursores para o BD atual
* L. Fernando, 19/09/2000, 9:15 H
   poDataEnv= THIS
   LOCAL a, cCursorTemp
   SET LIBRARY TO Libs\FoxTools.fll  ADDITIVE
   WITH poDataEnv
        FOR a= 1 TO 50
            IF TYPE(".Cursor"+ALLTRIM(STR(a))+".Database")='C' AND !EMPTY(EVAL(".Cursor"+ALLTRIM(STR(a))+".Database"))
               cCursorTemp= ".Cursor"+ALLTRIM(STR(a))+".Database"
               &cCursorTemp= ADDBS(varpubiclapastaempresa)+JUSTFNAME(EVAL(cCursorTemp))
            ENDIF
        ENDFOR a
   ENDWITH
   RETURN .T.
Veja que varpubiclapastaempresa é a variável que define a pasta da empresa na abertura do programa.

Além disso você ainda pode fazer de outro jeito: Ter apenas um banco de dados e nas tabelas criar um campo código da empresa que está selecionada no momento. Eu faço assim nos meus sistemas.
Atenciosamente

L. Fernando
MSN Messenger: luisfoxi@hotmail.com

O Sucesso depenende principalmente de você estar no LUGAR CERTO, na HORA CERTA, com as PESSOAS CERTAS.
A COMPETÊNCIA só ajuda a manter o sucesso!
Previous
Reply
Map
View

Click here to load this message in the networking platform