quinta-feira, 14 de abril de 2011

Linx através do Microsoft Visual Fox Pro 9

Para aqueles que nunca acessaram o Microsoft Visual FoxPro 9, basta acesar o arquivo vfp.exe, localize-o com auxílio da pesquisa do seu sistema operacional ou algum outro utilitário. Ao acessar o arquivo vfp9.exe, a seguinte tela será exibida:



Não sei de vocês, mas essas telas de "boas-vindas" de programas costumam me irritar bastante, se você também não deseja vê-la, clique no botão "Options" e desative a exibição do "Task Pane Manager" quando o fox iniciar.



Com isso teremos um ambiente mais leve para a inicialização e teremos um ambiente assim:



Gosto de deixar a janela de comandos presa ao formulário principal do fox, para fazer isso, basta arrastá-la para o seu lado de preferência até que uma linha pontilhada circule a área desejada e então soltar a janela nessa posição.




Seu ambiente ficará com a aparência abaixo. Agora já estamos prontos para a execução do sistema através do fox.




A execução de programas no fox é realizada através do comando DO.


No meu caso, o arquivo de execução do linx (linx.exe) está localizado na pasta: C:\Program Files (x86)\Common Files\Linx Sistemas\Visual Linx8\


Para acessar o linx então deve-se digitar DO ? <ENTER> na janela de comandos. A opção ? abre uma caixa de diálogo que te permite selecionar o arquivo a ser executado. Selecione o arquivo linx.exe em sua máquina. Conforme o print abaixo:




Logo após a escolha do linx.exe será aberta outra caixa de diálogo te pedindo para selecionar um diretório. Selecione o diretório L:\linx_sql\linx conforme o print abaixo.




Ao término desses passos, será exibida a tela de login do Visual Linx onde você deve informar o servidor, usuário, senha e banco de dados (como se o fox nem existisse).






Antes que vocês se perguntem: "Qual é a finalidade de acesasr o linx através do fox?". Eu já respondo: Com a execução do linx via Fox, você consegue ter uma visibilidade geral das telas, dados e demais informações necessárias para criar um objeto de entrada, criar uma customização e/ou trabalhar com relatórios.


Observações finais:


1 - Quando acessamos o arquivo L:\linx_sql\linx\VisualLinx.exe, uma instalação local é feita na pasta arquivos comuns. No meu caso, o arquivo linx.exe está localizado em: C:\Program Files (x86)\Common Files\Linx Sistemas\Visual Linx8\linx.exe.


2 - O comando DO do fox possibilita também a chamada de programas com as extensões (app [aplicativo], fxp [compilado fox] e prg [programa fox]). Para maiores informações dê uma procurada no site da MSDN.


3 - Caso você tenha fechado a janela de comandos, utilize <CTRL>+<F2> para exibí-la novamente.


---
Até a próxima... Dica Linx!
Gostaria de algum tópico sobre abordagem específica? Entre em contato.

sábado, 9 de abril de 2011

Objetos de entrada






Visão Geral

Os objetos de entrada são programas que interagem com os métodos de uma transação (tela) do Visual Linx. Eles são arquivos que ficam armazenados na pasta "L:\LINX_SQL\Linx\Exclusivos\".

O padrão de nomenclatura dos arquivos é "obj_<código da transacao>.prg". Os arquivos "obj_<código da transacao>.fxp" são os programas já compilados, se o .FXP já existir isso significa que a tela já tem as regras do objeto ativas.

Sempre que houver alterações no .PRG, é necessário atualizar o arquivo .FXP. A criação do arquivo .FXP é automática desde que o arquivo .FXP não exista.

Obs.: Para excluir um arquivo .FXP nenhum usuário poderá estar com a tela aberta. O mais recomendado é que nenhum client do sistema permaneça aberto durante a atualização de um .PRG.

Conteúdo de um objeto de entrada

O programa correspondente ao objeto de entrada segue o padrão de codificação abaixo:

define class obj_entrada as custom
 procedure metodo_usuario
 lparam xmetodo, xobjeto ,xnome_obj

  do case
   case xmetodo == "USR_INIT"
  endcase

 endproc
enddefine

O método "metodo_usuario" é chamado pelo tratamento padrão das transações do linx o parâmetro mais relevante para alterações é o "xmetodo" que nos indica em que momento o método está sendo executado:

USR_INIT - Quando o formset é criado;
USR_ALTER_BEFORE - Antes de alterações;
USR_ALTER_AFTER - Depois de alterações;
USR_INCLUDE_AFTER - Após a inclusão de um registro;
USR_SEARCH_BEFORE - Antes de uma pesquisa;
USR_SEARCH_AFTER - Depois uma pesquisa;
USR_CLEAN_AFTER - Depois da limpeza;
USR_REFRESH - Após refresh;
USR_SAVE_BEFORE - Antes de salvar;
USR_SAVE_AFTER - Depois de salvar;
USR_ITEN_DELETE_BEFORE - Antes de excluir um item;
USR_ITEN_DELETE_AFTER - Depois de excluir um item;
USR_ITEN_INCLUDE_BEFORE - Antes de incluir um item;
USR_ITEN_INCLUDE_AFTER - Depois de excluir um item.

Caso algum dos métodos sublinhados acima retorne um valor falso (RETURN .F.), a operação realizada pela transação do Linx será cancelada. Esse recurso é ideal para validações de campos ou tratamento de outras regras.

O objeto de entrada enxerga também as variáveis globais do sistema.

Um exemplo delas é o wUsuario que identifica o "usuário" que se conectou no Linx, desse modo também é possível especificar regras para um usuário específico.

Embora seja possível usufruir desse recurso, não recomendo que ele seja largamente utilizado porque os usuários podem ter novas atribuições ou se desligarem da empresa, o que implica num gerenciamento muito minucioso.

---
Até a próxima... Dica Linx!
Gostaria de algum tópico sobre abordagem específica? Entre em contato.

segunda-feira, 28 de março de 2011

Partindo do começo

Hoje é o dia da inauguração do Dica Linx, o primeiro blog de abordagem técnica e descomplicada dos sistemas do grupo Linx.

Esse blog será voltado para aqueles que de alguma maneira trabalham com sistemas do grupo Linx. Usuários, usuários avançados, consultores, programadores, analistas, coordenadores). É óbvio que não podemos esquecer as demais pessoas que buscam por informações também são muito bem-vindas.

O principal sistema do grupo Linx é o Visual Linx que é um sistema ERP (Enterprise Resource Planning). Esse sistema utiliza como linguagem principal de programação o Visual Fox Pro (microsoft) e banco de dados SQL Server (microsoft).

O mais interessante desse sistema é que ele pode ser personalizado de acordo com as necessidades de cada cliente, para isso existem alguns recursos do sistema que permitem:
 - Inclusão de novos campos (para que seja possível tratar novos dados);
 - Criação de relatórios dentro do próprio sistema;
 - Objetos de entrada (recursos que permitem a criação/alteração de regras no sistema)

Para as próximas postagens demonstraremos como utilizar alguns recursos do sistema.

---
Até a próxima... Dica Linx!
Gostaria de algum tópico sobre abordagem específica? Entre em contato.