Validar produto
Pessoal estou fazendo uam comunicaçao com microterminal e preciso fazer uma validação de produto
estou tenda dessa forma mas poremesta dando erro no terminal ele m retorma o valor errado
a função é essa
function TfmTerminais.Valida_Produto(ProdutoTerm: String): integer;
var
Produto_rec : string;
begin
result := 0;
frmmodulo.qrproduto.close;
frmmodulo.qrproduto.ParamByName('codigo').AsString:=CompletaZero(ProdutoTerm, 6);
frmmodulo.qrproduto.open;
if not frmmodulo.qrproduto.IsEmpty then
begin
produto_rec := frmmodulo.qrproduto.fieldbyname('codigo').asstring;
if ProdutoTerm = Produto_rec then
result := 1;
end;
end;
no micro terminal ele m retona 0 sendo q deveria aparecer o nome do produto...
a linha que eu chamo a função é essa
produto[Terminal]:= IntToStr(Valida_Produto(Ind_Produto[Terminal]));
estou tenda dessa forma mas poremesta dando erro no terminal ele m retorma o valor errado
a função é essa
function TfmTerminais.Valida_Produto(ProdutoTerm: String): integer;
var
Produto_rec : string;
begin
result := 0;
frmmodulo.qrproduto.close;
frmmodulo.qrproduto.ParamByName('codigo').AsString:=CompletaZero(ProdutoTerm, 6);
frmmodulo.qrproduto.open;
if not frmmodulo.qrproduto.IsEmpty then
begin
produto_rec := frmmodulo.qrproduto.fieldbyname('codigo').asstring;
if ProdutoTerm = Produto_rec then
result := 1;
end;
end;
no micro terminal ele m retona 0 sendo q deveria aparecer o nome do produto...
a linha que eu chamo a função é essa
produto[Terminal]:= IntToStr(Valida_Produto(Ind_Produto[Terminal]));
Laelson Fagundes
Curtidas 0
Respostas
Carlos Bernardo
11/09/2010
Seu produto_Rec com certeza tem 0 a esquerda preenchido...
Seu ProdutoTerm, talvez nao... entao tenta essa comparacao
If CompletaZero(ProdutoTerm, 6) = Produto_rec then
GOSTEI 0
Laelson Fagundes
11/09/2010
da forma q vc passou nao muda nada da minha
If CompletaZero(ProdutoTerm, 6) = Produto_rec then
é a mesma da minha forma eu ja completo os zeros em cima entao nao precisa passar os zeros de novo...
GOSTEI 0
Carlos Bernardo
11/09/2010
Pessoal estou fazendo uam comunicaçao com microterminal e preciso fazer uma validação de produto
estou tenda dessa forma mas poremesta dando erro no terminal ele m retorma o valor errado
a função é essa
function TfmTerminais.Valida_Produto(ProdutoTerm: String): integer;
var
Produto_rec : string;
begin
result := 0;
frmmodulo.qrproduto.close;
frmmodulo.qrproduto.ParamByName('codigo').AsString:=CompletaZero(ProdutoTerm, 6);
frmmodulo.qrproduto.open;
if not frmmodulo.qrproduto.IsEmpty then
begin
produto_rec := frmmodulo.qrproduto.fieldbyname('codigo').asstring;
if ProdutoTerm = Produto_rec then
result := 1;
end;
end;
no micro terminal ele m retona 0 sendo q deveria aparecer o nome do produto...
a linha que eu chamo a função é essa
produto[Terminal]:= IntToStr(Valida_Produto(Ind_Produto[Terminal]));
Entao amigo... Olhando sua funcao, se " not frmmodulo.qrproduto.IsEmpty ", se essa condicao for verdadeira o resultado deveria ser 1, pois produto_rec sempre sera igual a CompletaZero(ProdutoTerm, 6), faz o seguinte: usa o debug e vai olhando o resultado q vc obtem...
function TfmTerminais.Valida_Produto(ProdutoTerm: String): integer;estou tenda dessa forma mas poremesta dando erro no terminal ele m retorma o valor errado
a função é essa
function TfmTerminais.Valida_Produto(ProdutoTerm: String): integer;
var
Produto_rec : string;
begin
result := 0;
frmmodulo.qrproduto.close;
frmmodulo.qrproduto.ParamByName('codigo').AsString:=CompletaZero(ProdutoTerm, 6);
frmmodulo.qrproduto.open;
if not frmmodulo.qrproduto.IsEmpty then
begin
produto_rec := frmmodulo.qrproduto.fieldbyname('codigo').asstring;
if ProdutoTerm = Produto_rec then
result := 1;
end;
end;
no micro terminal ele m retona 0 sendo q deveria aparecer o nome do produto...
a linha que eu chamo a função é essa
produto[Terminal]:= IntToStr(Valida_Produto(Ind_Produto[Terminal]));
begin
ProdutoTerm := CompletaZero(ProdutoTerm, 6);
result := 0;
frmmodulo.qrproduto.close;
frmmodulo.qrproduto.ParamByName('codigo').AsString:=ProdutoTerm;
frmmodulo.qrproduto.open;
if not frmmodulo.qrproduto.IsEmpty then
result := 1;
end;
Passa qual o comando Sql q vc usa...
GOSTEI 0
Laelson Fagundes
11/09/2010
function TfmTerminais.Valida_Produto(ProdutoTerm: String): integer;
begin
ProdutoTerm := CompletaZero(ProdutoTerm, 6);
result := 0;
frmmodulo.qrproduto.close;
frmmodulo.qrproduto.ParamByName('codigo').AsString:=ProdutoTerm;
frmmodulo.qrproduto.open;
if not frmmodulo.qrproduto.IsEmpty then
result := 1;
end;
Dessa forma não da certo nao ele nao pega parametro nem um dos codigo de produto...
begin
ProdutoTerm := CompletaZero(ProdutoTerm, 6);
result := 0;
frmmodulo.qrproduto.close;
frmmodulo.qrproduto.ParamByName('codigo').AsString:=ProdutoTerm;
frmmodulo.qrproduto.open;
if not frmmodulo.qrproduto.IsEmpty then
result := 1;
end;
Dessa forma não da certo nao ele nao pega parametro nem um dos codigo de produto...
GOSTEI 0