Jump to content
Fórum Script Brasil
  • 0

Numeração de protocolo sequencial


Question

Olá, possuo um formulário PHP para inserir em uma tabela no banco MySQL. Preciso criar uma função (PHP ou JAVA) semelhante ao "auto increment" para preencher um campo na minha tabela no banco que seja semelhante a isso, quando for inserindo: 0001/2020, 0002/2020, 0003/2020, porém ao virar o ano a numeração tem que zerar, ficando assim: 0001/2021, 0002/2021, 0003/2021. Formulário chama "cad_ocorrencia.php", o banco "sisgcm", a tabela "atendimento" e o campo da tabela "numero_ocorrencia". No MySQL a tabela está assim: atendimento (id_atentidmento, numero_ocorrencia, datainicio e hora inicio). Obs: A função tem que funcionar como o auto increment porque o sistema será usado por mais de uma pessoa e se a função fizer a consulta no banco na hora que o formulário for aberto, poderá causar duplicidade de numero de ocorrência, então deve ser executada igualmente ao auto incremento.
Desde já agradeço meus Mestres deste site.

Edited by Moacir Guilherme Filho
Erro de portugues
Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Opa bão,

Moacir, vou tentar lhe ajudar. Vamos lá:

  1. Faça uma consulta na tabela "atendimento" dando um COUNT() nos registros de forem do ano atual;
  2. Pegue esse valor e some +1;
  3. Concatene esse valor + '/' + ano atual;
  4. Para evitar duplicar utilize uma constraint UNIQUE no campo da tabela que você vai inserir;
  5. ALTER TABLE suaTabela ADD CONSTRAINT nomeConstraint UNIQUE (campo_numero_atendimento);

     

  6. Caso ocorra de alguém tentar inserir ao mesmo tempo, vai retornar um erro. Aí é só tratar se você tentar inserir novamente ou devolve uma mensagem pro usuário com o novo número e pede pra ele enviar novamente o formulário.
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      148674
    • Total Posts
      644490
×
×
  • Create New...