Re: [delphi-br] SimpleDataSet X Generator

2004-09-30 Por tôpico Vitor Luiz Redes

Atribua um valor qualquer para o campo ... como -1 ...


Louco sim, não normal.
Ser humano ... eu mesmo

Vitor Luiz Redes

Redsystem Informática
  - Original Message - 
  From: Marcelo Silva 
  To: [EMAIL PROTECTED] 
  Sent: Thursday, September 30, 2004 9:15 AM
  Subject: [delphi-br] SimpleDataSet X Generator


  Estou analizando o SimpleDataSet... criei um banco de teste onde tenho

  TABELA 

  ESTOQUE
  EST_CODIGO - Primary Key
  EST_COD_PRODUTO
  EST_DESCRICAO

  Bem, criei o GENERATOR:  GEN_ESTOQUE

  Criei tambem a TRIGGER:

  SET SQL DIALECT 3;
  SET NAMES NONE;
  CREATE GENERATOR GEN_ESTOQUE;
  SET TERM ^ ;
  CREATE TRIGGER ESTOQUE_BI0 FOR ESTOQUE
  ACTIVE BEFORE INSERT POSITION 0
  AS
  begin
if (new.est_codigo is null) then
  new.est_codigo = gen_id(gen_estoque, 1);
  end
  ^
  SET TERM ; ^

  Fiz as ligações corriqueiras lá no delphi e tudo funciona numa boa.. só o detalhe é 
que quando dou um post ele acusa que o campo EST_CODIGO precisa de uma valor... bem 
fui lá e coloquei o REQUERID como false para que a Trigger coloque o valor para mim 
... mas para minha surpresa da a mensagem:
  ---
  Debugger Exception Notification
  ---
  Project Project1.exe raised exception class EDBClient with message 'Field value 
required.'. Process stopped. Use Step or Run to continue.
  ---
  OK   Help   
  ---
  Imagino que não deveria pois a Trigger funciona no IBConsole... mas coisas do delphi 
não é mesmo ?

  Depois de explicado vem a pergunta: Como vocês trabalham com Generator e 
SimpleDataSet ?
  Será que vou ter que fazer um Select Max  e colocar o valor na mão ? Puts isso é 
arcaico :-)

  Marcelo Silva
  Cel. 11 9693-4251
  ICQ - 49224093
  MSN [EMAIL PROTECTED]

  [As partes desta mensagem que não continham texto foram removidas]



  -- 
   FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

  Para ver as mensagens antigas, acesse:
  http://br.groups.yahoo.com/group/delphi-br/messages

  Para falar com o moderador, envie um e-mail para:
  [EMAIL PROTECTED] ou [EMAIL PROTECTED]



Yahoo! Grupos, um serviço oferecido por: 
  


--
  Links do Yahoo! Grupos

a.. Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/
  
b.. Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
  
c.. O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do 
Yahoo!. 



[As partes desta mensagem que não continham texto foram removidas]



-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html

 





Re: [delphi-br] SimpleDataSet X Generator

2004-09-30 Por tôpico Gustavo Führ
Cara, não sei se entendi
bem a tua pergunta mas, o Delphi trava a post do registro se
o campo dele é not null mesmo que tu trate isso no banco
vc tem que jogar alguma coisa pro campo antes de gravar.
Meio tontisse mas é a vida.
Mas eu uso um esquema diferente, sem o uso de generator
pois isso dá quebras com a atualização. Armazeno os códigos
em uma tabela a parte. E busco via sql (before post) o código
a ser usado.

Bom é isso,

Führ


Marcelo Silva wrote:

Estou analizando o SimpleDataSet... criei um banco de teste onde tenho

TABELA 

ESTOQUE
EST_CODIGO - Primary Key
EST_COD_PRODUTO
EST_DESCRICAO

Bem, criei o GENERATOR:  GEN_ESTOQUE

Criei tambem a TRIGGER:

SET SQL DIALECT 3;
SET NAMES NONE;
CREATE GENERATOR GEN_ESTOQUE;
SET TERM ^ ;
CREATE TRIGGER ESTOQUE_BI0 FOR ESTOQUE
ACTIVE BEFORE INSERT POSITION 0
AS
begin
  if (new.est_codigo is null) then
new.est_codigo = gen_id(gen_estoque, 1);
end
^
SET TERM ; ^

Fiz as ligações corriqueiras lá no delphi e tudo funciona numa boa.. só o detalhe é 
que quando dou um post ele acusa que o campo EST_CODIGO precisa de uma valor... bem 
fui lá e coloquei o REQUERID como false para que a Trigger coloque o valor para mim 
... mas para minha surpresa da a mensagem:
---
Debugger Exception Notification
---
Project Project1.exe raised exception class EDBClient with message 'Field value 
required.'. Process stopped. Use Step or Run to continue.
---
OK   Help   
---
Imagino que não deveria pois a Trigger funciona no IBConsole... mas coisas do delphi 
não é mesmo ?

Depois de explicado vem a pergunta: Como vocês trabalham com Generator e 
SimpleDataSet ?
Será que vou ter que fazer um Select Max  e colocar o valor na mão ? Puts isso é 
arcaico :-)

Marcelo Silva
Cel. 11 9693-4251
ICQ - 49224093
MSN [EMAIL PROTECTED]

[As partes desta mensagem que não continham texto foram removidas]



  





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html