O Genero fornece um driver de banco de dados para uso com o driver ODBC do SQL Server da Easysoft, e isso permite que você crie programas Genero que usam o SQL Server como backend.
- Baixe o driver ODBC do SQL Server para Linux de 64 bits. (Registro obrigatório.)
- Instale e licencie o driver ODBC do SQL Server na máquina onde o Genero está ou será instalado.
Para obter instruções de instalação, consulte a documentação do driver ODBC.
Observação Você precisa do gerenciador de driver unixODBC instalado em sua máquina. A distribuição Easysoft inclui uma versão do unixODBC Driver Manager com a qual o driver ODBC do Easysoft SQL Server foi testado. O programa de instalação do driver Easysoft oferece a opção de instalar o unixODBC.
- Crie uma fonte de dados ODBC em /etc/odbc.ini que se conecte ao banco de dados SQL Server que você deseja acessar do Genero. Por exemplo:
[MSSQL-GENERO] Driver = Easysoft ODBC-SQL Server Server = my_machine\SQLEXPRESS User = my_domain\my_user Password = my_password # If the database you want to connect to is the default # for the SQL Server login, omit this attribute Database = Northwind
- Use o isql para testar a nova fonte de dados. Por exemplo:
cd /usr/local/easysoft/unixODBC/bin ./isql.sh -v MSSQL-GENERO
No prompt, digite "help" para exibir uma lista de tabelas. Para sair, pressione return em uma linha de prompt vazia.
Se você não conseguir se conectar, consulte este artigo e a Base de Conhecimento do Driver ODBC do SQL Server para obter assistência.
- Se ainda não o fez, instale o Genero nesta máquina.
Observação Um de nossos clientes nos informou que se você deseja usar o Genero com SQL Server 2016, você precisa usar o Genero 3.00.10 ou posterior.
Durante a instalação, você será solicitado a escolher o banco de dados padrão para fglrun. Se você deseja o SQL Server 2014 ou anterior como seu banco de dados padrão, escolha a opção[7]
quando solicitado. Se você quiser usar o SQL Server 2016 ou posterior, escolha[6]
. Se você não quiser usar o SQL Server como banco de dados padrão, escolha outro banco de dados. Você pode definir o banco de dados por aplicativo especificando o driver do banco de dados a ser usado no código-fonte do Genero. - Crie um programa Genero que recupere alguns dados do SQL Server:
$ more connect.4gl MAIN DEFINE varchar_col VARCHAR(100) # You can omit +driver... if you dbmesm_1 is the default driver in FGLPROFILE. CONNECT TO "MSSQL-GENERO+driver='dbmesm_1'" DECLARE xx CURSOR FOR SELECT * FROM MyVarcharTable FOREACH xx INTO varchar_col DISPLAY varchar_col CLIPPED END FOREACH END MAIN
- Defina o ambiente para que o Genero possa carregar o driver ODBC do SQL Server:
export LD_LIBRARY_PATH=/usr/local/easysoft/sqlserver/lib
Se não instalou o driver Easysoft em /usr/local, altere o caminho de acordo.
- Compile e execute seu programa:
$ cd /opt/fourjs/gep/fgl/bin/ $ ./fglcomp connect.4gl $ ./fglrun connect.42m Value1 Value2
- Se você tiver algum problema ao executar o programa, tente configurar FGLSQLDEBUG:
$ export FGLSQLDEBUG=3 $ ./fglrun connect.42m SQL: CONNECT | 4gl source : connect.4gl line=3 | loading driver : [/opt/fourjs/gep/fgl/dbdrivers/dbmesm_1] | Dynamic linker error: [libessqlsrv.so: cannot open shared object file: No such file or directory]... | loading driver : [/opt/fourjs/gep/fgl/dbdrivers/dbmesm_1] | Dynamic linker error: [libessqlsrv.so: cannot open shared object file: No such file or directory]... Program stopped at 'connect.4gl', line number 3. SQL statement error number -6366 (0). Could not load database driver dbmesm_1. Set FGLSQLDEBUG to get more details. $ export LD_LIBRARY_PATH=/usr/local/easysoft/sqlserver/lib $ unset FGLSQLDEBUG $ ./fglrun connect.42m Value1 Value2