Guest Guest Postado Dezembro 4, 2003 Denunciar Share Postado Dezembro 4, 2003 Preciso voltar para o Zero.. para dar sequencia a uma numeracao correta, isto é possivel?Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Flavio Diniz Postado Dezembro 4, 2003 Denunciar Share Postado Dezembro 4, 2003 olacria outro in novo com o mesmo nome Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jissa Postado Dezembro 5, 2003 Denunciar Share Postado Dezembro 5, 2003 só apagar o atual e criar um novo.. agora para refazer a numeração acho que não tem jeito não.. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Perfect Lion Postado Dezembro 5, 2003 Denunciar Share Postado Dezembro 5, 2003 Tem sim eu queria zerar o meu para ir com os numeros corresto....você tem que ira na estrutura de tabela e excluir a linha do auto numeração ai é só você criar outro....Atenção:Quando você faz esse tipo de correção c você tem alguma consulta ele ira dar pau então você terá que excluir também e fazer outro do mesmo jeito pois ele esta para a tabela antiga e enão para o que você arrumou certo....há num esquece de fazer um backp antes de fazer isso pois pode de repente dá um pau sei lá algo do tipo e ferrar o que você já fez...fuizzz........Perfect Lion.... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rbordini Postado Dezembro 5, 2003 Denunciar Share Postado Dezembro 5, 2003 Só aproveitando o tópico....quem quiser criar um contador personalizado, aí está...----------------------------» Como criar e incrementar um campo contador personalizado? Antes de mais nada, não use um campo do tipo Autonumeração para campos da tabela que precisem de numeração seqüencial ininterrupta, pois a "autonumeração" do Access não foi criada para isso, mas sim para ser usada como Chave Primária de uma tabela. Embora o campo "autonumeração" não se repita jamais, isso não quer dizer que sua numeração obedeça a uma seqüência ininterrupta. Conforme explicado na pergunta É possível reutilizar um nº deletado de um campo AutoNumeração?, não é possível reutilizar um número deletado de um campo AutoNumeração. Se você apagar algum registro que contenha um campo AutoNumeração, o Access não reutilizará o número, ficando uma brecha na seqüência de numeração. Vamos supor que você possui 50 registros numa tabela (seu campo autonumeração vai estar em 50). Se você apagar o registro 25 e inserir um novo registro, o Access não volta a utilizar o nº 25, mas sim continua a partir do 51. Esse é um comportamento normal do programa. Além disso, a organização seqüencial não existe numa tabela de um banco de dados relacional como o Access, já que os registros são gravados sem importar a seqüência lógica. Índices e consultas é que dão uma ordem na apresentação dos registros contidos numa tabela. Solução: Se você quiser um campo absolutamente seqüencial, como o nº de uma nota fiscal, você terá de criar uma rotina no seu formulário que incremente o último número gravado na tabela. Vamos supor que no formulário acoplado à tabela "Contratos" eu tenha uma caixa de texto acoplada ao campo "NumeroContrato". Ao digitar um novo contrato, eu gostaria que o Access somasse 1 ao número anterior e, se não houver nenhum contrato armazenado na tabela, que ele gerasse um número a partir de 1. Para resolver a questão, insira a expressão abaixo na propriedade Valor padrão da caixa de texto: =SeImed(DContar("[NumeroContrato]";"Contratos")=0;1;DMáx("[NumeroContrato]";"Contratos")+1) Outra opção, seria criar uma tabela "TabContrato" com o campo "ContratoInicial" que armazena o número inicial dos contratos. Desse modo, a expressão acima ficaria assim: =SeImed(DContar("[NumeroContrato]";"Contratos")=0;DLookup("[ContratoInicial]";"TabContrato");DMáx("[NumeroContrato]";"Contratos")+1) Solução com exemplo: No mdb de exemplo, abra o formulário "frmExemplo_Contratos" (Fig.1), que possui uma numeração de contratos do tipo 001/1999; 002/1999 e assim por diante. Adicione um registro novo e veja que o formulário apresenta o número seguinte: 003/1999. Para conseguir tal efeito, foi utilizada a expressão abaixo na propriedade Valor Padrão da caixa de texto “Número”: =SeImed(DContar("[Número]";"Contratos")=0;("001" & Ano(Data()));Formato((Esquerda(DMáx("[Número]";"Contratos");3)+1) & Ano(Data());"000\/0000")) ---------------------------Sds, Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Dezembro 28, 2003 Denunciar Share Postado Dezembro 28, 2003 Só aproveitando o tópico....quem quiser criar um contador personalizado, aí está...--------------Solução: Se você quiser um campo absolutamente seqüencial, como o nº de uma nota fiscal, você terá de criar uma rotina no seu formulário que incremente o último número gravado na tabela. Vamos supor que no formulário acoplado à tabela "Contratos" eu tenha uma caixa de texto acoplada ao campo "NumeroContrato". Ao digitar um novo contrato, eu gostaria que o Access somasse 1 ao número anterior e, se não houver nenhum contrato armazenado na tabela, que ele gerasse um número a partir de 1. Para resolver a questão, insira a expressão abaixo na propriedade Valor padrão da caixa de texto: =SeImed(DContar("[NumeroContrato]";"Contratos")=0;1;DMáx("[NumeroContrato]";"Contratos")+1) Outra opção, seria criar uma tabela "TabContrato" com o campo "ContratoInicial" que armazena o número inicial dos contratos. Desse modo, a expressão acima ficaria assim: =SeImed(DContar("[NumeroContrato]";"Contratos")=0;DLookup("[ContratoInicial]";"TabContrato");DMáx("[NumeroContrato]";"Contratos")+1) Solução com exemplo: No mdb de exemplo, abra o formulário "frmExemplo_Contratos" (Fig.1), que possui uma numeração de contratos do tipo 001/1999; 002/1999 e assim por diante. Adicione um registro novo e veja que o formulário apresenta o número seguinte: 003/1999. Para conseguir tal efeito, foi utilizada a expressão abaixo na propriedade Valor Padrão da caixa de texto “Número”: =SeImed(DContar("[Número]";"Contratos")=0;("001" & Ano(Data()));Formato((Esquerda(DMáx("[Número]";"Contratos");3)+1) & Ano(Data());"000\/0000")) Tem como fazer isso com ASP?Como?Isso seria muito útil mesmo! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Edvaldo Postado Outubro 17, 2008 Denunciar Share Postado Outubro 17, 2008 Só aproveitando o tópico....quem quiser criar um contador personalizado, aí está...----------------------------» Como criar e incrementar um campo contador personalizado? Antes de mais nada, não use um campo do tipo Autonumeração para campos da tabela que precisem de numeração seqüencial ininterrupta, pois a "autonumeração" do Access não foi criada para isso, mas sim para ser usada como Chave Primária de uma tabela. Embora o campo "autonumeração" não se repita jamais, isso não quer dizer que sua numeração obedeça a uma seqüência ininterrupta. Conforme explicado na pergunta É possível reutilizar um nº deletado de um campo AutoNumeração?, não é possível reutilizar um número deletado de um campo AutoNumeração. Se você apagar algum registro que contenha um campo AutoNumeração, o Access não reutilizará o número, ficando uma brecha na seqüência de numeração. Vamos supor que você possui 50 registros numa tabela (seu campo autonumeração vai estar em 50). Se você apagar o registro 25 e inserir um novo registro, o Access não volta a utilizar o nº 25, mas sim continua a partir do 51. Esse é um comportamento normal do programa. Além disso, a organização seqüencial não existe numa tabela de um banco de dados relacional como o Access, já que os registros são gravados sem importar a seqüência lógica. Índices e consultas é que dão uma ordem na apresentação dos registros contidos numa tabela. Solução: Se você quiser um campo absolutamente seqüencial, como o nº de uma nota fiscal, você terá de criar uma rotina no seu formulário que incremente o último número gravado na tabela. Vamos supor que no formulário acoplado à tabela "Contratos" eu tenha uma caixa de texto acoplada ao campo "NumeroContrato". Ao digitar um novo contrato, eu gostaria que o Access somasse 1 ao número anterior e, se não houver nenhum contrato armazenado na tabela, que ele gerasse um número a partir de 1. Para resolver a questão, insira a expressão abaixo na propriedade Valor padrão da caixa de texto: =SeImed(DContar("[NumeroContrato]";"Contratos")=0;1;DMáx("[NumeroContrato]";"Contratos")+1) Outra opção, seria criar uma tabela "TabContrato" com o campo "ContratoInicial" que armazena o número inicial dos contratos. Desse modo, a expressão acima ficaria assim: =SeImed(DContar("[NumeroContrato]";"Contratos")=0;DLookup("[ContratoInicial]";"TabContrato");DMáx("[NumeroContrato]";"Contratos")+1) Solução com exemplo: No mdb de exemplo, abra o formulário "frmExemplo_Contratos" (Fig.1), que possui uma numeração de contratos do tipo 001/1999; 002/1999 e assim por diante. Adicione um registro novo e veja que o formulário apresenta o número seguinte: 003/1999. Para conseguir tal efeito, foi utilizada a expressão abaixo na propriedade Valor Padrão da caixa de texto “Número”: =SeImed(DContar("[Número]";"Contratos")=0;("001" & Ano(Data()));Formato((Esquerda(DMáx("[Número]";"Contratos");3)+1) & Ano(Data());"000\/0000")) ---------------------------Sds,Pessoal quando uso esse código: =SeImed(DContar("[Número]";"Contratos")=0;("001" & Ano(Data()));Formato((Esquerda(DMáx("[Número]";"Contratos");3)+1) & Ano(Data());"000\/0000")) porque quando o registro chega em 1000 ele vai colocando 1000 pra todo mundo e não obedece a sequencia 1001, 1002, 1003, ?alguém sabe responder isso por favor ?Edvaldo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Paulomsp Postado Outubro 25, 2008 Denunciar Share Postado Outubro 25, 2008 Só aproveitando o tópico....quem quiser criar um contador personalizado, aí está...----------------------------» Como criar e incrementar um campo contador personalizado? Antes de mais nada, não use um campo do tipo Autonumeração para campos da tabela que precisem de numeração seqüencial ininterrupta, pois a "autonumeração" do Access não foi criada para isso, mas sim para ser usada como Chave Primária de uma tabela. Embora o campo "autonumeração" não se repita jamais, isso não quer dizer que sua numeração obedeça a uma seqüência ininterrupta. Conforme explicado na pergunta É possível reutilizar um nº deletado de um campo AutoNumeração?, não é possível reutilizar um número deletado de um campo AutoNumeração. Se você apagar algum registro que contenha um campo AutoNumeração, o Access não reutilizará o número, ficando uma brecha na seqüência de numeração. Vamos supor que você possui 50 registros numa tabela (seu campo autonumeração vai estar em 50). Se você apagar o registro 25 e inserir um novo registro, o Access não volta a utilizar o nº 25, mas sim continua a partir do 51. Esse é um comportamento normal do programa. Além disso, a organização seqüencial não existe numa tabela de um banco de dados relacional como o Access, já que os registros são gravados sem importar a seqüência lógica. Índices e consultas é que dão uma ordem na apresentação dos registros contidos numa tabela. Solução: Se você quiser um campo absolutamente seqüencial, como o nº de uma nota fiscal, você terá de criar uma rotina no seu formulário que incremente o último número gravado na tabela. Vamos supor que no formulário acoplado à tabela "Contratos" eu tenha uma caixa de texto acoplada ao campo "NumeroContrato". Ao digitar um novo contrato, eu gostaria que o Access somasse 1 ao número anterior e, se não houver nenhum contrato armazenado na tabela, que ele gerasse um número a partir de 1. Para resolver a questão, insira a expressão abaixo na propriedade Valor padrão da caixa de texto: =SeImed(DContar("[NumeroContrato]";"Contratos")=0;1;DMáx("[NumeroContrato]";"Contratos")+1) Outra opção, seria criar uma tabela "TabContrato" com o campo "ContratoInicial" que armazena o número inicial dos contratos. Desse modo, a expressão acima ficaria assim: =SeImed(DContar("[NumeroContrato]";"Contratos")=0;DLookup("[ContratoInicial]";"TabContrato");DMáx("[NumeroContrato]";"Contratos")+1) Solução com exemplo: No mdb de exemplo, abra o formulário "frmExemplo_Contratos" (Fig.1), que possui uma numeração de contratos do tipo 001/1999; 002/1999 e assim por diante. Adicione um registro novo e veja que o formulário apresenta o número seguinte: 003/1999. Para conseguir tal efeito, foi utilizada a expressão abaixo na propriedade Valor Padrão da caixa de texto “Número”: =SeImed(DContar("[Número]";"Contratos")=0;("001" & Ano(Data()));Formato((Esquerda(DMáx("[Número]";"Contratos");3)+1) & Ano(Data());"000\/0000")) ---------------------------Sds,Pessoal quando uso esse código: =SeImed(DContar("[Número]";"Contratos")=0;("001" & Ano(Data()));Formato((Esquerda(DMáx("[Número]";"Contratos");3)+1) & Ano(Data());"000\/0000")) porque quando o registro chega em 1000 ele vai colocando 1000 pra todo mundo e não obedece a sequencia 1001, 1002, 1003, ?alguém sabe responder isso por favor ?Edvaldopara zerar o contador. limpe a tabela. vá até ferramentas/utilitários de banco de dados/campactar e reparar. e prontinho Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MS Postado Janeiro 28, 2016 Denunciar Share Postado Janeiro 28, 2016 Srs Tive um problema com a access do registro de id meu banco de dados é vinculado a outra tabela de dados as ids se combinam para gerar resultados pegando dados de varias tabelas. então as ids tem de que ser sequenciadas e por causa da busca e não podem ser renumeradas em qualquer sequência. Então segue uma solução para renumerar na ordem de tela, segue o que é mais um procedimento: Primeiro passo: Abra a tabela. Guia Início >>> Modos de Exibição >>> Clique Modo Design. Desmarque Chave de Registro. Volte no modo Folha de Dados. Exclua a coluna da chave de registro. Segundo passo: Ordene as linhas na posição desejada (você pode fazer isso criando uma coluna no " fim de todas" com a sequência numerada para cada linha ai ordena de A à Z). Terceiro passo: Feche e salve a tabela. Quarto passo: Clique na tabela fechada e copie. Quinto passo: Clique na onde ficam as tabelas e cole. Atribua um nome Ex: "tabela1" Clique OK. Abra a Copia. Confirme a ordem das linhas importante. Sexto passo: Confirme se a copia tem todos os registros. Sétimo passo: Volte abra a tabela original. Delete todas as linha de registro. Lembrando que os registros estão salvos na cópia. Oitavo passo: Guia Início >>> Modos de Exibição >>> Clique Modo Design Nono passo: Na aba que abriu cada linha é uma coluna vá até o fim e crie uma coluna na ultima linha para ser a chave de registro. Décimo passo: Selecione na linha da coluna Tipo de dados >>> Autonumeração. Clique com o botão direito e Clique Chave de registro. Décimo Primeiro passo: Feche e salve a tabela. Crie uma nova cópia desta tabela com outro nome Ex: "tabela2". Obs: Zera os registros!! Décimo Segundo passo: Delete a original, vá na copia "tabela2" recém criada renomeie com o nome da original. Décimo Terceiro passo: Abra a tabela que agora é a original. Décimo Quinto passo: Abra a tabela1 verifique a ordem dos registros (importante). Décimo Sexto passo: Clique na primeira linha pela base para selecionar tudo. Segure o shift clique seta para baixo e selecione todos. Décimo Sétimo passo: Clique na base de qualquer linha com o botão direto e selecione copiar. Décimo Oitavo passo: Clique na tabela original na primeira linha e Ctrl + V. Pronto tudo renumerado na ordem definida. Décimo Nono passo: Feche e salve a tabela original. Abra verifique os registros. Vigésimo passo: Feche tabela1 e delete. Salve seu Banco de Dados. Quem gostou fala Show!!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest Guest
Preciso voltar para o Zero.. para dar sequencia a uma numeracao correta, isto é possivel?
Obrigado
Link para o comentário
Compartilhar em outros sites
8 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.