Valeu Chiappa pela dica ....
Segue abaixo a rotina que estou utilizando para inserir o registro, utilizando 
Delphi 7, componente ADO, acessando Oracle 8i.

Ja peguei a rotina tanto de update quanto a de insert e rodei direto no 
SQL/Plus e funciona normalmente, tando usando virgula como ponto para separar 
decimal, mas dentro do programa na rotina abaixo, so funciona se eu informar o 
campo " EditVR_NF.Text " com ponto.

Gostaria de saber se não uma forma de eu deixar livre para o usuario digitar 
com virgulo por exemplo "100,25" e na linha do Update e/ou insert eu formatar 
de uma forma que eu envie para o banco como "100.25", ja que so funciona com 
ponto.

Valeu e uma boa sexta feira a todos
Adalberto


oTemp                         : TADOCommand;

   vs_linha := ' update OCOITEMNFATENDIMENTO set CD_OCORRENCIA = ' + 
EditCdOcorrencia.Text + ','
             + '                                 CD_RESPONSAVEL = ' + 
EditCodResp.Text + ','
             + '                                 QT_TOTAL = ' + EditQuant.Text 
+ ','
             + '                                 CD_UNIDADE = ' + 
QuotedStr((copy((Trim(ComboUnidade.Items.Strings[ComboUnidade.ItemIndex])),1,2))
  ) + ','
             + '                                 NR_NFDESTINATARIO = ' + 
QuotedStr(EditNR_NFDESTINATARIO.Text) + ','
             + '                                 CD_DESTINATARIO = ' + 
QuotedStr(EditCD_DESTINATARIO.Text) + ','
             + '                                 VR_NF = ' + 
QuotedStr(EditVR_NF.Text)
             + '                           WHERE NR_ATENDIMENTO = ' + 
Form_ViagensCallCenter.adoTBItemNFAtendimentoNR_ATENDIMENTO.AsString
             + '                             and CD_EMPRESA = ' + 
Form_ViagensCallCenter.adoTBItemNFAtendimentoCD_EMPRESA.AsString
             + '                             and CD_FILIAL = ' + 
Form_ViagensCallCenter.adoTBItemNFAtendimentoCD_FILIAL.AsString
             + '                             and NR_NF = ' + 
QuotedStr(Form_ViagensCallCenter.adoTBItemNFAtendimentoNR_NF.AsString)
             + '                             and CD_REMETENTE = ' + 
QuotedStr(Form_ViagensCallCenter.adoTBItemNFAtendimentoCD_REMETENTE.AsString )
             + '                             and NR_ITEM = ' + 
Form_ViagensCallCenter.adoTBItemNFAtendimentoNR_ITEM.AsString
             + '                             and CD_PRODUTO = ' + 
QuotedStr(Form_ViagensCallCenter.adoTBItemNFAtendimentoCD_PRODUTO.AsString);

   oTemp.Connection.BeginTrans;
   oTemp.CommandText := vs_linha;
   oTemp.Execute(iTemp, null);

   case iTemp of
      0: begin
         oTemp.CommandText := ' insert into OCOITEMNFATENDIMENTO 
(NR_ATENDIMENTO, ' 
                            + ' CD_EMPRESA, '
                            + ' CD_FILIAL, '
                            + '                                    NR_NF, '
                            + ' CD_REMETENTE, '
                            + '                                    NR_ITEM, '
                            + ' CD_PRODUTO, '
                            + ' CD_OCORRENCIA, '
                            + ' CD_RESPONSAVEL, '
                            + '                                    QT_TOTAL,'
                            + ' CD_UNIDADE, '
                            + ' NR_NFDESTINATARIO, '
                            + ' CD_DESTINATARIO, '
                            + '                                    VR_NF '
                            + '                                  ) '
                            + '                           values ( '
                            + 
Form_ViagensCallCenter.adoTBItemNFAtendimentoNR_ATENDIMENTO.AsString + ','
                            + 
Form_ViagensCallCenter.adoTBItemNFAtendimentoCD_EMPRESA.AsString + ','
                            + 
Form_ViagensCallCenter.adoTBItemNFAtendimentoCD_FILIAL.AsString + ','
                            + 
QuotedStr(Form_ViagensCallCenter.adoTBItemNFAtendimentoNR_NF.AsString) + ','
                            + 
QuotedStr(Form_ViagensCallCenter.adoTBItemNFAtendimentoCD_REMETENTE.AsString ) 
+ ','
                            + 
Form_ViagensCallCenter.adoTBItemNFAtendimentoNR_ITEM.AsString + ','
                            + 
QuotedStr(Form_ViagensCallCenter.adoTBItemNFAtendimentoCD_PRODUTO.AsString) + 
','
                            + EditCdOcorrencia.Text + ','
                            + EditCodResp.Text + ','
                            + EditQuant.Text + ','
                            + 
QuotedStr((copy((Trim(ComboUnidade.Items.Strings[ComboUnidade.ItemIndex])),1,2))
 ) + ','
                            + QuotedStr(EditNR_NFDESTINATARIO.Text) + ','
                            + QuotedStr(EditCD_DESTINATARIO.Text) + ','
                            + QuotedStr(EditVR_NF.Text)
                            + '                                  ) ';

         try
            oTemp.Execute (iTemp, null);
            if (iTemp = 1) then oTemp.Connection.CommitTrans
         except
            oTemp.Connection.RollbackTrans;
         end;
      end;
   end;


  ----- Original Message ----- 
  From: jlchiappa 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Thursday, March 02, 2006 8:47 PM
  Subject: [oracle_br] Re: Formatar Valor Numerico


  Diga exatamente QUAL é a sua linguagem/tool de programação, o ambiente
  (se client/server ou web), de que maneira vc conecta no banco (se usa
  ODBC/OLEDB/JDBC ou client Oracle nativo), e de que maneira vc está
  enviando seus SQLs pro banco (qual método, se é SQl dinãmico ou não,
  um exemplinho curto vai bem também), que quem trabalha com a mesma
  coisa que vc talvez possa dizer . No Forms client/server, por exemplo,
  com SQL executado em triggers, vc sempre usa ponto decimal em vars
  numéricas, e no caso de text itens que vc queira usar como bind
  variables basta os definir como datatype number.

  []s

  Chiappa
  --- Em oracle_br@yahoogrupos.com.br, "Adalberto Sousa Monteiro"
  <[EMAIL PROTECTED]> escreveu
  >
  > Boa tarde ao grupo,
  > Como faço para formatar um valor númerico na hora do insert ou update ?
  > 
  > É o seguinte, quando tento dar um insert ou update através da minha
  aplicação com o seguinte valor 400,50 ele me da erro de numero
  invalido e quando mudo para 400.50 ele inseri numa boa, alguem poderia
  me dar uma dica como formatar isso de uma forma que seja indiferente a
  formatação de virgula ou ponto ??
  > 
  > Valeu
  > Adalberto
  > 
  > [As partes desta mensagem que não continham texto foram removidas]
  >







  
--------------------------------------------------------------------------------------------------------------------------
  Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
  Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
  
--------------------------------------------------------------------------------------------------------------------------__________________________________________________________________
  Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 




        Yahoo! Grupos, um serviço oferecido por: 
              PUBLICIDADE
                
       


------------------------------------------------------------------------------
  Links do Yahoo! Grupos

    a.. Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_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]



--------------------------------------------------------------------------------------------------------------------------
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--------------------------------------------------------------------------------------------------------------------------__________________________________________________________________
Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 

 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_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

 



Responder a