Instalando e Configurando SQL-Ledger no Slackware 12

No Gravatar

Vamos lá. A idéia inicial é concentrar o máximo de nossa atenção no postgreSQL e no SQL-Ledger, já que artigos sobre como instalar o Apache nós temos de sobra pela internet e nosso Slackware 12 tem a opção de já ser instalado com o mesmo.

O PostgreSQL, como muitos devem saber, trata-se de um banco de dados. É bem prático, até onde o conheci parece mais prático que o MySQL. A administração de usuários poderá ser feita sem logar na interface do próprio banco de dados, todavia também não poderá ser utilizado com o usuário root, sendo necessária (e ideal) a criação de um usuário para administrar o banco de dados como um todo.

O SQL-Ledger trata-se de um programa de controle de estoques, financeiro, ordens de serviço, funcionários. Incluem-se em suas funções:

- Controle de multi-estoques
- Controle de multi-lojas
- Sistema Multi-usuário
- Exportação dos dados em PDF
- Suporte multi-idiomas
- Suporte Multi-empresa
- RH
- Plano de Contas
- Livro razão
- e vários outros recursos.

Instalando o PostgreSQL

Vamos criar o usuário padrão para o postgresql. O nome dele necessita ser postgres para que funcione tudo corretamente.

# adduser postgres

Preencha apenas o campo de senha.

Obtenha os fontes do postgresql. Neste caso foi utilizado a versão 8.2.4.

$ tar -zvxf postgresql-8.2.4.tar.gz
$ cd postgresql-8.2.4
$ ./configure –prefix=/usr/local/pgsql –without-readline –without-zlib

(prefix significa o local da instalação)

$ make
$ su
# make install

# cp contrib/start-scripts/linux /etc/rc.d/rc.postgresql
# chmod +x /etc/rc.d/rc.postgresql

(o comando acima é para copiar o script de inicialização para a pasta de incialização do slackware)

É bom ainda editar o script de inicialização do serviço anteriormente copiado:

Encontre as linhas:
echo -n “Starting PostgreSQL: ”
su - $PGUSER -c “$DAEMON -D ‘$PGDATA’ &” >>$PGLOG 2>&1

Altere para:
echo -n “Starting PostgreSQL: ”
su - $PGUSER -c “$DAEMON -i -D ‘$PGDATA’ &” >>$PGLOG 2>&1

# cp /usr/local/pgsql/bin/* /usr/bin

(o comando acima é utilizado para tornar possível a utilização dos comandos do postgresql por usuários comuns)

Criaremos agora o diretório onde os dados serão armazenados:

# mkdir /usr/local/pgsql/data

Mudando o dono do diretório data para o usuário postgres

# chown postgres data

Vamos ao teste para observar o funcionamento após a instalação.

# su postgres -m
$ cd /usr/local/pgsql/
$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

O comando a seguir demonstrará se o banco de dados está funcionando ou não. Observe a mensagem, a mesma se encontra em inglês, após sua observação, utilize CTRL + C para parar.

$ /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data

Como root inicie a execução do banco de dados:
# /etc/rc.d/rc.postgresql start

Instalando o SQL-Ledger

Como root, faça o seguinte:

# mkdir /usr/local/sql-ledger

Baixe o setup.pl na seção de downloads de http://www.sql-ledger.org. Baixe também os sources e salve na pasta criada anteriormente.

Neste caso utilizei a versão 2.8.13 do sql-ledger.

Execute:
#perl setup.pl sql-ledger-2.8.13.tar.gz

Responda as questões feitas pelo instalador, no caso do slackware 12 o usuário é apache e o grupo também.

Crie um usuário com direitos para manusear tabelas e outros no postgresql

# su postgres
$ createuser -d sql-ledger
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) n

Caso utilize senhas para acessar o banco de dados (altamente recomendável):
$ createuser -d -P sql-ledger

Instale PL/PGSQL no template1:

$ createlang plpgsql template1

Edite o arquivo httpd.conf

# vim /etc/httpd/httpd.conf
e adicione as seguintes linhas

# SQL-Ledger
Include /etc/httpd/extra/sql-ledger-httpd.conf

Crie o seguinte arquivo com o conteúdo:
# vim /etc/httpd/extra/sql-ledger-httpd.conf

Alias /sql-ledger /usr/local/sql-ledger/
<Directory /usr/local/sql-ledger>
AllowOverride All
AddHandler cgi-script .pl
AddDefaultCharset On
Options ExecCGI Includes FollowSymlinks
Order Allow,Deny
Allow from All
</Directory>

<Directory /usr/local/sql-ledger/users>
Order Deny,Allow
Deny from All
</Directory>

Agora é só iniciar o apache:
# apachectl start

Outra coisa importante, no caso do slackware 12, o usuário que executa o apache, também chama-se apache. É necessário dar permissões pra que ele trabalhe na pasta do sql-ledger (muitas vezes o script de instalação não é eficiente com estas configurações):

# chown -R apache.apache /usr/local/sql-ledger/*

Instalando o Perl DBD-Pg

O DBD-pg é uma biblioteca de comunicação entre o perl e o PostgreSQL.

Exporte a variável a seguir:

# export POSTGRES_LIB=/usr/local/pgsql/lib

No nosso exemplo estou utilizando DBD-Pg-2.0.0.tar.gz. Baixe o source e descompacte. (Baixando em /opt ou outro lugar que lhe convier)

# tar -xvf DBD-Pg-2.0.0.tar.gz
# perl Makefile.PL
# make test
# make install

Os três primeiro passos também podem ser feitos com usuários comuns.

Configurações Iniciais

Agora com sql-ledger instalado, acesse:

http://localhost/sql-ledger/admin.pl

Digite a senha ’sql-ledger’, sem as aspas. É bom você trocar sua senha.

Agora vamos criar o “banco de dados” para uma empresa.
Clique em Database Administration. Lembre-se que, para nosso exemplo, nós usamos o template1 para receber nosso programa, então a interface já vai sugerir todos os dados necessários. Não é preciso preencher nada caso você tenha a base de dados no mesmo computador que o programa. Apenas clique em Create Database set.

Utilize um nome simples, e evite letras maiúsculas. Em multiply encoding escolha ASCII, e escolha também a opção Default. Ou o ISO correspondente ao Brasil e o Brasil General.

Clique em Continue e, em seguida em Continue, novamente.

A base de dados está pronta, agora vamos criar um usuário que a acesse.

Clique em Adicionar usuário e preencha todos os dados, nesta etapa já é possível escolher qual será o perfil do seu usuário e também qual será o idioma padrão e os modelos de arquivo padrão.

Em conjunto de dados digite o nome do “banco de dados” criado no passo anterior (Database Adminstration). O usuário é por padrão o sql-ledger, criado ao instalar o sql-ledger. Marque o driver pg, o único disponível - lembrando que é possível instalar o sql-ledger sobre a base oracle. Os outros dados relativos a base de dados são dispensáveis quando a mesma é local.

Escolha as funções que o usuário poderá exercer e clique em save.

Padronização de Códigos de uso e Início de Uso

Agora, com seu usuário criado, podemos acessar o programa. Acesse:

http://localhost/sql-ledger/login.pl

Utilize o usuário e a senha criados para a base de dados, no item anterior. Suponho que você tenha escolhido a linguagem padrão português do brasil, logo os próximos itens colocarei o máximo possível em Português.

Acesse Sistema > Configurações Padrão.

Preencha os dados da empresa e siga os padrões que passo abaixo para dar uma identidade legal ao seus códigos auto numerados.

Número de referência de Conta: RC000000
Fatura de venda / transação de CR: FV000000
Número de pedido de venda: OS000000
Fatura do Fornecedor/Número da Transação de CP: FC000000
Batch Number: BATCH000000
Voucher Number: VOU000000
Número da Ordem de Compra: OC000000
Número da Cotação de Vendas: CV000000
Número da RDC (Requisição de Cotação): RC000000
Número do Item: <%description 1%>0005
Job/Project Number: PR0000
Número do Empregado: <%name 1 1%>0000
Número do Cliente: <%name 1 1%>0000
ID do Fornecedor: <%name 1 1%>0000

Clique em Salvar.

Para colocar o idioma português nas telas iniciais do sql-ledger e na interface de administração de banco de dados e usuários do sistema, edite o sql-ledger.conf, localizado na pasta de instalação e em Language=”", coloque Language=”br”.

Considerações Finais

O programa é muito bom, permite uma alta personalização. Sua interface é leve e seu estilo é baseado em CSS, o que torna mais simples a sua personalização.

Sabe-se que o programa consegue exportar arquivos em PDF e portscript, como também trabalhar com PDV e html. Ele pode ainda interagir totalmente com o Sendmail e trazer mais um vasto número de possibilidades de uso.

No slackware 12, por experiência própria, recomendo que se crie um link simbólico na pasta /usr/bin para onde está localizado o pdflatex, pois ocorre que ao reiniciar o sistema o mesmo deixa de ser localizado.

Para a edição dos modelos LaTex recomenda-se a utilização de um editor de texto que auxilie com cores e identação.

O programa roda totalmente no servidor e não precisa de um navegador melhor que o Lynx para funcionar, inclusive baixar os pdfs e portscripts, salvando na pasta de operação. Nas máquinas clientes somente é necessária a presença de um navegador web.

Caso ocorra algum erro, estou a disposição para ajudar, a medida do que já conheço, pois ainda estou testando o programa.

Ponto fraco: A tradução em pt-BR não está completa e nem está totalmente correta no que já está pronta. Mas é simples e pode ser feita alterando arquivos de configuração, nas pastas, como quase todo o programa.

Dos requerimentos:

1 - Perl, 5+
2 - http server (Apache, NCSA, httpi, thttpd, …)
3 - SQL Server (PostgreSQL 7.1+)
4 - DBD (DBD-Pg)
5 - DBI
6 - LaTeX (opcional - caso não utilize a função de exportar em PDF)

Aguardo as críticas.
Grande abraço.

Publicações Relacionadas:

  1. SQL-Ledger, ERP gratuito, multiplataforma e leve
  2. Slackware 12, Apache e PostgreSQL
  3. Google, visão de negócios

7 Respostas para “Instalando e Configurando SQL-Ledger no Slackware 12”


  1. 1 Bruno ValácioNo Gravatar

    Ai Waldemar eu fui seu aluno na Help de Manutenção. Por favor entre em contato quando puder, meu msn eh bruninho_valacio@hotmail.com. Até mais.

  2. 2 luanaNo Gravatar

    oi, td bom!
    eu estou tendo dificuldades em instalar esse biblioteca PG, vi o seu blog, mas mesmo assim, não conpreendi direito o como instalar.
    vc poderia me explicar mais.

    obrigada

  3. 3 nissieloinNo Gravatar

    Luana,

    Desculpe a demora para responder. Você pode explicar qual a sua dificuldade com a biblioteca para que eu possa te ajudar?

    Grande abraço.

  4. 4 Portal LinkNo Gravatar

    Muito bom o tutorial…

  5. 5 Portal LinkNo Gravatar

    Olá, estou tentando rodar o SQL-Ledger, mas ta dando erro ao colocar a senha ou tentar criar o banco de dados:

    Internal Server Error
    The server encountered an internal error or misconfiguration and was unable to complete your request.
    Please contact the server administrator, root@ns-01.dnslvb.com.br and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.

    Alguem já viu este erro ai.

    Obrigado

    Portal Link

  6. 6 nissieloinNo Gravatar

    Este erro deve ser porque o módulo do dbd-pg não foi devidamente instalado.

    Grande abraço.

  1. 1 SQL-Ledger, ERP gratuito, multiplataforma e leve | UpSys Blog

Deixe seu comentário