Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 1906 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Olá, estou com este erro ao executa a procedure abaixo,

procedure TFrmConsProd.BtnOkClick(Sender: TObject);
var sLiga : string;

begin


  sLiga:= 'WHERE';

   if EdtCons.Visible then
      sAuxString:= trim(EdtCons.Text);

   if dm.IBTransaction.Active then
      dm.IBTransaction.Commit;
   dm.IBTransaction.StartTransaction;
   with dm.QProd do
      begin
         close;
         sql.Clear;
         sql.Text:= sSql;
         if ComboClassif.ItemIndex > 0 then
            begin
               sql.add('WHERE P.CODIGO_TIPO = :CODTIPO');
               parambyname('codtipo').AsInteger:= strtoint(copy(ComboClassif.Text, 2, 2));
               sLiga:= 'AND';
            end;
         if RdgAtivo.ItemIndex = 0 then
            begin
               sql.add(sLiga + ' P.ATIVO_PRO = ' + #39 + 'S' + #39);
               sLiga:= 'AND';
            end
         else
            if RdgAtivo.ItemIndex = 1 then
               begin
                  sql.add(sLiga + 'P.ATIVO_PRO = ' + #39 + 'N' + #39);
                  sLiga:= 'AND';
               end;

         case combocons.ItemIndex of
           0:begin
                if EdtCons.Text = '' then
                   sql.add(' ORDER BY P.COD_PRO')
                else
                   sql.add(sLiga + ' COD_PRO = ' + edtcons.Text);
             end;
           1:sql.add(sLiga +  ' P.NOME_PRO LIKE ' + #39 + edtcons.Text + '%' + #39 + ' ORDER BY NOME_PRO');
           2:sql.add(sLiga +  ' P.REFERENCIA_PRO LIKE ' + #39 + edtcons.Text + #39);
           3:sql.add(sLiga +  ' P.CODIGO_BARRA_PRO LIKE ' + #39 + trim(edtcons.Text) + #39);
           4:begin
                if trim(EdtCod.Text) = '' then
                   begin
                      showmessage('Digite o código do fabricante');
                      EdtCod.SetFocus;
                      exit;
                   end;
                sql.add(sLiga +  ' P.COD_LAB = ' + edtcod.Text + ' ORDER BY P.NOME_PRO');
                open;
             end;
           5:begin
                if trim(EdtCod.Text) = '' then
                   begin
                      showmessage('Digite o código da seção');
                      EdtCod.SetFocus;
                      exit;
                   end;
                sql.Add(sLiga + ' P.COD_SEC = ' + edtcod.Text + ' ORDER BY P.NOME_PRO');
             end;
           6:sql.add(sLiga +  ' P.NOME_PRO LIKE ' + #39 + '%' + EdtCons.Text + '%' + #39 + ' ORDER BY NOME_PRO');
         end;
         Parambyname('codemp').AsInteger:= iEmp;
         open;
      end;
   dbgrid.SetFocus;
end;

VirtualBox.png

  • Consultores
Postado

Sem saber exatamente qual o seu SQL fica difícil opinar. Tente o que o Breno sugeriu acima.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Postado

Obrigado pela atenção, esse erro acontece quando eu dor entrada em uma nota vai XML e logo apois eu tento consulta o produto, tenho que fecha toda a aplicação e abrir novamente para a consulta funcionar, estão na sei por onde começo pela query de consulta ou de cadastro de produtos.

Obs.; peso desculpas pois estou começando.

  • Consultores
Postado
Em 07/09/2019 at 23:46, Luelto Lucio disse:

brigado pela atenção, esse erro acontece quando eu dor entrada em uma nota vai XML e logo apois eu tento consulta o produto, tenho que fecha toda a aplicação e abrir novamente para a consulta funcionar, estão na sei por onde começo pela query de consulta ou de cadastro de produtos.

Faz o Debug pra descobrir exatamente onde o erro está sendo levantado. A partir daí você analisa em que contexto o erro está sendo levantado.

  • Curtir 1

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • Este tópico foi criado há 1906 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...