ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Problema na conversão String para Integer!!

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
antonio.command
Novato
Novato


Registrado: Sexta-Feira, 8 de Junho de 2007
Mensagens: 68
Localização: Fortaleza

MensagemEnviada: Dom Jan 25, 2015 5:57 pm    Assunto: Problema na conversão String para Integer!! Responder com Citação

Galera estou com problema na hora de abrir o relatório de vendas por vendedor. Ao clicar no botão visualizar está dando erro "IS NOT A VALID INTEGER VALUE". POR FAVOR ALGUÉM ME AJUDE!!

VEJA O COMANDO....

Código:
Function TFrmVendasPorVendedor.GerarRelatorio: Boolean;
var
  Linha: String;
begin
  try
    Result := false;
    Rewrite(DM.ArqRelatorio);

    Writeln(dm.ArqRelatorio, DM.TParametrosEmpresa.AsString);
    Writeln(dm.ArqRelatorio,'RELATÓRIO DE VENDAS POR PERÍODO                                   DATA DA IMPRESSÃO: ' + DateToStr(Date));
    Writeln(dm.ArqRelatorio,'===============================================================================================');
    Writeln(dm.ArqRelatorio,'DATA INICIAL: ' + LeftStr(Edit_DataInicial.Text,10) + '   DATA FINAL: ' +
    LeftStr(Edit_DataFinal.Text,10));
    Writeln(dm.ArqRelatorio,'===============================================================================================');
    Writeln(dm.ArqRelatorio,'DATA      COMANDA CLIENTE                              QTDE ITENS DESC(%) VLR LIQUIDO  PAGTO');
    Writeln(dm.ArqRelatorio,'-----------------------------------------------------------------------------------------------');
    QVendas.Close;
    if QVendedores.IsEmpty OR not QVendedores.Active then
      QVendas.SQL.Text:= 'select * from Vendas where' + SQLVendas
    else
    begin
      QVendas.SQL.Text:= 'select * from Vendas where' + SQLVendas + ' and Vendedor=:Vend';
      QVendas.Parameters.ParamByName('Vend').Value:= StrToInt(Edt_vendedor.Text);
    end;
    QVendas.Parameters.ParamByName('DATAINICIAL').Value:= StrToDate(Edit_DataInicial.Text);
    QVendas.Parameters.ParamByName('DATAFINAL').Value:= StrToDate(Edit_DataFinal.Text);
    QVendas.Open;
    if not QVendas.IsEmpty then
    while not QVendas.Eof do
    begin
      QAuxiliar.Close; QAuxiliar.SQL.Text:= 'select * from Clientes where Codigo=:Codigo';
      QAuxiliar.Parameters[0].Value:= QVendasCliente.AsInteger;
      QAuxiliar.Open;
      Writeln(dm.ArqRelatorio, LeftStr(QVendasData.AsString + Dm.Space(10),10) + ' '+
      FormatFloat('000000', QVendasComanda.AsInteger) + ' ' +
      FormatFloat('0000',QVendasCliente.AsInteger) +'-'+
      LeftStr(QAuxiliar.FieldByName('Nome').asString + Dm.Space(32),32) + ' '+
      RightStr(DM.Space(9) + FormatFloat('#,##0.000',QVendasQtdeItens.AsFloat),9) +' '+
      RightStr(DM.Space(7) + FormatFloat('##0.00',QVendasDescontoPorcetagem.AsFloat),7) + ' '+
      RightStr(Dm.Space(11) + FormatFloat('#,##0.00',QVendasValorLiquido.AsFloat),11)   +'  '+
      LeftStr(QVendasFormaPagto.AsString + Dm.Space(8),8)
      );
      QVendas.Next;
    end;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
joemil
Moderador
Moderador


Registrado: Quinta-Feira, 25 de Março de 2004
Mensagens: 9100
Localização: Sinop-MT

MensagemEnviada: Seg Jan 26, 2015 8:53 am    Assunto: Responder com Citação

coloca um ShowMessage pra saber qual o conteudo do campo:

exemplo:

Código:
ShowMessage(QVendasComanda.AsString);

_________________
<b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
natanbh1
Colaborador
Colaborador


Registrado: Terça-Feira, 15 de Março de 2011
Mensagens: 3093
Localização: Belo Horizonte - MG

MensagemEnviada: Seg Jan 26, 2015 9:04 am    Assunto: Responder com Citação

A melhor maneira de encontrar o erro é debugando linha a linha o código.

Altere estas linhas:
Código:
QVendas.Parameters.ParamByName('Vend').Value:= StrToInt(Edt_vendedor.Text);

Código:
FormatFloat('000000', QVendasComanda.AsInteger) + ' ' +

Código:
FormatFloat('0000',QVendasCliente.AsInteger) +'-'+


Por estas:
Código:
QVendas.Parameters.ParamByName('Vend').Value:= Edt_vendedor.Text;

Código:
FormatFloat('000000', QVendasComanda.Value) + ' ' +

Código:
FormatFloat('0000',QVendasCliente.Value) +'-'+

_________________
''A persistência é o caminho para o êxito.''
Charlie Chaplin
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
rodrigoprado
Colaborador
Colaborador


Registrado: Terça-Feira, 24 de Mai de 2005
Mensagens: 1074
Localização: Curitiba/PR

MensagemEnviada: Seg Jan 26, 2015 9:18 am    Assunto: Responder com Citação

Amigo joga um breakpoint no inicio desse código, e vai linha a linha, quando para vc nos fale qual linha que é.... ai fica mais facil
_________________
- Compartilhe seus conhecimentos -
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
antonio.command
Novato
Novato


Registrado: Sexta-Feira, 8 de Junho de 2007
Mensagens: 68
Localização: Fortaleza

MensagemEnviada: Seg Jan 26, 2015 7:38 pm    Assunto: Agradecimento. Responder com Citação

Olá amigos, acabei conseguindo. O problema era que tinha colocado para visualizar o edit errado tipo... No formulario tem o edt_CodVendedor e o Edt_Vendedor. Realmente o que tinha no edi_vendedor era strings por isso não estava dando certo. Mas agradeço pois foi atraves dessas suas ideias que percebi o meu GRANDE ERRO!! Valeu meus amigos vocês vão longe.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB