Fórum Problema Breakpoint Delphi 7 #366168
14/11/2008
0
Bom dia a todos, tenho um projeto que tem me dado uma certa dor de cabeã faz um bom tempo, o problema é o seguinte ao depurar o programa usando um breakpoint suponhamos na linha 56 (ficará selecionada em vermelho), porém ao executar o depurador e dar um trace into /step over ele na realidade depura a linha 58 (duas linhas abaixo do desejado), logo se eu quiser verificar uma estrutura condicional na linha 102 , preciso colocar o breakpoint na linha 100 para habiltar o mecanismo.
Exemplo abaixo:
function TFormSaida.VerificaQtdeMaterial(Codigo: integer;
Qtde: Currency) : Boolean;
begin
[color=darkblue:a6c8fdc678]Linha 54(2 a menos que a 56)->[/color:a6c8fdc678] {Verifica Se Há Qtde Importada Existe no Estoque} [color=darkblue:a6c8fdc678]// para verificar o valor da linha 56 so consigo colocando duas linhas acima;[/color:a6c8fdc678]
d.cdsMaterial.close;
[color=red:a6c8fdc678]Linha 56 ->[/color:a6c8fdc678] [u:a6c8fdc678] d.cdsMaterial.params[0].asinteger := Codigo;[/u:a6c8fdc678]
d.cdsMaterial.Open;
if (Qtde > (d.cdsMaterialMT_QTDE.ascurrency - d.cdsMaterialMT_QTDE_CONDICIONAL.ascurrency) ) then
begin
result := false;
showmessage(´ QUANTIDADE NO ESTOQUE INSUFICIENTE PARA COMPLETAR VENDA ´ + #13 + 13 +
´ Produto: ´ + d.cdsMaterialMT_DESC.text + 13 + 13 +
´ Qtde em estoque: ´+ FormatCurr(´,0.00´,d.cdsMaterialMT_QTDE.ascurrency) + 13 + 13 +
´ Qtde em condicional: ´+ FormatCurr(´,0.00´,d.cdsMaterialMT_QTDE_CONDICIONAL.ascurrency) + 13 + 13 +
´ Qtde nesta venda: ´ + FormatCurr(´,0.00´,Qtde) );
end
else
result := true;
end;
---------//-------
Bom a minha dúvida (pedido de socorro rs ) é o seguinte:
O que pode estar ocasionando este problema? E como posso resolvê-lo?
Obrigado.
Exemplo abaixo:
function TFormSaida.VerificaQtdeMaterial(Codigo: integer;
Qtde: Currency) : Boolean;
begin
[color=darkblue:a6c8fdc678]Linha 54(2 a menos que a 56)->[/color:a6c8fdc678] {Verifica Se Há Qtde Importada Existe no Estoque} [color=darkblue:a6c8fdc678]// para verificar o valor da linha 56 so consigo colocando duas linhas acima;[/color:a6c8fdc678]
d.cdsMaterial.close;
[color=red:a6c8fdc678]Linha 56 ->[/color:a6c8fdc678] [u:a6c8fdc678] d.cdsMaterial.params[0].asinteger := Codigo;[/u:a6c8fdc678]
d.cdsMaterial.Open;
if (Qtde > (d.cdsMaterialMT_QTDE.ascurrency - d.cdsMaterialMT_QTDE_CONDICIONAL.ascurrency) ) then
begin
result := false;
showmessage(´ QUANTIDADE NO ESTOQUE INSUFICIENTE PARA COMPLETAR VENDA ´ + #13 + 13 +
´ Produto: ´ + d.cdsMaterialMT_DESC.text + 13 + 13 +
´ Qtde em estoque: ´+ FormatCurr(´,0.00´,d.cdsMaterialMT_QTDE.ascurrency) + 13 + 13 +
´ Qtde em condicional: ´+ FormatCurr(´,0.00´,d.cdsMaterialMT_QTDE_CONDICIONAL.ascurrency) + 13 + 13 +
´ Qtde nesta venda: ´ + FormatCurr(´,0.00´,Qtde) );
end
else
result := true;
end;
---------//-------
Bom a minha dúvida (pedido de socorro rs ) é o seguinte:
O que pode estar ocasionando este problema? E como posso resolvê-lo?
Obrigado.
Vfbruno
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)