Ir para conteúdo
  • Cadastre-se

dev botao

Problemas Com Etiquetas


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

Recommended Posts

  • Membros Pro

Olá pessoal!

Tenho o seguinte problema, estou usando D7 + Paleta ACBr, estou desenvolvendo etiquetas para meu cliente, onde serão impressos 2 colunas de etiquetas, com informações variadas em cada etiqueta, ou seja, se houver 100 etiquetas, serão 100 etiquetas diferentes, mas vamos ao problema. Criei um gerenciador para controlar o preenchimento dos parâmetros das duas colunas, e disparar para imprimir, até aí blz, se eu mando imprimir 1 ou 2 etiquetas, que fecham a as 2 colunas ou uma, imprime sem problemas, mas se eu tiver 3 etiquetas, ele apenas imprime as 2 primeiras etiquetas, as demais não imprime, apenas se tiver em modo de depuração. Tentei com sleep, mas não deu certo. Eu não sei se estou alimentando corretamente o componente. Podem me auxiliar? Coloquei a ordem que estou usando para verificarem um possivel erro.

 
  cdsEtiP.First;
  while (not cdsEtiP.Eof) do
  begin
    ACBrETQ1.Ativar;
    repeat
      with ACBrETQ1 do
      begin
        //Coluna 1.
        if iColuna = 1 then
        begin
          ACBrETQ1.LimparMemoria := True;
          ImprimirTexto(or90,2,1,1,5,170, Centraliza(cNome,30));
          ImprimirTexto(or90,2,1,1,5,210, 'Ref: '+ QuebraString(cdsEtiPDSPRODUTO.Value,26,1));
          ImprimirTexto(or90,2,1,1,5,240,  '     '+ QuebraString(cdsEtiPDSPRODUTO.Value,26,2));
          ImprimirTexto(or90,2,1,1,5,280,  'Cor: '+ StrNumb(cdsEtiPCDCOR.Value,2) + ' - ' + cdsGen.FieldByName('DSCOR').AsString);
          ImprimirTexto(or90,2,1,1,5,310,  'Tam: '+ StrNumb(cdsEtiPCDTAMANHO.Value,2) + ' - ' + cdsGen.FieldByName('DSTAMANHO').AsString);
          cCodBarra := StrNumb(cdsEtiPCDREDUZIDO.Value,06) +
                       StrNumb(cdsEtiPCDCOR.Value,03)      +
                       StrNumb(cdsEtiPCDTAMANHO.Value,02)  +
                       StrNumb(iCont,03);
          ImprimirBarras(or90, cBarra, '2','2',5, 430, cCodBarra, iAlturaBarra, becSIM);
          Dec(iQt); Inc(iCont);
          Inc(iColuna);
        end;
        //Coluna 2.
        if (iColuna = 2) and (iQt > 0) then
        begin
          ImprimirTexto(or90,2,1,1,5,iLarq + 170, Centraliza(cNome,30));
          ImprimirTexto(or90,2,1,1,5,iLarq +210, 'Ref: '+ QuebraString(cdsEtiPDSPRODUTO.Value,26,1));
          ImprimirTexto(or90,2,1,1,5,iLarq +240, '     '+ QuebraString(cdsEtiPDSPRODUTO.Value,26,2));
          ImprimirTexto(or90,2,1,1,5,iLarq +280,  'Cor: '+ StrNumb(cdsEtiPCDCOR.Value,2) + ' - ' + cdsGen.FieldByName('DSCOR').AsString);
          ImprimirTexto(or90,2,1,1,5,iLarq +310,  'Tam: '+ StrNumb(cdsEtiPCDTAMANHO.Value,2) + ' - ' + cdsGen.FieldByName('DSTAMANHO').AsString);
          cCodBarra := StrNumb(cdsEtiPCDREDUZIDO.Value,06) +
                       StrNumb(cdsEtiPCDCOR.Value,03)      +
                       StrNumb(cdsEtiPCDTAMANHO.Value,02)  +
                       StrNumb(iCont,03);
          ImprimirBarras(or90, cBarra, '2','2',5,iLarq + 430, cCodBarra, iAlturaBarra, becSIM);
          Dec(iQt); Inc(iCont); vImprimir := True;
        end;
        if (iColuna = 2) and (vImprimir) then
        begin
          iColuna := 1;
          vImprimir := False;
          ACBrETQ1.Imprimir(1,600);
        end;
      end;
    until iQt = 0;
    cdsEtiP.Next;
  end;
  if ACBrETQ1.Ativo then
  begin
    ACBrETQ1.Imprimir(1,600);
    ACBrETQ1.Desativar;
  end;
Link para o comentário
Compartilhar em outros sites

  • 2 meses depois ...

Boa tarde

 

Cristiano, conseguiu solucionar o problema ?

Estou com o mesmo, mando imprimir 100 etiquetas com informação diferente, quando estava usando limparmemoria=true ele fazia a impressão correta porem a cada linha de etiqueta ele da um pause e imprime...coloquei limparmemoria=false acabou o problema imprime rápido porem agora a impressora está louca, começa a imprimir, imprime 6 etiquetas e para....

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 3471 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.