Problemas:
É muito comum vermos soluções onde o programador declara várias variáveis públicas em um módulo separado e depois sai usando-as no código. Em um primeiro momento isso parece ser uma boa solução, pois mantêm as informações centralizadas e facilita a manutenção.
Porém, se pensarmos que este sistema pode sofrer manutenções futuras e outro programador terá que fazer isso, a coisa muda de figura. Imagine que o novo programador não sabe o que pode acontecer se ele alterar o valor de uma variável. Ele não sabe se haverá impacto em outras funcionalidades do sistema. Então terá que vasculhar todo o sistema para identificar onde a variável está sendo usado para daí então realizar a alteração.
Solução:
Procure restringir o uso de variáveis públicas.
Procure definir as variáveis no escopo de menor visibilidade possível . Assim prefira usar variáveis locais.
Declare todas as variáveis locais no início do procedimento.