Uma soloção usada para um INSERT na tabela
Aí galera estou presisando de algo assimmm.clico no Button ele verifica o estado da tabela...se a tabela [color=red:060b5bad6c]não[/color:060b5bad6c] tiver em modo de insert ou edit ele dá um insert nesta tabela...tem como fazer isto ?
Vlw t+
Vlw t+
Gigatel
Curtidas 0
Respostas
Michael
04/01/2006
Olá!
Presumindo que a tabela esteja sendo acessada por um DataSet, basta utilizar a propriedade [b:24bfa6d1ad]State[/b:24bfa6d1ad]. Veja:
[]´s
Presumindo que a tabela esteja sendo acessada por um DataSet, basta utilizar a propriedade [b:24bfa6d1ad]State[/b:24bfa6d1ad]. Veja:
if (DataSet.State <> dsEdit) and (DataSet.State <> dsInsert) then ...
[]´s
GOSTEI 0
Caninha51
04/01/2006
Eh soh verificar o estado do dataset.
if not (Table.State in [dsInsert,dsEdit]) then Table.Insert
GOSTEI 0
Gigatel
04/01/2006
deixa explicar meu problema para melhor compreensão talvez outra altermativa seja melhor...
no meu programa tem uma parte que joga em um crediário e é possível parcelar este valor....uso duas tabelas para gerar estes valores...uma para servir de base e outra para as parcelas...a tabela de base serve principalmente para gerar um código o de será referencia da tabela de parcelas....uso um page control para navegar entre as opções { PAgamento a vista }, e outros...no evento on show do parcelado, onde entra a função da tabela base ( que chamo de BD_CONTAS_TPA ) dou um Insert.....quando clico em concluir dou um post na tabela de base e assim gerar um novo código aí que vai concluir a função...O problema é que tem vezes que isto não funciona ( naum sei explicar ) dá um erro que a tablema não esta em modo de edição...daí pensei na idéia deste tópico,... e tem outra como eu colocaria esta função acima ?..
veja o código..
será que dá algum galho se eu colocar esta função ? pois ela tem que analizar se a tabela está em modo de insert se num tiver ela tem que dar este insert...caso contraria a função corre normalmente....
flw....
no meu programa tem uma parte que joga em um crediário e é possível parcelar este valor....uso duas tabelas para gerar estes valores...uma para servir de base e outra para as parcelas...a tabela de base serve principalmente para gerar um código o de será referencia da tabela de parcelas....uso um page control para navegar entre as opções { PAgamento a vista }, e outros...no evento on show do parcelado, onde entra a função da tabela base ( que chamo de BD_CONTAS_TPA ) dou um Insert.....quando clico em concluir dou um post na tabela de base e assim gerar um novo código aí que vai concluir a função...O problema é que tem vezes que isto não funciona ( naum sei explicar ) dá um erro que a tablema não esta em modo de edição...daí pensei na idéia deste tópico,... e tem outra como eu colocaria esta função acima ?..
veja o código..
procedure T_FORM_OS_BX.Button3Click(Sender: TObject); begin BD_CONTAS_TPA.Post; QuickRep3.PrinterSettings.Copies := BD_CONFOSGS_OOC_QDFIO2.value; QuickRep3.PrinterSettings.Copies := BD_CONFOSGS_OOC_QDFIO4.value; if DBLookupComboBox1.Text = ´´ then begin Showmessage (´É obrigatório seu prenchimento campo "Responsável"´); abort; end else begin if MessageDlg(´Deseja dar saída a O.S. do cliente ´ + _FORM_OS_NAV.BD_OFC_ELEGS_OOE_NOME.Value + ´ ?´,mtConfirmation,[mbYes,mbNo],0)<>mrYes then Abort; if BD_CONT_REC.RecordCount <> 0 then begin if Application.MessageBox(´Já foram geradas parcelas para este documento, deseja imprimi-las?´ , ´Imprimir.´, MB_ICONQUESTION + MB_YESNO) = IDYES then QuickRep3.Print; end else begin if eddata.Text =´ / / ´ then Showmessage (´É requerido que o campo data esteja preenchido´) else if Label28.Caption = ´Não´ then showmessage(´Atenção !!! Crédito bloqueado.´) else begin if edvalor.text = ´´ then GeraErroValorTotal else Geraparcelas; end; end; end; end;
será que dá algum galho se eu colocar esta função ? pois ela tem que analizar se a tabela está em modo de insert se num tiver ela tem que dar este insert...caso contraria a função corre normalmente....
flw....
GOSTEI 0