Ir para conteúdo
  • Cadastre-se

dev botao

ACBRMter - esta pulando uma linha nas chamadas


Ver Solução Respondido por tiagopassarella,
  • Este tópico foi criado há 2158 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Bom Dia pessoal...

vamos ver se vcs conseguem me ajudar...

eu estou implantando o Micro terminal em meu sistema, e a minha dificuldade esta que sempre que mando um texto ele fica um poco cortado pois da impressao que esta pulando uma linha apos o texto...

vou postar aki o meu codigo pra ver se vcs podem me ajudar...

e um print do texto como ta ficando no micro terminal...

 

este e o codigo para alterar o estado do micro terminal...

function TFrmPrincipal.AlterarEstadoTerminal(aIP: String;
  aEstado: Integer): Boolean;
begin
      Result := True;
      try
            ACBrMTer1.LimparDisplay(aIP);
            _EstadoMicroterminal := aEstado;
            case aEstado of
                  0: Exit;
                  1: ACBrMTer1.EnviarTexto(aIP, 'Operador: ');
                  2: ACBrMTer1.EnviarTexto(aIP, 'Comanda: ');
                  3: ACBrMTer1.EnviarTexto(aIP, 'Item: ');
            end;
      finally
        Result := false;
      end;
end;

 

aqui e o que ele faz com as chamadas...

procedure TFrmPrincipal.AvaliarRespostaTerminal(aIP: AnsiString;
  var aString: AnsiString);
var
Qry:TSQLQuery;
begin
     case _EstadoMicroterminal of
          1: // PEDE OPERADOR
          begin
                 Qry := TSQLQuery.Create(nil);
                 qry.SQLConnection := DataModule1.Conexao;

                 qry.SQL.Text := 'SELECT ID,NOME FROM TBVENDEDORES WHERE ID=:p1';
                 QRY.ParamByName('p1').AsInteger := StrToInt(_RespostaMicroterminal);
                 QRY.Open;
                 if not QRY.IsEmpty then
                 begin
                       ACBrMTer1.EnviarTexto(aIP,' - ' + QRY.FieldByName('NOME').AsString);
                       Sleep(1000);
                 END ELSE begin
                       Qry.SQL.Clear;
                       Qry.Close;
                       Qry.Free;
                       _RespostaMicroterminal := '';
                       ACBrMTer1.LimparDisplay(aIP);
                       ACBrMTer1.EnviarTexto(aIP, 'OPERADOR NAO CADASTRADO');
                       Sleep(2000);
                       Passou := false;
                       ACBrMTer1.LimparDisplay(aIP);
                       AlterarEstadoTerminal(aIP,1);
                 end;
                 Qry.SQL.Clear;
                 Qry.Close;
                 Qry.Free;
                 _RespostaMicroterminal := '';
                 Passou := true;
                 AlterarEstadoTerminal(aIP,2); // AKI ESTA O PROBLEMA
          end;

          2: // PEDE COMANDA
          begin

          end;

          3: // PEDE ITEM
          begin

          end;
     end;
end;

O PROBLEMA ESTA NESSA PARTE...

AlterarEstadoTerminal(aIP,2); // AKI ESTA O PROBLEMA

apos ele entrar ai ele volta pedindo o numero da comanda... e junto com a solicitação ele esta indo um ENTER nao sei por que...

ai o texto fica cortado conforme imagem abaixo

erro.png.29404d5ffa3e250a0bf8efe2f166a08c.png

 

espero que tenha dado pra entender o que esta ocorrendo, e espero que possam me ajudar.

desde ja muito grato...

 

att

Tiago Passarella

  • Administradores
Postado

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 2158 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.