Autor Tópico: Como iniciar uma numeração personalizada  (Lida 1744 vezes)

adrianacombat

  • Avançado
  • ****
  • Mensagens: 307
    • Email
Como iniciar uma numeração personalizada
« Online: Outubro 17, 2011, 01:02:38 pm »
Boa tarde pessoal,

Estoutentando desenvolver um inventário de equipamentos de TI, mas preciso que fora o id de cadastro de máquina ele possua uma numeração proria com letras e números, ex: ADR0001.

No campo equip_maq , em Valor no Banco de Dados tem uma opção de nome de sequência, mas não está dando certo.

Alguém poide me ajudar?

Obrigada desde já

wanderlanlima

  • Intermediário
  • ***
  • Mensagens: 241
    • Email
Re:Como iniciar uma numeração personalizada
« Responder #1 Online: Outubro 17, 2011, 01:19:01 pm »
coloque:

<esquema>.<bone_sequence>

adrianacombat

  • Avançado
  • ****
  • Mensagens: 307
    • Email
Re:Como iniciar uma numeração personalizada
« Responder #2 Online: Outubro 17, 2011, 02:09:37 pm »
Oi Wanderlan,

VC pode me dar mais detalhes aonde coloco a informação que me passou?

Obrigada

George Carvalho

  • Expert
  • *****
  • Mensagens: 1373
    • Email
Re:Como iniciar uma numeração personalizada
« Responder #3 Online: Outubro 17, 2011, 02:23:59 pm »
As letras vem de onde? ADR

A numeração vem de onde? 0001
George Carvalho
Porto de Galinhas/PE

Régis Matos

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 632
  • Se a porta não se abrir, construa uma.
    • Email
Re:Como iniciar uma numeração personalizada
« Responder #4 Online: Outubro 17, 2011, 03:22:27 pm »
acombat,

Para resolver isso, vc pode criar uma chave composta, de 2 campos.


Categoria + Sequência

 
Uma das chaves vc coloca a categoria do inventário onde vc seleciona a categoria.

A sequencia vc faz automática.

Sempre pegando e incrementando o maior numero da categoria selecionada.

Assim cada categoria tem sua sequência.

Espero ter ajudado.

T+

wanderlanlima

  • Intermediário
  • ***
  • Mensagens: 241
    • Email
Re:Como iniciar uma numeração personalizada
« Responder #5 Online: Outubro 17, 2011, 03:33:39 pm »
Crie uma tabela de sequencia como visto no select (dsseq)

No before insert:

sc_lookup(dsseq, "SELECT max(seq_valor) + 1 FROM sequencia WHERE (seq_codigo = 'TRANSPORTADORA')");
   
$seq = {dsseq}[0][0];
   
if ($seq > 0)
{
      {pes_codigo} = "TRANS_"."$seq"; 
}
else
{
      {pes_codigo} = "TRANS_1";
}   
   
sc_exec_sql("UPDATE sequencia SET seq_valor = $seq WHERE seq_codigo = 'TRANSPORTADORA'");