Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Execcutavel não acha o banco
Message
From
04/10/2005 16:14:12
 
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Environment versions
Visual FoxPro:
VFP 9
OS:
Windows XP SP2
Network:
Windows XP
Database:
Visual FoxPro
Miscellaneous
Thread ID:
01053621
Message ID:
01056051
Views:
28
This message has been marked as a message which has helped to the initial question of the thread.
Roberto,

Para não ter que utilizar set default, set path etc, eu leio de um arquivo .ini todas as informações que preciso, monto os nomes completos dos arquivos e os utilizo a seguir.

A vantagem é que você pode ter várias informações nos arquivos .ini, diversos arquivos ini (para desenvolvimento, testes, homologação, produção etc) para diversos ambientes, sem que você deva se preocupar com detalhes de diretórios.

Tendo os nomes dos arquivos montados e guardados em variáveis globais (públicas ou não) você pode utilizá-los onde lhe for mais conveniente.

O esquema que eu utilizo está colocado abaixo. Espero que te ajude.

Um abraço,

Fernando

Arquivo .Ini:
[MeuSistema]

TabelasDir = C:\MeuDiretorio\DataBase\Tabelas

. . . (outras informações)
Programa principal:
 . . .

 Prog_SetUp    ()
 VerifyDbfs    ()
 OpenDataBases ()

 . . .
Leitura do arquivo .ini:
 Procedure Prog_SetUp
*--------- ---- -----

 Public gTabelasDir    &&  Isto aqui o pessoal "não gosta" :)

 gIniFileName = "MeuSistema.ini"
 gIniSecName  = "MeuSistema"    

 . . .

 LoadIniSec (gIniFileName, gIniSecName, @IniArrName, @IniArrValue)

 gTabelasDir = SeekIniVar ("TabelasDir", @IniArrName, @IniArrValue))
 gTabelasDir = AddBS (gTabelasDir)
 
 . . .

 EndProc &&  of Prog_SetUp
Montagem dos nomes (com caminho) das tabelas:
 Procedure VerifyDBFs
*--------- ----------

 Public Tabelas_Bancos     , ;
        Tabelas_Empresas   , ;
        Tabelas_Calendarios
 
 Tabelas_Bancos      = gTabelasDir + "Tabelas_Bancos"
 Tabelas_Empresas    = gTabelasDir + "Tabelas_Empresas"
 Tabelas_Calendarios = gTabelasDir + "Tabelas_Calendarios"

 . . .

 EndProc &&  of VerifyDBFs
Abertura das tabelas:
 Procedure OpenDataBases
*--------- -------------

 Use  (Tabelas_Bancos     )  In 0  Alias Tabelas_Bancos
 Use  (Tabelas_Empresas   )  In 0  Alias Tabelas_Empresas
 Use  (Tabelas_Calendarios)  In 0  Alias Tabelas_Calendarios       

 . . .

 EndProc &&  of OpenDataBases
>Olá pessoal,
>
>estou usando o comando abaixo no meu programa principal:
>
>if version(2) = 0 &&Versão em tempo de execução
>m.caminho = (addbs(justpath(sys(16,0))))
>WAIT WINDOW m.caminho
>set default to (addbs(justpath(sys(16,0))))
>endif
>
>O problema ocorre quando tento executar o sistema de uma máquina da rede.
>
>Ele mostra o endereço certo na janela do wait window(no caso Z\cobra\), mas quando entra no sistema ele dá a mensagem de que não encontrou o banco, mas o caminho que ele mostra na mansagem é c:\cobra\aplica\dbfs\grupo.dbc, que é aonde fica o banco em tempo de desenvolvimento.
>
>Como fazer para que o sistema seja executado de qualquer máquina da rede???????
>
>Uso VFP 9.0
>_________________
>[ ]s,Roberto Barros - BH
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform