Pergunta

É comum usar o MS Visual FoxPro v9.0 SP1, a linguagem, tabelas e relatórios. No entanto, por vezes, usar um driver ODBC para se conectar às tabelas. O driver ODBC foi escrito para Foxpro v6, e não suporta certas seleciona aninhadas, campos de incremento automático, ou moldes embutidos.

Nós gostaríamos de encontrar uma alternativa para o que temos. Poderia ser outro driver ODBC que trabalha com Visaul Foxpro v9, ou uma alternativa completa para ODBC. Existe tal coisa?

Graças.

Foi útil?

Solução

(Discussão sobre a reutilização, apenas respondeu isso em outro segmento hoje)

Se você estiver procurando por um driver ODBC para bancos de dados VFP e tabelas que você pode considerar a olhar para Advantage Database da iAnywhere. O tem um motor local e um motor de servidor. O motor local tem o motor com os dados de acesso de DBF, mas para o seu caso, ele também tem uma unidade de ODBC, que trabalha com dados VFP até e incluindo o atual Visual FoxPro 9. O motor local e o driver ODBC incluído são livres.

http://www.sybase.com/ianywhere

Outras dicas

Você pode via COM + e fazer quase nada em VFP, no entanto, você tem problemas de segurança por meio de ferramentas de administração, Serviços de componentes ..

Você pode construir como um DLL single-threaded ou multi-thread.

Uma vez registrado, e as informações TypeLibrary é "Adicionar Referenciado" a um C # (ou outro) aplicativo, você pode fazer chamadas de função com o que os parâmetros que você precisa. Há muitas coisas que você pode voltar para trás, mas normalmente tabelas, eu enviar de volta como XML (via classe XMLAdapter FoxPro), convertido em seguida, fluxo para uma mesa de vez em C #. Sua sido um tempo desde que eu trabalhei dessa maneira, mas que dão uma enorme flexibilidade como você pode fazer suas consultas, loops de verificação e outros testes condicionais complexas e atualização do cursor antes de gerar o XML e devolvendo-o como uma string.

DEFINE CLASS YourClass as CUSTOM  OLEPUBLIC
  FUNCTION GetMyData( lcSomeString as String)
    select * from (YourPath + "SomeTable" ) where ... into cursor C_SomeCursor readwrite
    .. any other manipulation, testing, etc...
    oXML = CREATEOBJECT( "xmladapter" )
    lcXML =  ""
    oXML.AddTableSchema( "C_SomeCursor" )
    oXML.ToXML( "lcXML", "", .f. )

    return lcXML
  ENDFUNC 
ENDDEFINE
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top