Renanbg 1 Denunciar post Postado Julho 23, 2007 Bom gente abaixo o codigo que uso no botão gravar varprox: integer;Mensagem:string;begin if DBLookupComboBox1.text='' then begin Mensagem := 'Preencha o campo Responsável!'; Application.MessageBox(PCHAR(Mensagem), 'AVISO', MB_ICONINFORMATION + MB_OK); DBLookupComboBox2.setfocus; abort; end else if (frmdm.tbinspecao.State in[dsInsert]) then begin Query1.Close; Query1.SQL.Clear; Query1.SQL.Add('select Num_pedido from tbinspecao'); Query1.SQL.Add('where Num_pedido =:paramItem'); Query1.Params[0].AsInteger; Query1.ParamByName('paramItem').AsInteger := frmdm.tbinspecaoNum_pedido.AsInteger; Query1.Open; if Query1.RecordCount <> 0 then begin Query1.Close; Query1.Sql.Clear; Query1.Sql.Add('select max(num_pedido) as Proximo'); Query1.Sql.Add('from tbinspecao'); Query1.Open; prox:=Query1.FieldByName('PROXIMO').AsInteger; Inc(prox); frmdm.tbinspecaoNum_pedido.Value:=prox; //end; end else frmdm.tbinspecao.post; Mensagem := 'Os dados foram salvos com sucesso!'+#13+''+#13+'Responsável: '+ frmdm.tbinspecaofuncionario.value+''; Application.MessageBox(PCHAR(Mensagem), 'AVISO', MB_ICONINFORMATION + MB_OK); close;end; Do jeito que está grava numa boa, mas se eu tentar editar algum registro não consigo gravar pq o botão fica sem ação Se eu descomentar aquele end que esta comentado ele n passa pela linha do post e cai diretop na linha da mensagem PS: as querys fazen o seguinte a primeira pesquiza se o num_pedido existe e caso encontre ela pega o ultimo num_pedido e soma mais um Não consegui achar o erro, alguem pode me dar uma força? Compartilhar este post Link para o post Compartilhar em outros sites
Renanbg 1 Denunciar post Postado Julho 23, 2007 Debugando eu vi que na inclusão está certo, mas na alteração ele não passa pelo post e cai fora diretoAlguma dica?Debugando eu vi que na inclusão está certo, mas na alteração ele não passa pelo post e cai fora diretoAlguma dica? Compartilhar este post Link para o post Compartilhar em outros sites
Renanbg 1 Denunciar post Postado Julho 24, 2007 Consegui resolver, um amigo (Marcelo) me passou o codigo certo e me fez entender se alguem tiver alguma duvida vou deixar o codigo aqui begin if DBLookupComboBox1.text='' then begin Application.MessageBox('Preencha o campo Responsável!', 'AVISO', MB_ICONINFORMATION); DBLookupComboBox2.setfocus; Exit; end else begin if (frmdm.tbinspecao.State in[dsInsert]) then begin Query1.Close; Query1.SQL.Clear; Query1.SQL.Add('select Num_pedido from tbinspecao'); Query1.SQL.Add('where Num_pedido = ' + IntToStr(frmdm.tbInspecaoNUM_PEDIDO.AsInteger)); Query1.Open; if Query1.RecordCount <> 0 then begin Query1.Close; Query1.Sql.Clear; Query1.Sql.Add('select max(num_pedido) as Proximo'); Query1.Sql.Add('from tbinspecao'); Query1.Open; prox:=Query1.FieldByName('PROXIMO').AsInteger; Inc(prox); frmdm.tbinspecaoNum_pedido.Value:=prox; end; end; frmdm.tbinspecao.post; Mensagem := 'Os dados foram salvos com sucesso!'+#10+#10+'Responsável: '+ frmdm.tbinspecaofuncionario.value; Application.MessageBox(PCHAR(Mensagem), 'AVISO', MB_ICONINFORMATION); Close;end; Abraço... Compartilhar este post Link para o post Compartilhar em outros sites