AutomacaoComercialCliperComNfs

Instalando programas de automação comercial CLIPPER com o dosemu e NFS

Introdução

Grande parte dos computadores ainda utilizam sistemas escritos em CLIPPER, funcionando sob o antigo MS-DOS.

Este documento tem por objetivo mostrar os passos detalhados para ser feita uma migração de um sistema 100% Windows para um sistema 100% Linux, bem como detalhar os parâmetros e configurações necessárias para ser executado um programa CLIPPER no dosemu que acessará a impressora matricial e fiscal.

Este documento é parte de uma documentação sobre Automação Comercial com Ubuntu. Para maiores detalhes leia AutomacaoComercialNoUbuntu.

Cristiano M. Magalhães

Pré-requisitos

Foram utilizados nos passos seguintes esses computadores:

Computador com Linux Ubuntu instalado (PDV)
Computador com Linux Ubuntu instalado (Servidor)

Passo-a-passo

1) Montando o servidor

1.1) Crie pastas para serem compartilhadas

$ sudo mkdir /opt/arquivos
$ sudo chown admin /opt/arquivos

1.2) Configure o portmap

$ sudo gedit /etc/default/portmap
  # Comente a linha abaixo
  # ARGS="-i 127.0.0.1"

1.3) Configure o /etc/hosts para que o servidor reconheça o cliente para comunicação por NFS

$ sudo gedit /etc/hosts
  # Edite a linha abaixo
  # IP          Nome_da_máquina
  192.168.0.2   huguinho

1.4) Instale e servidor NFS

$ sudo aptitude install nfs-kernel-server
$ sudo gedit /etc/exports
  #Edite a linha abaixo
  /opt/arquivos 192.168.0.0/255.255.255.0(rw,sync)

1.5) Execute o servidor NFS

$ sudo /etc/init.d/networking restart
$ sudo /etc/init.d/nfs-kernel-server restart

2) Montando o cliente com "mount"

(você pode usar o passo 3 como alternativa para esse passo)

2.1) Crie usuários

Teremos dois usuários no sistema: admin e caixa.O usário "admin" terá permissões de root e servirá para oferecer administração ao sistema.O usuário "caixa" será o operador do PDV. O grupo "automacão" (para fins deste tutorial "automacao"sem cedilha/acentos) terá acesso a qualquer serviço do PDV. "admin" e "caixa" pertencerão à esse grupo.

$ addgroup automacao
$ adduser admin automacao
$ adduser caixa automacao

2.2) Crie a pasta de trabalho e crie permissões para o grupo "automacao"

$ sudo mkdir /opt/msdos
$ chown -R :automacao /mnt/msdos
$ chmod -R g+rwX /mnt/msdos

2.3) Monte a pasta por NFS

$ sudo mount -t nfs 192.168.0.5:/opt/arquivos /opt/msdos/servidor

Onde:192.168.0.5 é o IP do servidor. A linha de comando acima também pode ser colocada em algum script de boot

2.4) Acrescente o usuário "caixa" ao grupo "dialout". O grupo "dialout" tem privilégios ao acesso de portas seriais. Essa etapa é vital para o usuário "caixa" acessar a impressora fiscal.

2.5) Configure a Impressora Fiscal no dosemu. (Para esse exemplo, iremos utilizar uma das marcas mais comuns no Brasil: a impressora Bematech).

Edite o arquivo dosemu.conf:

$ sudo gedit /etc/dosemu/dosemu.conf

Modifique a seguinte linhas:

  $_com1 = "/dev/ttyS0 irq 4"

Onde: "/dev/ttyS0 irq 4" é a porta de comunicação COM1, onde será instalada a Impressora Fiscal Bematech.

2.6) Configure a impressora matricial.

Edite o arquivo dosemu.conf:

$ sudo gedit /etc/dosemu/dosemu.conf

Modifique as seguintes linhas:

  $_printer = "IBM-Compatible-Dot-Matrix-Printer"
  $_printer_command = "lpr -l"

Onde: "IBM-Compatible-Dot-Matrix-Printer" é o nome da impressora que está instalada em seu sistema ubuntu. Caso você não saiba o nome, pode achar com o comando

$ lpstat -a

2.7) Configure a pasta compartilhada pelo samba.

Edite o arquivo "autoexec.bat" do dosemu

$ sudo gedit /etc/freedos/autoexec.bat

Acrescente a linha abaixo. Isso fará o dosemu entender que a pasta "/opt/msdos" é o drive "G:"

  lredir g: linux\fs/opt/msdos

2.8) Instale utilitários do DOS no dosemu

Execute o dosemu:

$ dosemu

Extraia os seguintes programas nos respectivos diretórios:

  Programa   Descrição                          Diretório    
  ---------------------------------------------------------
  arj        compactador                        G:\arj
  bematech   drivers e utilitários Bematech     G:\bematech
  ---------------------------------------------------------

Obs.: a utilização do ARJ foi apenas uma sugestão, visto que ainda muitos programadores que trabalham com CLIPPER ainda usam essa ferramenta. A instalação desse programa é facultativo. Converse com o seu programador para saber se realmente é preciso usar o ARJ.

2.9) Configure o ambiente DOS para executar o programa CLIPPER.

Se você estiver no dosemu, saia com o comando:

$PROMT-DOS$:\>exit

Edite o arquivo "config.sys"

$ sudo gedit /etc/freedos/config.sys

Acrescente (ou modifique) a linha abaixo:

files=200

Edite o arquivo "autoexec.bat"

$ sudo gedit /etc/freedos/autoexec.bat

Acrescente (ou modifique) as linhas abaixo:

  SET ESTACAO=01
  SET CLIPPER=F200
  G:
  cd G:\BEMATECH
  mp20drv.exe
  cd G:\

3) Montando o cliente com "autofs"

(você pode usar o passo 2 como alternativa para esse passo)

3.1) Crie usuários

Teremos dois usuários no sistema: admin e caixa. "admin" terá permissões de root e servirá para oferecer administração ao sistema. "caixa" será o operador do PDV. O grupo "automacao" terá acesso a qualquer serviço do PDV. "admin" e "caixa" pertencerão à esse grupo.

$ addgroup automacao
$ adduser admin automacao
$ adduser caixa automacao

3.2) Crie a pasta de trabalho e crie permissões para o grupo "automacao"

$ sudo mkdir /opt/msdos
$ chown -R :automacao /mnt/msdos
$ chmod -R g+rwX /mnt/msdos

3.3) Instale o autofs

$ sudo aptitude install autofs
$ sudo gedit /etc/auto.master
  #Edite a linha abaixo
  /net    /etc/auto.net
$ sudo /etc/init.d/autofs restart

3.4) Acrescente o usuário "caixa" ao grupo "dialout". O grupo "dialout" tem privilégios ao acesso de portas seriais. Essa etapa é vital para o usuário "caixa" acessar a impressora fiscal.

3.5) Configure a Impressora Fiscal no dosemu. (Para esse exemplo, iremos utilizar uma das marcas mais comuns no Brasil: a impressora Bematech).

Edite o arquivo dosemu.conf:

$ sudo gedit /etc/dosemu/dosemu.conf

Modifique a seguinte linhas:

  $_com1 = "/dev/ttyS0 irq 4"

Onde: "/dev/ttyS0 irq 4" é a porta de comunicação COM1, onde será instalada a Impressora Fiscal Bematech.

3.6) Configure a impressora matricial.

Edite o arquivo dosemu.conf:

$ sudo gedit /etc/dosemu/dosemu.conf

Modifique as seguintes linhas:

  $_printer = "IBM-Compatible-Dot-Matrix-Printer"
  $_printer_command = "lpr -l"

Onde: "IBM-Compatible-Dot-Matrix-Printer" é o nome da impressora que está instalada em seu sistema ubuntu. Caso você não saiba o nome, pode achar com o comando

$ lpstat -a

3.7) Configure a pasta compartilhada pelo NFS

Edite o arquivo "autoexec.bat" do dosemu

$ sudo gedit /etc/freedos/autoexec.bat

Acrescente a linha abaixo. Isso fará o dosemu entender que a pasta "/opt/msdos" é o drive "G:"

  lredir f: linux\fs/net/192.168.0.5/opt/arquivos
  lredir g: linux\fs/opt/msdos

Onde:192.168.0.5 é o IP do servidor. A linha de comando acima também pode ser colocada em algum script de boot.

3.8) Instale utilitários do DOS no dosemu

Execute o dosemu:

$ dosemu

Extraia os seguintes programas nos respectivos diretórios:

  Programa   Descrição                          Diretório    
  ---------------------------------------------------------
  arj        compactador                        G:\arj
  bematech   drivers e utilitários Bematech     G:\bematech
  ---------------------------------------------------------

Obs.: a utilização do ARJ foi apenas uma sugestão, visto que ainda muitos programadores que trabalham com CLIPPER ainda usam essa ferramenta. A instalação desse programa é facultativo. Converse com o seu programador para saber se realmente é preciso usar o ARJ.

3.9) Configure o ambiente DOS para executar o programa CLIPPER.

Se você estiver no dosemu, saia com o comando:

$PROMT-DOS$:\>exit

Edite o arquivo "config.sys"

$ sudo gedit /etc/freedos/config.sys

Acrescente (ou modifique) a linha abaixo:

files=200

Edite o arquivo "autoexec.bat"

$ sudo gedit /etc/freedos/autoexec.bat

Acrescente (ou modifique) as linhas abaixo:

  SET ESTACAO=01
  SET CLIPPER=F200
  G:
  cd G:\BEMATECH
  mp20drv.exe
  cd G:\

Seu sistema está migrado.

Cristiano M. Magalhães

AutomacaoComercialCliperComNfs (last edited 2011-09-19 23:18:28 by localhost)