cracher 0 Denunciar post Postado Outubro 18, 2007 Ola gostaria de por em meu sistema uma generator automatica no meu sistema esta assim ao clicar no botão incluir ele gera o codigo automatico 0,1,2,3 e assim por diante.Mas se eu não gravo o codigo 2 ele da proxima vez vai para o 3.Criei minha generator no ibexpert mesmo a partir do codigo que é minha primary key e no meu ibdataset no evento afteinsert coloquei o seguinte codigo : IBQuery.Close; IBQuery.SQL.Clear; IBQuery.SQL.Add('SELECT GEN_ID(GEN_CONTA,1) FROM RDB$DATABASE'); IBQuery.Open; IBDataseta.FieldByName('CODIGO').AsInteger:=IBQuery.Fields[0].AsInteger;Se alguem puder me ajudar a fazer um incremento inteligente eu agradeçoObrigado Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Outubro 19, 2007 Se quiser você pode montar uma função que faz isto para você, passando o nome da tabela e campo somente, tendo o próximo código, algo como: function TForm1.ProximoCodigo(tabela, campo: string);var prox: integer;beginqryProximo.Close;qryProximo.Sql.Clear;qryProximo.Sql.Add('select max(' + campo + ') as Proximo');qryProximo.Sql.Add('from ' + tabela);qryProximo.Open;prox:=qryProximo.FieldByName('PROXIMO').AsInteger;Inc(prox);ProximoCodigo:=prox;end; E depois no seu botão onde pede um Novo: tabela.Insert;tabelaCODIGO.Value:=ProximoCodigo('nome_tabela','CAMPO_CODIGO'); Assim não iria mais precisar que o BD gere o próximo código... Podendo assim mexer na função da forma que achar melhor... Compartilhar este post Link para o post Compartilhar em outros sites
cracher 0 Denunciar post Postado Outubro 19, 2007 Obrigado foi muito util esta dica :D Compartilhar este post Link para o post Compartilhar em outros sites
marcio.theis 3 Denunciar post Postado Outubro 19, 2007 beleza... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites