Office System

The Office Developer Blog (by Luiz Cláudio C. V. Rocha - São Paulo, Brazil)

Access - Numeração com ano

Uma dúvida que aparece com certa frequência nos fóruns é sobre a criação de numeradores compostos com ano:

1/2008, 2/2008, 3/2008, 4/2008 ... 100/2008, 101/2008
1/2009, 2/2009, 3/2009, 4/2009 ... 100/2009, 101/2009
etc.

A melhor solução, a meu ver, é ter dois campos na tabela: um só com o numerador (1, 2, 3, etc.) e outro só com o ano. A concatenação do numerador com o ano deve ser feita só em consultas e relatórios.

Tenho um exemplo que escrevi muito tempo atrás, em 2001, que não usa exatamente a prática que considero a mais adequada, porém também funciona. No exemplo, há um único campo texto que armazena o número já concatenado na tabela.

O exemplo está anexo a este artigo, para quem quiser baixar. Basta usar a função NextNumAno(), alterando o nome da tabela e do campo na instrução SELECT para coincidir com o seu banco de dados.

O mesmo módulo tem a função NextNumSimples(), que também pode ser usada caso você queira partir para a melhor solução que descrevi acima (onde o numerador fica num campo separado).

Em uma outra oportunidade eu re-escreverei este exemplo da forma que considero mais adequada hoje, oito anos depois. 

Comments

Ricardo said:

Olá.. eu tenho um exemplo bem específico de numeração automática ... teria como me passar um e-mail.. de quem puder me ajudar...  que dae mando o exemplo que gostaria..

ricardoad@gmail.com

# December 15, 2010 7:16 AM
Leave a Comment

(required) 

(required) 

(optional)

(required) 

If you can't read this number refresh your screen
Enter the numbers above: