Re: [delphi-br] Data vazia
Marlon Primeiro que agradecer a você e aos outros colegas por tentar ajudar. Bem, eu havia pensado na opção2 que você mandou, mas eu queria ver se tinha um jeito mais simples. Estranha o null e o clear não funcionarem. Vou olhar a opção 1 também. Depois falo qual funcionou ! Marlon Tiedt [EMAIL PROTECTED] escreveu: Ricardo como você está fazendo SQL dinamico, voçê pode ou não colocar o campo no sql. Faça como a opção 2. A opção 1, é criar os parametros em tempo de execução. para isto faça assim: Declare variveis do tipo TParam e crie ele assim: _rparData1 := TParam.Create(dmpromo.SQLCpromo.Params, ptInput); _rparData1.Name := 'P_Data1'; _rparData2 := TParam.Create(dmpromo.SQLCpromo.Params, ptInput); _rparData2.Name := 'P_Data2'; []s, Marlon Opção 2 transacao.TransactionID :=1; transacao.IsolationLevel:=xilReadCommitted; dmpromo.SQLCpromo.StartTransaction(transacao); with dmpromo.SQLDataSet_promo do begin // with Close; CommandType:=ctQuery; CommandText:='Insert into clientes '+ '(idcliente,fantasia, razao,cnpj_cpf,rg_ie,tipo_cliente,tipo_logradouro, '+ 'endereco, numero, complemento, cep, bairro, cidade, uf, telefone, '+ 'celular, fax, email, nome_socio,dtnascimento_socio ,cpf_socio, rg_socio,'+ 'nome_socio2,dtnascimento_socio2,cpf_socio2, rg_socio2,'; // alterei aqui if ffuncoes.validadata(MaskEdit_dtnasccliente.Text) then CommandText := CommandText + ' data_nascimento, '; CommandText := CommandText + ' login, data_cpu, contato,contratosocial_entregue,'+ 'cnpj_entregue,idramo,observacao,idvendedor,site,'+ 'nome_comprador1,nascimento_comprador1,cargo_comprador1,email_comprador1,'+ 'nome_comprador2,nascimento_comprador2,cargo_comprador2,email_comprador2,'+ 'data_cadastro,situacao_cliente, credito) '+ 'values (:xidcli,:xfanta, :xrazao, :xcnpj, :xrgie, :xtipocli, :xtipolog, '+ ':xend, :xnum, :xcompl, :xcep, :xbairro, :xcidade, :xuf, :xtel,'+ ':xcel, :xfax, :xemail, :xnmsocio1,:xdtsocio1 ,:xcpfsocio1, :xrgsocio1,'+ ':xnmsocio2,:xdtsocio2,:xcpfsocio2,:xrgsocio2,'+ // alterei aqui tb if ffuncoes.validadata(MaskEdit_dtnasccliente.Text) then CommandText := CommandText + ':xdtnasc, '; CommandText := CommandText + ':xlogin,:xdtcpu, :xcontact,:xcontrato,:xcnpjentreg,:xidramo,:xobs,:xidvend,:xsite,'+ ':xnmcompra1,:xnasccompra1,:xcargo1,:xemailcomprador1,'+ ':xnmcompra2,:xnasccompra2,:xcargo2,:xemailcomprador2,'+ ':xdtcad,:xsitcli,:xcred '+ ')'; ParamByName('xidcli').AsInteger :=idcli; ParamByName('xfanta').AsString :=Edit_fantasia.Text; ParamByName('xrazao').AsString :=Edit_nomecliente.Text; ParamByName('xcnpj').AsString :=ffuncoes.numeros(xcpf_cnpj); Parambyname('xrgie').AsString :=Edit_rg_ie.Text; ParamByName('xtipocli').AsString:=tipocli; ParamByName('xtipolog').AsString:=CbBox_lograd.Text; ParamByName('xend').AsString:=Edit_endereco.Text; ParamByName('xnum').AsString:=Edit_numero.Text; ParamByName('xcompl').AsString:=Edit_compl.Text; ParamByName('xcep').AsString:=Edit_cep.Text; ParamByName('xbairro').AsString:=Edit_bairro.Text; ParamByName('xcidade').AsString:=edit_cidade.Text; ParamByName('xuf').AsString:=ComboBox_uf.Text; ParamByName('xtel').AsString:=Memo_tels.Text;// Edit_tels.Text; ParamByName('xcel').AsString:=ed_cel.Text; ParamByName('xfax').AsString:=Edit_fax.Text; ParamByName('xemail').AsString:=Edit_email.Text; ParamByName('xcpfsocio1').AsString:=ffuncoes.numeros(ed_cpfsocio.Text); ParamByName('xrgsocio1').AsString:=ed_rgsocio.Text; ParamByName('xcpfsocio2').AsString:=ffuncoes.numeros(ed_cpfsocio2.Text); ParamByName('xrgsocio2').AsString:=ed_rgsocio2.Text; //if not ffuncoes.validadata(MaskEdit_dtnasccliente.Text) then //ParamByName( 'xdtnasc' ).Clear //else ParamByName('xdtnasc').AsDate:= strtodate(MaskEdit_dtnasccliente.text); // aqui tb if ffuncoes.validadata(MaskEdit_dtnasccliente.Text) then ParamByName('xdtnasc').AsDate:= strtodate(MaskEdit_dtnasccliente.text); ParamByName('xlogin').AsString:=login_user; ParamByName('xdtcpu').AsDate:=date; ParamByName('xcontact').AsString:=ed_contato.Text; if ChkBox_contrato.Checked then ParamByName('xcontrato').AsString:='1' else ParamByName('xcontrato').AsString:='0'; if ChkBox_cnpj.Checked then ParamByName('xcnpjentreg').AsString:='1' else ParamByName('xcnpjentreg').AsString:='0'; if ffuncoes.ValidaInt(edit_ramo.Text) then Parambyname('xidramo').AsInteger:=Strtoint(edit_ramo.Text) else Parambyname('xidramo').AsInteger:=0; ParamByName('xobs').AsString:=memo_obs.Text; // edit_obs.Text; if ffuncoes.ValidaInt(ed_numvend.Text) then ParamByName('xidvend').AsInteger:=strtoint(ed_numvend.Text) else ParamByName('xidvend').AsInteger:=0; ParamByName('xsite').AsString:=ed_site.Text; if novocli then ParamByName('xdtcad').AsDate:=Now; end; // with dmpromo.SQLDataSet_promo.ExecSQL; dmpromo.SQLCpromo.Commit(transacao); [As partes desta mensagem que
Re: [delphi-br] Data vazia
DataType é definido quando você para o parametro. Com dbExpress, campo data puro eu uso integer. Eu uso MSSQL 2005. FormRelAtendimentos.qryAtendimentos.Params.ParamByName('P_Data1').AsInteger := Trunc(edtDataInicio.Date); []s, Marlon - Original Message - From: Marcos Douglas To: delphi-br@yahoogrupos.com.br Sent: Tuesday, January 08, 2008 9:43 AM Subject: Re: [delphi-br] Data vazia Ricardo, Vc tem que definir o DataType do campo. Se o campo que foi criado dinâmicamente não tiver um tipo definido, acontece esta Exception. Defina o campo como ftTimeStamp. Abraços Marcos Douglas On 1/8/08, Ricardo Cabral [EMAIL PROTECTED] wrote: Marlon Primeiro que agradecer a você e aos outros colegas por tentar ajudar. Bem, eu havia pensado na opção2 que você mandou, mas eu queria ver se tinha um jeito mais simples. Estranha o null e o clear não funcionarem. Vou olhar a opção 1 também. Depois falo qual funcionou ! . [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] Data vazia
'; if ffuncoes.ValidaInt(edit_ramo.Text) then Parambyname('xidramo').AsInteger:=Strtoint(edit_ramo.Text) else Parambyname('xidramo').AsInteger:=0; ParamByName('xobs').AsString:=memo_obs.Text; // edit_obs.Text; if ffuncoes.ValidaInt(ed_numvend.Text) then ParamByName('xidvend').AsInteger:=strtoint(ed_numvend.Text) else ParamByName('xidvend').AsInteger:=0; ParamByName('xsite').AsString:=ed_site.Text; if novocli then ParamByName('xdtcad').AsDate:=Now; end; // with dmpromo.SQLDataSet_promo.ExecSQL; dmpromo.SQLCpromo.Commit(transacao); Marlon Tiedt [EMAIL PROTECTED] escreveu: Como você está acessando o BD? Via dbExpress? O campo é obrigatório? Passo o código inteiro para a gente dar uma olhada. []s, Marlon - Original Message - From: Ricardo Cabral To: delphi-br@yahoogrupos.com.br Sent: Monday, January 07, 2008 11:54 AM Subject: RE: [delphi-br] Data vazia Bom Dia ! Quando coloco ParamByName('xdtnasc').Value := null ou ParamByName('xdtnasc').clear, dá uma mensagem de rro: No value for parameter 'XDTNASC' Jiuney Pachevitch [EMAIL PROTECTED] escreveu: Bom dia! Qual a msg de erro que dá? To: [EMAIL PROTECTED]: [EMAIL PROTECTED]: Mon, 7 Jan 2008 10:39:53 -0300Subject: Re: [delphi-br] Data vazia Gerson,Já havia tentado isso também. O delphi até compilas, mas dá erro na hora da execução.Valeu!Gerson Machado [EMAIL PROTECTED] escreveu: Veja ParamByName( 'xdtnasc' ).Clear;GersonRicardo Cabral [EMAIL PROTECTED] escreveu:Marlon e Davi,Agradeço as dicas de ambos, mas não funcionou. O delphi até compila, mas dá erro em tempo de execução.[]´s RicardoMarlon Tiedt [EMAIL PROTECTED] escreveu: Ou você pode fazer assim:ParamByName('xdtnasc').Value := null;Funciona com qualquer tipo de campo.FalouMarlon- Original Message - From: Davi Eduardo Borges Wall To: delphi-br@yahoogrupos.com.br Sent: Monday, January 07, 2008 10:35 AMSubject: RES: [delphi-br] Data vaziaParamByName('xdtnasc').DataType := FtDateTime;ParamByName('xdtnasc').Clear;De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Ricardo CabralEnviada em: segunda-feira, 7 de janeiro de 2008 10:30Para: [EMAIL PROTECTED]: [delphi-br] Data vaziaCaros colegas,Uso o delphi 7 com firebird.Tenho um problema na hora de gravar em um campo data. No formulário de cadastro tem um edit para data de nascimento. O problema é gravar nesse campo quando o usuário deixa vazio.já tentei ParamByName('xdtnasc').AsDate:=null, mas mesmo assim dá erro!Alguém tem uma dica ?Desde de já agradeço.Abraços,Ricardo Cabral-Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas][As partes desta mensagem que não continham texto foram removidas]--No virus found in this incoming message.Checked by AVG Free Edition. Version: 7.5.516 / Virus Database: 269.17.13/1213 - Release Date: 7/1/2008 09:14[As partes desta mensagem que não continham texto foram removidas]-Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]-Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]Abraços,Ricardo Cabral-Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas] __ Veja mapas e encontre as melhores rotas para fugir do trânsito com o Live Search Maps! http://www.livemaps.com.br/index.aspx?tr=true [As partes desta mensagem que não continham texto foram removidas] Abraços, Ricardo Cabral - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas] -- No virus found in this incoming message. Checked by AVG Free Edition. Version: 7.5.516 / Virus Database: 269.17.13/1213 - Release Date: 7/1/2008 09:14 [As partes desta mensagem que não continham texto foram removidas] Abraços, Ricardo Cabral - Abra sua conta no Yahoo! Mail, o único sem limite de espaço para armazenamento! [As partes desta mensagem que não continham texto foram removidas]
Re: [delphi-br] DATA VAZIA?
NULL -- Att. Gustavo Sequeira Respondeu-lhe Yaohushua: Eu sou o caminho, e a verdade, e a vida; ninguém vem ao Pai, senão por mim. [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] 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
[delphi-br] DATA VAZIA?
GALERA Qual é a melhor forma de tratar uma data vazia em um edit ? Grato Luis ___ Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora! http://br.acesso.yahoo.com -- 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] 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