{******************************************************************************}
{ Projeto: Componentes ACBr                                                    }
{  Biblioteca multiplataforma de componentes Delphi para interao com equipa- }
{ mentos de Automao Comercial utilizados no Brasil                           }
{                                                                              }
{  Voc pode obter a ltima verso desse arquivo na pgina do Projeto ACBr     }
{ Componentes localizado em      http://www.sourceforge.net/projects/acbr      }
{                                                                              }
{  Esta biblioteca  software livre; voc pode redistribu-la e/ou modific-la }
{ sob os termos da Licena Pblica Geral Menor do GNU conforme publicada pela  }
{ Free Software Foundation; tanto a verso 2.1 da Licena, ou (a seu critrio) }
{ qualquer verso posterior.                                                   }
{                                                                              }
{  Esta biblioteca  distribuda na expectativa de que seja til, porm, SEM   }
{ NENHUMA GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE OU      }
{ ADEQUAO A UMA FINALIDADE ESPECFICA. Consulte a Licena Pblica Geral Menor}
{ do GNU para mais detalhes. (Arquivo LICENA.TXT ou LICENSE.TXT)              }
{                                                                              }
{  Voc deve ter recebido uma cpia da Licena Pblica Geral Menor do GNU junto}
{ com esta biblioteca; se no, escreva para a Free Software Foundation, Inc.,  }
{ no endereo 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.          }
{ Voc tambm pode obter uma copia da licena em:                              }
{ http://www.opensource.org/licenses/lgpl-license.php                          }
{                                                                              }
{ Daniel Simes de Almeida - daniel@projetoacbr.com.br - www.projetoacbr.com.br}
{       Rua Coronel Aureliano de Camargo, 963 - Tatu - SP - 18270-170         }
{******************************************************************************}

{******************************************************************************
|* ACBr
|*
|* PROPSITO: Registro de Alteraes
******************************************************************************}

Smbolo : Significado

[+]     : Novo recurso
[*]     : Recurso modificado/melhorado
[-]     : Correo de Bug (assim esperamos)

27/02/2023
-- ACBrBALSelfCheckout --
[+] Includa nova classe para modelos de balana utilizarem caso tambm possuam os novos comandos

-- ACBrBALToledo --
[*] Alterado para herdar da nova classe TACBrBALSelfCheckout
    Por: Elias Csar

27/02/2023
-- ACBrBALToledo --
[*] Alterao para converter o retorno de resposta de balanas com pesagem maior que 30kg
[+] Incluso de novos comandos 'AtivarTara', 'DesativarTara' e 'ZerarDispositivo' (Includos 
    apenas na classe TACBrBALToledo)
    Por: Warquia Pereira e Daniel Infocotidiano

22/02/2023
-- ACBrBAL* --
[+] Adicionado o evento OnGravarLog
    (por: DSA)

27/01/2023
[*] TK-3548 Alterar Exceo do ACBrDevice Bluetooth quando no h dispositivo
  por : Victor H Gonzales - Pandaaa

19/01/2023
-- ACBrDevice --
[+] Adicionado o mtodo:
    procedure AcharPortas(const AStringList: TStrings);
    que procura por Portas: USB, Serial, RAW e Bluetooth (conforme plataforma)

[+] Adicionado os mtodos:
   function PedirPermissoes: Boolean;
     (que chama as permisses do Dispositivo ativo)
   function PedirPermissoesBlueTooth: Boolean;
     (que chama as permisses do Dispositivo Bluetooth (usado em Android))

-- ACBrDeviceClass --
[+] Adicionado o mtodo:
    function PedirPermissoes: Boolean; virtual;
    (que pode ser sobreescrito nas classes filhas, se necessrio)

-- ACBrDeviceBlueTooth --
[*] Mtodo "PedirPermissoes", modificado para ser sobrecarga da classe me.
[*] Mtodo "PedirPermissoes", modificado para lembrar da ltima resposta de
    sucesso, e evitar pedir permisses de forma repetitiva.
[*] Mtodo "PedirPermissoes", modificado para ficar compatvel com Android 12
    http://www.projetoacbr.com.br/forum/index.php?showtopic=70435
    (por: DSA e Andrei Ricardo)

03/01/2023
-- ACBrBAL, ACBrBALUranoUDC --
[+] Incluso do novo modelo ACBrBALUranoUDC; 
    Por: -=MarcoS=-

14/10/2022
-- ACBrPosPrinterAndroidHelper, ACBrPosPrinterGEDI, ACBrPosPrinterElginE1Lib --
[*] Refactoring para reaproveitamento de cdigos em comum

-- ACBrPosPrinterTecToySunmiLib --
[+] Adio de nova Classe Externa para ACBrPosPrinter. Compatibilizando o
    Servio de impresso da Sunmi com as Tags do ACBrPosPrinter
(por: DSA)

13/10/2022
-- ACBrPosPrinter, ACBrEscPosEpson, ACBrEscBematech, ACBrEscDaruma,
   ACBrEscCustomPos, ACBrEscDatecs, ACBrEscDiebold, ACBrEscElgin,
   ACBrEscPosStar, ACBrEscSunmi --
[*] Refactoring e Padronizao na rotina "LerInfo"

-- ACBrPosPrinter --
[*] Ajuste na criao para definio de um tempo padro para:
    ACBrPosPrinter.Device.TimeOutMilissegundos em 300
[*] Ajuste no metodo "TACBrPosPrinter.TxRx", para usar o TimeOut definido em:
    "ACBrPosPrinter.Device.TimeOutMilissegundos"
[*] Mtodo "TxRx", modificado, para receber como Default o parmetro "TimeOut=0",
    situao onde ser utilizado o valor de "Device.TimeOutMilissegundos"
[*] Mtodo "TACBrPosPrinter.Zerar", modificado para desligar Flag de "FonteB"

-- ACBrEscPosStar --
[-] Mtodo "ComandoImprimirImagemRasterStr", modificado para gerar imagens sem a
    quebra de linha
[+] Adicionada sobrecarga nos mtodos:
    - procedure LerStatus(var AStatus: TACBrPosPrinterStatus);
    - function LerInfo: String;

-- ACBrEscSunmi --
[-] Comando "Zera", modificado, para resetar letra em "Fonte A"
[-] Remoo de Tags no suportadas "cTagLigaCondensado", "cTagDesligaCondensado"
[-] Remoo de mtodo "Configurar", que forava CodePage em UTF8.
    ( Use sunmi-cloud-printer-setup.exe, para ajustar CodePage )
[*] Mtodo "TACBrEscSunmi.ComandoFonte", ajustado para processar Tag "FonteB"
[-] Mtodo "TACBrEscSunmi.ComandoPaginaCodigo", modificado para desligar
    Caracteres chineses e informar a Pagina de Cdigo
(por: DSA)

12/10/2022
-- ACBrPosPrinter --
[*] Ajuste em "TACBrPosPrinter.TxRx", para permitir leitura de Dados sem o envio
    de algo

-- ACBrPosPrinterElginE1Lib, ACBrPosPrinterElginE1Service, ACBrPosPrinterGEDI --
[*] Correo de quebras de linhas nos fontes

-- ACBrPosPrinterElginE1Lib --
[-] Correo de A.V. em "TE1LibPrinter.FinalizarImpressao", quando no havia uso
    da classe

-- ACBrWinUSBDevice --
[*] Ajuste no mtodo "TACBrUSBWinDevice.GetDeviceName", para sempre preferir o
    Nome definido em "ACBrUSBID.ini", ao invez do "FrendlyName do dispositivo USB

-- ACBrUSBID --
[*] Ajuste no modelo "Sunmi, NT210", para deixar a escolha do protocolo livre
(por: DSA)

12/09/2022
-- ACBrBAL, ACBrBALClass, ACBrBALToledo --
[+] Incluso de funo para envio do preo/kg para balana.
    (Utilizado para mostrar no visor da balana o Total do Produto pesado)
    Por: Athos Desenvolvimento

01/08/2022
-- ACBrETQZplII --
[*] Alterao para corrigir o carregamento de imagem
    https://www.projetoacbr.com.br/forum/topic/68234-problema-ao-carregar-imagem-no-acbretq/
	Por: Elias Csar

21/07/2022
-- ACBrLCB --
[+] TK-2908 Adicionado a propriedade de prefixo
    Por: Pedro E. Braga

13/07/2022
-- ACBrEscSunmi --
[+] Adicionada informao de Tags no suportadas pela impressora, como Impresso
    em modo Condensado e Programao de Logotipo
[*] Melhoria na leitura de Informaes para funcionamento por TCP
    (por: DSA)

08/07/2022
-- ACBrPosPrinter --
[+] Adicionado o modelo "ppEscSunmi"
[*] Ajuste em "TACBrPosPrinter.Imprimir", para no adicionar uma quebra de Linha
    aps a ltima linha do relatrio, pois isso pode atrapalhar a deteco de
    Fim de relatrio em alguns equipamentos

-- ACBrEscSunmi --
[+] Novo protocolo de Impresso, para a linha de impressoras da Sunmi

-- ACBrUSBID.ini --
[+] Adicionado fabricante 324f=Sunmi
[+] Adicionada a Impressora 00d2=NT312, da Sunmi

-- ACBrEscPosEpson --
[*] Remoo de varivel no utilizada "FInfo"

-- ACBrEscPosStar --
[+] Adicionado suporte ao comando de Abertura de Gaveta

05/05/2022
-- ACBrWinUSBDevice --
[+] Adicionado o mtodo "Purge", para limpar dados enviados e recebidos da USB

-- ACBrDeviceWinUSB --
[+] Implementado o mtodo "TACBrDeviceWinUSB.Limpar"

-- ACBrPosPrinter --
[*] Mtodo "TACBrPosPrinter.TxRx", TimeOut default, diminuido de 500 para 300
[*] Mtodo "TACBrPosPrinter.ConfigurarRegiaoModoPagina": Adicionado Parmetro
    para permitir definir a direo do texto:
    function ConfigurarRegiaoModoPagina(AEsquerda, ATopo, AAltura, ALargura: Integer;
      ADirecao: TACBrPosDirecao = dirEsquerdaParaDireita

-- ACBrUSBID.ini --
[+] Adicionada identificao (VID/PID) de Impressora da Sunmi NT210

-- ACBrDeviceBlueTooth --
[-] Corrigido problema de vazamento de memria, caso a chamada ao mtodo
    BlueToothSocket.Connect falhe
    (por: DSA)

22/04/2022
-- ACBrETQEpl2 --
[*] Correao em "AjustarNomeArquivoImagem", para calcular nomes com no mximo 8
    caracteres, conforme o Manual
    (por: DSA)

20/04/2022
-- ACBrETQZplII --
[*] Ajustes nos mtodos de Carregamento e impresso de Imagem, para considerar
    a propriedade "LimparMemoria", e carregar a imagem em uma rea voltil ou no

-- ACBRETQ, ACBrPosPrinterElginE1Lib, ACBrPosPrinterGEDI --
[*] Ajustes para usar novas Units de ACBrUtil
    (por: DSA)

31/03/2022
-- ACBrETQ, ACBrETQClass --
[*] Metodo "ConverterUnidade" modificado para ser Publico na Unit e independente
    da Classe

-- ACBrETQ, ACBrETQClass, ACBrETQEpl2, ACBrETQEscLabel, ACBrETQPpla, ACBrETQZplII --
[*] Remoo de Hints
[+] Implementado o mtodo: "ApagarImagem(const NomeImagem: String = '*');"
    Se NomeImagem for '*', apaga todas as Imagens
    (por: DSA)

27/03/2022
-- Diversos --
[*] Remoo de Warnings e Hints.
   Por: Waldir Paim

25/03/2022
-- ACBrWinUSBDevice --
[*] Remoo de Warnings e Hints.
   Por: Waldir Paim

Data: 21/03/2022
-- ACBrDevice, ACBrETQClass --
[*] Os tipos abaixo, foram movidos de "ACBrDevice.pas" para "ACBrETQClass.pas"
    TACBrETQUnidade, TACBrETQDPI, TACBrETQOrientacao, TACBrETQBarraExibeCodigo,
    TACBrETQBackFeed, TACBrETQOrigem

-- ACBrETQ, ACBrETQClass --
[+] Adicionado os mtodos:
    procedure DefinirCor(FrenteCor: Cardinal; FrenteOpacidade: Byte;
      FundoCor: Cardinal; FundoOpacidade: Byte); overload;
    procedure DefinirCor(FrenteR, FrenteG, FrenteB, FrenteOpacidade: Byte;
      FundoR, FundoG, FundoB, FundoOpacidade: Byte); overload;
    procedure DefinirCorPadrao;
    - Para permitir mudar a Cor de Impresso de Frente e Fundo de Objetos como
      Texto, Caixa, Linhas, Cdigos, etc
      Usado apenas no modelo: "EscLabel"
[+] Adicionado o mtodo:
    procedure DefinirDimensoes(Largura, Altura: Integer;
      EspacoEntreEtiquetas: Integer = -1; EspacoEsquerda: Integer = -1);
    - Para permitir definir as Dimenses de uma Etiqueta, em um formulrio sem
      Cortes, Gaps ou BlackMark
      Usado apenas no modelo: "EscLabel"
[+] Adicionada a propriedade: "Guilhotina: Boolean default False;"
    Se for True, acionar a guilhotina da Impressora, aps o trmino da Impresso,
    (quando disponvel)
[+] Adicionada a propriedade: "DeteccaoEtiqueta: TACBrETQDeteccaoEtiqueta"
    (mdeNone, mdeGap, mdeBlackMark), default mdeNone.

-- ACBrETQClass --
[+] Adicionados novos Mtodos Protegidos (Protected)
    function ComandoDeteccao: AnsiString; virtual;
    function ComandoGuilhotina: AnsiString; virtual;
    function ComandoDimensoes: AnsiString; virtual;
[*] Mtodo "ComandosIniciarEtiqueta", modificado para adicionar a lista de
    comandos, chamadas para: ComandoDeteccao, ComandoGuilhotina, ComandoDimensoes

-- ACBrETQEpl2, ACBrETQPpla, ACBrETQZplII --
[+] Adicionado suporte ao comando "ComandoGuilhotina"

-- ACBrETQEscLabel --
[+] Adicionado suporte aos comandos: "ComandoCor", "ComandoDeteccao" e "ComandoDimensoes"

-- ACBrETQZplII --
[*] Adicionada sobrecarga de alguns mtodos, movendo-os em Protected, para
    permitir a sobrecarga em TACBrETQEscLabel
    (por: DSA)

Data: 16/03/2022
-- ACBrETQ, ACBrETQClass --
[+] Adicionado o modelo "etqEscLabel", que implementa a comunicao do Protocolo
    Esc/Label da Epson, baseado do Zpl2 da Zebra
[*] Mtodo "ImprimirCaixa", modificado para permitir informar Parmetro com o
    angulo dos Cantos. Canto: Integer = 0.
    Suporta Valores 0 a 8 (0 sem arredondamento).
    Suportado apenas em ZPL2 e EscLabel
[*] Mtodo "CarregarImagem", modificado para retornar por referncia, o Nome do
    arquivo da Imagem, como armazenado na memria da Impressora

-- ACBrETQZplII --
[*] Mtodo "ComandoImprimirCaixa", modificado para processar o parmeto recebido
    em "Canto", para permitir caixas arredondadas
[*] Mtodos "ComandoImprimirImagem" e "ComandoCarregarImagem" refatorados,
    para melhor deteco do Tipo e suportar arquivos "PNG" mono

-- ACBrETQEscLabel --
[+] Nova Unit com a implementao das diferenas de EscLabel e Zpl2
    Suporte s Impressoras "Epson ColorWorks"
    (por: DSA)

-- ACBrDeviceLPT --
[-] Correo para envio de Dados em Linux, Delphi FMX, por Stream
    (por: DSA)

-- ACBrWinUSBDevice --
[-] Correes para funcionamento da SetupApi.dll em Win64
    (por: DSA)

Data: 04/08/2021
-- ACBrPosPrinterGEDI --
[-] Ajuste para compatibilizar com G800Interface
    http://www.projetoacbr.com.br/forum/index.php?showtopic=63498

Data: 29/07/2021
-- ACBrPosPrinter --
[-] Mtodo "TACBrPosPrinter.DoTraduzirTag", modificado, para que os Flags internos
    de Fonte e Alinhamento, sejam processados, mesmo quando a traduo da Tag 
    sobreposta em uma Classe Externa
    (por: DSA)

Data: 06/07/2021
-- ACBrPosPrinter --
[-] Ajuste para evitar apagar a atribuio do evento: OnEnviarStringDevice,
    quando o mtodo padro, "Configurar" era chamado
    (por: DSA)

Data: 10/06/2021
-- ACBrWinUSBDevice --
[+] Adicionado suporte USB a Epson VendorClass
[-] Ajuste no retorno da Windows SetupAPI, que poderiam conter caracteres
    invlidos, no final das Strings, em algumas situaes
    (por: DSA)

Data: 28/05/2021
-- ACBrPosPrinter --
[*] TACBrPosPrinterClass, expondo componente Pai, Propriedade Pblica e ReadOnly

-- ACBrPosPrinterElginE1Lib --
[+] Adicionada nova Classe externa, para traduo das Tags suportadas pelo
    ACBrPosPrinter, para a biblioteca de Impresso para Android, E1 da Elgin (M8)

-- ACBrPosPrinterElginE1Service --
[+] Adicionado comando, para emular Beep
    (por: DSA)

Data: 16/05/2021
-- ACBrDevice --
[-] Ajustes no mtodo "TACBrTagProcessor.DecodificarTagsFormatacao", para
    funcionar corretamente no compilador NEXTGEN, com Strings em UTF8
    (por: DSA)

-- ACBrPosPrinterGEDI --
[-] Ajuste para imprimir corretamente Linhas em branco e Linhas com espaos no
    Final
    (por: DSA)

Data: 14/05/2021
-- ACBrPosPrinter --
[*] Mtodo "AjustarCodBarras" criado aps refatorao, para permitir o seu uso
    em outras classes.
[*] Mtodo "TACBrPosPrinter.DoTraduzirTag", modificado para remover Tags
    marcadas em "TagsNaoSuportadas"
[*] Mtodo "TACBrPosPrinter.DoTraduzirTagBloco", modificado para remover Tags
    marcadas em "TagsNaoSuportadas"
    (por: DSA)

-- ACBrPosPrinterGEDI --
[+] Adicionada nova classe, para traduo das Tags suportadas pelo ACBrPosPriniter,
    para a biblioteca de Impresso para Android, GEDI da Gertec (GPOS700)
    (por: DSA)

Data: 06/01/2021
-- ACBrCHQBematech --
[*] Ajuste para impresso do ano com 4 dgitos na Bematech DP-20.
    https://www.projetoacbr.com.br/forum/topic/56173-impresso-cheque-com-4-digitos-para-ano/
  Por: BigWings

Data: 22/09/2020
-- ACBrDevice --
[+] TACBrTagProcessor, Adicionado Evento: "OnAdicionarBlocoResposta", que ser
    invocado, a cada novo bloco de Dados adicionado no Buffer final de resposta.

-- ACBrDeviceBlueTooth --
[-] Correo da verificao do resultado de TACBrDeviceBlueTooth.PedirPermissoes
[*] Ajuste em TACBrDeviceBlueTooth.AtivarBlueTooth, para s verificar estado do
    BlueTooth, aps chamar PedirPermissoes

-- ACBrPosPrinter --
[+] TACBrPosComandos, adicionado o mtodo "Clear".
[+] TACBrPosPrinterClass, adicionado os mtodos virtuais:
    procedure AntesDecodificar(var ABinaryString: AnsiString);
    procedure AdicionarBlocoResposta(const ConteudoBloco: AnsiString);
    procedure DepoisDecodificar(var ABinaryString: AnsiString);
    - Mtodos para permitir que a Classe de Impressora, interfira e costumize o
      processo de Decodificao das Tags em "TACBrTagProcessor"
[*] TACBrPosPrinter, expondo a classe: "TagProcessor" como Pblica, Read Only.
[-] Tag '</fn>', no estava desligando "ftFonteB";
[-] TACBrPosPrinter.EnviarStringDevice, corrigido para no tentar enviar
    "ComandoInicializa", se o mesmo for vazio.

Data: 17/08/2020
-- ACBrPosPrinter --
[-] Correo de A.V., quando destruindo TACBrPosPrinter, que est usando
    "ModeloExterno"
    (por: DSA)

Data: 06/08/2020
-- ACBrDevice --
[+] Adicionado Porta "NULL", que ser atribuido para DeviceType = dtNenhum
    Util, quando o ACBrPosPrinter  usado com "ModeloExterno", onde a Abertura
    e Envio de dados ao dispositivo, no ser feita por TACBrDevice

-- ACBrPosPrinter --
[+] Adicionado Modelo "ppExterno", que ser selecionado automaticamente, e apenas,
    se houver alguma classe atribuida a "ModeloExterno"
[+] Adicionada nova propriedade Publica, "ModeloExterno: TACBrPosPrinterClass"
    - Permite atribuir ao ACBrPosPrinter, classes de Impressoras, que no so
      compiladas interamente em ACBrPosPrinter.
    - Isso pode ser til, para criar classes de traduo do ACBrPosPrinter, para
      outras bibliotecas de impresso. Ver exemplo em:
      Fontes\ACBrTEFD\ACBrPOSPGWebPrinter.pas
[+] TACBrPosPrinterClass, agora permite que a Classe de impresso, cuide da
    Traduo de Tags e Blocos, com chamadas aos mtodos internos:
    "TraduzirTag" e "TraduzirTagBloco"
[-] Modelo "ppTexto", agora usa as razes de Fontes: Condensada=1 e Expandida=1,
    (por: DSA)

Data: 29/06/2020
-- ACBrETQClass, ACBrETQPpla, ACBrETQZplII, ACBrETQEpl2 --
[-] Ajuste para no enviar o comando de pgina de cdigo, quando ela for
    pceNone, ou no suportada
    (por: DSA)

Data: 12/06/2020
-- ACBrETQZplII --
[-] Correo para no enviar o comando de pgina de cdigo, quando for "pceNone"
    (por: DSA)

Data: 17/05/2020
-- ACBrPosPrinter --
[*] Ajuste no mtodo "TxRx", para usar SendBytesInterval=0, para agilizar a
    comunicao
    (por: DSA)

Data: 13/05/2020
-- ACBrDeviceWinUSB, ACBrWinUSBDevice --
[*] Ajuste para deteco do DeviceName, quando a VCOM mudar de Nome.
    Isso pode ocorrer quando o dispositivo  plugado em outra porta USB
    (por: DSA)

Data: 07/05/2020
-- ACBrPosPrinter --
[+] Adicionada funcionalidades de Impresso e Leitura de Cheques, para impressoras
    hbridas, como a Epson TM-H6000IV.
    Novos mtodos:
    procedure ImprimirCheque(CodBanco: Integer; AValor: Double; ADataEmissao: TDateTime;
      const AFavorecido, ACidade, AComplemento: String; LerCMC7: Boolean = False;
      SegundosEspera: Integer = 5);
      - Se a Leitura de CMC7 estiver ativada, ela ser efetuada antes da Impresso
        do Cheque, e nesse caso, ser usado como CodBanco, o valor lido do CMC7
      - Aps a impresso do Cheque, use a propriedade "LeituraCheque", para obter
        o Resultado obtido na leitura de CMC7
    procedure ImprimirTextoCheque(const X, Y: Integer; const AString: AnsiString;
      AguardaCheque: Boolean = False; SegundosEspera: Integer = 5);
      - Pode ser usada para imprimir um texto genrico, no verso do Cheque
    procedure EjetarCheque;
      - Tambm pode ser usada para Cancelar o estado de Espera do Cheqeue
    procedure LerCMC7(AguardaCheque: Boolean = False; SegundosEspera: Integer = 5);
      - Aps a leitura do Cheque, use a propriedade "LeituraCheque", para obter
        o Resultado obtido na leitura

[+] Adicionada a propriedade "LeituraCheque". Contendo Sting com o resultado da
    ltima operao de Leitura do CMC7.

[+] Adicionado novo evento: OnAguardarCheque: TACBrPosOnAguardarCheque
    TACBrPosOnAguardarCheque = procedure(const AStatus: TACBrPosPrinterStatus;
      Operacao: TACBrPosOperacaoCheque; var CancelarEspera: Boolean) of object ;
    Chamado em Loop, quando o ACBrPosPrinter est aguardando a insero do cheque,
     permitindo Cancelar a Operao, do lado da aplicao

[+] Adicionado novo arquivo de Resource, "ACBrPosCheque.ini", contendo as
    coordenadas dos Cheques, por Banco.
    Esse arquivo  adicionado internamente ao componente ABCrPosPrinter por
    resource (ACBrPosCheque.res), mas se o "ACBrPosCheque.ini" estiver na mesma
    pasta do .EXE, ele ser usado

[+] Adicionados novos Status, no retorno de "LerStatusImpressora".
    stSlip -> Impressora de Cheques selecionada
    stMICR -> Leitura do MICR ativada
    stAguardandoSlip -> Aguardando a insero do Cheque
    stBOF -> Cheque presente no Inicio do Bero
    stTOF -> Cheque no Topo do bero. Pronto para iniciar impresso

[+] Adicionado nova Tag </ff>, Comando "PuloDePagina"
[+] Adicionada nova Tag de Bloco <mp_pos>, permitindo Posicionar o cursor, em
    uma nova coordenada, dentro do Modo Pgina.
    Exemplo: <mp_pos>X,Y</mp_pos>

[+] Adicionadas novas propriedades, ReadOnly, para detectar caractersticas do equipanmento
    function PodeLerDaPorta: Boolean;    // Se False, no h como ler informaes da Impressora
    property TemGuilhotina: Integer;     // -1=Indefinido, 0=NaoTem, 1=Tem
    property TemCheque: Integer;         // -1=Indefinido, 0=NaoTem, 1=Tem
    property TemAutenticacao: Integer;   // -1=Indefinido, 0=NaoTem, 1=Tem
    property TemMICR: Integer;           // -1=Indefinido, 0=NaoTem, 1=Tem
    property LeituraCheque: AnsiString;  // Retorna o contedo do ltimo CMC7 lido

[+] Correo em "CalcularAlturaTexto", para calcular corretamente a altura, quando
    EspacoEntreLinhas = 0.

[*] Demos do ACBrPosPrinter em Delphi e Lazarus, modificados, para demonstrar as
    novas funcionalidades...

-- ACBrCHQImpressoraComum --
[*] Constante com nome dos meses, foi movida para a ACBrConsts.pas

Data: 23/04/2020
-- ACBrETQ, ACBrETQClass, ACBrETQPpla, ACBrETQEpl2, ACBrETQZplII --
[+] Implementado novo mtodo para impresso de QRCodes
    procedure ImprimirQRCode(Vertical, Horizontal: Integer; const Texto: String;
         LarguraModulo: Integer = 4; ErrorLevel: Integer = 0; Tipo: Integer = 2);
[+] Nova Propriedadade ACBrETQ.PaginaDeCodigo: TACBrETQPaginaCodigo =
    (pceNone, pce437, pce850, pce852, pce860, pce1250, pce1252) default pce850;
[+] Adicionado suporte a Impresso com Pgina de Cdigo e Converso da String
    Nativa, para a pgina de cdigo selecionada
    (por: DSA)

Data: 22/04/2020
-- ACBrPosPrinter, ACBrEscDatecs --
[+] Adicionado novo modelo Datecs.  http://www.datecs.bg/en/

-- ACBrPosPrinter --
[*] Melhoria em TACBrPosComandos.Create para que contedo dos comandos, fique zerado

-- ACBrEscPosEpson --
[*] Tags de Ligar e Desligar Itlico, marcadas como no Suportadas

-- ACBrEscDiebold, ACBrEscCustomPos --
[*] Removendo Tags de Itlido como no suportadas, por herana de TACBrEscPosEpson
    (por: DSA)

Data: 20/04/2020
-- ACBrDeviceBlueTooth --
[-] Melhoria para tratamento de erros de comunicao ex:"Broken Pipe", quando usando 
    em Android
[*] Ajuste nas Permisses solicitadas ao Android
    (por: DSA)

Data: 19/04/2020
-- ACBrDevice --
[-] Corrigido Bugs em TACBrTagProcessor.DecodificarTagsFormatacao, para respeitar
    o Encoding da Pgina de Cdigo na String de Entrada, em Delphi Linux POSIX

-- ACBrPosPrinter --
[-] Corrigido Bugs nos mtodos "Imprimir" e "TraduzirTagBloco", para respeitar
    o Encoding da Pgina de Cdigo na String de Entrada, em Delphi Linux POSIX
    (por: DSA)

Data: 18/04/2020
-- ACBrDevice --
[-] Corrigido Bug em 02/04, onde TACBrTagProcessor.DecodificarTagsFormatacao, quebrava 
    a Pgina de Cdigo em Lazarus/FPC.
[-] Corrigido processamento de Tag de QRCode, em Delphi Linux POSIX
    (por: DSA)	

Data: 15/04/2020
-- ACBrETQ --
[-] Correo para que os parmetros enviados no mtodo "FinalizarEtiqueta", sejam 
    considerados, caso um novo comando "IniciarEtiqueta", seja recebido
    (por: DSA)

Data: 02/04/2020
-- ACBrDevice --
[-] Workaround, para que processamento de Tags funcione corretamente em Delphi Linux 64
    (por: DSA)

Data: 30/03/2020
-- ACBrBALFilizola --
[*] Refatorao em "TACBrBALFilizola.InterpretarRepostaPeso", para que a rotina
    se ajuste a diversos tipos de resposta.
    (por: DSA)

-- ACBrECFVirtual --
[+] Adicionado o Evento "QuandoMudarEstado", para permitir a aplicao detectar
    qual ser o novo estado, e modifica-lo, se desejar. (til para evitar estRequerz)
    TACBrECFVirtualQuandoMudarEstado = procedure(const EstadoAtual: TACBrECFEstado;
      var NovoEstado: TACBrECFEstado) of object;

-- ACBrSMS --
[-] Correo para processar corretamente as msgs codificadas
    (por: DSA)

Data: 18/03/2020
-- ACBrETQ --
[-] Correo para que o mtodo "FinalizarEtiqueta" funcione corretamente como o
    mtodo "Imprimir", e ambos respeitem os parmetros "Copias" e "AvancoEtq"
    (por: DSA)

Data: 12/03/2020
-- ACBrSMSClass --
[-] Ajuste para leitura de Data/Hora com retorno de apenas 2 dgitos no ano
[-] Ajuste para leitura de mensagens codificadas, por motvos de acentuao
    https://www.projetoacbr.com.br/forum/topic/56691-decodificar-sms-com-ascii/
    (por: DSA)

-- ACBrUSBID.ini --
[*] Ajuste para no forar o protocolo em Impressora Etiquetas Elgin L42 PRO

-- ACBrDeviceWinUSB, ACBrDevice --
[*] Ajuste no mtodo "DetectarTipoEProtocoloDispositivoUSB", para considerar
    porta correta, durante a Primeira ativao.

-- ACBrDeviceBlueTooth --
[*] Ajuste para evitar A.V., caso no exista nenhum dispositivo pareado
    (por: DSA)

Data: 03/03/2020
-- ACBrRFD --
[+] Inclido as diretivas de compilao para funcionar corretamente com NEXTGEN.
   Por: Waldir Paim

Data: 24/02/2020
-- ACBrDevice, ACBrDeviceBlueTooth --
[*] mudana de assinatura do mtodo:
    AcharPortasBlueTooth(const AStringList: TStrings; TodasPortas: Boolean = True);
    (por: DSA)

Data: 21/02/2020
-- ACBrDevice --
[*] Mtodo TACBrTagProcessor.DecodificarTagsFormatacao, otimizado e modificado
    para funcionar corretamente com NEXTGEN

-- ACBrDeviceBlueTooth --
[*] Mtodo TACBrDeviceBlueTooth.AcharPortasBlueTooth modificado para exibir
    todos os dispositivos pareados

-- ACBrEscPosEpson --
[*] Ajustes aps mudana de assinatura dos mtodos em ACBrImage
    (por: DSA)

Data: 13/02/2020
-- ACBrDeviceBlueTooth --
[*] Ajuste para permitir a porta como "BTH", para conectar no primeiro dispositivo
    Pareado, disponvel na lista

-- ACBrDeviceLPT --
[-] Ajuste para evitar a Erro I/O Error 103, quando ativando a Porta
    http://www.projetoacbr.com.br/forum/index.php?showtopic=56274
[-] Correo de .A.V quando Fechando a Porta e "UsarStream = True"
    (por: DSA)

Data: 09/02/2020
-- ACBrSerial --
[*] Diversos ajustes para compatibilizar com a compilao em Delphi FMX,
    Android e Linux

-- ACBrDevice --
[*] Aplicado amplo refactoring, separando em Units os diferentes Tipos de Porta
    suportados
[+] Adicionado suporte a Portas BlueTooth. Ex: Porta := "BTH:Nome Dispositivo",
    Disponvel apenas para Windows, DelphiXE ou Superior, e Android
[+] Adicionado os mtodos:
    procedure AcharPortasRAW(const AStringList: TStrings);
    procedure AcharPortasUSB(const AStringList: TStrings);
    procedure AcharPortasBlueTooth(const AStringList: TStrings);
    (por: DSA)

Data: 23/12/2019
-- ACBrDevice, ACBrPosPrinter, ACBrETQ --
[+] Adicionada a detectao de Tipo de Hardware, Porta e Protocolo, para
    dispositivos USB, cadstrados em ACBrUSBID.ini
    (por: DSA)

Data: 21/12/2019
-- ACBrDevice, ACBrWinUSBDevice --
[*] Proteo de algumas variveis Pblicas migradas para Properties
[+] Adicionado suporte nativo a Impressoras USB no Windows, permitindo o uso da
    sintaxe  Porta := 'USB:Marca, Modelo';
    - Para detectar as Impressoras USB plugadas, use:
      ACBrDevice.WinUSB.FindUSBPrinters();
    - As Impressoras encontradas estaro disponveis na lista de Objetos (interna):
      ACBrDevice.WinUSB.DeviceList
    - Para acessar equipamento por Hook com a DLL do fabricante, use a sintaxe:
       Porta := 'DLL:Fabricante';

-- ACBrPosPrinter --
[*] Tipo enumerado TACBrPosTipoStatus.stNaoSerial modificado para:
    TACBrPosTipoStatus.stApenasEscrita
[-] Corrigido Bug de falha de leitura, em LerStatusImpressora e LerInfoImpressora,
    quando ACBrPosPrinter estava Desativado e ControlePorta Ligado

-- ACBrEscBematech --
[*] Adicionada proteo contra A.V., caso a resposta da Impressora seja invlida
    (por: DSA)
	
Data: 19/12/2019
--ACBrBAL--
[*] Incluso da classe ACBrBALLibratekWT3000IR (por Andr Adami)	


Data: 02/12/2019
-- ACBrETQPpla --
[+] Implementado o mtodo "BMP2HEX", que converte uma Imagem BitMap, no Formato
    HEX nativo do protocolo PPLA
[*] Mtodo "ComandoCarregarImagem" modificado para converter imagens BMP para HEX, no
    momento da Carga da Imagem
    (por: DSA)

Data: 01/12/2019
-- ACBrEscPosEpson --
[*] Ajuste no mtodo "TACBrEscPosEpson.LerInfo", para correta leitura de informaes
    em alguns novos modelos de impressoras
    (por: DSA)

Data: 27/10/2019
-- ACBrEscGPrinter --
[*] Remoo do Bloqueio de Keycodes iguais a KC1=1 e KC2=0... pois os novos
    Firmwares suportam o comando GS+"(L"

-- ACBrEscPosEpson --
[*] Mtodos "ComandoGravarLogoRasterStr" e "ComandoImprimirImagemRasterStr",
    modificados para usar o comando GS+"(L" se a imagem em Raster a ser enviada
    for menor do que 65535, e GS+"8L", se for maior
    (por: DSA)

Data: 25/09/2019
-- ACBrPosPrinter, ACBrEscGPrinter --
[+] Adicionado novo modelo: ppEscGPrinter
    Muito utilizado por diversos fabricantes, e bastante compatvel com Epson Esc/Pos
    (por: DSA)

Data: 26/08/2019
-- ACBrBAL --
[*] Incluso do modelo ACBrBALWeightechWT3000_ABS. (por Andr Adami)

Data: 30/07/2019
-- ACBrBAL --
[*] Incluso do modelo ACBrBALWeightechWT1000. (por Daniel Sonda)

Data: 10/07/2019
-- ACBrECF -- 
[+] Incluso do modelo EscPosStar. (por Jean Carlos dos Santos)

Data: 21/05/2019
-- ACBrPosPrinter --
[-] Restaurando suporte a Hooks Epson e Elgin, removidos acidentalmente no commit: 16570

-- ACBrEscBematech --
[+] Adicionado suporte aos mtodos: ComandoImprimirImagemRasterStr,
    ComandoGravarLogoRasterStr e ComandoApagarLogo
    https://www.projetoacbr.com.br/forum/topic/48851-acbrposprinter-suporte-a-impress%C3%A3o-de-imagens-e-grava%C3%A7%C3%A3o-de-logos/

-- ACBrEscPosEpson --
[*] Modificaes para permitir uso de metodos genricos, por classes no filhas

-- ACBrEscCustomPos --
[*] Ajuste para compatibilizar com mudanas em ACBrEscPosEpson
    (por: DSA)

Data: 23/04/2019
-- ACBrBALUranoPOP --
[+] Adicionado suporte ao protocolo USE-P2
    https://www.projetoacbr.com.br/forum/topic/50830-urano-us-202-pop-s/
    (por: DSA)

Data: 05/04/2019
-- ACBrECFEscECF --
[-] Aplicado workaround para Erro 140 disparado pela Daruma FS800I, mais de uma
    vez por comando.
    https://www.projetoacbr.com.br/forum/topic/50456-categoria-16-erro-especfico-do-fabricante-motivo-140-relgio-est-travado/
    (por: DSA)

Data: 21/02/2019
-- ACBrPosPrinter, ACBrEscCustomPos ---
[+] Adicionado novo modelo "ppCustomPos", para permitir a compatibilizao com as
    impressoras da Custom http://www.nitere.com.br/produto-impressoras-q3x
    (por: DSA)
	
Data: 11/02/2019
-- ACBrESCZJiang --
[+] Incluso do novo modelo ZJiang. (por Daniel Simes de Almeida)
	
Data: 08/02/2019
-- ACBrBAL --
[*] Adicionado modelo ACBrBALMarelCG62XL. (por Smaili Santana Amorim)

Data: 03/02/2019
-- ACBrPosPrinter, ACBrEscPosHook --
[+] Adicionado o modelo de Protocolo em "TACBrPosPrinterHook"
    Isso permite que o Modelo correto, seja automaticamente atribuido a
    ACBrPosPrinter, quando usando a sintaxe de Hooks (USB:MARCA)

Data: 01/02/2019
-- ACBrPosPrinter --
[*] Melhorias na deteco de Porta Ativa e Controle de Porta
[+] Adicionado novo suporte a Impressoras atravs da Porta USB. Agora o
    ACBrPosPrinter aceita a sintaxe de portas como:  "USB:MARCA", onde
    "MARCA"  o nome do Fabricante.
    Com isso o ACBrPosPrinter usar a DLL do fabricante para acesso a Impressora,
    pela porta USB.
    https://www.projetoacbr.com.br/forum/topic/49160-acbrposprinter-com-suporte-a-usb/

-- ACBrEscPosHook --
[+] Implementado Classe genrica para criao de Hooks

-- ACBrEscPosHookElginDLL --
[+] Implementao de Hook com as DLLs da "ELGIN":  HprtPrinter.dll, hprtio.dll
    Use em Porta := "USB:ELGIN", e mantenha as DLLs indicadas na mesma pasta do
    seu Executvel

-- ACBrEscPosHookEpsonDLL --
[+] Implementao de Hook com a DLL da "EPSON":  InterfaceEpsonNF.dll
    Use em Porta := "USB:EPSON", e mantenha a DLL indicada na mesma pasta do
    seu Executvel
    (por: DSA)

Data: 29/01/2019
-- ACBrEscPosEpson --
[*] Ajuste no mtodo "ComandoImprimirImagemRasterStr", para permitir o uso de
    comando de impresso de Imagem legado, que  utilizado em algumas impressoras.
      Nota: O Comando novo da Epson "GS + '8L'", no  compatvel em alguns
      Equipamentos (no Epson), mas que usam EscPosEpson...
      Nesse caso, vamos usar o comando "GS + '*'", para tal, informe:
      KeyCode1 := 1; KeyCode2 := 0
    (por: DSA)

Data: 27/01/2019
-- ACBrEscPosEpson --
[*] Ajuste nos mtodos "ComandoGravarLogoRasterStr" e "ComandoApagarLogo", para
    permitir o uso de comandos legados, que so utilizados em algumas impressoras.
      Nota: O Comando novo da Epson "GS + '8L'", no  compatvel em alguns
      Equipamentos (no Epson), mas que usam EscPosEpson...
      Nesse caso, vamos usar o comando "FS + 'q'", para tal, informe:
      KeyCode1 := 1; KeyCode2 := 0
    (por: DSA)

19/01/2019
-- ACBrPosPrinter --
[+] Classe TACBrPosPrinterClass, adicionado os mtodos Pblicos
    function ComandoImprimirImagemRasterStr(const RasterStr: AnsiString; AWidth: Integer;
      AHeight: Integer): AnsiString; virtual;
    function ComandoImprimirImagemArquivo(ArquivoBMP: String): AnsiString;
    function ComandoImprimirImagemStream(ABMPStream: TStream): AnsiString;
    function ComandoGravarLogoRasterStr(const RasterStr: AnsiString; AWidth: Integer;
      AHeight: Integer): AnsiString; virtual;
    function ComandoGravarLogoArquivo(ArquivoBMP: String): AnsiString;
    function ComandoGravarLogoStream(ABMPStream: TStream): AnsiString;
    function ComandoApagarLogo: AnsiString; virtual;
    procedure ArquivoImagemToRasterStr(ArquivoImagem: String; out AWidth: Integer;
      out AHeight: Integer; out ARasterStr: AnsiString);
[+] Classe, TACBrPosPrinter
    - Adicionada a propriedade de apenas leitura: "PosPrinter: TACBrPosPrinterClass".
      permitindo acessar a Classe instnciada internamente, da forma:
      "ACBrPosPrinter1.PosPrinter"
    - Adicionado os mtodos Pblicos:
      procedure ImprimirImagemStream(ABMPStream: TStream);
      procedure ImprimirImagemArquivo(ArquivoBMP: String);
      procedure ImprimirImagemRasterStr(const ARasterStr: AnsiString; AWidth, AHeight: Integer);
      procedure ImprimirLogo(AKC1: Integer = -1; AKC2: Integer = -1;
        AFatorX: Integer = -1; AFatorY: Integer = -1);
      procedure GravarLogoStream(ABMPStream: TStream; AKC1: Integer = -1;
        AKC2: Integer = -1);
      procedure GravarLogoArquivo(ArquivoBMP: String; AKC1: Integer = -1;
        AKC2: Integer = -1);
      procedure ApagarLogo(AKC1: Integer = -1; AKC2: Integer = -1);
    - Adicionado suporte a Tag de Bloco
      <bmp> - Imprime Imagem BMP monocromtica. Contedo pode ser: Path da Imagem,
              Stream em Base64 ou AscII Art (0 e 1)
[+] Demo PosPrinterTeste, em Delphi e Lazarus, modificados para demonstrar o
    suporte a Impresso de Imagens e Gravao de Logos.

-- ACBrEscPosEpson --
[+] Implementado suporte aos mtodos:
    function ComandoImprimirImagemRasterStr(const RasterStr: AnsiString; AWidth: Integer;
      AHeight: Integer): AnsiString;
    function ComandoLogo: AnsiString;
    function ComandoGravarLogoRasterStr(const RasterStr: AnsiString; AWidth: Integer;
      AHeight: Integer): AnsiString;
    function ComandoApagarLogo: AnsiString;

12/01/2019
-- ACBrETQClass, ACBrETQEpl2, ACBrETQPpla, ACBrETQZplII --
[+] Adicionado mtodos para deteco de Imagens BMP e PCX, monocromticas

-- ACBrETQZplII --
[+] Adicionado mtodo de converso de imagem BMP para formato Zebra (GRF)
[-] Correo para carga de Imagens em PCX
[-] Correo para carga de Imagens em BMP
    (por: DSA)

08/01/2019
-- ACBrPosPrinter --
[+] Adicionado o mtodo CalcularLinhasAltura(AAltura: Integer): Integer;
    que faz o inverso de "CalcularAlturaTexto"
[-] Ajuste em "CalcularAlturaQRCodeAlfaNumM", para calcular altura necessria,
    para Epson TM-T20

15/12/2018
-- ACBrPosPrinter --
[+] Adicionado o mtodo "ConfigurarRegiaoModoPagina", que retorna Tags necessrias
    para iniciar o Modo Pgina, e conforme os parmetros recebidos
    (por: DSA)

13/12/2018
-- ACBrPosPrinter --
[+] Adicionada propriedade TipoCorte para escolher se  corte parcial ou total.
[+] Adicionada a Tag </corte>, que promover o Corte conforme configurado em "TipoCorte"
    Veja: https://www.projetoacbr.com.br/forum/topic/48173-nova-propriedade-tipocorte-em-tacbrsatextratoescpos

11/12/2018
-- ACBrPosPrinter --
[+] Adicionado os mtodos abaixo (migrados de ACBrNFeDANFeESCPOS)
    function CalcularAlturaTexto(Linhas: Integer): Integer;
    function CalcularAlturaQRCodeAlfaNumM(const QRCodeData: String): Integer;
    (por: DSA)

04/12/2018
-- ACBrDevice --
[*] Ajuste para melhor deteco de Nomes de Portas invlidos (por Waldir Paim)
    https://www.projetoacbr.com.br/forum/topic/47900-remoo-de-warnings-hints-e-melhorias-no-cdigo-fonte/

30/08/2018
-- ACBrECFBematech --
[-] Correo para Item registrado 2 vezes na impressora Bematech MP 4000 TH
    (Aplicado workaround, quando o ECF responde com um ACK igual a 255.)
    https://www.projetoacbr.com.br/forum/topic/45654-item-registrado-2-vezes-na-impressora-bematech-mp-4000-th/
    (por: DSA)

20/08/2018
-- ACBrPosPrinter --
[*] Mtodos LerInfoImpressora e LerStatusImpressora modificados para inserir
    Entrada e Resultado no Log

23/07/2018
-- ACBrCHQ, ACBrCHQClass --
[+] Adicionada a propriedade "PaginaDeCodigo: Word default 0"
    0 = Remove acentos de "Cidade, Favorecido, Textos". Caso contrrio, traduz
    para a pgina de cdigo em ANSI, usada pelo equipamento
    https://www.projetoacbr.com.br/forum/topic/44737-acbrchq-nova-propriedade-paginadecodigo/
    (por: DSA)

20/07/2018
-- ACBrDevice --
[+] Adicionado no evento: HookAtivar = procedure(const APort: String; Params: String) of object;
[+] Adicionado no evento: HookDesativar = procedure(const APort: String) of object;
    (Que permitem, por exemplo, usar DLLs para acesso a impressoras por interface USB.
     Veja exemplo de implementao, no Demo: PosPrinterTeste)
[*] Melhoria em TACBrDevice.LeString, para que leitura por Hook tambm considere
    o parmetro "Terminador"

-- ACBrEscBematech, ACBrEscDaruma, ACBrEscPosEpson --
[*] Melhorias para correto funcionamento com Hook

19/07/2018
-- ACBrDevice --
[+] Ajustes para melhorar as mensagens de Erro, quando Ativar Porta Serial ou
    Paralela e a mesma for inexistente ou inacessvel  (por: DSA)

21/02/2018
-- ACBrETQ, ACBrETQClass --
[-] Ajuste para enviar o comando de Limpar a Memria, ante de Impresso da Etiqueta
    (por: Warquia Pereira)
    https://www.projetoacbr.com.br/forum/topic/42762-acbretq-tarja-na-primeira-impresso-tlp-2844-e-gc420t/

16/06/2018
-- ACBrECFEscECF --
[*] Mtodo "CancelaCupom". Bematech no permite o Cancelamento de Cupom, a no
    ser que seja o ltimo. Modificado para que a mensagem de erro de Canelamento
    disparada pela Bematech seja mais significativa
[*] Mtodos "IsBematech, IsDaruma, IsEpson", e propriedade "MarcaECF" tornados
    Pblicos  (por: DSA)

14/06/2018
-- ACBrECFDaruma --
[*] Adicionada verificao de retorno para a leitura dos comandos GetEstado
    e RetornaInfoECF. Pois notado que em alguns equipamentos, em algumas ocasies
    o retorno vinha incompleto ou com informaes diferentes
    (por: DSA)

21/05/2048
-- ACBrPosPrinter --
[+] Adicionadas novas Tags para suportar a Impresso em "Modo Pgina".
    '<mp>' - 'Liga Modo de Impresso em Pgina (em memria)'
    '</mp>' - 'Desliga Modo de Impresso Pgina (em memria)'
    '</mp_imprimir>' - 'Comanda a Impresso da Pgina na memria'
    '<mp_direcao>' - 'Direo Texto no Modo Pgina: 0-Esquerda/Direta, 1-Topo/Baixo, 2-Direita/Esquerda, 3-Baixo/Topo'
    '<mp_esquerda>' - 'Posio Inicial Horizontal Modo Pgina (Esquerda)'
    '<mp_topo>' - 'Posio Inicial Vertical Modo Pgina (Topo)'
    '<mp_largura>' - 'Largura da Regio no Modo Pgina'
    '<mp_altura>' - 'Altura da Regio no Modo Pgina'
    '<mp_espaco>' - 'Espao entre Linhas na Regio no Modo Pgina'
    '</mp_configurar>' - 'Envia a configurao de Coordenadas da Regio e direo do Modo Pgina'

[+] Adicionada nova propriedade: "TACBrPosPrinter.ConfigModoPagina" Published,
    para permitir configurar as definies do Modo Pgina, por cdigo
[*] Demo do ACBrPosPrinter atualizado, para Demonstrar o funcinonamento do
    "Modo Pgina" (cool)
    (por: DSA e Andr Moraes)

-- ACBrEscPosEpson --
[+] Implementado o suporte para o "Modo Pgina"
    (por: DSA e Andr Moraes)

06/04/2018
-- ACBrECFEscECF --
[*] Ajuste no mtodo: TACBrECFEscECFProtocoloEpsonDLL.EnviaComando_ECF, para
    suportar Strings com Aspas Duplas no texto.
    (por: DSA)

Data: 05/04/2018
-- ACBrETQEpl2 --
[-] Correo no mtodo "ImprimirLinha" (por: Elias)

Data: 04/01/2018
-- ACBrBAL --
[*] Incluso do modelo ACBrBALPrecision. (por: Fabio Junior Borba)

Data: 18/03/2018
-- ACBrPosPrinter --
[-] Correo da Emisso do Beep em alguns modelos de Impressoras compatveis
    com Epson Esc/Pos
    (por: DSA)

Data: 06/03/2018
-- ACBrETQ --
[+] Adicionada a propriedade: "MargemEsquerda: Integer default 0", que permite
    deslocar toda a etiqueta para a uma Margem mnima.
    til para impressoras que ajustam a Etiqueta no meio da baia de impresso.

-- ACBrETQEpl2 --
[-] Correo nos mtodos: "ImprimirLinha" e "ImprimirCaixa", para considerar
    corretamente as coordenadas informadas.
[*] Ajuste no mtodo "ComandoCarregarImagem", para considerar o PCX como padro

-- ACBrETQPpla --
[*] Ajuste em "ComandoImprimirTexto", para no enviar o comando de "reverso", se
    no houver necessidade

-- ACBrETQZplII --
[*] Mtodo "ComandoFonte", modificado para usar o comando '^A' e no '^CF',
    incorporando o envio da Orientao da Fonte
[*] Comando "ComandoBackFeed", modificado para enviar BackFeed a 100% quando
    ligado
[+] Implementado suporte a propriedade: "Origem = ogBottom"
    (por: DSA)

Data: 28/02/2018
-- ACBrPosPrinter --
[*] Modelo "ppEscElgin", modificado para "ppEscVox", a pedido do Fabricante Elgin
    (por: DSA)

Data: 16/02/2018
-- ACBrETQClass --
[+] Adicionado suporte a Unidade "etqDecimoDeMilimetros".
    (por: DSA)

Data: 07/02/2018
-- ACBrPosPrinter --
[+] Adicionado suporte a Tag </reset>, que permite restaurar as configuraes de
    fbrica da Impressora.
    https://www.projetoacbr.com.br/forum/topic/27499-impress%C3%A3o-escpos/
    (por: DSA)

Data: 03/02/2018
-- ACBrCHQPerto --
[-] Correo na impresso de Cheques Perto. Suporte para multiplos modos de
    impresso (por: Pedro E. Braga)
    https://www.projetoacbr.com.br/forum/topic/22521-erro-comunica%C3%A7%C3%A3o-impressora-de-cheques-perto/

Data: 29/01/2018
-- ACBrETQClass, ACBrETQPpla --
[-] Correo em TACBrETQClass.ConverterUnidade, para correta converso de
    Milmetros para Dots

-- ACBrETQZplII --
[-] Mtodo: TACBrETQZplII.ComandoFonte. Correo na verificao dos limimtes de
    multiplicador Horizontal e Vertical
[*] Mtodo: TACBrETQZplII.ComandoResolucao, modificado para no tentar mudar a
    resuluo da Impressora
    (por: DSA)

Data: 20/01/2018
-- ACBrECFEscECF --
[-] Correo em mtodos que retornavam altos valores, estourando o limite de
    Integer. https://www.projetoacbr.com.br/forum/topic/41007-grande-total-escecf/
    (por: DSA)

Data: 17/01/2018
-- ACBrEscDiebold --
[-] Correo na impresso do QRCode
    https://www.projetoacbr.com.br/forum/topic/30649-impressora-diebold-n%C3%A3o-imprime-o-qrcode/

-- ACBrECFEscECF --
[-] Correo em  "TACBrECFEscECFComando.AddParamDouble", para evitar
    arredondamento indevidos em valores altos...
    https://www.projetoacbr.com.br/forum/topic/40930-venda-de-item-com-valor-99999999/

Data: 16/01/2018
-- ACBrECFEscECF --
[-] Correo no mtodo Cancela Cupom da Daruma FS800i, quando havia um ou mais
    CCD aps o Cupom
    https://www.projetoacbr.com.br/forum/topic/37529-daruma-fs800i-erro-ao-cancelar-cnf-e-cf-com-ccd/
    (por: DSA)

Data: 15/01/2018
-- ACBrECFEscECF --
[-] Correo em GetDadosUltimaReducaoZ, da Epson TM900F, quando usando "USB" na
    porta. No era capaz de efetuar a leitura
    https://www.projetoacbr.com.br/forum/topic/40896-dados-%C3%BAltima-redu%C3%A7%C3%A3o-z-epson-t900f/

Data: 11/01/2018
-- ACBrECFVirtual, ACBrECFVirtualBuffer --
[+] Adicionado o mtodo "CancelaDescontoAcrescimoItem"
    https://www.projetoacbr.com.br/forum/topic/40860-altera%C3%A7%C3%B5es-acbrecfvirtual/

Data: 09/01/2018
-- ACBrECFEscECF --
[-] Correo em "GetEstado", para detectar corretamente o Estado de ECF bloqueado
    por Reduo Z, na Daruma FS800i
    (por: DSA)

-- ACBrDISSmakTecladoLib --
[+] Adicionado novo modelo em ACBrDIS, disSmakTecladoLib, que suporta a carga
    dinmica da Biblioteca da Smak 'sk_access.dll'

-- ACBrDISSmakSerial --
[+] Adicionado novo modelo em ACBrDIS, disSmakSerial, que Suporta Teclados
    que Criam uma Porta Serial Virtual, quando conectados.

Data: 15/12/2017
-- ACBrETQ --
[+] Adicionada sobrecarga no mtodo "ImprimirTexto", que permite informar a
    "Fonte" como uma String.
[*] O Mtodo "ImprimirTexto", que recebe o parmetro "Fonte" como Integer,
    aplicar a seguinte lgica: Valores de 0 a 9 so convertidos para String.
    Valores de 10 a 35 so convertidos para 'A' a 'Z'

-- ACBrETQClass, ACBrETQPpla, ACBrETQEpl2, ACBrETQZplII --
[*] Mtodo "ComandoImprimirTexto", modificado para receber a Fonte como String
    https://www.projetoacbr.com.br/forum/topic/40429-acbretq-texto-da-fonte-desconfigurado-na-imp-zebra/

-- ACBrETQZplII --
[*] Modificao em "comandoImprimirTexto", para definir as fontes e rotao,
    como na versao anterior de ACBrETQ. (Usando os comanfos ^CF e ^FW)
[*] Mtodo "ComandoResolucao", modificado para levar em considerao o valor da
    propriedade "ACBrETQ.DPI"

Data: 12/12/2017
-- ACBrETQPpla --
[*] Incluso de um valor mnimo(220) para aAvanoEtq em "ComandosFinalizarEtiqueta".
    (por: Elias Csar)

Data: 02/12/2017
-- ACBrDevice --
[+] Adicionada a propriedade "ArqLOG: String", para permitir a criao de um Log
    para Debug de ACBrDevice
    (por: DSA)

-- ACBrECFEscECF -
[*] Ajuste para sempre desabilitar o Controle de Porta, quando ECF for Daruma
    (a fim de evitar travamentos na comunicao)
[*] Ajuste para tratamento de retorno de Erro: "140-Relgio est travado" da
    Daruma FS800i, que ocorre quando o ECF ainda est ocupado, processando o
    ltimo documento
[*] Ajuste em ReducaoZ, ,para considerar como TimeOut mnimo, 120 segundos
    (por: DSA)

-- ACBrETQ* --
[*] Ampla refatorao dos fontes de todas as classes de ACBrETQ, visando buscar
    simplificao e otimizao do cdigo
    (por: Elias e DSA)

-- ACBrETQZplII --
[+] Implementado os mtodos: "CarregarImagem", "ImprimirImagem"
    (por: DSA)

Data: 30/11/2017
-- ACBrPosPrinter --
[+] Adicionada nova classe implementando o protocolo Epson Esc/P2, usado por
    antigas matriciais, como LX300
    (Por DSA, e Carlos do Nascimento)

Data: 29/11/2017
-- ACBrECFEscECF --
[*] Ajustes para evitar exception quando ECF no responde com os campos esperados
[*] Mtodo "GetDadosUltimaReducaoZ", modificado para tentar ler 3 vezes os dados
    da ReduoZ, pois Daruma FS800i, em algumas ocasies responde ao comando com
    String vazia
[*] Mtodo "VerificaFimLeitura", modificado para zerar o contador de falhas WAK,
    quando obtiver algum retorno vlido do ECF
    https://www.projetoacbr.com.br/forum/topic/39391-daruma-fs800i-trava-quando-solicita-data-e-hora-do-softwar-b%C3%A1sico/
    (por: DSA)

Data: 24/11/2017
-- ACBrECFEscECF --
[-] Ajuste para evitar arredondamentos nas chamadas de TACBrECFEscECFComando.AddParamDouble
    https://www.projetoacbr.com.br/forum/topic/39917-cnf-finalizando-com-1-centavo-a-mais/
    (por: DSA)

Data: 13/11/2017
-- ACBrECF --
[+] Abertura de bilhete de passagem
    por: regys.silveira

Data: 10/11/2017
-- ACBrPosPrinter, ACBrEscPosEpson, ACBrEscDaruma, ACBrEscBematech --
[+] Adicionado suporte as Tags:
    <a> - Liga Altura Dupla
    </a> - Desliga Altura Dupla
    (por: DSA)

Data: 01/11/2017
-- ACBrPosPrinter --
[*] Ajuste para que Cmd.PuloDeLinha default seja "sLineBreak"
    (por: DSA)

Data: 23/10/2017
-- ACBrDevice --
[+] Adicionada a propriedade "TimeOutMilissegundos", para permitir definir um
    TimeOut em milissegundos... o valor informado, ser traduzido para "TimeOut"

-- ACBrPosPrinter --
[+] Adicionado em TACBrPosTipoStatus o item "stErroLeitura"
[*] Mtodo "LerStatusImpressora", modificado para receber como parmetro, o nmero
    de Tentativas. "Tentativas: Integer, default = 1"
[*] Mtodo "TxRx", modificado para definir corretamente o TimeOut de comunicao

-- ACBrEscBematech, ACBrEscElgin, ACBrEscPosEpson, ACBrEscDaruma --
[*] Mtodo "LerStatus", modificado para retornar "stErroLeitura" e no "stErro",
    quando houver falha na leitura da Serial

-- ACBrEscPosEpson --
[*] Mtodo "LerStatus", modificado para no mais tentar leitura por 5 vezes.
    (causando lentido)

Data: 20/10/2017
-- ACBrETQ --
[+] Incluso de nova propriedade "Velocidade", baseada na contribuio do usurio conforme:
    https://www.projetoacbr.com.br/forum/topic/39446-definir-velocidade-de-impresso-ppla-e-epl2/
    (por: Marcelo A. Rodrigues)
	
-- ACBrETQClass, ACBrETQPpla, ACBrETQEpl2 --
[+] Implementao da nova propriedade "Velocidade".
    (por: Marcelo A. Rodrigues)

Data: 06/10/2017
-- ACBrPosPrinter --
[+] Adicionada a propriedade: "VerificarImpressora: Boolean default False"
    Quando "True", o ACBrPosPrinter usar o mtodo "LerStatusImpressora",  a cada
    execuo do mtodo "Imprimir", e interpretar as respostas da Impressora,
    emitindo erros no caso de "Tampa Aberta, Sem Papel, OffLine, Erro".
    IMPORTANTE: A leitura de Status da impressora, somente funciona em Portas
                Seriais ou TCP
[*] Mtodo "Imprimir". Ajuste para converter todos as Quebras de Linha da
    String recebida para impresso, para o valor definido em "Cmd.PuloDeLinha"
[*] Mtodo "Imprimir". Ajuste para esvaziar o Buffer interno de ACBrPosPrinter
    mesmo quando houver falha na impresso.
    (por: DSA)

Data: 30/09/2017
-- ACBrBALMicheletti --
[-] Acertos para compilar corretamente em qualquer verso do Delphi mais atual.
    por: Regys.Silveira

Data: 29/09/2017
-- ACBrBALMicheletti, ACBrBAL
[+] Incluso da balana Micheletti
		https://www.projetoacbr.com.br/forum/topic/33420-balana-micheletti/
	(por: Juliomar Marchetti)

Data: 20/09/2017
-- ACBrTER, ACBrTERClass, ACBrTERWilbor --
[+] Incluso do parmetro "DuplaConfirmacao", baseado na contribuio de usurio do frum.
	(por: Natanael.Ribeiro)

Data: 08/09/2017
-- ACBrECFVirtual --
[-] Ajuste para permitir mais de 100 pagamentos no Cupom.
[*] Adicionda verificao para no permitir mais de 999 Itens e 999 Pagamentos
[-] Ajuste em "LoadFromINI" para evitar loop Infinito e Estouro de memria

Data: 04/08/2017
-- ACBrECF, ACBrECFClass --
[*] Modificaes em "GetRodapePaf" introduzindo o campo "InfoRodapeCupom.DavFarm"
    para Farmcias de manipulao
    http://www.projetoacbr.com.br/forum/index.php?showtopic=38657

Data: 30/08/2017
-- ACBrECFEscECF --
[-] Revertida modificao implementada em: 18/07/2017.
    http://www.projetoacbr.com.br/forum/topic/38579-ecf-epson-tm-t900f-no-fazendo-quebra-de-linha

-- ACBrETQ --
[+] Incluso de nova propriedade "BackFeed", baseada na contribuio do usurio conforme:
    http://www.projetoacbr.com.br/forum/topic/38559-etiqueta-pplb-da-argox-com-back-feed/
	(por: Felippi)
[*] Excluso da propriedade "AdicionarComandoP", pois estava obsoleta. Os comandos 
	utilizados por ela ('P' e 'N') j so enviados em outros momentos do cdigo.
	
-- ACBrETQClass, ACBrETQPEpl2 --
[+] Implementao da nova propriedade "BackFeed".
[*] Excluso da propriedade e implementao referente  "AdicionarComandoP".

Data: 26/08/2017
-- ACBrECFEscECF --
[-] Ajuste para problema de Loop infinito em Daruma FS800I
    http://www.projetoacbr.com.br/forum/topic/38287-daruma-fs800i-problema-redu%C3%A7%C3%A3o-z/

Data: 25/08/2017
-- ACBrDevice --
[+] Adicionada a propriedade "NomeDocumento", que  usada apenas no modo de
    impresso "RAW", e permite definir o nome do documento que ser apresentado
    no Spooler.

-- ACBrPosPrinter --
[*] Propriedade "Device", modificada para Published, para permitir editar em
    tempo de projeto (Object Inspector), os valores de ACBrDevice
    (por: DSA)

Data: 14/08/2017
-- ACBrBALDigitron --
[-] Corrreo na leitura do valor, considerando STX e ETX
    http://www.projetoacbr.com.br/forum/topic/38234-correo-na-classe-da-balana-digitron/

Data: 04/08/2017
-- ACBrECFEscECF --
[*] Ajuste no mtodo "GetNumCupom", para efetuar checagem do Retorno da Impressora.
    (Em algumas raras situaes o ECF Bematech respondeu o como o registrador errado)
    (por: DSA)

Data: 01/08/2017
-- ACBrDevice --
[*] Ajuste em "Ativar", para no parar por falha quando tenta fechar Socket
    anterior
    (por: DSA)

Data: 31/07/2017
-- ACBrECFSwedaSTX --
[-] acerto para gera corretamente a descrio da marca da impressora sweda mesmo 
    quando usando stx para evitar diferenas com o arquivo da SEFAZ, o que acaba 
    atrapalhando encontrar a impressora no CNIEE;
    por: regys.silveira

Data: 27/07/2017
-- ACBrETQPpla --
[*] Adicionada o suporte ao atributo de impresso invertida, em PPLA
    http://www.projetoacbr.com.br/forum/topic/37251-imprimir-texto-com-tarja-acbretq-ppla/

Data: 21/07/2017
-- ACBrPosPrinter --
[-] Correo para impresso com acentos, no Linux
    (por: DSA)

Data: 19/07/2017
-- ACBrBALFilizola --
[+] Ajuste para o modelo C&F C6MT
    http://www.projetoacbr.com.br/forum/topic/36644-integrao-balana-cf-c6mt-filizola/
    (por: Juliomar Marchetti)
		
Data: 18/07/2017
-- ACBrECFEscECF --
[*] Ajuste em "TACBrECFEscECFProtocoloEpsonDLL.EnviaComando_ECF", para modifcar
    todas as quebras de linha para LF antes de enviar para a DLL
    (Por: DSA)

Data: 16/07/2017
-- ACBrPosPrinter --
[*] Correo para Sinal de Gaventa invertido adicionado verificao
    http://www.projetoacbr.com.br/forum/topic/37180-acbrposprinter-lerstatusimpressora-sinal-invertido-da-gaveta-faltando-verificao/
    (por : Juliomar Marchetti)
		
Data: 29/06/2017
-- ACBrECFVirtual --
[-] Correo para Zerar totalizadores de "RelatoriosGerenciais.Contador", aps a
    Reduo Z.
    http://www.projetoacbr.com.br/forum/topic/37469-contador-de-relat%C3%B3rios-gerenciais-em-acbrecfvirtual/

Data: 22/06/2017
-- ACBrECFEscECF --
[*] Mtodo "IdentificaOperador" modificado para verificar o Operador atual, e
    evitar reprogramar quando for o mesmo...
    http://www.projetoacbr.com.br/forum/topic/37303-protocolo-esc-ecf-identificar-operador/
    (por: Filipe Natividade)

Data: 07/06/2017
-- ACBrECF --
[*] Alterao para limpar "InfoRodapeCupom" aps fechar/cancelar cupom.
    (por: Elias Csar)

Data: 04/06/2017
 -- ACBrBALFilizola --
[*] Ajuste na funo "InterpretarRepostaPeso", para considerar at o primeiro ETX
    que encontrar.
    (por: Fabiano Cunha)

Data: 19/05/2017
-- ACBrECFVirtual --
[-] Correo para que o contador de Redues Z (CRZ), seja impresso na Reduo Z
    de acordo com a Reduo Z atual (assim como ocorre no ECF)
    (por: DSA)

Data: 13/05/2017
-- ACBrDevice --
[-] Ajuste para deteco de portas USB e DLL quando existe mais de uma exemplo :
    DLL1 ou USB2
    http://www.projetoacbr.com.br/forum/topic/36702-erro-na-acbrdevice-quando-uso-epson-dll/

-- ACBrECFEpson --
[*] Ajuste na impresso de cheques com Epson onde estava centavos ao invs de centavo
    http://www.projetoacbr.com.br/forum/topic/36703-ecf-epson-no-imprimia-texto-centavos-no-cheque/
    (por: Juliomar Marchetti)
		
Data: 09/05/2017
-- ACBrDevice --
[-] Ajuste na deteco de portas Paralelas, Linux (Ex: "/dev/lp?", "/dev/usb/lp?")
    http://www.projetoacbr.com.br/forum/topic/36617-acbrposprinter-com-epson-tm-t20-usb-no-linux
    (por: DSA)

Data: 28/04/2017
-- ACBrECFVirtual --
[-] Correo em "LoadFromINI", para no considerar o valor do Troco, como
    Pagamento efetuado.
    http://www.projetoacbr.com.br/forum/topic/36462-acbrecfvirtual-duvida-com-acbrecf1totalpago
    (por: BigWings)

Data: 27/04/2017
-- ACBrECFNaoFiscal, ACBrECFVirtual --
[+] Implementado suporte ao mtodo "GetNumUltimoItem"
    (Por: BigWings e DSA)

-- ACBrECFVirtual --
[*] Mtodo "ClasstoINI", ajuste para no disparar exceptions quando etntar Salvar
    e o componente no tiver sido inicializado.. (por: DSA)

Data: 20/04/2017
-- ACBrEscBematech, ACBrEscDiebold --
[-] Correo na impresso de Cod.Barras. (bug introduzido em 12/04/2017)

-- ACBrEscPosEpson --
[*] Adicionado os mtodos pblicos "ComandoCodBarrasEscPosEpson" e
    "ComandoCodBarrasEscPosNo128ABC"
    (por: DSA)

Data: 14/04/2017
-- ACBrPosPrinter --
[+] Classe "TACBrPosPrinterClass", adicionado o mtodo Virtual "Configurar",
    permitindo as classes filhas, a possibilidade de enviar comandos a impressora
    aps a chamada de "Ativar"
[*] Mtodo "TACBrPosPrinter.Imprimir", modificado para chamar "Ativar", caso
    a porta ainda no esteja Ativa

-- ACBrEscDaruma --
[*] Adicionado mecanismo de autoconfigurao, do numero de colunas Normal e
    Condensada.
[*] Mtodo "LerStatus", adicionda verificao do tipo de porta (Serial ou Eth)
[*] Mtodo "LerInfo", modificado para que a deteco de colunas Default seja 48

-- ACBrEscBematech --
[*] Mtodo "LerStatus", adicionda verificao do tipo de porta (Serial ou Eth)
(por: DSA)

Data: 12/04/2017
-- ACBrPosPrinter --
[+] Adicionado o comando "TACBrPosComandos.PuloDeLinha", para permitir definir
    qual o comando a ser enviado, para pulo de linha (Ex: CR ou CR+LF)
[*] Mtodo "TACBrPosPrinterClass.ComandoEspacoEntreLinhas": adicionada
    implementao genrica, para evitar repetio nas classes filhas

-- ACBrEscBematech --
[*] Refatorao para no mais descender de TACBrEscPosEpson e sim de
    TACBrPosPrinterClass

-- ACBrEscDaruma --
[*] propriedade "RazaoColunaFonte.Condensada", modificada para usar a proporo
    Default (0.75)
[-] Mtodo "ComandoQrCode". Ajuste para correta impresso de QRCodes grandes.
    Caso a correo de Erro no tenha sido especificada, e tamanho do cdigo
    seja maior do que 256 caracteres, usar 'M' como correo.
[*] Mtodo "ComandoEspacoEntreLinhas" removido, pois usar implementao da
    classe me

-- ACBrEscDiebold --
[*] Mtodo "ComandoFonte" removido, pois foi migrado para "TACBrEscPosEpson"

-- ACBrEscPosEpson --
[*] Mtodo "ComandoFonte" adicionado, para melhor controle e compatibilidade das
    fontes "Negrito, Condensado, Expandido, Sublinhado",com os diversos modelos
    de Impressoras compatveis com Epson EscPos
[*] Mtodo "ComandoEspacoEntreLinhas" removido, pois usar implementao da
    classe me

Data: 04/04/2017
-- ACBrECFVirtual --
[-] Mtodo "VendeItem", correo para o caso do Desconto / Acrescimo falhar,
    no ficar registrado o Item vendido na memria do ECF Virtual
    (por: DSA)

Data: 09/03/2017
-- ACBrECFVirtual --
[-] Correo de A.V. quando Ativando o ECFVirtual, que tinha cupom Aberto e um Item Cancelado
    http://www.projetoacbr.com.br/forum/topic/35435-erro-ao-ativar-acbrecf-utilizando-ecf-virtual/?do=findComment&comment=232343
    (por: DSA)

Data: 22/02/2017
-- ACBrECFEscECF --
[*] Correo para encontrar a linha correta das informaes 
    em "BematechObtemDadosUltimaReducaoZDeLeituraMemoriaFiscal".
    (por: Elias Csar)

Data: 20/02/2017
-- ACBrECFEscECF --
[*] Alterao para pegar a linha de incio corretamente ao ler os dados de RZ
	pela procedure "BematechObtemDadosUltimaReducaoZDeLeituraMemoriaFiscal".
    (por: Pedro E. Braga)

Data: 20/02/2017
-- ACBrECFClass --
[-] Correo para retornar alquotas tributadas que possuem ndice alfanumrico
	Exemplo: T01, T02, etc.
    (por: Elias Csar)

Data: 15/02/2017
-- ACBrECFVirtualBuffer --
[*] Ajuste para que as mascaras de valores do Relatrio usem o "FormatFloatBr"
    (por: DSA)

Data: 14/02/2017
-- ACBrECFVirtual --
[*] Propriedade "TACBrECFVirtualClass.ChaveCupom", migrada para
    "TACBrECFVirtualClassCupom.ChaveDFe"..  isso permite acessar e modificar
    a Chave do DFe a ser cancelado em eventos como: "QuandoCancelarCupom", que
    j recebia o parmetro "CupomVirtual"  (por: DSA)

Data: 13/02/2017
-- ACBrECFVirtual --
[-] Correo para atribuir corretamente os valores em "CancelaItemVendido" quando
    o item possui acrscimo ou desconto.
    (por: Elias Csar)

Data: 13/02/2017
-- ACBrECFClass --
[-] Correo para somar os Cancelamentos ISSQN em aberto em "CancelamentoISSQN".
    (por: Elias Csar)

Data: 10/02/2017
-- ACBrECFClass --
[-] Verificado que alquotas II, FF e NN no entram na lista de alquotas, porm
    a validao falhava quando o ndice possua nmeros (exemplo: I1, F1, N2...).
    Alterado para no considerar alquotas zeradas ou que possuem caracteres no ndice.
    (por: Elias Csar)

-- ACBrECFVirtual --
[*] Adicionado registrador especfico para TROCO, nas Formas de Pagamento.
    Antes o ECFVirtual, descontava o TROCO da Forma de pagamento 01-DINHEIRO,
    o que causava dificuldade na apurao dos resultados  (por: DSA)

Data: 06/02/2017
-- ACBrECF --
[*] Modificado mtodo "TACBrECF.PafMF_ArqMFD_Binario" para gerar ArquivoMFD
    com Tipo = "tdmfdTotal" caso a data Inicial ou Final esteja zerada.
    (por: Elias Csar)

-- ACBrECFVirtual --
[*] Ajuste para que ECF no fique bloqueado por Estado estRequerZ, caso exista
    algum documento em aberto.
    http://www.projetoacbr.com.br/forum/topic/35028-melhoria-getestado-acbrecfvirtual/

Data: 03/02/2017
-- ACBrECFClass --
[*] Incluso do novo mtodo "TotalCancelamentosEmAbertoISSQN";

-- ACBrECFVirtual --
[*] Foram separados todos os Totalizadores entre ICMS e ISSQN. 
	Ou seja, agora o desconto/acrscimo, subtotal e valores cancelados sero 
	separados pelo tipo da alquota ("T" ou "S").

-- ACBrECFVirtualBuffer --
[*] Foram separados os Totalizadores entre ICMS e ISSQN no relatrio do
	ECF Virtual (ReduoZ/LeituraX);
	(por: Elias Csar)

Data: 31/01/2017
-- ACBrECFVirtual --
[+] Implementado suporte ao mtodo: "GetNumCOOInicial" (por: PauloHenrique)
    http://www.projetoacbr.com.br/forum/topic/34870-tacbrecfvirtual-numcooinicial-vazio/

Data: 27/01/2017
-- ACBrECFVirtual --
[-] Alterao para incluir tambm o valor dos acrscimos de itens em 
	"fpCuponsCanceladosEmAbertoTotal".
	(por: Elias Csar)

-- ACBrBAL --
[-] Correo para NO desativar "MonitorarBalanca" aps mtodo "LePeso"
    (por: adenilton)

Data: 26/01/2017
-- ACBrDevice --
[-] Correo para impresso em Modo Raw em Lazarus/FPC. Restaurando para o modo
    anterior, para evitar problemas de impresso em outras Impressoras
    (por: DSA)

Data: 21/12/2016
-- ACBrECFVirtualBuffer --
[*] Melhorias em "TACBrECFVirtualBufferClass.AddBufferRelatorio", para que
    relatrio fique mais semelhante ao de um ECF do convnio 09/09.
    - Adicionado os Contadores: NumCRO, NumCCF, NumCNF, NumCDC
    - Adicionado os Totalizadores: FS1, IS1, NS1
    - Separao dos Totalizadores de ICMS e ISSQN

-- ACBrECFVirtual --
[+] Adicionado suporte aos totalizadores de iseno do ISSQN: FS1, IS1, NS1
[+] Adicionado sobrecarga aos mtodos: GetTotalSubstituicaoTributariaISSQN,
    GetTotalIsencaoISSQN, GetTotalNaoTributadoISSQN
[+] Adicionada rotina para efetuar migrao de INI do formato antigo para o novo:
    http://www.projetoacbr.com.br/forum/index.php?showtopic=34210
    (por: DSA)

Data: 23/12/2016
-- ACBrECFBematech --
  [-] Descrio s pode ter no mximo 200 caracteres (compare com linha 1887);
  
Data: 19/12/2016
-- ACBrECF --
[*] Removido e-mail do Relatrio de Identificao do PAF-ECF;
[*] Incluso da UF no Relatrio de Parmetros de Configurao.	
	(por: Elias Csar)

Data: 15/12/2016
-- ACBrDevice --
[-] Correo na deteco de Impressora "RAW", com nome de Rede:
	http://www.projetoacbr.com.br/forum/topic/33998-impressora-nao-encontrada-no-posprinter/

Data: 13/12/2016
-- ACBrECFEscECF --
[-] Correo para Venda de Item com aliquota de Servio, sendo informada por
    Indice... Exemplo: S01, S3
    http://www.projetoacbr.com.br/forum/index.php?showtopic=33900

-- ACBrDevice --
[*] Ajuste para compilao em FPC inferior a 3.0  (por: DSA)

Data: 30/11/2016
-- ACBrBALMagellan --
[-] Correo no mtodo "InterpretarRepostaPeso" (retorno estava vazio).
    http://www.projetoacbr.com.br/forum/topic/33744-erro-balan%C3%A7a-magellan/

Data: 25/11/2016
-- ACBrECFEscECF --
[-] Ajuste aps commit de 24/11/16, para para correto funcionamento da 
    a leitura da CAT 52, por DLL, na Epson.   (por: Rodrigo Fruhwirth)

Data: 24/11/2016
-- ACBrECFClass, ACBrEscECF, ACBrECFBematech, ACBrECFDaruma, ACBrECFSwedaStx --
[-] Correo para funcionamento do mtodo "PafMF_GerarCAT52" em ACBrECFEscECF,
    modificando a assinatura do mtodo para receber o Nmero de Srie como
    parmetro opcional:
    procedure PafMF_GerarCAT52(const DataInicial, DataFinal: TDateTime;
      const DirArquivos: String; NumeroSerie: String = ''); override;
    (por: DSA)

Data: 21/11/2016
-- ACBrECFEscECF --
[-] Mtodo "GetDadosUltimaReducaoZ", Bematech MP4200. Correo para retorno de
    "GrandeTotal" quando CRZ for superior a 256
    http://www.projetoacbr.com.br/forum/index.php?showtopic=33568

Data: 19/11/2016
-- ACBrECFEscECF --
[-] Correo de Bug quando usando Epson com porta "USB"/"DLL". Evitando A.V. na
    execuo de comandos que tenham um grande retorno de dados (Ex: LeituraXSerial)
    (por: DSA)

Data: 18/11/2016
-- ACBrDevice --
[+] Adicionado o tipo: TACBrECFTipoDownloadMFD = (tdmfdTotal, tdmfdData, tdmfdCOO);

-- ACBrECF --
[*] Mtodo "ArquivoMF_DLL(NomeArquivo: AnsiString)", renomeado para:
    "ArquivoMF_Binario_DLL(NomeArquivo: AnsiString)"
[*] Mtodo "ArquivoMFD_DLL(NomeArquivo: AnsiString)", renomeado para:
    "ArquivoMFD_Binario_DLL(NomeArquivo: AnsiString)"
[+] Adicionado os mtodos:
   ArquivoMFD_Binario_DLL(NomeArquivo: AnsiString; DataInicial, DataFinal: TDateTime);
   ArquivoMFD_Binario_DLL(NomeArquivo: AnsiString; COOInicial, COOFinal: Integer);
[*] Mtodo "PafMF_Binario(const PathArquivo: String)", removido. Use o mtodo:
    "PafMF_ArqMF_Binario"
[*] Mtodo "PafMF_ArqMF", renomeado para "PafMF_ArqMF_Binario"
[*] Mtodo "PafMF_ArqMFD", renomeado para "PafMF_ArqMFD_Binario", e assinatura
    modificada para:
    procedure PafMF_ArqMFD_Binario(const APathArquivo: String; DataInicial: TDateTime = 0;
      DataFinal: TDateTime = 0; Assinar: Boolean = True);

-- ACBrECFBematech, ACBrECFDaruma, ACBrECFEpson, ACBrECFEscECF, ACBrECFSwedaSTX --
[*] Aplicada modificaes em "ArquivoMFD_Binario_DLL", para o funcionamento por
    Periodo de Data e Intervalo de COO

-- ACBrECFEpson --
[*] Ajuste para que mtodos da DLL, para gerao de MF, MFD no gravem a linha de EAD
[*] Ajuste no Path informado para a DLL, segundo recomendaes da Epson

-- ACBrECFFiscNET --
[+] Implementao inicial dos mtodos: "ArquivoMF_Binario_DLL" e "ArquivoMFD_Binario_DLL"

  (Por: Pedro Braga e DSA)
  http://www.projetoacbr.com.br/forum/topic/32980-arquivo-mf-e-mfd-apos-primeira-reducao/


Data 13/11/2016
-- ACBrECF, ACBrECFClass --
[*] Mtodo "CancelaDescontoAcrescimoItem", modificado inserindo novo parmetro:
    "TipoAcrescimoDesconto: String = 'D'"
[*] Mtodo "GetRodapePaf" modificado para atender ao requisito XXXVI do PAF-ECF
[*] TACBrECFRodape modificado inserindo as propriedades "Placa" e "QtdeKM"

-- ACBrECFBematech, ACBrECFEpson, ACBrECFFiscNET, ACBrECFSwedaSTX --
[+] Adicionado suporte ao mtodo: "CancelaDescontoAcrescimoItem"

-- ACBrECFEscECF --
[*] Mtodo "CancelaDescontoAcrescimoItem" modificado para suportar o parmetro
    "TipoAcrescimoDesconto"

-- ACBrECFFiscNET --
[*] Mtodo "TraduzirTag", modificado para suportar modelo "URANO/1FIT LOGGER"

(por: Pedro E. Braga) - http://www.projetoacbr.com.br/forum/index.php?showtopic=32980

Data: 09/11/2016
-- ACBrBal, ACBrBALLibratek
[+] Adicionado a balana libratek wt3000-i
    http://www.projetoacbr.com.br/forum/topic/31203-acbrbal-com-balan%C3%A7a-libratek-wt3000-i/
    por : Juliomar Marchetti
		
Data: 03/11/2016
-- ACBrECFFiscNET --
[*] Ajuste para nunca tentar imprimir mais de 8 linhas do Rodap
    www.projetoacbr.com.br/forum/topic/15230-acbrecf-fiscnet-fechacupom/

Data: 01/11/2016
-- ACBrECFEpson --
[*] Ajuste no mtodo "LinhaRelatorioGerencial", para que o mesmo Feche o
    Relatrio Gerencial, quando o Limite mximo de linhas for atingido.
    http://www.projetoacbr.com.br/forum/topic/32569-certificao-paygo-passo-26
    (por: DSA)

Data: 21/10/2016
-- ACBrCHQBematech --
[-] acerto para impresso correta de cheques na impressora Bematech

Data: 18/10/2016
-- ACBrBAL --
[+] Incluso de dois comandos: "SolicitarPeso" e "InterpretarResposta()" 
    com objetivo de utilizar o ACBrBAL dentro do ACBrMTer.
    (por: Elias Csar)
	
-- ACBrBALClass e filhas -- 
[+] Includos os comandos "SolicitarPeso", "AguardarRespostaPeso" e 
    "InterpretarRespostaPeso", dividindo o Comando "LePeso" em partes;
[*] Refatorao nas classes para utilizao dos novos comandos;
[*] Modificao pra que ACBrBALClass implemente uma Balana Genrica. 
    Com isso a ACBrBALGenerica foi excluda.
    (por: Elias Csar)

Data: 11/10/2016
-- ACBrDevice --
[-] Correo para suporte a portas paralelas (por: DSA e Waldir Paim)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=32722
	
Data: 10/10/2016
--ACBrBAL -- 
[*] Refatorao das classes ACBrBALAFTS, ACBrBALSaturno, ACBrBALFilizola,
    ACBrBALLider, ACBrBALLucasTec, ACBrBALRinnert, ACBrBALToledo2180, 
    ACBrBALUrano e ACBrBALUranoPOP(por: Elias Csar Vieira)	

Data: 07/10/2016
-- ACBrPosPrinter --
[*] Removido deteco de porta aberta de "TACBrPosPrinter.DesativarPorta", que
    passou para TACBrDevice   (por: DSA)

-- ACBrDevice --
[-] Mtodo: "DeduzirTipoPorta". Correo na deteco do tipo de porta Paralela
    (LPT, /dev/lp)  (Por: Waldir Paim)
[*] Mtodo "Desativar". Ajuste para no fechar a porta Serial, enquanto a mesma
    ainda estiver Ativa e ocupada. (por: DSA)
[-] Mtodo: "GetPrinterRawIndex". Correo para deteco do Nome da Impressora
    compartilhada e remoo de Hint (Por: Waldir Paim)
[*] Mtodo "EnviaStringRaw", remoo de Warning (Por: Waldir Paim)


Data: 02/10/2016
-- ACBrDevice --
[+] Adicionado o suporte a portas "RAW", permitindo usar o "Nome da Impressora",
    do sistema operacional, na definio da "Porta"  Exemplo:
    "SWEDA SI-300S"  ou  "RAW:SWEDA SI-300S"
    Use "*" para imprimir na impressora Default
[+] Nova sintaxe para atribuio de portas do tipo "Arquivo". Exemplo:
    "C:\TEMP\saida.prn"  ou  "FILE:C:\TEMP\saida.prn"
[+] Adicionada nova propriedade "DeviceType: TACBrDeviceType", sendo que
    TACBrDeviceType = (dtFile, dtSerial, dtTCP, dtRawPrinter, dtHook)
    Essa propriedade  detectada automaticamente, na atribuio da propriedade
    "Porta", mas pode ser atribuida posteriormente, caso a deteco automtica
    no esteja correta.

-- ACBrECF --
[*] "FechaCupom" Ajuste para deteco de Quebra de linha com [CR]

-- ACBrPosPrinter --
[-] Ajuste para ignorar as tags </corte_parcial> e </corte_total> quanto
    propriedade "CortaPapel" for False.
[-] Correo na exibio de mensagens de erro com acentuao.
[*] Ajuste para no fechar a porta da impressora, enquanto a mesma ainda estiver
    ocupada.
    (por: DSA)

Data: 26/09/2016
-- ACBrECFVirtual --
[*] Includa procedure "GetEstadoECFVirtual" para possibilitar alterao 
	da propriedade fpEstadoECF durante "GetEstado" por parte das classes filhas.
	(por: Elias Csar)

Data: 22/09/2016
-- ACBrECF --
[-] Remoo de virgula a mais

-- ACBrECFEpson --
[*] Correo para Bug acidentalmente introduzido em 10/09/2016.
    Erro: 0204 - Campos em falta.   (por: DSA)

Data: 20/09/2016
-- ACBrECFDaruma, ACBrECFEscECF --
[-] Correes para impresso de Cod.Barras na Daruma FS800i  (por: DSA)

Data: 19/09/2016
-- ACBrEscDaruma --
[-] Ajuste no comando </fn> (fonte normal), para desligar modo condensado, na
    DR700     (por: DSA)

Data: 15/09/2016
-- ACBrECFDaruma --
[-] Ajuste no indice da alquota no mtodo carregaAliquotas.
    (por: Rodrigo Frhwirth)

Data: 14/09/2016
-- ACBrECF --
[*] Ajuste para correta impresso da mensagem de "Paraiba Legal"
    http://www.projetoacbr.com.br/forum/index.php?showtopic=32200

Data: 13/09/2016
-- ACBrECFBematech --
[-] Ajuste para correta verificao do Erro "Sem Papel"  (por: DSA)

Data: 11/09/2016
-- ACBrECFEscECF --
[-] Correo para o tipo de dados de string para ansistring, pois no delphi ele
     verifica a tipagem de dado (por: Juliomar Marchetti)
		
Data: 10/09/2016
-- ACBrECFClass --
[*] Classe "TACBrECFRodapeRestaurante", adicionado propriedade
    "ContaCliente: Boolean" para Sinalizar o tipo de conta "Mesa" ou "Cliente"
    (por: Rodrigo Frhwirth)

-- ACBrECF --
[*] Mtodo "GetRodapeRestaurante", adicionado tratamento para a propriedade
    TACBrECFRodapeRestaurante.ContaCliente, imprimndo a expresso "CONTA DE CLIENTE"
    no lugar de "MESA" de acordo com a necessidade da aplicao.
    (por: Rodrigo Frhwirth)
[*] Mtodos PafMF_ArqMF e PafMF_ArqMFD adicionado novo parmetro
    "Assinar: Boolean = True",  que permite omitir o processo de assinatura do
    ACBr. (por: Rodrigo Frhwirth)
[*] Troca de FormatFloat por FormatFloatBr para evitar formao errada de
    decimais em Linux ou S.O. em Ingles (por: DSA)

-- ACBrECFEpson --
[*] Mtodo EpsonTraduzirTagBloco implementado montagem do QrCODE.
    (por: Rodrigo Frhwirth)
[-] Mtodo "GetNumUltimoItem" modificado para sempre deve ler o nmero do ltimo
    item direto do ECF para evitar leitura erronea, em casos de falta de papel
    ou desligamento (por: Rodrigo Frhwirth)
[-] Mtodo "FechaNaoFiscal" estava fixo a quebra das linhas com 50 colunas e
    deve ser pelo nmero de colunas da ECF. (por: Rodrigo Frhwirth)
[-] Mtodo "FechaPortaSerialDLL" adicionado sleep(1000) antes de tentar abrir
    a porta novamente pelo ACBr, pois em micros muito lentos estava dando muitas
    mensagens de retentar ao ativar a ECF. (por: Rodrigo Frhwirth)
[-] Mtodo "FechaCupom" ajustado para evitar perda de dados da Mensagem da
    Observao, quando a mesma contem caracteres de controle. (por: Rodrigo Frhwirth)

-- ACBrECFEscECF --
[-] Mtodo "Ativar". Caso o ECF seja Bematech e MaxLinhasBuffer = 0, limita em 5
    linhas, pois a mesma congela quando recebe um buffer muito grande.
    (por: Rodrigo Frhwirth)
[-] Mtodos "FechaNaoFiscal", "Sangria", "Suprimento" ajuste da quebra de linha
    das observaes de acordo com as Colunas e limitado a 8 linhas.
    (por: Rodrigo Frhwirth)

-- ACBrECFFiscNET --
[*] Mtodo "Ativar" ajustado nmero de colunas para o Modelo "ZPM/1FIT LOGGER".
    (por: Rodrigo Frhwirth)
[-] Mtodo "GetNumSerie", retornando com espaos em branco em alguns modelos
    (por: Rodrigo Frhwirth)

Data: 09/09/2016
-- ACBrEscPosEpson --
[*] Ajuste no Comando de impresso de LogoTipo, para permitir informar o KeyCode
    no formato antigo (FS+'p')... para tal, informe:
      KeyCode1 := 1..255; KeyCode2 := 0

-- ACBrEscBematech --
[*] Ajuste para suportar KeyCodes no mesmo padro da Epson:
      KeyCode1 := 1..255; KeyCode2 := 0

Data: 08/09/2016
-- ACBrECF --
[+] Tratamento no mtodo GetEstadoClass e GetGrandeTotalClass para retornar a
    propriedade IgnorarErroSemPapel ao estado inicial para evitar problemas
    por: Juliomar Marchetti

Data: 08/09/2016
-- ACBrECF --
[+] Mudana para imprimir a data do laudo
    http://www.projetoacbr.com.br/forum/index.php?showtopic=32295
    por: Juliomar Marchetti
		
Data: 24/08/2016
-- ACBrECFEscECF --
[-] Alterao para que os valores dos totalizadores no sejam sobrepostos caso 
	existam alquotas duplicadas no ECF.
    (por: Elias Csar)

Data: 23/08/2016
-- ACBrECFClass --
[-] Correo na funo GetDadosReducaoZ para que no sejam criadas alquotas zeradas
	quando utilizado ECFVirtual.
    (por: Elias Csar)

Data: 22/08/2016
-- ACBrECFEscECF --
[-] Aplicado Workaround para problema de Leitura de Dados da Ultima Reduo Z
    em Bematech MP4200-TH FI II, verses at 01.00.02 e inferiores.
    Caso o CRZ seja maior que 256, o ECF devolve informaes da Reduo Z errada.
    (por: DSA)

Data: 18/08/2016
-- ACBrECFVirtual --
[-] Correo nos retornos de GetTotalNaoTributado e GetTotalIsencao (estavam
    invertidos)  (por: Amarildo Lacerda)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=31929

Data: 27/07/2016
-- ACBrECFNaoFiscal, ACBrECFVirtual, ACBrECFVirtualBuffer --
[*] Ajustes para permitir calculos com Truncamento, quando:
    ArredondaItemMFD := False                                   (por: DSA)
    http://www.projetoacbr.com.br/forum/topic/31494-truncar-valor-total-item-acbrecfnaofiscal/

Data: 12/07/2016
--ACBrBAL --
[*] Incluso da ACBrBALLibratek (por Marciano da Rocha)

Data: 27/06/2016
-- ACBrECFEscECF --
[-] Correo em "LinhaRelatorioGerencial", na impresso de Cod.Barras ou
    caracteres de controle, que continham CR ou LF  (por: DSA)

Data: 24/06/2019
-- ACBrECFEscECF --
[-] Correo no mtodo "FechaCupom", para ECFs Epson TM800F/900F.   (por: DSA)
    http://www.projetoacbr.com.br/forum/topic/30761-erro-fechacupom-ecf-epson-tm-t900f

Data: 10/06/2016
-- ACBrECF --
[*] Mtodos: "SubtotalizaCupom" e "EfetuaPagamento". Ajustes para evitar que
    falhas na leitura das informaes para exibio do MemoBobina, disparem
    exception, invalidando o comando anterior, que foi executado com sucesso
    (por: DSA e Elias)

Ajustes para
-- ACBrECFVirtual --
[-] Correes no calculo dos Totalizadores em Cancelamento de Item Vendido com desconto
[-] Correes no calculo dos Totalizadores de Aliquotas em Cancelamento do Cupom
    com Desconto no Subtotal
    (por: douglas_k)  http://www.projetoacbr.com.br/forum/index.php?showtopic=30568

Data: 08/06/2016
-- ACBrECFDaruma -- por: regys.silveira
[*] Acerto na leitura da data/hora da impressora para no depender de configuraes
    do sistema operacional.

Data: 07/06/2016
-- ACBrECFVirtual --
[-] Correo de Bug no calculo do Rateio do Desconto/Acredcimo no SubTotal
    (por: douglas_k) http://www.projetoacbr.com.br/forum/index.php?showtopic=30478

Data: 03/06/2016
-- ACBrECFEscECF --
[-] Corrigido Bug em "Ativar", que em algumas situaes no chamava "AtivarPorta"
    caso "ControlePorta" estivesse ativo.  (por: DSA)

Data: 21/05/2016
-- ACBrECF --
[+] Adicionado o mtodo:
    function CalculaTotalItem(AValorUnitario: Double; AQtd: Double = 1;
       ADecimais: Integer = 2; FlagAT: Char = ' '): Double;
    Que permite a aplicao, computar antecipadamente, o Total do Item, de
    acordo com as regras do ECF, considerando os parmetros de Arredondamento.
    (por: DSA)

Data: 11/05/2016
-- ACBrECFVirtual --
[+] Adicionado suporte aos registradores:
    - NumCFC (Numero Total de Cupons Cancelados)
    - NumGNFC (Nmero de Comprovantes no fiscais cancelados)
    - TotalCancelamentosOPNF (Valor Total de Cancelamentos em Operaes no fiscais)
[+] Adicionada sobrecarga no mtodo "FechaNaoFiscal", para permitir o fechamento
    de Comprovantes no fiscais, que no exigam pagamento (Sangria, Suprimento)
[+] Correo de Bug nos mtodos "Sangria" e "Suprimento".
    O valor da Sangria/Surpimento tambm era somado em uma Forma de Pagamento
[*] Mtodo: "CancelaCupom", modificado para realizar o corretamente o
    cancelamento de Operaes no fiscais
    (por: DSA)

-- ACBrECFVirtualBuffer --
[*] Mtodo: "AddBufferRelatorio", modificado para exibir:
    - Nmero de Cancelamentos No Fiscal
    - Total No Fiscal
    - Total No Fiscal Cancelado
    (por: DSA)

Data: 05/05/2016
-- ACBrECF, ACBrECFClass --
[+] Adicionada a propriedade "NumMaxLinhasRodape: Integer (readonly)", que
    retornar o nmero mximo de Linhas suportado nas Observaes do Rodap,
    para o Modelo de ECF (geralmente 8 linhas)
[*] Mtodo "FechaCupom", modificado para fazer uso de "NumMaxLinhasRodape"
    (por: DSA)

-- ACBrECFEscECF --
[*] Mtodo "FechaCupom" modificado, para efetuar tratamento dos caracteres de
    controle de Impresso
[-] Mtodo "Ativar", correo na detectao da mudana de protocolo DLL/COM
[*] Mtodo "Ativar", deteco de "NumMaxLinhasRodape = 20" no caso de Bematech
    01.00.02
    (por: DSA)

-- ACBrECFVirtual --
[*] Modificado para que "NumMaxLinhasRodape := 0" (sem limites)
    (por: DSA)

Data: 19/04/2016
-- ACBrECFEscECF --
[-] Metodo LinhaRelatorioGerencial, aplicado workaround para bug em Bematech
    na impressao de linhas do Gerencial  (por: DSA)
	http://www.projetoacbr.com.br/forum/index.php?showtopic=29469
	
Data: 15/04/2016
-- ACBrEscDiebold --
[-] Correo na impresso de Code128 (por: Fabio Souza)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=23975

Data: 06/04/2016
-- ACBrECFEscECF --
[-] Mtodo "LinhaRelatorioGerencial". Removido workaround aplicado para Bematech,
    pois estava causando problemas de alinhamento na impresso dos relatrios.
[*] Modificado tamanho mximo de Buffer de envio para Bematech, para 256 bytes
    para evitar travamentos do ECF.   (por: DSA)

-- ACBrECFClass --
[-] Correo de Bug na exibio de mensagens de erros com acentos, do mtodo
    "FormMsgDoProcedure" (por: DSA)

Data: 04/04/2016
-- ACBrPosPrinter --
[-] Ajuste para que a Porta Serial seja desativa, mesmo quando houver erro no
    envio da Impresso, caso "ControlePorta = True".   (por: DSA)

-- ACBrECFEscECF --
[-] Mtodo "GetEstado".Correo para deteco do estado de Pagamento. Em algumas
    situaes o estado simulado de Pagamento (aps SubTotalizao com Zero)
    era incorretamente interpretado  (por: DSA)

Data: 31/03/2016
-- ACBrBAL, ACBrBALAFTS --
[+] Adicionado suporte a novo modelo "AFTS" (por: Paulo Henrique de Castro)
    http://www.projetoacbr.com.br/forum/topic/29063-componente-acbrba-balan%C3%A7a-afts/

Data 30/03/2016
-- ACBrECFVirtual, ACBrECFVirtualBuffer --
[+] Adicionado suporte ao mtodo "CancelaItemNaoFiscal" (por: DSA e Amarildo Lacerda)
[-] Correo de Bug no mtodo "LerINI", que no considerava o Desconto/Acrescimo
    de SubTotal do cupom.
   http://www.projetoacbr.com.br/forum/topic/29019-sat-implementado-cancelaritemnaofiscal/

Data: 29/03/2016
-- ACBrBAL, ACBrBALSaturno --
[+] Adicionado suporte a novo modelo "Saturno" (por: Wislei de Brito Fernandes)
    http://www.projetoacbr.com.br/forum/topic/12619-componente-acbrba-balana-saturno/

Data: 26/03/2016
-- ACBrECFVirtual --
[-] Correes no mtodo "CancelaCupom".
    - Erro "List index () out of bounds", quando todos os Itens do Cupom j
      estavam cancelados
    - Rotina no considerava o fato do Item j estar cancelado, subtraindo o
      mesmo novamente dos totalizadores    (por: DSA)

--ACBrBALMuller, ACBrBALRinnert, ACBrBALToledo2090 --
[-] Correo nas units novas das balanas
    http://www.projetoacbr.com.br/forum/topic/28952-erro-ao-re-compilar-acbr-trunk2-acbr_serialdpk/
    por : Juliomar Marchetti
		
Data: 24/03/2016
--ACBrBALMuller, ACBrBALRinnert, ACBrBALToledo2090 --
[+] Adio de mais modelos de Balanas ao componente!
    http://www.projetoacbr.com.br/forum/topic/28900-modelos-de-balan%C3%A7a-novos/
    por : Juliomar Marchetti

Data: 24/03/2016
-- ACBrECF --
[-] Mtodo "LinhaRelatorioGerencial". Correo de Bug causado em 22/03/2016,
    com remoo de Warning em ACBrUtil
[*] Metodos GetDadosReducaoZ, GetDadosUltimaReducaoZ, MontaDadosReducaoZ
    modificados para retornar "String" e no "AnsiString"

-- ACBRECF, ACBrECFClass, ACBrECFBematech --
[*] Ajuste no mtodo "VendeItemEx", para permitir informar os seguintes
    parmetros: CST_PIS: String = ''; BaseCalculoPIS: Double = 0;
    AliquotaPIS: Double = 0; ValorPIS: Double = 0; QuantidadeVendidaPIS: Double = 0;
    ValorAliquotaPIS: Double = 0; CST_COFINS: String = ''; BaseCalculoCOFINS: Double = 0;
    AliquotaCOFINS: Double = 0; ValorCOFINS: Double = 0; QuantidadeVendidaCOFINS: Double = 0;
    ValorAliquotaCOFINS: Double = 0; CEST: String = ''
    (por: DSA)

Data: 22/03/2016
-- ACBrECFEscECF --
[-] Mtodo "GetEstado". Correo para deteco do Estado, quando o ECF possui
    Bloqueio por hardware (tampa aberta ou sem papel)     (por: DSA)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=28830
[-] Mtodo: "AbreCupomVinculado". Correo para Epson TM800F, que no considera
    as Formas de Pagamento que no permitem Vinculado, como sequencia de
    pagamento    (por: DSA)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=28839
[+] Mtodo "GetNumUltimoItem". Implementado leitura dos registradores do ECF,
    para o Modelo Epson TM800F   (por: DSA)

Data: 21/03/2016
-- ACBRECF, ACBrECFClass, ACBrECFBematech --
[*] Ajuste no mtodo "VendeItemEx", para permitir informar o valor do campo
    "CEST"  (por: DSA)

Data: 17/03/2016
-- ACBrECFDaruma, ACBrECFEscECF --
[-] Mtodo "ArquivoMFD_DLL", ECF FS800i, ajuste para funcionamento correto em
    modo OnLine.     (por: Samuel Tonini)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=28771

Data: 14/03/2016
-- ACBrECFVirtual --
[-] Correo de bug no calculo de Total por Aliquota, quando havia desconto/
    acrscimo, na venda do Item    (por: DSA)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=28573

Data: 11/03/2016
-- ACBrDevice --
[+] Adicionado os valores de SendBytesCount e SendBytesInterval em:
	"DeviceToString" e "SetParamsString"   (por: DSA)
	
Data: 08/03/2016
-- ACBrECFVirtual --
[-] Correo de Bug introduzido em 07/03/2016, aps ajustes para compilao em
    64 bits

-- ACBrECFEscECF --
[*] Mtodo "LinhaRelatorioGerencial", aplicado workaround para caracterstica
    da Bematech (por: DSA)

Data: 26/02/2016
--ACBrECFEpson --
[-] Ajuste para que o mtodo "CarregaFormasPagamento" considere apenas o numero
    da Formas de pagamento cadastradas
    http://www.projetoacbr.com.br/forum/topic/28186-carregaformaspagamento-ecfepson/

Data: 19/02/2016
--ACBrECFEpson --
[-] Ajuste para que o mtodo "CarregaFormasPagamento" considere todas as FPGs
    da memria
    http://www.projetoacbr.com.br/forum/topic/28186-carregaformaspagamento-ecfepson/

Data: 17/02/2016
-- ACBrECFVirtualBuffer --
[*] Modificada a rotina "TACBrECFVirtualBufferClass.AddBufferRelatorio", para
    constar o valor de "CuponsCanceladosEmAberto" (se o mesmo no for vazio)

Data: 08/02/2016
-- ACBrDevice --
[*] Adicionado controle de falhas em "EnviaStringSerial". Em algumas situaes
    especficas, o Device para de receber dados, e isso ocasionava um Loop
    infinito nesse mtodo. (por: DSA)

Data: 07/02/2016
-- ACBrECFEscECF --
[-] Mtodo DadosUltimaReducaoZ, ajuste para correta leitura dos totalizadores
    No Tributados em Daruma FS800I. Esse modelo no retorna o valor da alquota
    para Totalizadores no tributados
    http://www.projetoacbr.com.br/forum/index.php?showtopic=27897

-- ACBrECF --
[*] Mtodo FechaCupom, ajuste para no limitar em 8 linhas de observao, quando
    se tratar dos modelos ecfEscEcf ou ecfECFVirtual
    http://www.projetoacbr.com.br/forum/index.php?showtopic=27926

Data; 04/02/2016
-- ACBrETQPpla --
[*] Ajuste para permitir SubFontes at 999 em "ImprimirTexto"
    http://www.projetoacbr.com.br/forum/topic/27887-subfonte-do-componente-acbretq/
	
Data: 16/03/2015
-- ACBrCHQ --
[*] Adicionado modelo ACBrCHQElgin baseado na impressora Elgin ImpreCheq.
    (Larcio S Amici | Emerson Virissimo da Silva)

Data: 27/01/2015   (por: DSA)
-- ACBrECF --
[+] Adicionada a propriedade "TotalCancelamentosEmAberto: Double"

-- ACBrECFClass --
[*] Renomeada a propriedade e mtodos "TotalCancelamentosNaoTransmitidos" para
    "TotalCancelamentosEmAberto"
[*] Modificao em GetDadosReducaoZ para considerar o valor de
    "TotalCancelamentosEmAberto" em "Total Cancelado ICMS"

-- ACBrECFVirtual --
[*] Renomeada a propriedade e mtodos "TotalCancelamentosNaoTransmitidos" para
    "TotalCancelamentosEmAberto"
[-] Correo em "DescontoAcrescimoItemAnterior", para acumular valores de
    Descontos e Acrescimos nos Totalizadores
[-] Correo em "CancelaItemVendido", para estornar os Descontos e Acrescimos
    efetuados no Item Cancelado, dos Totalizadores
[-] Mtodo "CancelaCupom", corrigido para considerar o SubTotal Bruto
    (sem Descontos), quando acumular nos totalizadores de Cancelamento
[-] Correo em "CancelaCupom", para estornar os Descontos e Acrescimos
    efetuados no Subtotal do Cupom, dos Totalizadores

-- ACBrECFVirtualBuffer --
[-] Correes na montagem do Relatrio X/Z.
    - Descontos e Acrescimos sempre sero impressos
    - Adicionada a Impresso da Venda Lquida
    - Impresso de Total Cancelado considera "TotalCancelamentosNaoTransmitidos"
    - Corrigida a impresso dos Indices das Aliquotas de ICMS e No Tributados


Data: 25/01/2015   (por: DSA)
-- ACBrECFClass --
[*] Ajuste em GetAsString, para que valores Decimais sempre usam apenas 2 casas

-- ACBrECFVirtual --
[*] Refactoring, criando uma nova classe: "TACBrECFVirtualClassCupom", que conter
    todos os Itens, Pagamentos e CNFs do Cupom Virtual. Facilitando a passagam
    dessa classe por parmetro.
[*] Propriedades "SubTotal" e "TotalPago", passam a ser ReadOnly e dependem do
    conteudo de "TACBrECFVirtualClassCupom"
[+] Adicionado o evento "QuandoCancelarCupom(const NumCOOCancelar: Integer;
    CupomVirtual: TACBrECFVirtualClassCupom; var PermiteCancelamento: Boolean)"
    para permirir que a aplicao tenha um melhor controle sobre o Cupom a ser
    cancelado (ou no), e informar os dados do Cupom a ser cancelado, caso o
    mesmo no seja o ltimo cupom (na memria do ECFVirtual)
[+] Adicionado suporte a rateio de Desconto/Acrescimo no Subtotal, usando a
    mesma regra do ECF real, para considerar o "Residuo"
[*] Modificao na assinatura do mtodo: "SubtotalizaCupomVirtual"
[*] Modificao na assinatura do mtodo: "VerificaPodeCancelarCupom"
[*] Modificao na assinatura do mtodo: "RegistraItemNaoFiscalVirtual"
[+] Adicionada sobrecarga no mtodo "CarregaTotalizadoresNaoTributados", para
    retornar corretamente apenas F1, N1, I1
[-] Ajuste em AchaICMSAliquota, para encontrar corretamente "F1, N1, I1" e
    apenas esses.
[*] Totalizador: "CuponsCanceladosNaoTransmitidos" renomeado para
    "CuponsCanceladosEmAberto"
[*] Totalizador: "CuponsCanceladosTotalNaoTransmitidos" renomeado para
    "CuponsCanceladosEmAbertoTotal"
[*] Mtodo "VendeItem", modificado para fazer uso de "DescontoAcrescimoItemAnterior"
[-] Mtodo "DescontoAcrescimoItemAnterior", corrigido, para considerar acrscimos
    em VendaBruta e GrandeTotal
[-] Mtodo "CancelaItemVendido", corrigido, para no subtrair Item cancelado de
    VendaBruta
[-] Mtodo "SubtotalizaCupom", corrigido, para considerar acrscimos
    em VendaBruta e GrandeTotal
[-] Mtodo "SubtotalizaCupom", modificado para considerar o Rateio de Desconto
    ou Acrscimo nas Aliquotas do Cupom. (com suporte a resduo)
[-] Mtodo "FechaCupom", modificado para no zerar Valor de "TotalPago"
[*] Mtodo "CancelaCupom", modificado para suportar o parmetro: "NumCOOCancelar"
    chamando o novo evento "QuandoCancelarCupom".
[-] Mtodo "CancelaCupom", modificado para no subtrair de VendaBruta ou GT


-- ACBrECFVirtualBuffer --
[*] Ajustes para compatibilizao com o Refactoring

Data: 21/01/2015
-- ACBrECFDaruma --
[*] Melhoria para que rotina de Cancelamento no acuse TimeOut em cupons com muitos 
	itens: (por: Luiz Fernando)
	http://www.projetoacbr.com.br/forum/topic/27571-cancelamento-de-cupom-daruma-fs700/

Data: 20/01/2015
-- ACBrECFEscECF --
[+] Adicionada sobrecarga no mtodo PafMF_GerarCAT52, para usar o mtodo da
    classe do Fabricante e no o genrico (por: DSA)

Data: 19/01/2015
-- ACBrECF --
[*] Metodo "CancelaCupom" modificado para receber o Nmero do Cupom a ser cancelado.
       Procedure CancelaCupom( NumCOOCancelar: Integer = 0 )
    Isso permitir informar o Nmero do COO a ser cancelado, pois Modelos de ECF
    como ecfEscEcf e ecfECFVirtual, podem permir o cancelamento de Cupons que no
    sejam apenas o ltimo.

-- ACBrECFEscECF --
[*] Metodo "CancelaCupom", modificado para fazer uso do parmetro "NumCOOCancelar"
    - O ACBrECF cuidar para cancelar todos os CCD's vinculados ao COO Informado
    - Se o NumCOOCancelar for um CCD, o ACBrECF cancelar todos os Vinculados e
      o Cupom Fiscal de origem do mesmo.
    Nota: Bematech MP4200-TH-FI v 01.01.00, no est permitindo cancelar Cupom
          Fiscal, que no seja o ltimo emitido.
[+] Implementado o suporte a propriedade "TipoUltimoDocumento". Por enquanto,
    penas para Epson TM800/900, pois depende de comando exclusivo do Fabricante.
[+] Adicionado o mtodo:
    Function EstornaCCD( NumCupomFiscal: Integer; ADiante: Boolean = True ) : Integer;

-- ACBrECFBematech --
[-] Ajuste no calculo do Path do arquivo "Bemafi32.ini", quando PathDLL no for
    informado.
[+] Ajuste para configurao correta do "Bemafi32.ini", fazendo uso da chave:
    "ProtocoloUnico"

Data: 16/01/2015
-- ACBrECFVirtual, ACBrECFVirtualBuffer --
[+] Implementado o mtodo DescontoAcrescimoItemAnterior
    http://www.projetoacbr.com.br/forum/index.php?showtopic=27414

Data: 13/01/2015
-- ACBrPosPrinter --
[+] Adicionado o evento: "OnEnviarStringDevice", que permite capturar todas as
    sadas de Impresso, e decidir se as envia ou no para o Device
    http://www.projetoacbr.com.br/forum/index.php?showtopic=27350
[-] Correo em TACBrPosPrinter.TxRx, para leitura de status do Equipamento
    http://www.projetoacbr.com.br/forum/index.php?showtopic=27194

12/01/2016
-- ACBrECFVirtualBuffer --
[-] Correo de Bugs introduzidos acidentalmente em 08/01/2016. (No permtia
    sobrescrever, por completo, o mtodo "AbreCupom".
[*] Remoo da Linha tracejada inserida no final de "AddBufferCabecalho_Item",
    pois a Linha  inserida na criao do valor Default da propriedade
    "CabecalhoItem"     (por: DSA)

-- ACBrEscPosEpson --
[*] Ajuste para permitir tolerncia de falhas na leitura de Status  (por: DSA)

08/01/2016
-- ACBrECFVirtualBuffer --
[*] Ajuste de layout do comprovante de venda, para melhor compatibilidade com o
    antigo ecfNaoFical
[-] Correo para no imprimir o consumidor no Cabealho e Rodap
[*] Ajuste para que cabealho dos Itens no seja impresso antes da identificao
    do consumidor no cabealho do cupom
    http://www.projetoacbr.com.br/forum/index.php?showtopic=27218

02/01/2016
-- ACBrECFFiscNET --
[*] Simplificao do mtodo FechaCupom, para evitar erros na sequencia de envio
    dos comandos
    http://www.projetoacbr.com.br/forum/topic/26441-fechamento-cupom-ecffiscnet/

22/12/2015
-- ACBrECFVirtual --
[-] Correo de Bug no calculo do G.T., quando h cancelamento de Vendas em
    aberto e de Cancelamento de Itens.  (por: Amarildo Lacerda)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=26685

-- ACBrPosPrinter --
[*] Ajuste para permitir caracteres da faixa 0 a 127 para Cod.Barras CODE93
    (por: DSA)

21/12/2015
-- ACBrECFEscECF --
[*] Ajuste para correta impresso de Cod.Barras e Caracteres de Controle em
    Epson TM-800/900F, e Bametech MP4200-THFI
    (nota: Para a Impresso de Cod.barras usando a DLL da Epson como tnel, 
     requer necessrio uma atualizao da mesma)
    (por: DSA)

11/12/2015
-- ACBrECF --
[*] FechaCupom modificado para ajustar as Linhas do Cupom, limitando-as em 8
    linhas, se necessrio. Isso evita erros em alguns ECFs.
    http://www.projetoacbr.com.br/forum/index.php?showtopic=26640  (por: DSA)

04/12/2015
-- ACBrECFVirtual, ACBrECFVirtualBuffer --
[*] Adicionado controle para TotalDescontos e TotalAcrescimos, na Reduo Z
[*] Ajustes para Reduo Z ficar mais prxima da real
    http://www.projetoacbr.com.br/forum/index.php?showtopic=26477
    (por: Amarildo Lacerda)

03/12/2015
-- ACBrECFEscECF --
[*] Ajuste em GetDadosUltimaReducaoZ para Epson TM-T800/900F. Usado comando
    especfico do fabricante, para ler Dados da Ultima Reduo Z   (por: DSA)

30/11/2015
-- ACBrECFEscECF --
[-] Ajuste em GetDadosUltimaReducaoZ para o caso de ECFs que no retornam os
    Totalizadores no Tributados (Epson TM-T800F).. Nesse caso o valor do
    Registrador ser -1 ou no existir no .INI        (por: DSA)

26/11/2015
-- ACBrSMS --
[-] acertos para quebrar as mensagens corretamente
    http://www.projetoacbr.com.br/forum/topic/25928-sms-trunk2/
-- ACBrSMS --
[-] http://www.projetoacbr.com.br/forum/topic/25928-sms-trunk2/#comment-170671

-- ACBrECFSwedaStx --
[+] Adicionado o cdigo de retorno 54-Emitindo Leitura de Memria Fiscal,
    aguarde... Na lista de Erros a serem ignorados
    http://www.projetoacbr.com.br/forum/topic/26247-redu%C3%A7%C3%A3o-z-swedastx/

25/11/2015
-- ACBrECFEpson --        (por: Amarildo Lacerda)
[+] Implementado o mtodo "CancelaItemNaoFiscal"
[+] Implementado a Impresso de Cheques, usando as cordenadas do arquivo
    "poscheque.dat"
    http://www.projetoacbr.com.br/forum/index.php?showtopic=26206

-- ACBrECFVirtual --
[-] Corrigida a Sequencia de programao de II e NN em CriarMemoriaInicial
    http://www.projetoacbr.com.br/forum/index.php?showtopic=26215

24/11/2015
-- ACBrEscECF --
[-] Ajuste na leitura de DadosUltimaReducaoZ dos ECFs Epson TM-800/900, onde as
    aliquotas de ICMS no eram corretamente identificadas, devido o fato do ECF
    retornar as aliquotas sem o ponto decimal   (por: DSA)

23/11/2015
-- ACBrECFDaruma, ACBrECFEscECF --
[-] http://www.projetoacbr.com.br/forum/topic/25972-erro-na-gerao-de-arquivo-na-daruma-fs800i/

19/11/2015
-- ACBrECF --
[+] Adicionado o mtodo: "GerarNotaGaucha"  (por: Rafael Sartori)
    http://www.projetoacbr.com.br/forum/topic/26094-gerar-arquivo-nota-gaucha-acbrecfpas/

-- ACBrECFVirtual --
[+] Incluido totalizador para separar o cancelamento de CFe assinados e no
    gerados XML     (por: Amarildo Lacerda)
    http://www.projetoacbr.com.br/forum/topic/25378-sugest%C3%B5es-de-controle-o-ecfvirtua-sat/

-- ACBrECFEscECF --
[*] Ajuste para tentar conexo sem Handshake, para detectar mais facilmente a
    Daruma FS800i  (por: Rafael Vivan)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=25183

17/11/2015
-- ACBrBALToledo --
[*] Refatorao no mtodo de Leitura de Peso, para melhor suporte aos diversos
    protocolos da Toledo, e correta interpretao de respostas mltiplas
    (por: DSA)

-- ACBrECFVirtual --
[*] Ajuste para evitar exception no comando de abertura de Gaveta
    (por: DSA)

15/11/2015
[*] melhoria da leitura de mensagens no ACBrSMS, contribuio: Duarte
    acerto no demo do ACBrSMS para as novas melhorias
    http://www.projetoacbr.com.br/forum/topic/25928-sms-trunk2/#comment-168444
    por: Duarte

14/11/2015
-- ACBrSMS -- 
[+] Implementao da leitura de mensagens no ACBrSMS, contribuio
    http://www.projetoacbr.com.br/forum/topic/25928-sms-trunk2/#comment-168444
    por: Duarte

Data: 10/11/2015
-- ACBrDevice --
[*] Ajuste para mtodo "EnviaStringSerial" considerar os Bytes realmente
    enviados.   (por: DSA)

-- ACBrECFEscECF --
[-] Ajuste para problema de Loop infinito em Daruma FS800I
    http://www.projetoacbr.com.br/forum/topic/25830-loop-daruma-fs800i/
[*] Diminuindo constante tempo de espera WAK de 200 para 50

-- ACBrECFSwedaStx --
[-] Correo na atribuio de Data de gerao no mtodo: "PafMF_GerarCAT52"
    http://www.projetoacbr.com.br/forum/topic/14569-erro-ao-gerar-cat52-ecfswedastx/

Data: 04/11/2015
-- ACBrEscDaruma --
[*] Ajuste para QRCode suportar Largura de Mdulo = 3  (por: DSA)

Data: 01/11/2015
-- ACBrECF --
[-] Aplicado correo para quebra de linha do GetRodapePaf deixando #10
   (por: Juliomar)
	 
Data: 26/10/2015
-- ACBrPosPrinter --
[*] Refatorao nos mtodos LerInfo e LerStatus para melhor suporte a portas TCP
    (por: DSA)

-- ACBrEscPosEpson --
[-] Correo em LerInfo, para deteco da presena de Guilhotina
    (por: DSA)

Data: 22/10/2015
-- ACBrPosPrinter --
[*] Ajuste para correta impresso de CODE128c   (por: DSA)
    http://www.projetoacbr.com.br/forum/topic/25385-tm-t81-sat-c%C3%B3digo-barra/

[+] Adicionada a propriedade TagsNaoSuportadas: TStringList readonly.
    Permite verificar quais as tags o modelo selecionado no suporta.

-- ACBrEscPosEpson --
[*] Ajuste para considerar valor Default da largura da Barra como 2 (0=2)
    (por: DSA)

-- ACBrEscBematech, ACBrEscDiebold, ACBrEscDaruma --
[*] Ajustes para traduzir Tag de <code128a>, <code128b>, <code128c> para <code128>
[+] Adicionada <code128c> em TagsNaoSuportadas
    (por: DSA)

Data: 21/10/2015
-- ACBrECFVirtual --
[-] Alterado o codigo que estava copiando o GTAtual para a Venda Bruta
   http://www.projetoacbr.com.br/forum/topic/25377-ecfvirtual-corrigido-valor-venda-bruta-gravado-no-ini/
   (por: Amarildo Lacerda)

Data: 16/10/2015
-- ACBrECFSwedaStx --   (por: DSA)
[-] Ajuste para envio de comandos com decimais sempre usando ",", independente
    do S.O. utilizado

Data: 17/10/2015      (por: DSA)
-- ACBrDevice --
[+] Procedure EnviaByte( const AByte : Byte )
[+] procedure Limpar ;
[+] Function BytesParaLer: Integer;
[*] Function "LeString" modificada para permitir a leitura por "Terminador"

-- ACBrSerial --
[*] Refatorao em vrias units para usar mtodos de TACBrDevice ao invs de
    usar mtodos diretamente de TBlockSerial. Isso permitir que dispositivos
    Seriais usem Portas no formato "TCP:ip_maquina:NumPorta"

-- ACBrECF --
[*] Mtodo "IdentificaConsumidor" modificado para codificar as informaes do
    Nome e do Endereo do Consumidor na pgina de cdigo do ECF

-- ACBrPosPrinter --
[+] Adicionado suporte a "LerInfoImpressora" e "LerStatusImpressora" em Portas TCP

Data: 16/10/2015
-- ACBrECFEscECF --     (por: DSA)
[-] Ajuste para no enviar a Data e Hora do PC quando parmetro DataHora
    informado for 0
    http://www.projetoacbr.com.br/forum/topic/25264-tm-t800ftm-t900f-redu%C3%A7%C3%A3o-z/
[-] Correo para correto tratamento da Resposta de Epson TM800F, em Delphi com
    USB/DLL

-- ACBrECFSwedaStx --   (por: DSA)
[-] Corrigida rotina de leitura de CMC7
    http://www.projetoacbr.com.br/forum/topic/6891-leitura-de-cmc7-na-swedastx/

Data: 15/10/2015
-- ACBrECFSwedaStx --   (por: DSA)
[*] Modfificadas as rotinas GetDataHora, GetDataHoraSB, GetDataMovimento,
    GetDataHoraUltimaReducaoZ para mitigar problemas com FormtatSettings

Data: 13/10/2015
-- ACBrECFFiscNET --
[-] VendeItem, aplicado ajuste para Venda sem Departamento e com ArredondaItemMFD,
    no caso de ECFs que no possuem departamento programado  (por: DSA)

Data: 07/10/2015
-- ACBrECFEscECF --
[*] Workaround para problema de Loop na Bematech MP4200, modificados para
    monitorar comandos 22 e 26  (por: DSA)
    http://www.projetoacbr.com.br/forum/topic/22790-bematech-mp-4200-th-fi-entrando-em-loop/?do=findComment&comment=161992

Data: 05/10/2015
--ACBrECFVirtualBuffer --
[-] Ajuste para constar a Data do Movimento na Reduo Z  (por: Amarildo Lacerda)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=24929

-- ACBrEscElgin --
[+] Implementado o mtodo LerStatus. (por: tiagoshimizu)
    http://www.projetoacbr.com.br/forum/topic/24897-lestatus-impressoras-elgin-vox/

Data: 03/10/2015
-- ACBrECFEscECF --    (por: DSA)
[*] Classe TACBrECFEscECF refatorada para permitir o uso de Protocolos Virtuais
[+] Adicionado suporte a Epson TMT800/900 por "USB", necessitando porm, da
    biblioteca: "InterfaceEpson.dll" verso: 4.4.6 ou superior, na mesma pasta
    do .EXE... Configure ACBrECF.Porta := 'USB';

Data: 02/10/2015
-- ACBrECFEscECF --
[*] Aplicado Workaround para problema de Loop infinito em Bematech MP4200
    (por: DSA e Rodrigo de Carvalho Ribeiro)
    http://www.projetoacbr.com.br/forum/topic/22790-bematech-mp-4200-th-fi-entrando-em-loop/?page=1

Data: 22/09/2015
-- ACBrECFEscECF --
[+] Adicionada leitura de DataHoraEmissao em DadosUltimaReducaoZ
    http://www.projetoacbr.com.br/forum/index.php?showtopic=24508
    (por: Felipe Hoffmann)

Data: 21/09/2015       (por: DSA)
-- ACBrPosPrinter --
[*] Modificao para melhor flexibilizao em comandos de controle de Caracteres
    impressos em conjunto

-- ACBrEscDiebold --
[*] Melhoria para a impresso de Expandido (no imprime dupla altura)
[-] Correo de Impresso de Textos com Formataes de Caracteres sobrepostas
    Ex: Negrito + Expandido, Negrito + Condensado

Data: 18/09/2015
-- ACBrECFBematech --   (por: DSA)
[*] Rotina que detecta final de leitura em capturas de leituras pela Serial,
    modificada, para evitar Falta de resposta (TimeOut) em algumas mquinas

Data: 11/09/2015
-- ACBrPosPrinter -- (Por: Fabio Souza e DSA)
[+] Adicionado suporte ao modelo Diebold, atravs do modo Esc/Pos
    Usado modelo TSP143M para testes
    http://www.projetoacbr.com.br/forum/index.php?showtopic=23975
[+] Adicionado suporte ao cdigo de Barras UPCE

Data: 08/09/2015
-- ACBrDevice --    (por: DSA)
[*] Refatorao em TagProcessor.AcharProximaTag, movendo-a para ACBrUtil, para
    permitir o uso da mesma no mtodo ACBrUtil.StripHTML

Data: 31/08/2015
-- ACBrECFEscECF --
[-] Ajuste em CancelaCupom para situao de falha na detectao do Estado de
    Pagamento  (por: Luiz Fernando)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=23913

Data: 28/08/2015        (por: Amarildo Lacerda)
-- ACBrECFVirtualBuffer --
[*] Correo para mtodo LinhaCupomVinculado que estava imprimindo conteudo duas
    vezes
    http://www.projetoacbr.com.br/forum/index.php?showtopic=23999

Data: 26/08/2015        (por: DSA)
-- ACBrEscElgin --
[+] Adicionado suporte a Impressora Elgin VOX e demais que usam EscElgin

Data: 25/08/2015        (por Macgayver Armini/Isaque Pinheiro)
-- ACBrECF --
[*] Adicionado canvas com suporte idntico ao da VCL para o Firemonkey
    Correo das teclas de interceptao para o Firemonkey
    Adio de suporte a formulrio de mensagem personalizado para o FireMonkey
    Correo da chamada Application.MainForm do Firemonkey
[+] Criado dois eventos para Firemonkey:
    fsOnCriarFormMsg: TACBrFMXCustomForm; //Variavel do Evento de Formulrio Personalizado
    fsOnDrawFormMsg: TACBrECFMsgAguarde; //Variavel para o usurio desenhar ou enviar para qualquer componente
[*] Rerirecionado as propriedades de Published para Public
       property FormMsgColor
       property FormMsgColorFont
       property FormMsgFonte

Data: 22/08/2015        (por: DSA)
-- ACBrEscBematech --
[-] Correo para impresso de CODE128 em Bematech

Data: 21/08/2015        (por: DSA)
-- ACBrECFEscECF --
[-] Ajuste para correta programao da Identificao do Aplicativo (PAF-ECF),
    respeitando o numero de Colunas do Equipamento
    http://www.projetoacbr.com.br/forum/topic/23828-identificapaf/

-- ACBrPosPrinter --
[-] Ajuste para comando de Pulo de Linhas funcionar em Impressoras configuradas
    com o EspacoEntreLinhas muito baixo
[*] Se a porta no  Serial, fora o comando de Inicializao a cada Desativao
    da Porta. (corrige problema de Impresso em Bematech com Porta por
    compartilhamento ex: "\\localhost\mp4200" )

-- ACBrECFVirtualPrinter --
[-] Correo de congelamento, quando TACBrPosPrinter.ControlePorta estava
    habilitado

-- ACBrECFVirtualBuffer --
[*] Remoo de </zera> do comando da Abertura de gaveta (desnecessrio, pois
    agora TACBrPosPrinter tem um melhor controle sobre o estado de Inicializao
    da Impressora)

-- ACBrECFVirtual --
[+] Programando um Relatrio Gerencial padro '01-DIVERSOS' durante a criao da
    Memria Inicial
[-] Correo de Bug em AbreRelatorioGerencial, para usar como Indice padro o
    Indice "01"

Data: 20/08/2015        (por: DSA)
-- ACBrPosPrinter --
[+] Adicionada a propriedade ACBrPosPrinter.Inicializada: Boolean (read only)
    Sinalizando se a Impressora j recebeu os comandos de programao para: Modo
    Esc, Espaamento entre linhas e Pgina de Cdigo
[+] Adicionado o metodo "ACBrPosPrinter.Inicializar"
    (Nota: mtodo "Zerar", j chama "Inicializar")
[*] Melhorada a rotina de Impresso, para detectar a necessidade de enviar
    comando de Inicializao para a Impressora, caso o mesmo ainda no tenha sido
    enviado
[+] Adicionada a propriedade ACBrPosPrinter.ConfigGaveta
        property SinalInvertido: Boolean default False;
        property TempoON: Byte default 50;
        property TempoOFF: Byte default 200
[*] Removida a propriedade GavetaSinalInvertido
[*] Tag </abre_gaveta> modificada para usar parmetros de "ConfigGaveta"
[+] Adicionada a Tag de Bloco: <abre_gaveta>N</abre_gaveta>,
    "Abertura de Gaveta Especfica (1 ou 2)"

-- ACBrEscBematech --
[*] Rotina de Impresso de QRCode revisada para respeitar o tamanho do mdulo


-- ACBrECFVirtualBuffer --
[*] Ajuste para abertura de gaveta em Impressoras que necessitam do envio de
    comando de Inicializao (Bematech)

Data: 19/08/2015        (por: DSA)
-- ACBrECFVirtualBuffer --
[-] Correo para alinhar fonte a Esquerda, no final da impresso do Cabealho

-- ACBrECFEscECF --
[+] Mtodo "DadosUltimaReducaoZ, adicionado workaround para Falta de Informao
    de Grande Total em retorno do ECF.

Data: 15/08/2015
-- ACBrECFVirtual --     (por: DSA)
[-] Ajuste para permitir executar "CancelaCupom" aps Vinculado

Data: 14/08/2015
-- ACBrEscBematech --
[-] Correo para impresso correta de QRCode na Bematech.
    http://www.projetoacbr.com.br/forum/index.php?showtopic=23313

-- ACBrECF --
[*] Correo para respeitar propriedade "IgnorarTagsFormatacao"  (por:DSA)

Data: 06/08/2015
-- ACBrDevice --  (por: DSA e Amarildo Lacerda)
[+] Adicionado suporte a Impressoras TCP atravs da notao "TCP:ip_maquina:porta"
    http://www.projetoacbr.com.br/forum/index.php?showtopic=23211

Data: 05/08/2015
-- ACBrEscBematech --    (Por:  Ronaldo Negreiros Daniel)
[*] Ajuste para leitura correta do QRCode gerado pelas Impressoras Bematech
    http://www.projetoacbr.com.br/forum/index.php?showtopic=23313

-- ACBrECFBematech --   (por: DSA)
[-] Correo para GetDadosUltimaReducaoZ. Leitura errada de comprovantentes
    No Fiscais programados com Indice inferior a 03

Data: 04/08/2015
-- ACBrECF --     (por: DSA)
[*] Ajuste para correta exibio de caracteres acentuados em MemoBobina

-- ACBrEscBematech --
[-] Correo para impresso de QRCode na MP2500
    http://www.projetoacbr.com.br/forum/index.php?showtopic=23313

Data: 27/07/2015
-- ACBrPosPrinter --   (por: DSA)
[+] Adicionada as tags:
<barra_mostrar> - Bloco - Configura se deve exibir conteudo abaixo do Cod.Barras: 0-NAO; 1-SIM
<barra_largura> - Bloco - Configura a Largura das Barras do Cod.Barras: 0 a 5. (0=default)
<barra_altura> - Bloco - Configura a Altura do Cod.Barras: 0 a 255. (0=default)
<qrcode_tipo> - Bloco - Configura o Tipo de QRCode: 1,2
<qrcode_largura> - Bloco - Configura a Largura do QRCode: 1 a 16
<qrcode_error> - Bloco - Configura o Error Level do QRCode: 0 a 3
<logo_imprimir> - Bloco - Configura a Impresso ou no do Logo Tipo: 0-NO, 1-SIM (default = 1)
<logo_kc1> - Bloco - Configura a posio KC1 do Logo a ser impresso. Ex: 0=48
<logo_kc2> - Bloco - Configura a posio KC2 do Logo a ser impresso. Ex: 1=49
<logo_fatorx> - Bloco - Configura o aumento Horizonal do Logo, de 1 a 4
<logo_fatory> - Bloco - Configura o aumento Vertical do Logo, de 1 a 4

Data: 15/07/2015
-- ACBrECFVirtual --
[-] Estava abrindo a porta serial antes de abrir na virtual (quando usa ESCPOS)...
    (por: Amarildo Lacerda)

-- ACBrECFVirtualPrinter --
[-] A PosPrinter deve receber a configurao da porta configurada na ACBrECF
    (por: Amarildo Lacerda)

Data: 26/07/2015
-- ACBrECFVirtual -- (por: DSA)
[*] Adicionada chamada a registros de Log

-- ACBrPosPrinter --
[+] Adicionada a propriedade ConfigLogo.IgnorarLogo, que permite que a Tag "</logo>"
    seja ignorada.

Data: 15/07/2015
-- ACBrECFVirtual --
[-] Estava abrindo a porta serial antes de abrir na virtual (quando usa ESCPOS)...
    (por: Amarildo Lacerda)

-- ACBrECFVirtualPrinter --
[-] A PosPrinter deve receber a configurao da porta configurada na ACBrECF
    (por: Amarildo Lacerda)

Data: 14/07/2015
-- ACBrPosPrinter -- (por: Regys Silveira)
[+] Adicionado mtodo AbrirGaveta ao ACBrPosPrinter, permitindo chamar o comando
    quando necessario.   

Data: 09/07/2015
-- ACBrECFEscECF -- (por: DSA)
[*] Ajustes de Tamanho de colunas e Pag.Codigo para a Daruma FS800i
[-] Correo de GetNumLoja para Epson TM-T800
[+] Implementao de GetNumLoja para Daruma FS800i
[+] Implementao de TraduzirTag e TraduzirTagBloco em Epson e Daruma (a testar)
[+] Implementao de chamada a Metodos de uso da DLL (Ex: EspelhoMFD_DLL) em Daruma
    (a testar)
[-] Correo para numerao automtica de Posio em ProgramaAliquota,
    ProgramaFormaPagamento, ProgramaRelatorioGerencial, ProgramaComprovanteNaoFiscal

Data: 08/07/2015
-- ACBrECFEscECF -- (por: DSA)
[*] Ajuste para AbreNaoFiscal quando o CNPJ/CPF  recusado pelo ECF
    http://www.projetoacbr.com.br/forum/index.php?showtopic=22762
[*] Ajustes para correta interpretao aps Reduo Z em Daruma FS800i
[*] Ajustes para falta de valor zerado, nas respostas da Daruma FS800i
    http://www.projetoacbr.com.br/forum/topic/22659-daruma-fs800i/

Data: 06/07/2015
-- ACBrECFEscECF -- (por: DSA)
[*] Workaround para falta de resposta do ECF Daruma FS800i em EfetuaPagamento

Data: 03/07/2015
-- ACBrECFSwedaStx -- (por: DSA)
[-] Correo para VerificaFimLeitura, em mudana de estado com Erro =  0

Data: 02/07/2015
-- ACBrECFEscECF --  (por: DSA)
[-] Ajuste do tamanho mximo de Buffer a ser enviado pro ECF em Relatrios
    http://www.projetoacbr.com.br/forum/index.php?showtopic=22615

Data: 29/06/2015
-- ACBrECFSwedaStx --  (por: DSA)
[-] Ajustes para decodificar Pgina de Cdigo em AbreRelatorioGerencial

Data: 28/06/2015
-- ACBrECFSwedaStx --  (por: DSA)
[-] Tentativa de correo de A.V. em algumas verses do Delphi
    http://www.projetoacbr.com.br/forum/topic/22492-erro-classe-acbrecfswedastx-trunk2/
[-] Correo para captura de informaes pela Serial

Data: 19/06/2015
-- ACBrCHQ --
[-] Adicionado o suporte a impressora de cheques Elgin
    Contribuio: Laercio

Data: 16/06/2015
-- ACBrECFEscECF -- (por: DSA)
[-] Corrigido Bug na deteco do estado "estPagamento" aps a Subtotalizao do
    Cupom
[*] Melhorada rotina de Sincronismo com o ECF, adicionando 5 tentativas.
[*] Melhorada a rotina de calculo de Checksum, para desprezar buffer de Resposta
    adicional e no solicitado.
[+] Adicionada verificao de Falha de Resposta ao pedido de Status (ECF mudo)
    problema detectado na Leitura de DadosUltimaReducaoZ em Bematech MP4200-TH

Data: 15/06/2015
-- ACBrECFBematech e ACBrDevice -- (por: batiati)
[*] Incluso da propriedade "Margem" na classe ConfigBarras
    http://www.projetoacbr.com.br/forum/index.php?/topic/22083-acbrecf-centralizar-c%C3%B3digo-de-barras/

Data: 08/06/2015
-- ACBrECFSwedaStx -- (por: DSA)
[-] Correo na leitura do Status de Pouco Papel

Data: 06/06/2015
-- ACBrSMS --
[+] Adicionado mtodo para apagar mensagens
    http://www.projetoacbr.com.br/forum/index.php?/topic/22003-acbrsms-apagar-mensagem/#entry141709

Data: 03/06/2015
-- ACBrETQ -- (por: Elias)
[+] Adicionado a propriedade ArqLOG
[+] Adicionado o evento OnGravarLog

Data: 03/06/2015
-- ACBrETQ -- (por: DSA e Elias)
[*] Refactoring em todas as classes para simplificao de cdigo

Data: 02/06/2015
-- ACBrETQ -- (por: DSA e Elias)
[-] Correo de bug na Impresso de Etiquetas, usando IniciarEtiqueta e
    FinalizarEtiqueta

Data: 25/05/2015
-- ACBrEscECF --
[*] Ajuste para compatibilizar com Epson TM-T800F 01.01
    http://www.projetoacbr.com.br/forum/index.php?showtopic=21780

Data: 12/05/2015 (por: regys.silveira)
-- ACBrECFEscECF --
[-] acertos no tratamento de aliquotas para o protocolo EscECF
[-] Acertos no tratamento de retorno das impressoras Daruma EscECF
[-] Acertos no retorno de aliquotas

Data: 04/05/2015       (por: DSA)
-- ACBrDevice --
[*] Ajustes de Units para FMX
[+] Adicionado TCriticalSection para evitar chamadas concorrentes a escrita na
    porta do Device
[*] Tipo: TACBrECFTipoCodBarra modificado para: TACBrTipoCodBarra
[+] Criada novas classes para processamento genrico de TAGs:
    TACBrTag, TACBrTags, TACBrTagProcessor.

-- ACBrECF --
[*] Modificado para usar o TACBrTagProcessor

-- ACBrECFClass, ACBrECFBematech, ACBrECFDaruma, ACBrECFEpson, ACBrECFFiscNet,
   ACBrECFSwedaStx, ACBrECFEscECF,  --
[*] Mecanismo de traduo de Tags ajustado para TACBrTagProcessor e ACBrConsts

-- ACBrPosPrinter --
[+] Criado novo componente: TACBrPosPrinter, que permite manipular Impressoras
    NAO fiscais, de bobina, usando a linguagem EscPos ou similares, por meio de
    TAGS no texto. Controla a formatao de caracteres Ex: Negrito, expandido,
    condensado, etc e a impresso de Cod.Barras e QRCode.
    Compatvel com: ppEscPosEpson, ppEscBematech, ppEscDaruma

Data: 27/04/2015       (por: DSA)
-- ACBrECFSwedaSTX --
[-] Correo para correta impresso de Descrio Grande
    http://www.projetoacbr.com.br/forum/index.php?showtopic=21320

Data: 20/04/2015       (por: DSA)
-- ACBrECF --
[+] Adicionada a propriedade TotalizadoresNaoTributados, que retorna uma lista
    de Objetos com os Totalizadores No Tributados Disponveis e ativados no ECF
    { Exemplos: F1, F2, F3, N1, N2, N3, I1, I2, I3, FS1, NS1, IS1 }
[+] Adicionado o mtodo: CarregaTotalizadoresNaoTributados, para ler do ECF e
    popular a lista de Totalizadores Nao Tributados existentes e ativados.
[+] Adiconado o mtodo: LerTotaisTotalizadoresNaoTributados, para ler o Valor
    Total acumulado em Cada Totalizador Nao Tributado existente.
[+] Adicionado mtodo AchaTotalizadorNaoTributadoIndice( Indice : String )
    para efetuar Busca e retornar o Objeto do Totalizador Nao Tributado
    referente ao Indice. Se no encontrar, retorna NIL
[+] Adicionado o mtodo: SomaTotalizadorNaoTributadoIndice(Indice: String): Double;
    que retorna o total de um Grupo de Totalizador Nao Tributado. Exemplo:
    SomaTotalizadorNaoTributadoIndice('F'), retorna a Soma de F1, F2 e F3

[*] Mtodo AchaICMSAliquota, modificado, para:
    - Considerar corretamente todos os Totalizadores Nao Tributados existentes no
      ECF
    - Um Exception ser disparado, se o Totalizador Nao Tributado informado, no
      existir no ECF

-- ACBrECFEscECF --
[*] Motodo GetEstado modificado para considerar o Cupom Aberto, mesmo quando
    existir uma Reduo Z pendente em conformidade com os demais modelos


-- ECFTeste --
[+] Adiconado Menu "Variaveis -> Totalizadores No Fiscais", para demonstrar e
    testar o funcionamento dos mtodos: CarregaTotalizadoresNaoTributados,
    LerTotaisTotalizadoresNaoTributados, AchaTotalizadorNaoTributadoIndice.

Data: 27/04/2015       (por: DSA)
-- ACBrECFSwedaSTX --
[-] Correo para correta impresso de Descrio Grande
    http://www.projetoacbr.com.br/forum/index.php?showtopic=21320

Data: 07/04/2015       (por: DSA)
-- ACBrECFEscECF --
[*] Removida a restrio de apenas permitir Letras no cadastro de
    Formas de Pagamento ou Relatrio Gerencial
    http://www.projetoacbr.com.br/forum/index.php?showtopic=20904

-- ACBrECFSwedaStx --
[-] Ajuste para correta deteco de Tampa aberta ou fim de papel
    http://www.projetoacbr.com.br/forum/index.php?showtopic=20803

Data: 01/04/2015
-- ACBrECFEscECF --  (por: DSA)
[*] Ajuste para correta impresso de linhas sem conteudo no modelo Bematech MP4200

Data: 31/03/2015
-- ACBrECFBematech --  (por: DSA)
[*] Adicionado suporte a impresso do Operador, no rodap do Cupom Fiscal,
    caso o mesmo tenha sido informado com "IdentificaOperador"

Data: 30/03/2015
-- ACBrECFDaruma -- (por: DSA e Elias)
[-] Corrigido Bug na leitura de COO aps a emisso de Leitura de Memria Fiscal

Data: 07/03/2015
-- ACBrECFEscECF -- (por: DSA)
[+] Adicionado suporte ao mtodo: GetNumUltimoItem, usando cache de respostas

Data: 06/03/2015
-- ACBrECFDaruma --
[*] Ajuste no mtodo: MudaHorarioVerao para compatibilizar com protocolo novo
    em modelos mais recentes (por: jperim)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=20198
	
Data: 04/03/2015
-- ACBrBAL --
[*] Incluso do modelo ACBrBALToledo9091_8530_8540. (por Rafael Dipold)

Data: 20/02/2015
-- ACBrECFBematech --  (por: DSA)
[+] Ajuste para permitir a identificao do consumidor no Rodap, conforme
    instrues do suporte da Bematech

Data: 05/02/2015
-- ACBrECF --
[-] acerto para adicionar a chave no rodape de imposto aproximado, 
    conforme manual a chave deve ser impressa. por Regys Silveira
[-] Acerto na impresso do numero do DAV, est duplicando a quebra de linha.

Data: 30/01/2014
-- ACBrECFEscECF --   (por: DSA)
[*] Workaround para erro 16-3 (Data em intervalo invlido.), durante a Impresso
    da Reduo Z, na Epson TM-T800F
    http://www.projetoacbr.com.br/forum/index.php?showtopic=19759

Data: 26/01/2014
[-] Acerto no caminho onde ficam os inis da dll bematech, 
    http://www.projetoacbr.com.br/forum/index.php?showtopic=19683
    por: daniel.breda

Data: 23/12/2014
-- ACBrETQ --
[-] Corrigido Bug que impedia impressao de Etiquetas usando apenas o mtodo
    "Imprimir"  (por: DonizeteFalcon)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=19007

Data: 19/12/2014
-- ACBrECFEscECF --  (por: DSA)
[-] Aplicado workaround para problema em emisso de Vinculado na Epson TM-T800F
    http://www.projetoacbr.com.br/forum/index.php?showtopic=18825

-- ACBrECFBematech --
[-] Aplicado workaround para termino prematuro de Relatrios enviados pela Serial
    http://www.projetoacbr.com.br/forum/index.php?showtopic=19179

Data: 11/12/2014
-- ACBrECF --  (por: DSA)
[-] Correo para acentuao no mtodo "GetRodapeImposto", em sistemas com UTF8
    'Voc pagou aproximadamente:....."

Data: 03/12/2014
-- ACBrECFFiscNet --
[*] Ajustes para ECFs que retornam o DadosUltimaReducaoZ fora do padro
    http://www.projetoacbr.com.br/forum/index.php?showtopic=18502
    (por: Simone D. Russo)

Data: 29/11/2014
-- ACBrBal --  (por: Regys Silveira)
[+] Adicionada balana Lider.
    Contribuio: Larcio Amici

Data: 29/11/2014
-- ACBrECFFiscNet --  (por: DSA)
[-] Ajuste em DadosUltimaReducaoZ para que no seja interrompida por exceo,
    caso ECF ainda no contenha uma Reduo Z na memria

Data: 18/11/2014
-- ACBrECFEscECF --    (por: DSA)
[-] Correo nos mtodos de Captura de MF/MFD usando a DLL, para o modelo da Epson

Data: 17/11/2014
-- ACBrECF --    (por: DSA)
[-] Aplicando Converso de Encoding no parmetro "Observacao" antes de chamar:
    "OnDepoisFechaCupom" e "OnDepoisFechaNaoFiscal".
    Antes o parmetro era informado com o Encoding do ECF

Data: 15/11/2014
-- ACBrECF --   (por: DSA)
[*] Adicionado o parmetro "IgnorarAcentos: Boolean = False" no mtodo
    AchaFPGDescricao

Data: 14/11/2014   (por: Elton)
-- ACBrECF --  
[-] Correo do rodap para impostos separados. Era impresso impostos municipais no 
    ModoCompacto, mesmo quando no eram informados se houvesse imposto estadual;
[*] A impresso dos impostos no vai mostrar impostos estaduais ou municipais se estes
    no forem informados, mesmo quando no no modo compacto, conforme o modelo;
[+] Adicionada linha que informa o valor realmente gasto nos produtos/servios 
    conforme o modelo (subtotal - impostos);

Data: 12/11/2014
-- ACBrECF --
[+] Ajustes para impresso dos impostos separados por esfera seguindo os novos
    modelos disponibilizados pelo IBPT. Exemplo do FechaCupom no ECFTeste (Delphi)
    foi alterado para exemplificar o uso. A compatibilidade foi mantida.
    (por: EMBarbosa e clever-x)

Data: 10/11/2014   (por: DSA)
-- ACBrECFEpson --
[*] Ajuste nos mtodos ArquivoMFD_DLL para suportar a "finSintegra"

Data: 06/11/2014   (por: Juliomar)
[-] Correo na impresso do DAV:
    http://www.projetoacbr.com.br/forum/index.php?/topic/18505-dav-imprimindo-incorretamente/
	
Data: 30/10/2014   (por: DSA)
-- ACBrECFEscECF --
[-] Metodos de Leitura de MFD por DLL no recebiam valor da propriedade PathDLL
    http://www.projetoacbr.com.br/forum/index.php?showtopic=18392

Data: 29/10/2014   (por: DSA)
-- ACBrECF --
[+] Adicionado o mtodo: "VendeItemEx", que permite a passagem de parmetros
    necessrios para a emisso de documentos fiscais eletrnicos.
    Leia os parmetros existentes e sua explicao em ACBrECF.pas, linha: 605
[*] Refactoring em VendeItem, criando novos mtodos que so compartilhados com
    VendeItemEx. Criado os mtodos: IniciaVendeItem e FinalizaVendeItem

-- ACBrECFBematech --
[+] Implementado suporte para o mtodo VendeItemEx, compatibilizando com a
    Plataforma Fiscal da Bematech, (usando o pacote 85/01)

-- ACBrECFSwedaSTX --
[*] Melhorias no gravao do LOG

Data: 18/10/2014   (por: DSA)
-- ACBrECFEscECF --
[*] Aplicado workaround para o modelo Epson, na detecto do estado "estRequerZ"

Data: 17/10/2014   (por: DSA)
-- ACBrECFVirtual --
[-] Correo de bug na Criao de memria virtual, onde as aliquotas padres
    eram perdidas

Data: 15/10/2014   (por: DSA)
-- ACBrECF --
[*] Ajustes para ConfigBarras usar valores default de cada Classe

-- ACBrECFEpson --
[-] Correo de Bug na rotina de analise de Erro... ocasionando erro na carga de
    Formas de Pagamento

Data: 14/10/2014   (por: DSA)
-- ACBrECFEscECF --
[-] Correo para mtodo: GetDataHoraSB, no modelo Epson

Data: 13/10/2014   (por: DSA)
-- ACBrECFEpson --
[-] Removido o mtodo interno "RemoveCaracteresNaoImprimiveis" criado em 28/05/2014
    Pois esse metodo removia os caracteres de Controle de Impresso impossibilitando
    o uso de TAGS de formatao.
    A remoo de caracteres no imprimiveis dever ser tratada pela rotina chamadora...

Data: 11/10/2014   (por: DSA)
-- ACBrECFEpson --
[*] Refactoring no mtodo de Descrio de Erro, para permitir o uso em outras
    classes (EscEcf)

-- ACBrECFEscECF --
[*] Ajustes para compatibilizao com Epson TM-T800F.
[+] Adicionada rotina para sincronizao da sequencia com o ECF
[+] Adicionado tratamento de erro, para o caso de erro de falha na sincronizao
[+] Ajuste na rotina de Descrio dos Erros, para considerar cdigos de erros
    internos da Epson
[*] Ajuste em "PulaLinhas", para correto funcionamento com a Epson
[*] Melhorias no mecanismo de gravao de Log, refletindo toda a comunicao
    serial
[*] Ajuste na pgina de cdigo para 850, quando ECF for Epson
[*] Ajuste em RetornaInfoECF, para compatibilizar com a resposta da Epson
[-] Correo para o Cancelamento de Comprovante No Fiscal
[*] Ajuste para evitar erros na Carga de Aliquotas, na Epson, quando no h
    nenhuma aliquota programada


Data: 07/10/2014   (por: DSA)
-- ACBrECF --
[-] Corrigido bug na modificao de ECFVirtual em run-time, (no era atualizado
    na classe interna)

-- ACBrECFVirtual --
[*] Adicionado ponto de herana em LeArqINI e GravaArqINI, permitindo aos ECFs
    Virtuais, salvar outros arquivos ao mesmo tempo da persistncia da memria
    do ECF Virtual


Data: 06/10/2014   (por: DSA)
-- ACBrECFVirtual --
[*] Modificada a visibilidade das propriedades: Colunas, NomeArqINI, NumSerie,
    NumECF, NumCRO, CNPJ, IE, IM para  para Protected, elas devem ser
    redeclaradas como Published nas classes filhas (Ex: ACBrECFVirtualNaoFiscal),
    se necessrio
[*] Evento: OnGravaArqINI renomeado para: QuandoGravarArqINI
[*] Evento: OnLeArqINI renomeado para: QuandoLerArqINI
[+] Adicionada propriedade "ChaveCupom", para armazenar cdigo externo do
    documento gerado no ECFVirtual

-- ACBrECFEscECF --
[*] Melhorias no gravao do Log, para tentativa de compatibilizao com Epson
    TM-T800F

Data: 05/10/2014   (por: DSA)
-- ACBrECFVirtual --
[*] Coleo de objetos: ItensCupom, PagamentosCupom e CNFCupom modificados de
    TObjectList para tipos especficos.

-- ACBrECFVirtualPrinter --
[*] Modificada visibilidade de propriedades relacionadas a controle de impresso
    de Published para Protected, elas devem ser redeclaradas como Published nas
    classes filhas (Ex: ACBrECFVirtualNaoFiscal), se necessrio

Data: 03/10/2014
-- ACBrDIS --
[-] Correo de Bug que impedia o funcionamento dos efeitos de animaes

-- ACBrDISGertecTEC65lib --
[+] Adicionado novo modelo "disGertec65Lib" (que depende da 'tec65_32.dll')


Data: 02/10/2014
-- ACBrETQ --
[+] Adicionada procedure "IniciarEtiqueta" e "FinalizarEtiqueta", que
possibilitam desenhar vrios modelos de etiquetas antes de enviar os comandos de
impresso  (por: Elias)

-- ACBrETQClass --
[+] Adicionada propriedade "ETQInicializada" que possibilitar verificar
	se os comandos de inicializao da etiqueta j foram includos na varivel
	ListaCmd  
[+] Adicionada propriedade "ETQFinalizada" que possibilitar verificar
	se os comandos de finalizao da etiqueta j foram includos na varivel
	ListaCmd  (por: Elias)
	
-- ACBrETQPpla --
[+] Implementado mtodo IniciarEtiqueta;
[+] Implementado mtodo FinalizarEtiqueta(Copias:Integer = 1;AvancoEtq:Integer = 0);
[*] Ajuste na procedure Imprimir(Copias: Integer = 1; AvancoEtq: Integer = 0)
	para que utilize as novas rotinas "IniciarEtiqueta" e "FinalizarEtiqueta" no
	momento de enviar os comandos de impresso  (por: Elias)
	
-- ACBrETQPpla --
[+] Implementado mtodo IniciarEtiqueta;
[+] Implementado mtodo FinalizarEtiqueta(Copias:Integer = 1;AvancoEtq:Integer = 0);
[*] Ajuste na procedure Imprimir(Copias: Integer = 1; AvancoEtq: Integer = 0)
	para que utilize as novas rotinas "IniciarEtiqueta" e "FinalizarEtiqueta" no
	momento de enviar os comandos de impresso  (por: Elias)
	
-- ACBrETQPEpl2 --
[+] Implementado mtodo IniciarEtiqueta;
[+] Implementado mtodo FinalizarEtiqueta(Copias:Integer = 1;AvancoEtq:Integer = 0);
[*] Ajuste na procedure Imprimir(Copias: Integer = 1; AvancoEtq: Integer = 0)
	para que utilize as novas rotinas "IniciarEtiqueta" e "FinalizarEtiqueta" no
	momento de enviar os comandos de impresso  (por: Elias)

Data: 10/09/2014
-- ACBrECFEscECF --
[+] Adicionado suporte aos mtodos: EspelhoMFD_DLL, ArquivoMFD_DLL, ArquivoMF_DLL
    para o Modelo MP4200 da Bematech (por: DSA)

Data: 11/08/2014
-- ACBrECFFiscNet --
[-] A Elgin K retorna em alguns casos um byte a mais gerando um nmero de srie
    com 21 caracteres, foi implementado a verificao e remoo se necessrio 
    do byte excedente.

Data: 28/07/2014
-- ACBrBAL --
[+] Adicionado mecanismo de Gravao de Log  (por: DSA)
[*] Refactoring de GravaLog para ACBrUtil.pas
    procedure WriteLog(const ArqTXT, AString: AnsiString;
        TranslateUnprintable: Boolean);

Data: 17/07/2014
-- ACBrECFSwedaSTX --
[*] Modificaes em ArquivoMFD_DLL para correta gerao dos arquivos:
    "LMFC cotepe 17/04" e "Arq.MFD", (por: Arthur)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=13524

Data: 15/07/2014
-- ACBrECFClass --     (por: DSA)
[-] Correo a bug introduzido em 16/06/2014. Problema no carregamento de
    Formas de Pagamento acentuadas:
    http://www.projetoacbr.com.br/forum/index.php?showtopic=16475

Data: 30/06/2014
-- ACBrECFDaruma --
[*] Ajuste para imprimir corretamente a Identificao do Consumidor no Rodap
    no modelo: "010400" (antigas FS600) (Por: Ivan)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=16123

Data: 28/06/2014
-- ACBrECFDaruma --
[*] Ajuste para evitar a modificao inadvertida de DecimaisQtd e DecimaisPreco
    (por: DSA)

Data: 20/06/2014
-- ACBrECFBematech, ACBrECFDaruma --
[*] Ajustes para gerao de Arquivos com Finalidade finSintegra e finSPED
    http://www.projetoacbr.com.br/forum/index.php?showtopic=16129

Data: 18/06/2014  (por: DSA)
-- ACBrECFFiscNET --
[*] Ajusta para que GetDadosUltimaReducaoZ leia corretamente os Totalizadores de
    alquotas, mesmo se o ndice 0 no estiver programado corretamente

Data: 16/06/2014  (por: DSA)
-- ACBrECF --
[+] Adicionada a propriedade "ECFVirtual", que permite fazer com que o ACBrECF
    comande um outro componente do tipo TACBrECFVirtual. Nesse caso, o modelo
    deve ser ajustado para "ecfVirtual" e ambos componentes associados
[*] Refactoring de cdigo
[*] Ajustes para suportar TACBRECFVirtualClass como um TACBRECFClass
[+] Adicionada a propriedade "AsString" em TACBrECFAliquota, TACBrECFFormaPagamento,
    TACBrECFComprovanteNaoFiscal, para permitir salvar e recuperar mais fcilmente
    valores desses objetos
[*] Ajustes para tentativa de compatibilizao com FireMonkey (FMX)

-- ACBrECFVirtualNaoFiscal --
[+] Criado novo componente, que servir de base para todos os ECFs virtuais,
    que precisaro de Impresso similar a de um ECF. Trata-se de um grande
    refactoring da Unit ACBrECFNaoFiscal.pas. Ou seja, este ECF Virtual  um
    emulador de ECF
    - Permite salvar no componente, propriedades fixas do ECF como: Colunas,
      NumECF, NumSerie, CNPJ, IE, Cabealho, Comandos de Controle da Impressora
    - Possui disparo de Eventos quando l e grava o .INI (memria do ECF),
      permitindo persisti-lo em Banco de Dados ou de outra forma.
    - Deve ser usado em conjunto com ACBrECF, e ACBrECF.Modelo := ecfECFVirtual



Data: 15/06/2014
-- ACBrECFFiscNET --
[-] Correo de leitura de Totalizadores Parciais Tributados dos Dados da Ultima
    Reduo Z  (por: DSA)
    http://www.projetoacbr.com.br/forum/index.php?showtopic=16114

Data: 06/06/2014
-- ACBrECFDaruma --
[+] Implementado mtodo GetNumLoja  (por: DSA)

Data: 28/05/2014
-- ACBrECFEpson --
[*] Adicionada verificao para evitar erro de Impresso em Linha de CCD ou
    Gerencial, pois o ECF no suporta o caracteres inferores a #32  (por: DSA)

Data: 21/05/2014
-- ACBrECF --
[+] Nova Propriedade, ControlePorta: Boolean = false
    Quando True, faz com que o ACBrECF ative e desative a porta a cada comando
    enviado. Util para ECFs com Porta Serial Virtual (driver USB)   (por: DSA)

-- ACBrECFBematech, ACBrECFSwedaSTX, ACBrECFEpson --
[*] Melhoria no registro do Log  (por: DSA)

Data: 17/05/2014
-- ACBrECFFiscNET --
[*] Ajuste para Modelo "URANO/1FIT LOGGER" em 48 col  (por:DSA)
    www.projetoacbr.com.br/forum/index.php?showtopic=10775
-- ACBrECFDaruma --
[-] Correo para impresso de Dados do Consumidor no Rodape do Cupom (por: DSA)
    www.projetoacbr.com.br/forum/index.php?showtopic=15636

Data: 10/04/2014
-- ACBrECFBematech --
[*] Melhorada rotina de Leitura da DLL, para conseguir configurar a Porta Serial
    no arquivo .INI corretamente  (por:DSA)
[*] Implementada rotina de descarga da DLL  (por: DSA)

-- ACBrECFDaruma --
[*] Implementada rotina de descarga da DLL  (por: DSA)

Data: 25/04/2014
-- ACBRCHQBematech --
[*] Segunda Versao ACBrCHQBematech (por William Duarte)

Data: 08/04/2014
-- ACBrECFEpson --
[*] IdentificaOperador modificado para no imprimir Relatrio Gerencial aps a
    sua execuo  (por: DSA)

Data: 07/04/2014
-- ACBrECFEpson --
[*] Adicionada verificao para evitar erro de Impresso em Linha de CCD ou
    Gerencial, pois o ECF no suporta o caracter "FF" ou #12  (por: DSA)

Data: 04/04/2014
-- ACBrECFSwedaSTX --
[-] Corrigido Bug em RegistraItemNaoFiscal, que no conseguia intrepretar Acentos
    (por: DSA)

Data: 31/03/2014
[-] Corrigido Bug em VerificaFimImpressao, onde na impresso de comandos lentos,
    como no caso da ReduoZ, o ECF acusava TimeOut muito antes do estabelecido
    (por: DSA)
[*] Removido cdigo experimental para uso da USB por DLL, pois isso no funcionou
    adequadamente e  no ser suportado pela DLL da Bematech, j que a mesma
    criou um Driver de Porta Serial Virtual  (por: DSA)

Data: 16/02/2014
-- ACBrBase.pas --
[-] Correo no mtodo TACBrInformacoes.FieldByName, para evitar A.V. em rotinas
    chamadoras, e compatibilizao com TDataset.FieldByName   (por: DSA)

Data: 05/01/2014
-- ACBrECF --
[*] Ajuste no mtodo PafMF_GerarCAT52 para utilizar a nomenclatura de arquivos
    conforme definido na lei, o que deve corrigir a gerao deste formato de
    arquivo para alguns modelos de ECF    (por:DSA)


Data: 04/01/2014
-- ACBrECFFiscNET --
[-] Correo da captura dos Valores das Aliquotas no mtodo: DadosUltimaReducaoZ
    http://www.projetoacbr.com.br/forum/index.php?/topic/13813-erro-elgin-em-getdadosultimareducaoz

Data: 14/11/2013
-- ACBrECFEpson --
[-] Correo na rotina de interpretao da Fim de Leitura do ECF. Em algumas
    raras situaes o ACBrECF poderia no ler todo o Buffer de resposta acusando
    erro no Checksum e invalidando o Pacote recebido. (por: DSA)

Data: 04/11/2013
-- ACBrECFEscECF --
[-] Remoo de cdigo que usava outra classe de ACBrECFClass para
    EspelhoMFD_DLL, ArquivoMFD_DLL e ArquivoMF_DLL, por causar interferncias
    na classe Principal (fpDevice  compatilhado) (por: DSA)

Data: 08/10/2013
-- ACBrECFBematech --
[*] Aplicado refactoring para facilitar e otimizar leitura do nmero do
    proprietrio (por: DSA)
[*] Adicionado cdigo para verificar verso mnima da DLL da Bematech como:
    6.1.1.6, para evitar erros na gerao de arquivos por Download da MFD
    (por: DSA)
[*] ArquivoMFD_DLL por CRZ, modificado para usar mtodo especfico da DLL
    (por: DSA)

-- ACBrECFEscECF --
[*] Tentativa de implementao dos mtodos: EspelhoMFD_DLL, ArquivoMFD_DLL e
    ArquivoMF_DLL, usando classes j existentes... (por: DSA)

Data: 28/09/2013
-- ACBrECFEscECF --
[-] Correo do mtodo GetDataMovimento  (por: DSA)
    http://www.projetoacbr.com.br/forum/index.php?/topic/12487-erro-datamovimento-mp4200/

-- ACBrECFBematech --
[*] Ajuste do mtodo ArquivoMFD_DLL para utilizar a nova funo
    "Bematech_FI_ArquivoMFDPath"  (por: DSA)
    http://www.projetoacbr.com.br/forum/index.php?/topic/
    10674-ajustes-para-gerar-cat52-para-impressora-bematech-informando-caminho/

Data: 23/09/2013
-- ACBrECFDaruma --
[-] Acerto na gerao dos menus fiscais "Arq.MF" e "Arq.MFD" para impressora Daruma.
    por: regys.silveira

Data: 13/09/2013
-- ACBrECF --
[+] Modificado rotina de impresso do texto referente ao Paraba Legal para
    atender a legislao fo Ato Cotepe 09/13.
    por: Juliana Tamizou

Data: 09/09/2013
-- ACBrECF --
[+] Adicionados os mtodos PafMF_ArqMF e PafMF_ArqMFD para gerao dos 
    respectivos menus fiscais, os mtodos j efetuam a gerao automtica 
    dos arquivos .TXT de mesmo nome com a assinatura EAD.
    por: regys.silveira

Data: 19/08/2013
-- ACBrECFEpson --
[-] Correo no retorno de DataHoraSB quando o ECF ainda no possui nenhuma
    Reduo Z emitida
    www.projetoacbr.com.br/forum/index.php?showtopic=11922

Data: 29/08/2013
-- ACBrECFEscECF --
[-] Correo no mtodo DescontoAcrescimoItemAnterior          (por: DSA)

Data: 08/08/2013
-- ACBrECF --
[*] Ajuste para evitar TimeOut em CortaPapel para as classes:         (por: DSA)
    ACBrECFEpson, ACBrECFDaruma, ACBrECFFiscNET, ACBrECFSwedaSTX, ACBrECFEscECF

Data: 08/08/2013
-- ACBrECF --
[*] Ajuste de tamanho mximo no mtodo ProgramaFormaPagamento para as classes:
    ACBrECFFiscNET e ACBrECFSwedaSTX                          (por: DSA)

Data: 07/08/2013
-- ACBrECFEpson --
[*] Tratamento para remover caractere no alfanumricos do Codigo    (por: DSA)
    www.projetoacbr.com.br/forum/index.php?showtopic=11698

Data: 01/08/2013
-- ACBrECF --
[*] Refactoring em GetDataHoraSB, efetando os modelos: ecfBematech, ecfFiscNET,
    ecfEpson. Usando uma nica rotina para captura da Data e Hora do Sw.Bsico
    atravs da Captura de informaes da Leitura da Memoria Fiscal.   (por: DSA)

Data: 25/07/2013
-- ACBrECFFiscNet --
[-] Corrigido Bug na leitura de DadosUltimaReducaoZ  (por: DSA)

-- ACBrBALFilizola --
[-] Correo na leitura, s tenta ler novamente se o peso for Instvel (por: DSA)

-- ACBrBAL --
[*] Reviso em demais fontes e pequenos ajustes  (por: DSA)

Data: 24/07/2013
-- ACBrECFEscECF --
[-] Correo no protocolo de comunicao. Adicionando tratamento para o caso do
    ECF retornar WACK (ocupado) durante o envio do comando.    (por: DSA)
[*] Modificada as rotinas "ProgramaRelatorioGerencial, ProgramaFormaPagamento,
    ProgramaComprovanteNaoFiscais, AchaFPGDescricao, AchaRGDescricao,
    AchaCNFDescricao" para usar apenas caracteres vlidos na Descricao, de
    acordo com o Previsto na Lei: " Mximo de 15, Mnimo de 4 caracteres ASCII
    de posio 65 a 90 (letras maisculas) ou 97 a 122 (letras minsculas)"  (por: DSA)
[-] Correo no retorno de "GetTotalPago", criando controle interno para
    administrar o valor, j que o Protocolo no retorna essa informao (por: DSA)
[*] Aplicado ajuste em "VendeItem", inserindo tratamento no tamanho mnimo do
    cdigo do Produto de acordo com a Lei. Se o mesmo for inferior a 3, so
    inseridos zeros a esquerda. Ex: "1" = "001"      (por: DSA)

Data: 22/07/2013
-- ACBrECFSwedaSTX --
[-] Correo do formato de data na Impresso de cheque (por: giulianon)
http://www.projetoacbr.com.br/forum/index.php?/topic/11315-sweda-erro-atributo-invalido/?p=68665

Data: 18/07/2013
-- ACBrECF --
[*] Modificada a assinatura do mtodo "EfetuaPagamento", inserindo novo parmetro
    "CodMeioPagamento: Integer, default = 0", para compatibilizao com o novo
    protocolo que exige essa informao no Pagamento, de acordo com a tabela
    fixa abaixo. Valores diferentes de tabela abaixo sero considerados "7"
     1-Dinheiro, 2-Cheque, 3-Carto de Crdito, 4-Carto de Dbito,
     5-Carto Refeio/Alimentao, 6-Vale Refeio/Alimentao (em papel),
     7-Outros                              (por: DSA)

-- ACBrECFBematech --
[*] Refactoring em TraduzirTag e TraduzirTagBloco para compartilhar cdigo com
    ACBrECFEscECF                               (por: DSA)

-- ACBrECFEscECF --
[+] Implementado leitura do NumLoja (apenas para Bematech)     (por: DSA)
[+] Adicionado suporte a Tags de Formatao e Cdigo de Barras
    (apenas para Bematech)     (por: DSA)
[-] Corrigido bug na leitura de NumCRO        (por: DSA)
[-] Correo em AbreCupomVinculado, inserindo rotina que procura pela sequencia
    de pagamento de acordo com os pagamentos Efetuados e o valor de
    "CodFormaPagto" informado na abertura do Vinculado/CCD   (por: DSA)

Data: 18/07/2013
-- ACBrECF --
[+] Adicionada informao de rodap para: ER 02.01 - Requisito XXVIII item 8
    http://www.projetoacbr.com.br/forum/index.php?/topic/11450-incluir-numero-de-nota-serie-d-no-rodap%C3%A9-do-cupom-fiscal/
    por: cleber

Data: 17/07/2013
-- ACBrECF --
[*] Refactoring em rotinas de Fechamento de Cupom. Simplificao da deciso
    de exibir os dados do Consumidor nas linhas de Observao ou em comando
    especial quando suportado pelo ECF (por: DSA)

Data: 15/07/2013
-- ACBrECFEscECF --
[-] Corrigido cancelamento de Cupom Fiscal seguido de CCD
[*] Adicionado suporte para cancelar vrios CCDs
[-] Correo no numero de Colunas suportadas para a Bematech
[*] Ajuste em IdentificaPAF para imprimir Nome Programa corretamente na 2a linha

Data: 04/07/2013
-- ACBrECF --
[+] Adicionada nova propriedade ACBrECF.DataHoraUltimaReducaoZ, que retorna a
    Data e Hora da emisso da ltima reduo Z                  (por: DSA)
[+] Adiciona a propriedade DadosReducaoZ.DataHoraEmissao, que s ser preenchida
    quando for chamada por DadosUltimaReducaoZ    (por: DSA)

-- ACBrECFBematech --
[+] Adicionada suporte a propriedade ACBrECF.DataHoraUltimaReducaoZ,   (por:DSA)

-- ACBrECFDaruma --
[+] Adicionada suporte a propriedade ACBrECF.DataHoraUltimaReducaoZ,   (por:DSA)

-- ACBrECFEpson --
[+] Adicionada suporte a propriedade ACBrECF.DataHoraUltimaReducaoZ,   (por:DSA)

-- ACBrECFFiscNET --
[+] Adicionada suporte a propriedade ACBrECF.DataHoraUltimaReducaoZ,   (por:DSA)

-- ACBrECFSwedaStx --
[*] Adicionado suporte a identificao do Consumidor no rodap do Cupom (por:DSA)
[+] Adicionada suporte a propriedade ACBrECF.DataHoraUltimaReducaoZ    (por:DSA)

-- ECFTeste --
[*] Modificado em Lazarus e Delphi para exibir o retorno de
    ACBrECF.DataHoraUltimaReducaoZ      (por: DSA)

-- ACBrETQZplII --
[-] Correo do metodo Imprimir, para suportar o nmero de cpias   (por:DSA)

Data: 17/06/2013
-- ACBrECF e correlatos --
[+] Acerto para gerao do arquivo MF binrio do Paf-ECF
    ver: http://www.projetoacbr.com.br/forum/index.php?/topic/10809-ato-cotepe-201-requisito-vii-item-4-arq-mf-binario/
    por: regys.silveira
    constribuio: suporte.syspro

Data: 09/05/2013
-- ACBrBal --
[-] Alterado tempo de sleep aps envio de comando de LePeso para corrigir AV.
    http://www.projetoacbr.com.br/forum/index.php?/topic/10080-access-violation-ao-ler-peso-da-balana-urano-pop-z-us-202-pop-light

Data: 01/04/2013
-- ACBrECFEscECF --
[+] Criado mecanismo de memria temporria em disco, para manter o valor das
    propriedades que no podem ser retornadas pelo protocolo como SubTotal,
    TotalPago, TotalAPagar, etc.  Isso permite perssitir em arquivo os valores
    de propriedades que seriam perdidos com o re-inicio do programa. (por: DSA)

[-] Correo no retorno de GetTotalPago   (por: DSA)

Data: 15/05/2013
-- ACBrECF --
[+] Adicionado campos ao rodape para informar o valor dos impostos conforme 
    lei de transparncia dos impostos, vejam no demo do ACBrECF como utilizar

Data: 20/04/2013
-- ACBrPosPrinter --
[+] Incluso do componente ACBrPosPrinter para comunicao com impressoras no
    fiscais. (Daniel Simes de Almeida)
	
Data: 17/03/2013
-- ACBrECF --
[+] Adicionada funcionalidade de Impresso de Rodap de Bar e Restaurantes
    (por: Rafael Batiati)
[-] Correo de Bug no mtodo IdentificaPAF, que mesmo quando o MD5 era informado
    vazio, adicionava o prefixo "MD-5:"  (por: DSA)
[*] Ajuste nas sub-propriedades de InfoRodape, que no precisavam ser salvas no
    DFM/LFM e ajuste valores Default   (por: DSA)

-- ACBrECFBematech --
[*] Ajuste no mtodo GetDadosUltimaReducaoZ para consequir recuperar corretamente
    os valores dos Registradores de Operaes no Fiscais, mesmo quando os mesmos
    no esto programados na sequencia correta, no ECF   (por: DSA)

Data: 28/02/2013
-- ACBrECF --
[-] Correo de bug, onde o ACBrECF perdia as configuraes de InfoRodape,
    quando o modelo era modificado     (por: DSA)

[-] Modificao da exibio da informao no rodap para o programa Nota Legal,
    de "DF". O Sufixo "NL" s deve ser exibido aps o MD5, se houver
    identificao do consumidor. (a pedido de homologador PAF-ECF)    (por: DSA)

[*] Modificao da exibio da informao no rodap para o programa Paraiba Legal,
    O texto atual da lei, impede a impresso de todo texto em uma nica linha,
    pois ultrapassa 56 caracteres. O CPF do identificao do consumidor ser
    impresso na linha de baixo (a pedido de homologador PAF-ECF)    (por: DSA)

[*] Ajustes em GetDadosUltimaReducaoZ em vrios modelos para que o comando no
    seja interrompido, caso a Data de Movimento retornada pelo ECF seja invlida
    (por: DSA)

Data: 04/02/2013
-- ACBrECF --
[-] Correo do rodape Cupom Mania estava pegando a data do computador (por: Rafael Dias)

Data: 02/02/2013
-- ACBrECFFiscNet --
[-] Correo do mtodo ArquivoMFD_DLL para os modelos Urano (por: Welkson e DSA)
   http://www.projetoacbr.com.br/forum/index.php?/topic/
   8864-menu-fiscal-usando-urano-patch-no-acbrecf/


Data: 30/01/2013
-- ACBrECFSwedaStx --
[-] Acerto no ajuste de hora da Reduo Z
    por: Carlos Nascimento

Data: 24/01/2013
-- ACBrECF --
[*] Corrigida a acentuao em mtodos de relatrios de DAV_*   (por: DSA)

Data: 21/01/2013
-- ACBrECFSwedaSTX --
[+] Adicionada leitura dos registradores: NumCFC, NumGNFC, NumCFD, NumNCN (por DSA)

Data: 10/01/2013
-- ACBrECFFiscNet --
[-] Correo de erro em DescontoAcrescimoItemAnterior que ocorria em alguns modelos:
    http://www.projetoacbr.com.br/forum/index.php?/topic/
    1957-descontoacrescimoitemanterior-swedastx/?p=48234

Data: 21/12/2012
-- ACBrDevice --
[*] Ajuste para permitir Hooks de comunicao com outras bibliotecas ou DLLs

-- ACBrECFBematech --
[*] EXPERIMENTAL. Inicio dos ajustes para funcionar com portas USB atravs da
    Bemafi32.DLL, usando os NOVOS mtodos Bematech_FI_EnviaComando,
    Bematech_FI_LeituraRetorno

Data: 20/12/2012
-- ACBrECFDaruma --
[-] Correo de bug introduzido em 29/11/2012, onde a leitura do COO fica
    incorreta aps o comando de Cancelamento (por: DSA)

Data: 18/12/2012
-- ACBrECFDaruma --
[-] Acerto na gerao de arquivos da NFP. (por: Regys Silveira)

Data: 29/11/2012
-- ACBrECFDaruma --
[-] Acerto para retornar corretamente o nmero do CCF quando efetuar o 
    cancelamento de cupom fiscal. (por: Regys Silveira)

Data: 22/11/2012
-- ACBrECFBematech --
[-] Correo da Leitura de Totalizadores de Sangria e Suprimento em
    LerTotaisComprovanteNaoFiscal  (por: DSA)
[-] Correo da leitura de Totalizadores No fiscais em DadosUltimaReducaoZ

-- ACBrECFDaruma --
[+] Adicionado retorno para os mtodos: GetTotalAcrescimosOPNF,
    GetTotalCancelamentosOPNF, GetTotalDescontosOPNF

-- ACBrECFEpson --
[-] Correo da leitura de Totalizadores de ISSQN em DadosUltimaReducaoZ

-- ACBrECFFiscNet --
[*] Refactoring, intruduzindo mtodos Internos para: LeMoeda, LeInteiro, LeTexto
[+] Adicionado retorno para os mtodos: GetTotalAcrescimosOPNF,
    GetTotalCancelamentosOPNF, GetTotalDescontosOPNF

-- ACBrECFSwedaSTX --
[-] Corrigida leitura de TotalOperacaoNaoFiscal em DadosUltimaReducaoZ

Data: 20/11/2012
-- ACBrECF --                                                      (por: DSA)
[*] Refactoring em mtodo: GetDadosReducaoZ e MontaDadosReducaoZ

-- ACBrECFClass --                                                 (por: DSA)
[*] Refactoring em mtodo: GetDadosReducaoZ e MontaDadosReducaoZ
[*] Classe TACBrECFDadosRZ modificada para conter o mtodo MontaDadosReducaoZ
[-] Mtodo TACBrECFDadosRZ.MontaDadosReducaoZ, modificado para montar .INI apenas
    com as variaveis que foram realmente informadas (eliminando problema de
    registradores zerados)
[+] Inserido mtodo TACBrECFDadosRZ.CalculaValoresVirtuais para calcular valores
    que no tenham sido retornado pelo ECF como: TotalOperacaoNaoFiscal, TotalICMS,
    TotalISSQN, ValorVendaBruta, VendaLiquida

-- ACBrECFBematech --                                              (por: DSA)
[*] Refactoring em: GetDataHora, GetDataHoraSB e GetDataMovimento
[*] Reviso e refactoring em GetDadosUltimaReducaoZ

-- ACBrECFDaruma --                                                (por: DSA)
[*] Reviso e refactoring em GetDadosUltimaReducaoZ

-- ACBrECFEpson --                                                 (por: DSA)
[*] Refactoring em: GetDataHora, GetDataHoraSB e GetDataMovimento
[*] Reviso e refactoring em GetDadosUltimaReducaoZ, modificado para usar a
    classe TACBrECFDadosRZ

-- ACBrECFEpson --                                                 (por: DSA)
[*] Reviso e refactoring em GetDadosUltimaReducaoZ, modificado para usar a
    classe TACBrECFDadosRZ

-- ACBrECFSwedaSTX --                                              (por: DSA)
[*] Reviso e refactoring em GetDadosUltimaReducaoZ, modificado para usar a
    classe TACBrECFDadosRZ
[+] Implementado retorno para os mtodos: GetTotalAcrescimosISSQN,
    GetTotalCancelamentosISSQN, GetTotalDescontosISSQN, GetTotalIsencaoISSQN,
    GetTotalNaoTributadoISSQN, GetTotalSubstituicaoTributariaISSQN,
    GetTotalAcrescimosOPNF, GetTotalCancelamentosOPNF, GetTotalDescontosOPNF,
    GetTotalTroco
[-] LerTotaisAliquotas modificado para ler valores de aliquotas do ISSQN

Data: 31/10/2012
-- ACBrECFEpson --
[-] Adicionada verificao do sucesso de Envio do Comando quando usando USB e a
    DLL da Epson    (por: DSA)

Data: 24/10/2012
-- ACBrECF --
[+] Adicionado novo modelo de ECF, ecfEscECF, que contempla o protocolo EscECF,
    de acordo com o Convnio ICMS 09/09,  (experimental)    (por: DSA)

Data: 22/10/2012
-- ACBrECF --
[+] Adicionada a impresso do Nota Legal (DF)
    Ver propriedade InfoRodapeCupom.NotaLegal e suas subpropriedades.
[+] Adicionada a expresso "NL" ao MD5 para o DF.
[+] Adicionado a impresso do Paraba Legal no rodap do cupom fiscal
    ver propriedade InfoRodapeCupom.ParaibaLegal
    (por: Regys Silveira)  

Data: 22/10/2012
-- ACBrECFBematech --
[*] Ajuste no mtodo ArquivoMFD_DLL para nova verso da DLL 6.1.1.1  (por: DSA)

-- ACBrECFSwedaSTX --
[*] Adicionado suporte a pgina de cdigo 1252 como default  (por: DSA)

Data: 17/10/2012
-- ACBrBal --
[+] Adicionado o modelo de balana Megellan conforme contribuio do tpico.
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=7711
    (por: Regys Silveira)    

Data: 05/10/2012
-- ACBrECFSwedaSTX --
[-] Correo para emisso da ReducaoZ quando ltimo cupom permaneceu aberto e
    ECF indica estado ecfRequerZ   (por: DSA)

Data: 01/10/2012
-- ACBrECFDaruma --
[-] Aplicao do patch feito por usurio do frum
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=7484
    (por: Regys Silveira)

Data: 26/09/2012
-- ACBrECFEpson --
[-] Correo para imprimir acentos corretamente quando usando a porta USB
    (pela DLL do Fabricante)       (por: DSA)
[-] Correo para imprimir TAGs de formatao e Cod.Brras quando usando a porta
    USB (pela DLL do Fabricante)       (por: DSA)

Data: 19/09/2012
-- ACBrECFBematech, ACBrECFSwedaSTX --
[-] Correo do mtodo PafMF_GerarCAT52, que ficava em Loop infinito quando
    usando um periodo de mais de um dia.
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?p=39803#p39803

-- ACBrECFFiscNet --
[*] Ajustes para a compatibilizao do modelo: ELGIN K
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=7333&p=39696

Data: 17/09/2012
-- ACBrECFFiscNet --
[-] Acerto no mtodo ArquivoMFD_DLL para zpm fit/logger (por: Natanael)

Data: 15/09/2012
-- ACBrECF --
[*] Mtodos VendeItem revisados para usar a funo ArredondaABNT.  (por:DSA)

-- ECFTeste (Lazarus) --
[+] Adicionada rotina de teste de Arredondamento    (por:DSA)

Data: 13/09/2012
-- ACBrECF --
[+] Adicionado Troco em carto ao relatrio de configurao do paf-ecf.
    por: regys silveira

[*] Melhorada exibio de informaes do LOG durante o proceso de Ativao
    (por: DSA)

Data: 12/09/2012
-- ACBrECFSwedaSTX --
[+] Adicionado suporte a leitura de CMC7    (por: DSA)

Data: 30/08/2012
-- ACBrECF --
[*] Ajustes para que o ACBrECF efetue o LOG corretamente dos comandos, mesmo
    quando houver falha na verificao dos parmetros.    (por: DSA)
[*] Reviso do tratamento dos parmetros de entrada de vrios mtodos. (por:DSA)

Data: 28/08/2012
-- ACBrECF --
[*] Modificao no tratamento de TimeOut, para permitir que o LOG do ACBrECF
    informe o conteudo do buffer serial lido at o momento do erro

Data: 27/08/2012
-- ACBrECFDaruma --
[*] Ajustes na rotina abertura de porta Serial pela DLL/.SO, para compatibilizar
    com nomenclatura utilizada pelo .SO (COM1 e COM10 ao invez de /dev/ttyS0 e
    /dev/ttyUSB0 respectivamente)    (por: DSA)

-- ACBrECFBematech --
[-] Ajuste no mtodo PafMF_GerarCAT52 para compilao em Linux     (por: DSA)

Data: 28/07/2012
-- ACBrECFSwedaSTX --
[*] Mtodo CorrigeEstadoErro modificado para suportar problemas de ECF a muito
    tempo sem uso, onde  necessrio informar a Data e Hora atual   (por: DSA)
[+] Implementado o mtodo: PafMF_GerarCAT52  (por: DSA)

Data: 23/07/2012
-- ACBrECFDaruma --
[*] Adicionada verificao para respostas do ECF iniciando com dois sinais ":",
   (por: DSA)

Data: 23/07/2012
-- ACBrECF --
[*] Adicionada informao de Milisegundos na gravao do Log  (por: DSA)

-- ACBrECFFiscNet --
[*] Ajuste para leitura de Dados da Ultima Reduo Z em modelos antigos, que em
    algumas ocasies no enviam todos os dados  (por: DSA)

Data: 20/07/2012
-- ACBrDIS --
[*] Melhorada significativamente a performance da exibio de Display de
    Teclados PS/2   (por: DSA)

Data: 11/07/2012
-- ACBrECFBematech --
[*] Gerao do arquivo da nota fiscal paulista (CAT52)
    (por Regys Silveira)

Data: 11/07/2012
-- ACBrECF, ACBrECFDaruma --
[*] Gerao do arquivo da nota fiscal paulista (CAT52)
    (por Regys Silveira)

Data: 11/07/2012
-- ACBrECFSwedaSTX --
[-] Totalizador I3 estava equivocadamente sendo chamado de N3 na funo 
    GetDadosUltimaReducaoZ. (por EMBarbosa)
  
Data: 10/07/2012
-- ACBrECF --
[*] Acerto no relatrio de meios de pagamento do menu fiscal para o novo 
    layout estabelecido no ato cotepe.
    (por: Rgys Silveira)

Data: 05/07/2012
-- ACBrECFSweda --
[+] Implementado NumReducoesZRestantes  (por Rgys Silveira)

Data: 04/07/2012
-- ACBrECFBematech --
[-] Corrigido retorno da propriedade NumCOOInicial, que retornava o COOInicial
    da Reduo Z do dia anterior, e no do dia atual  (por: DSA)

-- ACBrECFEpson --
[+] Implementado NumReducoesZRestantes  (por DSA)

Data: 03/07/2012
-- ACBrECF --
[+] Implementado o contador de redues Z restantes baseado na leitura X, 
    implementei no ACBrECF assim vai valer para todas as impressoras que
    no possuem esse registrador, nas impressoras que possuem sobrescrever o 
    mtodo e utilizar o registrador prprio.
    (por: Rgys Silveira)

Data: 02/07/2012
-- ACBrECF --
[+] Adicionado contador que retorna o numero de redues z restantes na 
    impressora fiscal, funcionando para bematech, fiscnet e daruma.
    (por: Rgys Silveira)

Data: 19/06/2012
-- ACBrECF --
[-] Correo da leitura da data para formao do Minas Legal.
    (por: Rgys Silveira)

Data: 18/06/2012
-- ACBrSMS --
[+] Adicionado evento para informar o andamento do envio de mensagens em lote.
    (por: Rgys Silveira)

Data: 13/06/2012
-- ACBrECFEpson --
[*] Mtodo VendeItem modificado para tratar o campo Unidade com apenas caracteres
    alfa-numricos, a fim de evitar Erro: 0206 - Campo alfanumrico invlido.(DSA)

Data: 10/06/2012
-- ACBrSMS --
[+] Adicionada propriedade IntervalorEntreMensagens para que o usurio possa
    setar o tempo de espera entre o envio de vrias mensagens.
    (por: Rgys Silveira)

Data: 23/05/2012
-- ACBrECF --
[+] Implementado recurso para checar se no meio da venda o arquivo auxiliar
    permanece integro, caso no esteja, dispara uma exceo informando que 
    o arquivo esta invlido.
    Recurso implementado para atender um teste feito por um homologador.
    (por: Isaque Pinheiro e DSA)

Data: 18/05/2012
-- ACBrECF --
[*] Modificado comportamento da propriedade "ArredondaItemMFD". Se a mesma for
    True, o ACBrECF, ir re-avaliar o estado desta propriedade logo aps a
    primeira chamada a VendeItem. Caso o ECF no possua essa caracterstica, o
    ArredondaItemMFD ser modificado para False   (por: DSA)
[*] Modificada funcionamento da propriedade "Arredonda", para que a mesma leve
    em considerao as propriedades (MFD e ArredondaItemMFD) alm de verificar
    se o ECF possue o flag de Arredondamento Interno ajustado.
     importante frisar que o valor das propriedades "ArredondaItemMFD" e
    portanto agora de "Arredonda" s  confivel aps a primiera Venda de Item
    (por: DSA)

-- ACBrDevice --
[-] Correo de Bug introduzido na rev.3516, que impede o funcionamento de
    portas Paralelas causando o erro: "Impressora NaoFiscal no est pronta."
    (por: DSA)

Data: 17/05/2012
-- ACBrECF --
[+] DadosReducaoZClass modificado inserindo nova lista de Objetos,
    "TodasAliquotas", que permite visualizar todas as aliquotas existentes, e na
    ordem correta de programao no ECF, independente de Tipo ser ICMS ou ISSQ
    (por: DSA)
[-] Correo de Bug em DadosReducaoZ, String resultante no contemplava
    as Aliquotas de ISS.  (por: DSA)
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=5790&p=30444

-- ACBrECFDaruma --
[-] Correo de Bug em DadosUltimaReducaoZ, String resultante no contemplava
    as Aliquotas de ISS.  (por: DSA)
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=5790&p=30444

-- ACBrECFFiscNet --
[-] Correo do mtodo DadosUltimaReducaoZ, que retornava apenas as 8 primeiras
    aliquotas.       (por: wpereira)
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=5859&p=30508

-- ACBrECFSwedaSTX --
[-] Corrigido Bug na deteco de Arredondamento para Modelos com protocolo
    superior a "D" (ST200)      (por: DSA)

Data: 09/05/2012
-- ACBrDevice --
[-] Correo de Bug introduzido na rev.3516, impedindo o uso de portas Paralelas
    ou Arquivos TXT    (por: DSA)

Data: 08/05/2012
-- ACBrECFDaruma --
[-] Corrigido bug de deteco de Tipo de ECF durante processo de Ativao, no
    caso de falha de comunicao seguido de nova tenativa (Retentar Ativado)
    (por: DSA)

Data: 06/05/2012
-- ACBrECF --
[*] Mtodo ACBrECF.VendeItem modificado inserindo um novo parmetro:
    (CodDepartamento: Integer = -1).    (Por: EasyTef)
[+] Adicionado suporte a Comunicao pela DLL do Fabricante. Isso permitir ao
    ACBr usar o acesso nativo a USB disponibilizado pelo Fabricante.  (por: DSA)
    - A DLL do fabricante precisa estar corretamente instalada e configurada
    - O usurio pode informar para ACBrECF.Porta, valores como: "USB" ou
      "DLL.COM1", feito isso o ACBrECF usar a DLL do Fabricante para se
      comunicar com o ECF
    - Para que seja possvel a implementao dessa funcionalidade a DLL do
      Fabricante deve disponibilizar mtodo na DLL que permita transmitir um
      pacote de dados j montado, e responder usando a sintaxe do protocolo.
      Exemplo:
      DWORD ECF_Serial_Enviar_Dados( LPSTR Comando, WORD TimeOut, LPSTR Retorno)

-- ACBrECFEpson --
[+] Adicionado suporte a Comunicao pela DLL do Fabricante, permitindo o uso de
    portas USB, e um considervel aumento da velocidade.    (por: DSA)

-- ACBrECFFiscNet --
[*] Mtodo VendeItem modificado para fazer uso do novo parmetro:
    (CodDepartamento: Integer = -1).    (Por: EasyTef)

Data: 09/04/2012
-- ACBrECFFiscNET --
[-] Correo na leitura dos dados da ltima reduo Z
    http://djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=5570

Data: 09/04/2012
-- ACBrECFDaruma --
[-] Correo na deteco de Aliquota. Estava assumindo 'F2,N2,I2' quando
    informava apenas 'F,N,I'

Data: 05/04/2012
-- ACBrECFEpson --
[-] Importante correo no Protocolo de comunicao, aps conversa com o suporte
    tcnico da Epson. Eliminando mensagens de Erro como ACK = 2, o que geralmente
    causavam a falta de resposta de ECF.   (DSA)

Data: 04/04/2012
-- ACBrECF --
[+] Incluido novo Exception, EACBrECFSemPapel que  disparado apenas na situao
    de FIM DE PAPEL. Todas as classes de ECF foram revisadas para efetuar o
    tratamento adequado para essa situao  (DSA)
[+] Adicionado novo evento: OnErrorSemPapel, que pode ser disparado quando o
    ACBrECF detectar a exceo EACBrECFSemPapel. Se o evento no for programado
    a exceo EACBrECFSemPapel ser levantada.   (DSA)
[+] Adicionada nova propriedade Publica: IgnorarErroSemPapel, que pode ser
    ligada, quando desejamos ler alguma valor do ECF sem que o mesmo dispare a
    exceo EACBrECFSemPapel. Ela sempre ser desligada aps a execuo do
    prximo comando.   (DSA)
[+] Adicionada nova propriedade Published: IgnorarTagsFormatacao, se configurada
    para True, o ACBrECF ignorar as Tags: <e>,</e>,<n>,</n>,<s>,</s>,<c>,</c>,
    <i>,</i>. Util quando o ECF apresentar problemas em relatrios com Tags de
    Formatao   (DSA)
[*] Modificao de todos Exceptions para EACBrECFErro  (por: Elton)

-- ACBrECFBematech --
[*] Leitura e deteco de Erro aprimorada para modelos com MFD, evitando
    mensagens de erro das antigas Matriciais  (DSA)

Data: 27/03/2012
-- ACBrECF --
[*] Acerto na impresso de informaes do Cupom Mania como pedido pelos 
    homologadores do RJ. (por: Regys Silveira)

Data: 15/03/2012
-- ACBrECF --
[*] Relatrio de Meios de Pagamento do PAF-ECF, modificado conforme solicitao
    da POLIMIG, informando a coluna de Total Geral somando Fiscal e Nao-Fiscal
    (por: DSA)

[*] Adicionado a linha "ITEM 8 Recompe Nmero Srie" no relatrio de Parametros
    de Configurao do PAF-ECF (por: DSA)

[-] Mtodo: "IdentificaPAF"  modificado em todos modelos para imprimir o MD5
    sempre na primeira linha, conforme solicitao da POLIMIG     (por: DSA)

-- ACBrECFDaruma --
[-] Mtodo DadosUltimaReducaoZ modificado para que o mesmo no informe valores
    que ele no  capaz de ler do ECF...
    Removido: NumeroCOOInicial := '0', GNFC := 0, CCDC := 0      (por: DSA)

-- ACBrECFSwedaSTX --
[-] Mtodo DadosUltimaReducaoZ modificado para que a Data do Movimento seja
    informada usando o mesmo padro de DadosReducaoZ (DD/MM/YY)     (por: DSA)


Data: 04/03/2012
-- ACBrECF --
[*] Criado novo tipo de exceo: EACBrECFTimeOut, para ser disparada apenas
    quando h erro de TimeOut, e somente nessa circunstncia...

Data: 01/03/2012
-- ACBrECF --
[*] Relatrios emitidos por PafMf_* modificados para evitar o uso da Tag "<e>"
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=4932

-- ACBrECFBematech --
[-] Tentativa de Correo para a impresso da Tag "<e>"

-- ACBrECFSwedaSTX --
[-] Ajuste para evitar erros de TimeOut aps o acionamento da Gaveta

Data: 27/02/2012
-- ACBrECF --
[*] Acerto para no limpar a marcao de minas legal e cupom mania.
    Conforme post no frum: 
    http://djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=3334&p=24334#p24334
    por: Regys
-- ACBrSMS --
[*] Diversos ajustes nos fontes para remoo de alguns Warning e Hints
    por: Regys

Data: 25/02/2012
-- ACBrSerial --
[*] Diversos ajustes nos fontes para remoo de alguns Warning e Hints (DSA)

-- ACBrECF --
[+] Adicionada propriedade: TipoUltimoDocumento : TACBrECFTipoDocumento que
    retorna o Tipo de Ultimo Documento emitido (no ser possivel implementa-la
    em todos modelos de ECF)     (DSA)
[+] Adiconada a Function EstornaCCD( const Todos: Boolean = True) : Integer
    Efetua o cancelamento do(s) CCD(s), se este for o ltimo documento emitido.
    Retorna o nmero de CCDs que conseguiu cancelar.   (DSA)

-- ACBrSwedaSTX --
[+] Adicionado mtodo GetDataHoraSB  (DSA)

-- ACBrECFFiscNET --
[-] Corrigido o retorno do mtodo: GetDataHoraSB (DSA)
[+] Adicionado mtodo: GetTipoUltimoDocumento (DSA)
[+] Adicionado Function: EstornaCCD (DSA)

-- ACBrECFEpson --
[+] Adicionado mtodo: GetTipoUltimoDocumento (DSA)
[+] Adicionado Function: EstornaCCD (DSA)
[-] Corrigido mtodo: GetSubTotal, para retornar o valor correto quando o
    documento aberto se tratar de um Cupom No Fiscal  (DSA)


Data: 24/02/2012
-- ACBrECF --
[*] Melhoria no tratamento de TAGs, adicionando mecanismo para tratamento
    especial com TAGS de Bloco, como por exemplo Cod.Barras (DSA)
[+] Adicionado suporte a Impresso de TAGs em Cupom Vinculado (DSA)
[-] Correo de Impresso em PafMF_RelParametrosConfiguracao (acentos e ajuste
    para mximo de Colunas) (DSA)

-- ACBrECFSwedaSTX --
[+] Adicionado suporte as TAGs de Cdigos de Barra

Data: 11/02/2012
-- ACBrECFFiscNet --
[-] Correo de Fechamento de Cupom com Identificao de Consumidor e Identifi-
    cao de PAF-ECF (DSA)

-- ACBrBALDigitron --
[+] Novo modelo de Balana adicionado (Digitron).
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=2287

-- ACBrBALUrano --
[-] Correo para Leitura de Peso em alguns modelos (por: DSA)
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=3905

Data: 09/02/2012
-- ACBrECFSwedaSTX --
[-] Correao da interpretao na leitura de DataMovimento, que no considerava o
    Ano com 4 dgitos (DSA)

Data: 04/02/2012
-- ACBrECFFiscNet --
[-] Correao de Fechamento de Cupom com Mensagem promocional em DataRegis. (DSA)
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=4542

-- ACBrECFBematech --
[-] Correo da Leitura da DataHoraSB em alguns modelos (DSA)
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=4548

Data: 02/02/2012
-- ACBrECF --
[*] Possibilidade de desabilitar MsgPoucoPapel, atribuindo valor negativo
    por: DSA

Data: 31/01/2012
-- ACBrSMS --
[+] Liberao do componente ACBrSMS.
    por: Rgys Silveira

Data: 24/01/2012
-- ACBrECFDaruma --
[+] Acerto para utilizar as aliquotas F1, F2, I1, I2, N1, N2 e servios idem.    
    por: Rgys Silveira

Data: 08/01/2012
-- ACBrECFDaruma --
[+] Acerto no mtodo de retorno das alquotas da Reduo Z, conforme relato no 
    frum: http://djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=4425
    por: Rgys Silveira

Data: 27/12/2011
-- ACBrECF --
[+] Adicionados mtodos para a impresso do DAV normal.
    por: Rgys Silveira

Data: 14/12/2011
-- ACBrECF --
[*] Modificada a assinatura do mtodo IdentificaPAF para:
    IdentificaPAF( NomeVersao, MD5 : String) ;
[*] Mtodo IdentificaPAF modificado para no caso de falha da programao no ECF,
    usar a impresso de InfoRodapeCupom.MD5
[*] Adicionado tratamento em InfoRodapeCupom.MD5 para evitar impresso dupla do
    prefixo "MD-5:"
[-] Corrigida a impresso do prefixo de InfoRodapeCupom.MD5 no Rodap do Cupom,
    de acordo com o ltima verso do PAF-ECF

-- ACBrECFSwedaSTX --
[-] Corrigida programao de IdentificaPAF, para considerar o numero de colunas
    do ECF

Data: 10/12/2011
-- ACBrECFSwedaSTX --
[-] Corrigido Bug na gerao do ArquivoMFD por Data. (Gerava apenas com dados da MF)
[-] Corrigido mtodo CortaPapel, adicionando suporte para parmetro Parcial/Total
    e ao modelos antigos de STX

-- ACBrECFFiscNET --
[-] Corrigida a impresso de TAGs Negrito e Expandido, suportando os novos e
    antigos modelos de Verso
[+] Adicionado suporte a TAGs de Cod.Barras

Data: 07/12/2011
-- ACBrECFEpson --
[-] Corrigido Bug na Re-Ativao do componente aps chamar as funes da DLL
[*] Adicionado tratamento para Verificao de Parmetro na gerao de Arquivo
    MFD por COO, que atualmente no  suportado pela DLL da Epson.

-- ACBrECFNaoFiscal e ACBrDevice --
[-] Correes para evitar mensagens: "I/O error 103"

Data: 29/11/2011
-- ACBrECF --
[*] Acerto na impresso do relatrio de configuraes do Paf-ECF
    por: Regys Silveira, Koplin, Juliomar

Data: 09/11/2011
-- ACBrECFEpson --
[-] Correes na deteco do Fim de resposta do Protocolo Serial (por: DSA)
[-] Correo no envio do Comando da Reduo Z com o ajuste de Hora para no
    mximo de +-5 min.   (por: DSA)

Data: 08/11/2011
-- ACBrECFDaruma --
[*] Acerto para ler a varivel do submodelo quando estiver disponvel e quando 
    no estiver obter do flag da impressora.
    (por: Regys Silveira)

Data: 07/11/2011
-- ACBrBal --
[+] Adicionado novo modelo de balana MGNA
    http://djsystem.com.br/acbr/forum/viewtopic.php?f=5&t=3473

Data: 31/10/2011
-- ACBrECFEpson --
[-] Corrigido Desconto/Acrscimo de Item Anterior na FBIII (por: DSA)

Data: 27/10/2011
-- ACBrSerial --
[*] Organizao de vrios fontes para o uso das constantes de ACBrConsts (por: DSA)

-- ACBrECFBematech --
[*] Completa re-escrita dos mtodos ArquivoMFD_DLL, e EspelhoMFD_DLL para que os
    mesmos faam uso das novas rotinas da Bemafi32.DLL, Bematech_FI_ArquivoMFD e
    Bematech_FI_EspelhoMFD respectivamente  (por: DSA)
[*] Ajustes no mtodo CRZToCOO para encontrar o COO quando CRZ Inicial e Final
    forem iguais.   (por: DSA)

Data: 21/10/2011
-- ACBrECFBematech --
[-] Acerto no mtodo CRZToCOO para funcionar com qualquer impressora bematech
[*] Melhora na resposta de erros retornados pela dll
    por: Rgys Silveira

Data: 25/10/2011
[-] Corrigido bug em mtodo LinhaRelatorioGerencial que no disparava Exception
    quando MaxBuffer > 0

-- ACBrECFSwedaSTX --
[-] Correo de Bugs na deteco de Fim de Leitura do Protocolo STX

Data: 22/10/2011
-- ACBrECFSwedaSTX --
[*] Otimizao de cdigo (refectoring)  (Por: DSA)
[-] Corrigido mtodo ArquivoMFD_DLL por COO  (Por: DSA)

Data: 21/10/2011
-- ACBrECF --
[*] Alterao na formao do rodap conforme alteraes da especificao de 
    requisitos do paf-ecf, 
[-] Acerto na formao do ano do Cupom Mania para ddmmaa
    por: Rgys Silveira

-- ACBrECFSwedaSTX --
[-] Corrigido Bug no mtodo Vendeitem para ECF ST100 (Protocolo D), que no
    possuem o parmetro IAT              (Por: DSA)
[*] Melhorado mtodo AbrePortaSerialDLL  (Por: DSA)

Data: 20/10/2011
-- ACBrECF --
[*] Mtodo TACBrECF.AssinaArquivoComEAD modificado para verificar se o arquivo
    gerado pela DLL do ECF j possui ou no registro EAD

-- ACBrECFEpson --
[*] Declaraes da DLL modificadas de PAnsiChar para AnsiString
[*] Removido TypeCast PAnsiChar() de todas as chamadas a DLL
[+] Adicionado mtodo interno: FechaPortaSerialDLL para melhor controle da
    transio entre o controle da Serial pela DLL de volta para o ACBrECF

-- ACBrECFBematech --
[*] Remoo de declarao de mtodos da DLL no utilizados
    xBematech_FI_HabilitaDesabilitaRetornoEstendidoMFD e
    xBematech_FI_RetornoImpressoraMFD
[*] mtodo VerificaFimLeitura modificado para re-tentar 10 vezes e no apenas 3
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?p=16820#p16820
[*] Mtodo AbrePortaSerialDLL:
    - Modificado para ajustar parmetros em BemaFI32.ini antes da abertura da
      Porta Serial pela DLL, caso o mesmo seja encontrado na mesma pasta de
      Bemafi32.DLL
    - Adicionado pequeno intervalo entre o desativamento do ACBrECF e a abertura
      da DLL, para previnir erros de porta ocupada
[*] Removido TypeCast PAnsiChar() de todas as chamadas a DLL

-- ACBrECFSweda --
[*] Declaraes da DLL modificadas de PAnsiChar para AnsiString
[*] Removido TypeCast PAnsiChar() de todas as chamadas a DLL

-- ACBrECFSwedaSTX --
[*] Declaraes da DLL modificadas de PAnsiChar para AnsiString
[*] Removido TypeCast PAnsiChar() de todas as chamadas a DLL
[*] Funo de abertura da porta serial pela DLL modificada para usar
    "ECF_AbreConnectC", que permite informar o Path para os arquivos
[*] Removido Tipo interno, TACBrECFSwedaInfo34A1 por falta de uso.
[-] Melhorado suporte ao protocolo STX quando o Tipo de retorno for "!"
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=3427

-- ACBrECFFiscNET --
[*] Mtodos ArquivoMFD_DLL modificados para usar as DLLs padres da ZPM quando
    o modelo nao for Elgin e (TermoPrinter ou DataRegis)

Data: 15/10/2011
-- ACBrECFDaruma --
[*] Cdigo de ativao modificado para ficar mais segura a deteco de MFD
[*] Mtodos EspelhoMFD_DLL e ArquivoMFD_DLL modificados para no tentar
    descarregar a DLL da Memria. Melhora na re-ativao do ECF aps a execuo
    dos mtodos.   (por DSA)

Data: 10/10/2011
-- ACBrECFBematech --
[*] Mtodo CarregaFormasPagamento modificado para usar informao do Registrador
    49 nos modelos 25 e MFD, pois esse Registrador retorna corretamente a
    informao da Forma de Pagamento que permite ou no Vinculado

-- ACBrECFFiscNET --
[*] Mtodo ArquivoMFD_DLL modificado para efeetuar a Leitura da MF corretamente
    nos modelos Elgin e DataRegis
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=3346
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=2951
[+] Implementada a leitura da Venda Bruta no mtodo DadosReducaoZ (Por: Endrigo)

-- ACBrECFEpson --
[-] Mtodo CancelaCupom modificado para conseguir cancelar o cupom mesmo aps a
    impresso de Vrios Vinculados.
[+] Implementado Retorno Estendido em vrios mtodos.
[+] Classe Interna faz uso de Retorno Estendido para otimizar comunicao com o
    ECF.
[+] Implementado suporte para ArredondaItemMFD para os novos ECFs FBIII

-- ACBrETQ --
[*] Modificado o mtodo: ImprimirTexto, inserindo um novo Parmetro:
   ImprimirReverso : Boolean = False, por enquanto disponivel apenas no modelo:
   EPL2 ou PPLB.
   http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=3329


Data: 06/10/2011
-- ACBrECF --
[*] Removida a classe TACBrECFCodBarras, que era utilizada antes para Impresso
    de Cod.Barras na Daruma. Atualmente o Cod.Barras  melhor suportado pelas
    TAGs de Formatao (Veja Demo ECFTeste)

-- ACBrECFDaruma --
[*] Removido suporte para a Classe TACBrECFCodBarras

-- ACBrECFEpson --
[*] Rotina Ativar tenta detectar se o ECF est em 115200 ou 38400, j que as
    novas FBIII vem por default em 115200 e as antigas por default 38400
[-] Correo da exibio dos caracteres acentuados nas mensagens de erro
[*] Otimizao de comandos com parmetros numricos
[*] Mtodo DescontoAcrescimoItemAnterior ajustado para fazer uso do novo comando
    de Desconto/Acrescimo de Item Distante
[*] Mtodo CarregaFormasPagamento no mais tenta carregar todas as Formas de
    Pagamento no programadas. Ou seja, atualmente ele para na primeira mensagem
    "Tipo de pagamento no definido".
[*] Mtodo TraduzirTag modificado para permitir sobreposio de Tags de caracter
    como por exemplo: Negrito+Sublinhado
[*] Implemetado suporte as Tags de Cdigo de Barras


Data: 04/10/2011
-- ACBrECF --
[*] Acerto da string do Minas Legal conforme retificao da ER 1.09
    por: Rgys Silveira

Data: 26/09/2011
-- ACBrECF --
[*] Alterado o marcador de cupom mania para a ER 1.09
    por: Rgys Silveira


Data: 27/09/2011 
-- ACBrECFSwedaSTX --
[-] informao do numero de colunas diferente para este modelo
[-] informao padro do numero de colunas usados nas impresses PAF
    por: Juliomar Marchetti

Data: 26/09/2011
-- ACBrECF --
[+] Adicionado espelho do cupom no fiscal quando do cancelamento.
    por: Juliomar Marchetti

Data: 17/09/2011
-- ACBrECF --
[+] Adicionado suporte as Tags de Formatao: <ad></ad> e <ce></ce>. Exemplo:
    <ad>ALINHAR A DIREIRA</ad>
    <ce>CENTRALIZAR</ce>
[*] Parse de Tags melhorado para suportar caracteres "<",">" e "/" dentro da
    String envolvida pelas Tags

Data: 04/09/2011
-- ACBrECF --
[-] Melhorias na esttica do relatrio de configuraes do PAF-ECF
    (por: Rgys Silveira)

Data: 02/09/2011
-- ACBrECF --
[-] Implementao do relatrio de configuraes do Paf-ECF.
    (por: Rgys Silveira)

Data: 29/08/2011
-- ACBrECFDaruma --
[-] Acerto na definio do produto para a nova verso dll da daruma.
    (por: Rgys Silveira)

Data: 25/08/2011
-- ACBrECFDaruma --
[+] Adicionado modo pr-venda, funciona somente para impressoras MACH 1, 2 e 3
    ver o DemoDaruma na pasta projetos como funciona.
    (por: Rgys Silveira)

Data: 22/08/2011
-- ACBrECFDaruma --
[+] Adicionado propriedade RespostasComando com um set de campos de dados 
    retornados pela impressora fiscal.
    Ver o Demo ACBr Daruma para exemplos de como utilizar.
    (por: Rgys Silveira)

Data: 17/08/2011
-- ACBrECF --
[+] Adicionada propriedade no ACBrECF que permite montar o rodap do cupom 
    fiscal conforme a legislao do Paf-ECF, ver no DemoECF como proceder
    Obs.: O MD5 informado ficou a cargo da aplicao para que o usurio 
          tenha a liberdade de preenche-lo como quiser.
    (por: Rgys Silveira)

Data: 16/08/2011
-- ACBrECFDaruma --
[+] Adicionado a reimpresso do vinculado
[-] Corrigida a sobreposio do BMP promocional quando existe cdigo de barras.
    (por: Rgys Silveira)

Data: 05/08/2011
-- ACBrECFDaruma --
[+] Implementado recurso para que os dados da ultima reduo Z, alimente a 
    propriedade "DadosReducaoZClass", essa propriedade antes s conseguia ser 
    ultilizada para armazenar dados antes da emisso da reduo Z, esse recurso 
    s foi implementado para o ECF Daruma. (por: Isaque Pinheiro)

Nota: Aps a implementao desse recurso nos demais ECFs, o arquivo .INI 
      continua sendo gerado, mas de maneira bem mais eficaz, porque ter todos os 
      dados da class nele, o que j esta acontencedo com a Daruma.

Data: 18/07/2011
-- ACBrECFBematech --
[-] Acerto de bug no vendeitem para a impressora bematech mp20f1-II, estava 
    sendo enviado o comando com departamento "00", o que ocasiona erro de CMD
    invlido.
    (por: Rgys Silveira)

Data: 22/07/2011
-- ACBrSwedaSTX --
[+] Adicionado o suporte a tags de formatao para a sweda
    (por: Carlos Nascimento / Rgys Silveira)

Data: 18/07/2011
-- ACBrECF --
-- ACBrECFBematech --
[+] Adicionado o suporte a tags de formatao ao rodap do comprovante no fiscal
[+] Adicionado o suporte a cdigos de barras por tags para a bematech
    (por: Rgys Silveira)

Data: 17/07/2011
-- ACBrECF --
[+] Adicionada a propriedade PaginaDeCodigo. Se o seu valor for diferente de 0
    o componente sempre far a traduo para a pgina de cdigo do ECF (por DSA)

[+] Adicionado suporte a pgina de cdigo do ECF. O componente agora aceita
    caracteres acentuados e os traduz para a pgina de cdigo nativa do ECF.
    A leitura da resposta tambm  interpretada e traduzida para o comando de
    String nativo do Delphi/Lazarus (Ansi ou UTF8)   (por DSA)

[+] Adiconado suporte as TAGs de formatao em: Epson e FiscNet  (por DSA)

Data: 14/07/2011
-- ACBrECFDaruma --
[+] Formatao de fontes do relatrio gerencial e rodap do cupom fiscal
    ver no Demo do ACBrECF como utilizar as tags
    - j funcionando para Daruma completo e Bematech somente a formatao
    (por: Rgys Silveira)

Data: 12/07/2011
-- ACBrECFDaruma --
[+] Carga do bitmap promocional
    (por: Rgys Silveira)

Data: 12/07/2011
-- ACBrSwedaSTX --
[+] Numero de srie do MFD
[+] Submodelo do ECF
[*] Melhoria na impresso da linha do gerencial
    (por: Carlos Nascimento)

Data: 11/07/2011
-- ACBrECF --
[*] Acerto para que o cancelamento parcial seja mostrado na bobina do ACBrECF
    (por: Rgys Silveira)

Data: 30/06/2011
-- ACBrECFDaruma --
[+] Mtodo para cancelamento de item no fiscal
[+] Mtodo para impresso da segunda via do Comprovante no fiscal
[+] Indice do bitmap promocional em todos os comprovantes fiscais e no fiscais
    j funcionando na Daruma.
[+] Dados do cliente no comprovante no fiscal.
[-] Acertos gerais da Daruma.
    (por: Rgys Silveira)

Data: 29/06/2011
-- ACBrECFDaruma --
[-] Acerto nas mensagens de erro do mtodo ArquivoMFD_DLL.
    (por: Rgys Silveira)

Data: 28/06/2011
-- ACBrECFDaruma --
-- ACBrECF --
-- ACBrECFSwedaSTX --
-- ACBrECFSweda --
-- ACBrECFEpson --
[*] Acerto para funcionamento em Linux.
    (por: Carlos Nascimento Filho)

Data: 28/06/2011
-- ACBrECFDaruma --
[*] Alterao para utilizar a nova DLL da Daruma, testes realizados junto ao 
    pessoal da Daruma utilizando a DLL disponibilizada no site.
    (por: Rgys Silveira)

Data: 20/06/2011
-- ACBrECFDaruma --
[-] Acerto no mtodo de identificao do ECF, para guardar os valores tambm
    no registro do windows, algumas funes da dll Daruma buscam desse local
    a identificao do ECF.
    (por: Rgys Silveira)

-- ACBrECFBematech --
[-] Acerto no flag de desconto do issqn para impressoras matriciais.
[-] Acerto no subModelo do ECF para impressoras matriciais, esse retorno 
    no existe nelas.
    (por: Rgys Silveira)

Data: 03/06/2011
-- ACBrECFClass --
[*] A class "TACBrECFDAV" e "TACBrECFDAVs" foi movida para ACBrPAFClass 
    (por: Isaque Pinheiro)

Data: 02/06/2011
-- ACBrECFDaruma --
[-] Corrigida interpretao de Flag de Pouco Papel em Daruma MFD (por: DSA)

Data: 01/06/2011
-- ACBrECF --
[+] Implementado mtodo: DescontoAcrescimoItemAnterior nos modelos:
    ACBrECFBematech, ACBrECFDaruma, ACBrECFFiscNet, ACBrECFEpson,
    ACBrECFSwedaSTX

-- ACBrECFBematech --
[-] Corrigido calculo do Valor do Desconto, em VendeItem, quando o mesmo era
    informado em Porcentagem

-- ACBrECFSwedaSTX --
[-] Corrigida rotina de busca de Aliquota por Indice.
    (por: Fernando Gutierres Damaceno)

-- ACBrTER --
[+] Implemetado mtodo: ACBrTER.LeBalanca (por: Marcelo Ferreira)
[+] Novo Projeto de Demonstrao e Exemplo (por: Marcelo Ferreira)

Data:  12/05/2011
-- ACBrECF --
[*] Modificada a rotina de Verificao de Valor do GT que trabalha em conjunto 
    com o componente ACBrAAC, para suportar a Recuperao do valor do GT (por: DSA)
[*] Cabealho padro dos Itens desenhados na Bobina, com 14 caracteres, para 
    suportar a exigncia do PAF-ECF (por: DSA)

Data:  10/05/2011
-- ACBrECF --
[+] Adicionado TotalICMS e TotalISSQN nos dados da Reduo Z. Mantis #945 (sugesto de Allan Wolski)

Data:  10/05/2011
-- ACBrECF --
[+] Padronizao de cdigo usando funo "PathWithDelim", alertado 
    (por Vanderlei).

Data:  09/05/2011
-- ACBrECF --
[+] Adicionada a propriedade PathDLL, que permite informar o caminho das DLL
    de cada fabricante (por Isaque Pinheiro)
    ex:

    case ACBrECF.Modelo of
       ecfNenhum:    ACBrECF.ECF.PathDLL := '';
       ecfBematech:  ACBrECF.ECF.PathDLL := '.\DLLs\Bematech';
       ecfSweda:     ACBrECF.ECF.PathDLL := '.\DLLs\Sweda';
       ecfDaruma:    ACBrECF.ECF.PathDLL := '.\DLLs\Daruma';
       ecfFiscNET:   ACBrECF.ECF.PathDLL := '';
       ecfYanco:     ACBrECF.ECF.PathDLL := '';
       ecfDataRegis: ACBrECF.ECF.PathDLL := '';
       ecfUrano:     ACBrECF.ECF.PathDLL := '';
       ecfEpson:     ACBrECF.ECF.PathDLL := '';
    end;

Data:  09/05/2011
-- ACBrAAC --
[*] Componente ACBrAAC volta para o Package ACBrComum, para poder ser usado por
    ACBrECF e ACBrPAF.. (por: DSA)   
    ** NOTA: Isso exige a completa re-instalao dos Packages ACBrComum e ACBrSerial

Data:  07/05/2011
-- ACBrECF --
[+] Adicionada a propriedade EAD, que permite ligar o componente ACBrECF a
    um componente ACBrEAD j existente. Isso evita a necessidade de programao
    dos eventos de Captura das Chaves em vrios componentes, alm de carregar 
    apenas uma vez o OpenSSL na memria (por: DSA)

-- ACBrECFDaruma --
[-] Corrigido mtodo de abertura de Porta Serial pela DLL (por: DSA)

-- ACBrECFUrano --
[+] Adicionado comando de abertura de gaveta (por: Ivan) 

-- ACBrTER --
[-] Corrigido Bug na Leitura da Resposta dos Terminais (por: marcelo_sp)
[+] Adicinado programa Demo para Delphi (por: marcelo_sp)

Data:  05/05/2011
-- ACBrAAC --
[+] - Novo componente ACBrAAC (Arquivo Auxiliar Criptografado), que permite
      criar e manter o Arquivo.Auxiliar de acordo com as exigncias do PAF-ECF,
      deve ser usado em conjunto com o componente ACBrECF.
[*] Demo: ECFTeste.lpi (Lazarus) modificado para demonstrar o funcionamento do
    componente ACBrAAC... (verso em Delphi a fazer)

-- ACBrECF --
[+] - Nova Propriedade AAC, que permite interligar o componente ACBrECF com o
      componente ACBrAAC
[*] - Limpeza e ajuste de cdigo

Data:  26/04/2011
-- ACBrECF --
[-] - Acerto no mtodo de gerao do menu fiscal LMFC Ato Cotepe 17/04
      Por: Rgys Silveira

Data:  25/04/2011
-- ACBrECF --
[-] - Acerto no mtodo de retorno da data e hora do SB, segunda a bematech
      este comando s deve ser utilizado quando a impressora estiver livre
      em outras situaes causa erro.
      Por: Rgys Silveira

Data:  21/04/2011
-- ACBrECF --
[*] - Remoo de comentrios desnecessrios dos fontes (limpeza)
[*] - Propriedade Cliche passou a ser AnsiString para suportar os caracteres de
      controle (expandido, negrito, etc)

-- ACBrECFBematech --
[-] - Corrigido retorno de GetSubTotal, quando documento  Comprovante NAO
      fiscal
[-] - Corrigido retorno de GetTotalPago, quando o documento  Comprovante NAO
      fiscal para ECFs MFD ou MP25

Data:  13/04/2011
-- ACBrECF --
[*] - Alterao no relatrio de "DAV Emitidos" para o novo roteiro de testes
      Por: Rgys Silveira

Data:  09/04/2011
-- ACBrECF --
[-] - Na funco "TACBrECF.GetMFAdicional: String;", mudei a var "Letra: Char"
      para "Letra: AnsiChar", por incompatibilidade com o D2010.
      por: Isaque Pinheiro

Data:  23/03/2011
-- ACBrECF --
[*] - Alterao no relatrio do menu fiscal meio de pagamento para acumular 
      por data e descricao da finalizadora.
      Por: Rgys Silveira

Data:  22/03/2011
-- ACBrECF --
[*] - Acertos nos relatrios do menu fiscal do paf-ecf para ficar conforme 
      pedido dos homologadores.
      Por: Rgys Silveira

Data:  18/03/2011
-- ACBrECF --
[*] - Adicionados novos mtodos para auxiliar no menu fiscal do paf-ecf:
        * PafMF_LX_Impressao;
        * PafMF_LMFC_Impressao;
        * PafMF_LMFC_Espelho;
        * PafMF_LMFC_Cotepe1704;
        * PafMF_LMFS_Impressao;
        * PafMF_LMFS_Espelho;
        * PafMF_MFD_Espelho;
        * PafMF_MFD_Cotepe1704;
        * PafMF_RelMeiosPagamento;
        * PafMF_RelDAVEmitidos;
        * PafMF_RelIdentificacaoPafECF.
    - Novo mtodo para assinar arquivos com EAD:
        * AssinaArquivoComEAD.
    - Adicionados novos eventos para assinatura de arquivos pelo ACBrECF, 
      funcionam idnticos aos do componente ACBrPAF
        * OnPAFCalcEAD;
        * OnPAFGetKeyRSA.
      Por: Rgys Silveira     

Data:  15/03/2011
-- ACBrECF --
[*] - Adicionado novo parmetro ao mtodo ArquivoMFD_DLL para dizer a 
      finalidade da gerao do arquivo, se foi gerado pelo menu fiscal
      LMFC ou pelo menu fiscal Arq.MFD.
      Por: Rgys Silveira

Data:  13/03/2011
-- ACBrETQ --
[+] - Adicionado suporte a novo protocolo EPL2 (que  igual ao PPLB)
      Por: Jos Lus Schiavo  e DSA
[*] - Modificada a assinatura do mtodo: CarregarImagem, para:
      CarregarImagem(AStream : TStream; NomeImagem: String;
            Flipped : Boolean = True; Tipo: String = 'BMP' ); overload;
      Pois alguns modelos de Impressoras suportam imagens diferentes de BMP e
      no suportadas pelo Delphi. A mudana tambm permitira o uso desse mtodo
      em aplicaes console
[+] - Adicionado o mtodo: CarregarImagem(ArquivoImagem, NomeImagem:
                                          String; Flipped : Boolean = True  )
      (Uma sobrecarga do mtodo j existente)
[+] - Adicionada a propriedade "DPI", que permite informar ao ACBrETQ,
      quantas DPI o equipamento comandado suporta. Dessa maneira  possvel
      utilizar unidades de medida em Milimitros ou Polegadas mesmo em modelos
      EPL2 e PPLB (que originalmente s suportam medidas em Dots)
[*] - Aplicao Demo - ETQTeste, modificada para melhor exemplifiar as novas
      funcionalidades

Verso 1.0.0  10/03/2011
-- ACBrECFDaruma --
[*] - Mtodo ReducaoZ usa a data/hora do prprio ECF ao invez da data/hora do
      micro, se a mesma no for informada

-- ACBrECFFiscNet --
[-] - Mtodo FechaCupom corrigido para funcionar corretamente com Fechamento
      contendo Observaes e a Identificao do Operador

Verso 1.0.0  09/03/2011
-- ACBrECF --
[*] - Eventos OnAntesSubtotalizaCupom, OnDepoisSubtotalizaCupom e 
	OnErrorSubtotalizaCupom No estavam declarados.


Verso 1.0.0  19/02/2011
-- ACBrDevice --
[+] - Adicionado mtodo:
         ACBrDevice.AcharPortasSeriais(const AStringList : TStrings ;
            UltimaPorta : Integer) ;
      que preenche a Lista de String com as portas existentes do S.O.

-- ACBrECF --
[*] - Mtodo ACBrECF.AcharECF agora faz uso de ACBrDevice.AcharPortasSeriais,
      agilizando muito a busca.

Verso 1.0.0  01/02/2011
-- ACBrRFD --
[*] - Modificado para usar o novo componente ACBrEAD, que permite efetuar a
      assinatura digital de forma muito mais eficiente e segura (leia mais em
      ACBrComum-change-log.txt)
    - No Delphi isso causar a dependencia esttica da DLL libeay32.dll em todos
      os programas que usem os componentes ACBrECF ou ACBrRFD..
    - A DLL pode ser encontrada em: ACBr\DLLs\OpenSSL
    - Copie-a para a pasta do seu executvel.

-- ACBrECFDaruma --
[-] Modificadas as chamadas da DLL, removendo o typecast de PAnsiChar(),
    conforme relatado em:
    http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=567
[-] Corrigido problema de Leitura de Aliquotas com 0 na FS345

Verso 1.0.0  24/12/2010
-- ACBrECF --
[+] Novos Eventos para acompanhar as operaes bsicas do ECF, Exemplo:
   OnAntesAbreCupom, OnDepoisAbreCupom, OnErrorAbreCupom, etc
   (por: Franklin e Elton)

[+] Adicionadas propriedades:
     - "NumGNFC"  o "Contador de Operao No Fiscal Cancelada" armazenando 
    o nmero de cupons de Operaes No Fiscais que foram cancelados;
     - "NumCFD"  o "Contador de Fita-Detalhe Emitida";
     - "NumNCN"  o "Contador de Dbito ou Crdito no Emitidos", ou seja, os
    Comprovantes de Dbito ou Crdito (CDC) que no foram emitidos. Em geral,
    ao fazer uma venda com forma de pagamento que permite CDC, mas no se emita
    um CDC no final, esse contador  incrementado;
     - "NumCCDC"  o "Contador de Dbito ou Crdito Cancelados", ou seja, cada
    CDC cancelado  contado nesse registrador;
     - "TotalCancelamentosOPNF", "Total das Operaes No Fiscais Canceladas"
    Exemplo, ao cancelar uma Sangria ou Suprimento;
     - "TotalDescontosOPNF", "Total dos Descontos nas Operaes No Fiscais";
     - "TotalAcrescimosOPNF","Total dos Acrscimos nas Operaes No Fiscais";
     - "ParamDescontoISSQN",  o parmetro da impressora que define se o 
    Desconto em ISSQN est (ou no) habilitado; (por: Elton)

[*] Modificado GetDadosReducaoZ para retornar dados das novas propriedades
    acima. Tambm foram adicionadas propriedades j implementadas que no 
    estavam saindo no INI mas so requeridos pelo PAF, a saber:
     - "NumGNF", "Contador Geral de Operaes No Fiscais";
     - "NumCCF", "Contador de Cupom Fiscal";
     - "NumCDC", "Contador de Comprovantes de Dbito ou Crdito";
     - "NumGRG", "Contador Geral de Relatrio Gerencial";
     - "NumCFC", "Contador de Cupom Fiscal Cancelado";
     (por: Elton)

[*] Modificado GetDadosReducaoZ, onde TotalISSQN estava retornando valor 
    incorreto. Na verdade, estava retornando o valor
     necessria averiguao de valor correto. (por: Elton)

[*] Mtodo "LinhaRelatorioGerencial" agora suporta impresso de Longos 
    Gerenciais abrindo um Novo Gerencial se necessrio (caso o ECF o tenha 
    fechado por TimeOut de 2 minutos)  (por: DSA)

-- ACBrECFBematech --
[+] Implementados mtodos "GetParamDescontoISSQN", "GetNumGNFC", "GetNumCFD", 
    "GetNumNCN", "GetNumCCDC", "GetTotalAcrescimosOPNF", 
    "GetTotalCancelamentosOPNF" e "GetTotalDescontosOPNF". Veja propriedades
    adicionadas no ACBrECF acima. (por: Elton)

[*] Corrigido mtodo RetornaInfoECF para refletir melhor as informaes das 
    impressoras atuais. Por padro agora  chamado nos lugares em que se 
    precisa buscar as informaes da funo "Retorno de Variveis" (ESC 35).
    (por: Elton)

[*] GetDadosUltimaReducaoZ foi modificada para retornar os dados possibilitados
    pelas impressoras MFD no comando novo (ESC 88). (por: Elton)


Verso 0.9.6  11/09/2010
-- ACBrECF --
[-] Corrigido rotina VendaItem, para Daruma FS345, quando quantidade do item 
    tem 3 casas decimais (Isaque Pinheiro).
	
27/08/2010
-- ACBrBal --
[*] Novo modelo de balana adicionado, LucasTec. (por Joo Paulo)

Verso 0.9.6  15/07/2010
-- ACBrRFD --
[*] Modificado para utilizar classe TACBrEAD ao assinar arquivos com EAD
    (por: Elton da Motta Barbosa)


Verso 0.9.6  05/07/2010
-- ACBrETQ --
[+] Adicionada a Propriedade "Unidade" para indicar milimetros/polegadas
    (por: Alexsander da Rosa)

-- Synapse --
[*] Aplicadas correoes da reviso 129 do SVN do Projeto Synapse
    (Melhorada Compatibilidade com MacOS)

-- ACBrUtil --
[*] Revisto dependencias e compatibilidade com Lazarus/FPC
[*] Mtodo WriteToTXT modificado para usar TFileStream ao invez de AssignFile.

-- ACBrDevice --
[*] Metodo EnviaString modificado para usar TFileStream ao invez de AssignFile,
    quando a diretiva  {$DEFINE Use_Stream} estiver declarada (por enquando
    apenas no Lazarus/FPC, uma vez que o AssigneFile no funciona corretamente
    no Lazarus/FPC em algumas ocasies)

Verso 0.9.6  10/06/2010
-- ACBrECF --
[*] Modificado parmetros dos mtodos EspelhoMFD_DLL e ArquivoMFD_DLL de String
    para AnsiString para compatibilidade com o delphi2010
    (por:Fernando Gutierres Damaceno)

-- ACBrECFBematech --
[*] Modificado parmetros dos mtodos EspelhoMFD_DLL e ArquivoMFD_DLL de String
    para AnsiString para compatibilidade com o delphi2010
    (por:Fernando Gutierres Damaceno)

-- ACBrECFClass --
[*] Modificado parmetros dos mtodos EspelhoMFD_DLL e ArquivoMFD_DLL de String
    para AnsiString para compatibilidade com o delphi2010
    (por:Fernando Gutierres Damaceno)

-- ACBrECFDaruma --
[*] Modificado parmetros dos mtodos EspelhoMFD_DLL e ArquivoMFD_DLL de String
    para AnsiString para compatibilidade com o delphi2010
    (por:Fernando Gutierres Damaceno)

-- ACBrECFEpson --
[*] Modificado parmetros dos mtodos EspelhoMFD_DLL e ArquivoMFD_DLL de String
    para AnsiString para compatibilidade com o delphi2010
    (por:Fernando Gutierres Damaceno)

-- ACBrECFFiscNet --
[*] Modificado parmetros dos mtodos EspelhoMFD_DLL e ArquivoMFD_DLL de String
    para AnsiString para compatibilidade com o delphi2010
    (por:Fernando Gutierres Damaceno)

-- ACBrECFSweda --
[*] Modificado parmetros dos mtodos EspelhoMFD_DLL e ArquivoMFD_DLL de String
    para AnsiString para compatibilidade com o delphi2010
    (por:Fernando Gutierres Damaceno)

-- ACBrECFSwedaSTX --
[+] Implementado mtodo EspelhoMFD_DLL
    (Implementado por Magno System na Sweda e replicado para SwedaSTX por 
     Fernando Gutierres Damaceno)

[+] Implementado mtodo ArquivoMFD_DLL
    (Implementado por Magno System na Sweda e replicado para SwedaSTX por 
     Fernando Gutierres Damaceno)

[-] Corrigido mtodo AchaICMSAliquota  
    (por:Fernando Gutierres Damaceno)

[-] Corrigido mtodo VendeItem.
    (por:Fernando Gutierres Damaceno)


Verso 0.9.5  01/06/10
-- ACBrECFSwedaSTX --
[-]    Corrigida leitura do mtodo GetDataMovimemto
        (por: Fernando Gutierres Damaceno)

Verso 0.9.4b  26/05/10
-- ACBrECF --
[-]    Corrigido mtodo AchaICMSAliquota( Aliquota: Double; Tipo : Char ) em
       D2010  (por: Eduardo Martins)

-- ACBrECFSwedaSTX --
[+]    Implementado mtodo IdentificaOperador (por: Fernando Gutierres Damaceno)
        
Verso 0.9.3b  24/05/10
-- ACBrECF --
[+]    Adicionada propriedade com numero de verso especfico

-- ACBrECFDaruma --
[-]    Corrigido retorno de TotalPago no modelo FS345 (por: Andr Faria)

-- ACBrECFSwedaSTX --
[*]    Corrigido alguns Warnings e Hints de Compilao

Verso 0.9.2b  19/05/10
-- ACBrECFSwedaSTX --
[+]    Implementado o restante dos mtodos da Classe SwedaSTX, agora  possvel
       usar as Swedas MFD com este novo protocolo, muito mais rpido e otimizado.
       (por: Fernando Gutierres Damaceno)
-- ACBrECFBematech --
[*]    Corrigido bug em ArquivoMFD_DLL, durante a captura da Data de Inicio
       (Por: Magno System)
-- ACBrECF --
[*]    Metodos: AchaCNFDescricao, AchaFPGDescricao, AchaRGDescricao modificados
       com a incluso do Parametro: IgnorarCase : Boolean = True
       Se nao for especificado, assume True como Default. Se For True, no faz
       distino de Maiusculas e Minusculas na Busca

Verso 0.9.1b  03/05/10
-- ACBrECF --
[-]    DadosReducaoZ: Corrigido Retorno dos Indices de Aliquotas de ICMS e ISS
        (por: Fernando Gutierres Damaceno) 
[*]    Metodos "LinhaRelatorioGerencial" e "LinhaCupomVinculado" modificados
       para respeitar corretamente a propriedade "MaxLinhasBuffer"
        
Verso 0.9.0b  21/04/10
-- ACBrECF --
[+]    Implementado propriedade "TotalTroco" para buscar e guadar o total do 
       troco nos ECFs.
[+]    Implementado propriedade "TotalTroco" na class "TACBrECFDadosRZ"

Verso 0.8.9b  03/04/10
-- ACBrECFDaruma --
[-]    Corrigido Bug no mtodo "UsuarioAtual", no carregava o numero do usurio 
       atual no modelo FS345. (Por Isaque Pinheiro)
	   
Data: 25/03/2010 
-- ACBrECFMecaf --
[+] Implementado mtodo GETNUMCCF (por Jos Nilton Pace)

Verso 0.9.0a  16/03/10
-- ACBrECF --
[*]    Propriedade renomeada de "ReducaoZClass" para "DadosReducaoZClass" 
       para ficar compativel com os nomes das outras propriedades "DadosReducaoZ"
       e "DadosUltimaReducaoZ". (por : Isaque Pinheiro)

Verso 0.9.0a  14/03/10
-- ACBrECF --
[-]    Correo de vazamento de memoria em TACBrECFDadosRZ  (por: DSA)

Verso 0.9.0a  13/03/10
-- ACBrECF --
[+]    Criada uma nova class "TACBrECFDadosRZ" para armazenar todas as informaes
       da Reduo Z, centralizando os dados e melhorando a captura do dados, que
       hoje esta sendo feita atravs de TXT. A Class esta sendo alimentada no 
       mtodo "GetDadosReducaoZ", para demonstrar como armazenar os dados nela.
       A implementao no mtodo "GetDadosUltimaReducaoZ", dever ser implementada
       em cada modelo, baseado no mtodo "GetDadosReducaoZ" que est implementado.
       por (Isaque Pinheiro)

Verso 0.8.9b  25/02/10
-- ACBrECF --
[*]    Aplicada otimizao no Fechamento de Cupom quando o ACBrECF est associado
       a geraao de Bobina grfica. (Por: Lampada)
       
Verso 0.8.9b  24/02/10
-- ACBrECFBematech --
[-]    Corrigido Bug no mtodo "CarregaAliquotas", que no carregava todas
       aliquotas se houvesse alguma cadastrada com o valor 0.
       Por:  cristian.custodio


Verso 0.8.9b  16/02/10
-- ACBrECFEpson --
[+]    Implementado mtodos, CarregaRelatoriosGerenciais e
        ProgramaRelatorioGerencial    Por: WagnerPV
[*]    Sobrecarga no mtodo AchaCNFDescricao para considerar a busca por
       "SUPRIMENTO" como "FUNDO DE TROCO" que j  pr-programado na Epson.
       Por: WagnerPV

-- ACBrECFBematech --
[-]    Corrigido Bug no mtodo "CortaPapel" (no funcionava)

Verso 0.8.9b  12/02/10
-- ACBrECF --
[-]    Modificado HTML em MemoTitulo para exibir corretamente centralizado
       titulo do documento

-- ACBrECFDaruma --
[*]    AbrePortaSerialDLL modificada, chave ControlePorta passa a gravar valor 0
       - Adicionada a gravao da chave ECF, Path

-- ACBrECFEpson --
[-]    Corrigido bug em GetTotalIsencao. por: Jos Nilton Pace
[-]    Corrigida ordem da deteco de Estado quando usando o Flag de Pagamento

-- ACBrECFFiscNET --
[-]    Corrigida ordem da deteco de Estado quando usando o Flag de Pagamento


Verso 0.8.9b  08/02/10
-- ACBrECFEpson --
[*]    Modificada deteco de estado do ECF Epson. Aps o envio do comando de
       SubtotalizaCupom, sem Desconto ou Acrescimo, o estado ainda permanecia em
       estVenda pois esse ECF no efetua a subtotalizao com valor 0.

Verso 0.8.9b  26/11/09
-- ACBrValidador --
[*]    Formatao de Inscrio Estadual modificada para inserir zeros a esquerda
       quando Documento estiver incompleto. (Por: Maico)
       http://acbr.sourceforge.net/mantis/view.php?id=421

-- ACBrUtil --
[+]    Adicionada:
       Procedure FindFiles( const FileMask : String; AStringList : TStrings;
                            IncludePath : Boolean = True ) ;

       
Verso 0.8.9b  24/11/09
-- ACBrECFDaruma --
[-]    Corrigida sintaxe dos comandos LerTotaisFormaPagamento e
       LerTotaisComprovanteNaoFiscal. Removido [CR] no final do comando.
       Que causavam Erro Estendido: (24) "Erro no verificador da comunicao"
       no modelo FS700             (Por DSA)

Verso 0.8.9b  23/11/09
-- ACBrETQ --
[+]    Implementado mtodo:        (Por DSA)
       CarregarImagem( MonoBMP : TBitmap; NomeImagem: String; Flipped : Boolean = True);

[+]    Adicionada Propriedade "LimparMemoria: Boolean". 
       Se For "True" (default), Limpa a memoria RAM a cada chamada do mtodo "Imprimir"

[+]    Implementado mtodo:        (Por Anderson Rogerio Bejatto)
       ImprimirImagem(MultiplicadorImagem, Linha, Coluna: Integer; NomeImagem: String);

[*]    Demo ETQTeste modificado para demonstrar os mtodos de Imagem
       
Verso 0.8.9b  16/11/09
-- ACBrECF --
[*]    Reviso das chamadas dos mtodos que usam a DLL, substituindo declaraes
       de "String" para "AnsiString" para compatibilizar com D2009 e Lazarus

-- ACBrECFDaruma --
[+]    Implementado EspelhoMFD_DLL e ArquivoMFD_DLL por COO e Data, usando carga
       dinmica da DLL    (Por: Luiz Arlindo e DSA)
       (Testes sem sucesso... Estou em contato com o suporte da Daruma (DSA))


Verso 0.8.9b  12/11/09
-- ACBrECF --
[+]    Adicionada a assinatura do mtodo:
       Procedure DescontoAcrescimoItemAnterior(
         ValorDescontoAcrescimo : Double = 0; DescontoAcrescimo : String = 'D' ) ;
       ( porm ainda no foi implementado em nenhuma Classe )
[*]    Calculo do Total do Item Vendido apresentado na bobina, usa TruncFix ao
       invez de Round(N,0) quando o ECF Truncar

-- ACBrECFBematech --
[+]    Implementado ArquivoMFD_DLL por COO usando carga dinmica da DLL, e um
       mecanismo para detectar a Data Inicial e Final equivalentes ao COO
       Inicial e Final     (Por: Luiz Arlindo)

-- ACBrECFFiscNET --
[-]    Corrigido problema quando informando parmetros String com Cararteres de
       controle suportados pelo ECF (Ex: /xB1)

-- ACBrRFD --
[*]    Calculo do Total do Item Vendido, usa TruncFix ao invez de Round(N,0)
       quando o ECF Truncar


Verso 0.8.9b  04/11/09
-- ACBrECFBematech --
[+]    Implementado ArquivoMFD_DLL por Periodo usando carga dinmica da DLL.
       No h funo disponvel na DLL para efetuar a Leitura por COO
       (Por: Luiz Arlindo e DSA)

Verso 0.8.9b  03/11/09
-- ACBrECF --
[*]    VendeItem: Implementado tratamento para uso de aliquotas do ISSQN
       SI = Isento ISSQN;
       SN = Nao Incidencia ISSQN;
       SF = Subst.Tributria ISSQN;

       Os Valores abaixo, quando informados, sero convertidos:
      { IS1, IS2 = "SI";   FS1, FS2 = "SF";   NS1, NS2 = "SN" }

      Classes revisadas: Bematech, Daruma, Sweda, Epson, FiscNET

[+]    Implementadas propriedades para Leitura de Totais por ISSQN
       ( Por: Marciano Lizzoni )
        Property TotalCancelamentosISSSQN         : Double ;
        Property TotalDescontosISSQN              : Double ;
        Property TotalAcrescimosISSQN             : Double ;
        Property TotalSubstituicaoTributariaISSQN : Double ;
        Property TotalNaoTributadoISSQN           : Double ;
        Property TotalIsencaoISSQN                : Double ;

-- ACBrECFFiscNet --
[-]    Correo do mtodo GetUsuarioAtual (por M.Ivan)
[+]    Implementao dos mtodos:         (por M.Ivan)
         GetTotalCancelamentosISSSQN, GetTotalDescontosISSQN,
         GetTotalAcrescimosISSQN, GetTotalSubstituicaoTributariaISSQN,
         GetTotalNaoTributadoISSQN, GetTotalIsencaoISSQN

-- ACBrECFDaruma --
[+]    Implementao dos mtodos:         (por M.Ivan)
         GetTotalCancelamentosISSSQN, GetTotalDescontosISSQN,
         GetTotalAcrescimosISSQN, GetTotalSubstituicaoTributariaISSQN,
         GetTotalNaoTributadoISSQN, GetTotalIsencaoISSQN

-- ACBrECFSweda --
[+]    Implementao dos mtodos:         (por Isaque Pinheiro)
         GetTotalCancelamentosISSSQN, GetTotalDescontosISSQN,
         GetTotalAcrescimosISSQN, GetTotalSubstituicaoTributariaISSQN,
         GetTotalNaoTributadoISSQN, GetTotalIsencaoISSQN

-- ACBrECFBematech --
[+]    Implementao dos mtodos:         (por Isaque Pinheiro)
         GetTotalCancelamentosISSSQN, GetTotalDescontosISSQN,
         GetTotalAcrescimosISSQN, GetTotalSubstituicaoTributariaISSQN,
         GetTotalNaoTributadoISSQN, GetTotalIsencaoISSQN

-- ACBrECFEpson --
[+]    Implementao dos mtodos:         (por: DSA)
         GetTotalCancelamentosISSSQN, GetTotalDescontosISSQN,
         GetTotalAcrescimosISSQN, GetTotalSubstituicaoTributariaISSQN,
         GetTotalNaoTributadoISSQN, GetTotalIsencaoISSQN

Verso 0.8.9b  29/10/09 (DSA)
--ACBrValidador --
[+]    Adicionado mtodo: FormatarIE( AString, UF : AnsiString ) : AnsiString ;
[*]    Erro de Validao de Documento vazio, retorna mensagem especificando o
       Nome do Tipo do Documento

-- ACBrECF --
[*]    Mtodo VendeItem, quando associado ao desenho de uma "Bobina", considera
       o Flag de Arredondamento do ECF para calcular o Total do Item

Verso 0.8.9b  27/10/09
-- ACBrECFNaoFiscal --
[+]    Adicionada vrias propriedades e mtodos (Por Ivan Moreira)
        NumGNF, NumGRG, NumCDC, NumCER, GrandeTotal, VendaBruta, UsuarioAtual,
        Cliche, DataHoraSB, SubModeloECF, TotalSubstituicaoTributaria,
        TotalNaoTributado, TotalIsencao
[+]    Alterao do tamanho do NumSerie.

Verso 0.8.9b  26/10/09
-- ACBrBAL --
[+]    Adicionado novo Modelo "balUrano" (por: Ivan Carlos Martello)

Verso 0.8.9b  23/10/09 (DSA)
[*]    Mtodo LeituraMFDSerialDLL renomeado para EspelhoMFD_DLL para melhor
       compreenso no PAF-ECF
[+]    Adicionado novos mtodos para obter o Arquivo MFD (Ato Cotepe 17/04)
    Procedure ArquivoMFD_DLL( DataInicial, DataFinal : TDateTime;
       NomeArquivo : String; Documentos : TACBrECFTipoDocumentoSet = [docTodos]  ) ; overload ;
    Procedure ArquivoMFD_DLL( COOInicial, COOFinal : Integer;
       NomeArquivo : String; Documentos : TACBrECFTipoDocumentoSet = [docTodos]  ) ; overload ;

-- ACBrECFEpson --
[+]    Implementado ArquivoMFD_DLL por Periodo e COO usando carga dinmica da DLL.
       Nos testes realizados no foi possivel efetuar a Leitura por COO (Erro 1)

-- ACBrECFSweda --
[+]    Implementado ArquivoMFD_DLL por Periodo e COO usando carga dinmica da DLL.
       (por Magno System)

Verso 0.8.9b  21/10/09
-- ACBrECF --
[+]    Adicionada a propriedade ACBrECF.DaraHoraSB : TDateTime   ( por Ivan Moreira )
       Retorma a Data e Hora do Software Bsico. Para facilitar no PAF-ECF.
	   Implementada para os Modelos: Sweda, Epson e Daruma;

[+]    Adicionada a propriedade ACBrECF.SubModeloECF : String   ( por Ivan Moreira )
       Retorma o Modelo do ECF. Para facilitar no PAF-ECF.
	   Implementada para os Modelos: Sweda, Bematech, Epson, FiscNet e Daruma;

-- ACBrECFBematech --
[+]    Implementado LeituraMFDSerialDLL por periodo e COO usando carga dinmica
        da DLL  (DSA)

-- ACBrECFSweda --
[*]    Adicionada Sleep(1000) no mtodo FechaCupom, Se o modelo for Matricial (JNP)
[+]    Implementado LeituraMFDSerialDLL por periodo e COO usando carga dinmica
        da DLL  (por Magno System)

Verso 0.8.9b  20/10/09 (DSA)
-- ACBrECF --
[+]    Implementados mtodos para permitir o uso da DLL do fabricante na Leitura da MFD
	   Implementao nas classes filhas *DEVE* usar carga dinmica da DLL, para no criar
	   dependncia Esttica da DLL do fabricante no componente.
	   (Veja o exemplo de implementao na Classe ACBrECFEpson.pas )
	   
    Procedure LeituraMFDSerialDLL( DataInicial, DataFinal : TDateTime;
       NomeArquivo : String; Documentos : TACBrECFTipoDocumentoSet = [docTodos]  ) ; overload ;
    Procedure LeituraMFDSerialDLL( COOInicial, COOFinal : Integer;
       NomeArquivo : String; Documentos : TACBrECFTipoDocumentoSet = [docTodos]  ) ; overload ;

-- ACBrECFBematech --
[-]    Corrigido calculo do intervalo tempo de Espera em LeituraMFDSerial por COO

-- ACBrECFEpson --
[+]    Implementado LeituraMFDSerialDLL por periodo e COO usando carga dinmica da DLL

-- ECFTeste --
[+]    Adicionado opo no Menu "Relatrio -> Leitura MFD Serial DLL"

-- ACBrCalculadora --
[*]    Criao do Form do Componente modificada para usar Owner como Application ao
       invez de Nil
   

Verso 0.8.9b  17/10/09 (DSA)
--ACBrValidador --
[*]    ACBrValidador.MsgErro agora usa ACBrStr() para converso de UTF8 se
       necessrio

-- Lazarus --
[+]    Incluso de Novo Form LCalculadora.pas especfico para Lazarus, usando
       OptimalFill no Display
[*]    Ajuste no nmero de verso do Package

-- ACBrUtil --
[*]    Adicionado Parmetro "RaiseExceptionOnFail" na Procedure
       DeleteFiles(const FileMask: String; RaiseExceptionOnFail : Boolean = True)  ;
       Se for informado como False, no ir disparar Exception quando no conseguir
       apagar determinado arquivo, e continuar o Loop para apagar demais arquivos
       correpondentes a "FileMask". Se omitido, assume True (default)

-- ACBrECFSweda --
[-]    Corrigido Bug na deteco do Status do ECF, quando o ECF sinalizava Status = 'E'
       www.forumweb.com.br/foruns/index.php?/topic/78701-ecf-sweda-st120-retornando-estdesconhecido/	
 	   
Verso 0.8.9b  15/10/09 (DSA)
-- ACBrECF --
[*]    Modificada a assinatura dos comandos:
       LeituraMFDSerial, LeituraMemoriaFiscalSerial, LeituraXSerial
       removendo a declarao "var" do parmetro Linhas (por ser desnecessrio)

-- ACBrUtil --
[+]    Adicionada function RemoveStrings(const AText: AnsiString;
            StringsToRemove: array of AnsiString): AnsiString;
       Remove todas ocorrencias de String do Array <StringsToRemove> da String
       <AText> retornando a String alterada

-- ACBrECFBematech --
[-]    Corrigido Bug de "espera inifinita" quando aguardando retorno de comandos
       de Leitura (Ex: LeituraMFD), em que o ECF respondeu com "Erro"

-- ACBrECFDaruma --
[*]    Melhorada Rotina de Limpeza dos retorno de comandos de Leitura
       (Ex: LeituraMFD)
[-]    Corrigido Bug na rotina de Criao de Arquivo com conteudo do Retorno de
       Leituras, que em algumas ocasies era Truncado

-- ACBrECFFiscNet --
[*]    Otimizao da Rotina de Limpeza dos retorno de comandos de Leitura
[-]    Corrigido Bug nos Retornos de Leitura, em que o arquivo era "deslocado",
       perdendo o lay-out original 


Verso 0.8.8b  12/10/09
-- ACBrECF --
[-]    No ECF da Daruma ao se comandar a impresso da Leitura da Memria Fiscal o
       componete estav invertendo o metodo simplificado pelo completo. (por Ivan Moreira)

Verso 0.8.8b  10/10/09
-- ACBrECF --
[+]    Adicionada a propriedade ACBrECF.UsuarioAtual : String   ( por Ivan Moreira )
       Retorma o usuario atual da Memria Fiscal
	   Implementada para os Modelos: Sweda, Bematech, Epson, FiscNet e Daruma;

-- ACBrECFEpson --
[*]    Modificao na rotina VerificaFimLeitura, para tratar corretamente Respostas 
       Fora da Sequencia, e Respostas com o CheckSum invlido.  (por Daniel Simes)

-- ACBrECFDaruma --
[+]    Implementado mtodo ACBrECF.IM = Retorna a Inscrio Municipal; 
[+]    Implementado mtodo ACBrECF.Cliche = Retorna o Cabealho; 
[*]    ECF.ModeloStr = Esta retornado 'Daruma "Modelo FS-600" ' em vez s de 'Daruma'.
	   ( por Ivan Moreira )

-- ACBrECFSweda -- 
       Implementada as rotinas:           ( por Ivan Moreira )
[+]    ECF.LeituraMFDSerial(dtInicial,dtFinal) = Retorna MFD por Data;
[+]    ECF.LeituraMFDSerial(COOInicial,COOFinal) = Retorna MFD por COO;
 	   
Verso 0.8.8b  08/10/09
-- ACBr --
[*]    Todas as Saidas de Mensagem do ACBr, atravs de Exceptions ou MessageDlg
       foram revisadas para converter a saida para UTF8 quando o Compilador
       suportar UNICODE.

-- ACBrUtil --
[+]    Adicionada: function ACBrStr( AString : AnsiString ) : String ;
       Todos os Fontes do ACBr usam Encoding CP1252, para manter compatibilidade
       com D5 a D2007, Porm D2009 e superiores e Lazarus0.9.27 e acima usam UTF8.
       Essa funo converte a "AString" para de ANSI, para UTF8, apenas se o
       sistema usar UNICODE

Verso 0.8.8b  02/10/09
-- ACBrECF --
[-]    Novo mecanismo usando BlockInput no liberava Mouse/Teclado durante a pergunta de ReTentar	

-- ACBrECFCalculadora --
[*]    Nova Propriedade BorderStyle, para permitir ajustar a Borda da Calculadora
[*]	   Form melhorado para Lazarus, usando OptimalFill no Label do Display de Nmeros

Verso 0.8.8b  30/09/09
-- ACBrECF --
[+]    Sobrecarga nos mtodos abaixo para permitir informa "NomeArquivo: String"
       ao inves de um StringList.

       Procedure LeituraXSerial( NomeArquivo : String  ); overload ;
       Procedure LeituraMemoriaFiscalSerial( DataInicial, DataFinal : TDateTime;
          NomeArquivo : String; Simplificada : Boolean = False ) ; overload ;
       Procedure LeituraMemoriaFiscalSerial( ReducaoInicial, ReducaoFinal : Integer;
          NomeArquivo : String; Simplificada : Boolean = False ) ; overload ;
       Procedure LeituraMFDSerial( DataInicial, DataFinal : TDateTime;
          NomeArquivo : String; Documentos : TACBrECFTipoDocumentoSet = [docTodos]  ) ; overload ;
       Procedure LeituraMFDSerial( COOInicial, COOFinal : Integer;
          NomeArquivo : String; Documentos : TACBrECFTipoDocumentoSet = [docTodos]  ) ; overload ;

-- ACBrECFDaruma --
[*]    Adicionado mecanismo de "limpeza" de cdigo de controle de Impressao em
       captura de Documentos pela Serial
       
Verso 0.8.8b  28/09/09
 
[*]  Diversas alteraes efetuadas por: Ivan Moreira
     - ECFs : Sweda, Bematech, Epson, FiscNet e NaoFiscal
       Rotinas: ECF.IM = Retorna a Inscrio Municipal; 
	   ECF.Cliche = Retorna o Cabealho;
 
	 - ECFs: NaoFiscal
       Rotinas: ECF.CNPJ = Retorna CNPJ; ECF.PAF = Retorna Linha PAF;
 
	 - ECFs: Bematech
		Rotinas: ECF.LeituraMFDSerial(dtInicial,dtFinal) = Retorna MFD por Data; 
		ECF.LeituraMFDSerial(COOInicial,COOFinal) = Retorna MFD por COO;

Data: 13/07/2009 	
-- ACBrECFUrano --
[*] Alterao do mtodo GetEstado para obter estado de Reduo Z
[*] Implementados novos mtodos: RetornaInfoECF, GetCNPJ, GetIE, GetGrandeTotal,
    GetVendaBruta, GetNumCRZ, GetNumGNF, GetNumCOOInicial, GetTotalCancelamentos,
    GetTotalDescontos, GetTotalAcrescimos, GetTotalIsencao, GetTotalNaoTributado,
    GetTotalSubstituicaoTributaria, LerTotaisAliquota, LerTotaisFormaPagamento.
(por Carlos Antonio da Silva)	

Data: 07/07/2009 
-- ACBRCHQPerto --
[-] Corrigido bug na comuicao com a impressora e definio de timeouts
    para comandos enviados  impressora. (por Marcelo Correia Pinheiro)
	
Data: 25/06/2009
-- ACBrECFSweda --
[*] Ajustado Retorno do Estado da Impressora
[-] Ajustado Retorno do COOInicial, estava trazendo o CCF Inicial
(por Jos Nilton Pace) 
	
Data: 02/03/2009
-- ACBrECFDataRegis -- 
[*] Compatibilizao com a Verso 04 (por Weber Luvisa (ByteCom))

Data: 17/01/2009
-- ACBrECFSweda --
[-] Ajustes no LeResposta.
    Alguns modelos de 9000IIIE, retorna ocasionalmente  um caracter de
    controle, (#17) no inicio da Resposta, corrigido com um TrimLeft( Resposta )
[-] Flag fsEsperaMinima, causava lentido em comandos com TimeOut muito alto
    ajustado para usar no mximo 10 seg em fsEsperaMinima
[-] LeituraMemoriaFiscalSerial, aumentado TimeOut (10) das respostas
    intermedirias (++), evitando leituras incompletas por TimeOut.
	(por Daniel Simoes de Almeida)
	
Data: 12/01/2009
-- ACBrECFSweda --
[*] Ajuste no mtodo GetVersaoSweda para identificar o modelo ST200
   (bug reportado por Waldir Paim) (por Ederson Selvati)

Data: 24/12/2008  
-- ACBrECFMecaf --
[-] Cancelamento de cupons sem itens retornava Erro 51. Corrigido vendendo um
    Item de 0.01 centavos antes de cancelar   (Reportado por Licrio Neto)
	(por Daniel Simoes de Almeida)
[*] Metodo CarregaAliquotas alterado para incluir prefixo 'T' no indice
    (por Daniel Simoes de Almeida)
-- ACBrECFNaoFiscal --
Daniel Simoes de Almeida
|*  - Implementado retorno da propriedade DataMovimento (por Waldir Paim)
|*  - Identificao do Cliente no rodap do Cupom estava duplicando
|*    as informaes, corrigido
-- ACBrECFSweda --
[-] Mtodo Interno Purge poderia causar Loop Infinito, corrigido
   (bug reportado por Waldir Paim)
[-] Mtodo GetTotalPago no retornava o valor correto quando pagamento excedia
    o subtotal do Cupom, corrigido (bug reportado por Jocelio)
	(por Daniel Simoes de Almeida)
	
Verso 0.8.8b  01/12/08
-- ACBrConsts --
[+]    Mensagens de Erro e Alerta de ACBrECF centralizadas em ACBrConsts.pas,
       por: Joo Carvalho

-- ACBrECF --
[*]    Adicionado Parmetro "Simplificada : Boolean = False" nos mtodos:
       LeituraMemoriaFiscal e LeituraMemoriaFiscalSerial

-- ACBrECFQuattro --
[+]    Adicionado varios metodos e propriedades, por: Joao Victor Maia Fernandes

-- ACBrECFYanco --
[+] Adicionado varios metodos e propriedades: GetGrandeTotal, GetDataMovimento, GetNumCRO,
    GetNumCRZ, GetVendaBruta, GetTotalDescontos, GetTotalCancelamento, GetTotalAcrescimos, 
	LerTotaisAliquota, GetTotalNaoTributado, GetTotalSubstituicaoTributaria, GetTotalIsencao.
[-] Correo no mtodo GetDataHora
(por: Sauli Bueno)

-- ACBrUtil --
[*]    Funo IntToStrZero modificada para aceitar Int64. Esse problema
       poderia causar "erro de converso" na criao do arquivo ACBrRFD

Data: 06/11/2008  
-- ACBrECFMecaf --
[*] Alterao Mtodo VendeItem (por Anderson Rogerio Bejatto)


Data: 30/10/2008
-- ACBrDevice --
[*] Migraao do componente TACBrDevice de ACBrBase.pas para essa Unit para
    evitar que componentes, que usem TACBrComponente (de ACBrBase.pas) mas que
    nao usem TACBrDevice, carreguem codigo desnecessario como por exemplo
    toda a classe SynaSer. (por Daniel Simoes de Almeida)
	
Data: 10/10/2008
-- ACBrECFYanco --
[+] Implementao do mtodo GetHorarioVerao
[+] Implementao do mtodo MudaHorarioVerao
[+] Implementao do mtodo GetCNPJ
[+] Implementao do mtodo GetIE
[-] Correo no mtodo GetEstado
[-] Correo no mtodo CarregaFormasPagamento
(por Anderson Rogerio Bejatto)

Data: 18/06/2008 
-- ACBrECFQuattro --
[+] LerTotaisAliquota, LerTotaisFormaPagamento, LerTotaisComprovanteNaoFiscal,
    TotalSubstituicaoTributaria, CNPJ, IE, DataMovimento, GrandeTotal,
    VendaBruta, TotalDescontos, TotalCancelamentos, TotalAcrescimos,
    NumCOOInicial, NumUltimoItem, TotalIsencao, TotalNaoTributado 
	(por Joao Victor Maia Fernandes)
	
Data: 29/04/2008
-- ACBrECFSweda --
[-] Corrigido o retorno de NumSerie e NumVersao em modelos MFD.
    (por Daniel Simes de Almeida)

Verso 0.8.7b  14/04/08

-- ECFTeste --
[+]   Adicionada configurao das caracteristicas da Porta Serial
      (Velocidade, bit de Parada, paridade, etc)
[*]   Nova versao do ECFTeste convertida para Lazarus (Wagner Leandro)

-- ACBrECF --
[+]    Adicionado mtodo IdentificaOperador(Nome: String);
       - Ligado a propriedade Operador. Todos os modelos de ECF revisados com a
         possibilidade de informar o Operador ao ECF
[+]    Adicionado mtodo: CortaPapel( CorteParcial : Boolean = false) ;
[+]    Adicionado mtodo: Sangria( const Valor: Double; Obs: String;
         DescricaoCNF: String = 'SANGRIA'; DescricaoFPG: String = 'DINHEIRO')
[+]    Adicionado mtodo: Suprimento( const Valor: Double; Obs: String;
         DescricaoCNF: String = 'SUPRIMENTO'; DescricaoFPG: String = 'DINHEIRO')
[*]    Metodo VendeItem modificado, adicionado parametro:
         DescontoAcrescimo : String = 'D' que permite definir se o Valor
         informado no parametro "ValorDescontoAcrescimo"  Desconto "D" ou
         Acrscimo "A".  Se nao informado, assume o Default = 'D'
         - Todos os modelos revisados para permitir Acrescimo na Venda de Item
           quando SW.Bsico do ECF possuir esse comando
[+]    Adicionada a propriedade: MsgTrabalhando = "Impressora est trabalhando"
[*]    Modificado mecanismo TimeOut em LeResposta.
       - LeResposta detecta quando o ECF est enviando dados pela serial e com
         isso NAO inicia a contagem regressiva de TimeOut, e exibe o texto de
         "MsgTrabalhando"

-- ACBrFiscNet --
[*]   Compatibilizada para trabalhar com a TermoPrinter (Fabio Farias)

-- ACBrECFEpson --
[+]   Novo modelo de ECF implementado Epson

-- ACBrECFDaruma --
[*]  Cancelamento de Cupom permite cancelar CCD se imediatemante apos o cupom
     (Andre Bohn)
[-]  Corrigido Bug na Leitura dos Totais de Pagamentos na FS600 (Andre Bohn)
[+]  Implementado a Leitura dos Totais de CNFs para FS600 (Andre Bohn)

Data: 10/04/2008
-- ACBrRFD --
[+] Adicionado campo [ECF] -> DataHoraSwBasico= em ACBRRFD.INI
    Se preenchido, ser informado no campo Data/Hora da gravao do SB do
    registro E01... Se no informado grava campo com vazios
[*] Override em AchaCNFDescricao para pesquisar ignorando o 1 caracter (simbolo)
|-] Bug Sweda, no carrega ou acha Aliquotas com T1 ao invez de T01
(por Daniel Simoes de Almeida)

Data: 11/03/2008
-- ACBrECFUrano --
[*] Adequacao da Rotina FechaCupom para imprimir a mensagem promocional.
   (Quatro linhas ao final do cupom contendo 48 caracteres cada linha.)
(por Gelson Oliveira)

Data: 29/02/2008
-- ACBrECFUrano --
[+] Implementado CarregaAliquotas. (por Valmor Flores)

Data: 11/12/2007 
-- ACBrECFDataRegis --
[*] Implementao de varios Metodos e Comparao com Implementacao do Anderson R B
(porJoo Victor Maia Fernandes)

Data: 08/12/2007
-- ACBrECFDataRegis --
[-] Alterao do Metodo Carrega aliquota, pois a Dataregis apresenta defeito
    (por Anderson Rogerio Bejatto)
	
Data: 04/12/2007
-- ACBrECFNCR --
[+] Incluso do modelo ACBrNCR. (por Andr Bohn)

Data: 28/11/2007  
-- ACBrECFDataRegis --
[*] Implementacao de varios Metodos (por Anderson Rogerio Bejatto
(por Daniel Simes de Almeida)

Data: 05/09/2007
[-] Corrigido Retorno do COO em Impressoras MFD (ST100)

Data: 30/08/07
--  ACBrBAL -- 
[*] Incluso do modelo ACBrBALMuller 
[*] Incluso do modelo ACBrBALRinnert (por Marcio Jose da Silva)

Data: 20/08/2007 
-- ACBrECFMecaf/ACBrECFSChalter --
[*] Adicionada as propriedades: CNPJ, IE, DataMovimento, NumCOOInicial,
    NumCRZ, VendaBruta, GrandeTotal, TotalDescontos, TotalAcrescimos,
    TotalCancelamentos, TotalIsencao, TotalNaoTributado,
    TotalSubstituicaoTributaria. (por Daniel Simoes de Almeida)
[+] Adicionado os mtodos: LerTotaisAliquota, LerTotaisFormaPagamento,
    LerTotaisComprovanteNaoFiscal (por Daniel Simoes de Almeida)
-- ACBrECFSChalter --
[-] Corrigido Bug em: LeituraMemoriaFiscalSerial (TimeOut e VerificaFimLeitura)
    (por Daniel Simoes de Almeida)
	
Data: 17/08/2007
-- ACBrECFSweda --
[-] Adicionado os mtodos: NaoFiscalCompleto, AbreNaoFiscal,
    RegistraItemNaoFiscal, LerTotaisFormaPagamento,
    LerTotaisComprovanteNaoFiscal. (por Daniel Simes de Almeida)
	
Data: 12/07/2007
-- ACBrGAV --
[-] Corrigido Problemas de perda do comando de abertura quando modelo = gavImpressoraComum
    e usado ACBrMonitorConsole (por Andr Ferreira de Moraes)
	
Data: 05/07/2007
-- ACBrECFSweda --
[-] Corrigida a Leitura de Memoria Fiscal por Serial (no responde)
(Daniel Simes de Almeida)
[-] Corrigido a carga de Formas de Pagamento na MFD (le todas as 20)
(por WPSouto)

Verso 0.8.6b  15/06/07

-- ACBrETQ --
[+]   - Novo Componente, para facilitar a Impresso de Etiquetas em Impressoras
        termicas, compatveis com a Linguagem PPLA
        (por: Andrews R Bejatto/ Anderson R Bejatto)
        
-- ACBr_BCB6.bpk --
[*]   Criado novo package para compatibilizar o projeto com o C++ Builder 6
      - Compatibilidade feita por: Thiago Delgado Pinto
[*]   Vrios fontes do projeto foram revisados para permitir a compilao
      condicional no C++ Builder, trocando a diretiva {$IFDEF Delphi6_UP} por
      {$IFDEF COMPILER6_UP}.

-- Lazarus --
[+]   Todos os Demos do projeto agora tambm esto disponveis no Lazarus
      (convertido por: Wagner Leandro Bueno Angelo)

-- Demos --
[*]   Diretorio dos Demos melhor organizado, com a criao de uma sub-pasta para
      cada Demo.

[+]   Projeto Demo "ECFTeste" (ACBrECF) remodelado para exbir o uso de
      "MemoBobina" e "OnBobinaAdicionaLinhas.
      - Verses VCL, CLX e Lazarus foram modificadas

-- ACBrECF --
[+]   Adicionada a propriedade "ArqLOG : String"
      - Se algum nome de aquivo for especificado nessa propriedade, todos os
        comandos Enviados e Respostas do ECF sero gravadas neste arquivo TXT
      - Ateno !!
        - Ou uso de LOG pode comprometer a performace do programa.
          (use apenas para debugar)
        - Dados sigilosos, como nmero de carto de crdito impresso no TEF,
          podem ficar registrados no LOG

[+]   Adicionada a propriedade "MemoBobina : TMemo"
      - Se associado algum componente "Memo" a essa propriedade o ACBrECF
        "desenhar" uma copia da Saida do Cupom no componente Memo.

[+]   Adicionado evento "OnBobinaAdicionaLinhas"
      - Evento  executado sempre que uma nova linha  adicionada no "MemoBobina"
        - Util para desenho de Cupons em formato HTML
      - Para visualizar o Cupom em HTML utilize controles visuais como:
        TWebBrowser (VCL) TTextViewer (CLX) ou  TIpHTMLPanel (Lazarus)
        - Veja exemplos no Projeto "ECFTeste" (em Demos)

[+]   Adicionada a propriedade "MemoParams : TStrings"
      - Usada para configurar o LayOut de desenho do cupom.
      - Permite sintaxe em HTML.
      - Utillizada apenas quando usando "MemoBobina" ou "OnBobinaAdicionaLinhas"

[+]   Adicionado parametro "TipoDescontoAcrescimo : String = '%'" no mtodo
      "VendeItem".
      - Se esse parametro for omitido, assume '%' (desconto em Percentagem),
      - Qualquer outro caracter diferente de '%', assume que o Desconto
        informado no parametro "DescontoPorc"  em Valor

[*]   "ArredondaPorQtd" no ser executado caso o ValorTotal com a Qtd acrescida
      fique superior ao Valor Arredondado pretendido. Isso pode ocorrer se o
      Preo Unitrio  grande... nesses casos no h como ajustar... :-(

-- ACBrECFBematech --
[-]   Corrigido Bug na abertura de Cupom Fiscal com CNPJ na MP20

-- ACBrECFDaruma --
[-]   Corrigido Venda de Item com Qtd de 3 decimais (por Maicon da Silva)
[-]   Corrigido Carregamento de Formas de Pagamento na MFD
      (retornava posies no cadastradas)
[*]   Melhorada Verificao de Fim da Impresso na MFD
[*]   Corrigida Leitura da palavra de Status na MFD (GetEstado)
[-]   Corrigida deteco do estado estRequerX na MFD
[*]   Corrigido Retorno no Numero de Serie na MFD
[*]   Impressao de Relatrio Gerencial e Vinculado na MFD, otimizada para enviar
      vrias linhas simultaneamente (muito mais rpido)
[-]   Corrigido bug na leitura do CRO

-- ACBrECFFiscNET --
[-]   Corrigido espacejamento de "PulaLinhas" ( considerando 1 linha = 30 dots )
[-]   Corrigido BUG em Mtodo "CorrigeEstadoErro", que sempre causava o Reinicio
      do ECF
[*]   Mtodo "AbreRelatorioGerencial" modificado para cadastrar o Relatrio
      Gerencial  indice = 0 caso ele ainda no exista
[-]   Mtodo "VendeItem" gerava exceo quando Desconto era informado
[-]   Mtodo "LinhaRelatorioGerencial" nao imprimir linhas vazias e em textos
      maiores que 492 caracteres poderia haver quebra do lay-out de impressao

-- ACBrECFSweda --
[-]   Corrigido bug nos Descontos de "VendeItem" e "SubtotalizaCupom" em alguns
      ECFs NAO MFD ( matriciais linha 7000 )  (Bug Report por: Ederson Selvati)
[-]   Corrigido bug no EfetuaPagamento dos modelos 'C' e 'B' em FPG com flag
      de Vinculado ativado
[*]   Aumentado o TimeOut da Reduao Z para (150 sec)
[*]   Ignorado Flag "SLIP" em modelo 'B' na verificaao de erros de "EnviaComando"
[-]   Corrigida a abertura da Gaveta de Dinheiro nos ECFs MFD
[*]   Corrigido o TimeOut da Leitura da Memoria Fiscal no modelo 'B'
[-]   Corrigido bug em "FechaRelatorio" no modelo 'B'
[*]   Ativada a Impressao da palavra "SubTotal" na subtotalizao do Cupom

-- ACBrECFNaoFiscal --
[-]   Corrigido Bug no Cancelamento de Item com Desconto (por Marcos Agostini)

-- ACBrECFClass --
[-]   Corrigido Bug em DoOnMsgRetentar, Resposta com sinal invertido
      (por J. Lus Schiavo)

-- ACBrCMC7 --
[*]   Calculo de CMC7 compatiblizado com o Banrisul, por Diogo Augusto Pereira

-- ACBrBALFilizola --
[*]   Modelo balFilizola compatibilizado com a linha "CS"...
      (por:  Juliano Pereira dos Santos)

-- ACBrCHQ --
[-]   Corrigido Problemas de FreeNotification com a propriedade "ECF" em Tempo
      de Design

-- ACBrGAV --
[-]   Corrigido Problemas de FreeNotification com a propriedade "ECF" em Tempo
      de Design

-- ACBrExtenso --
[+]   Adicionada a propriedade Formato: TACBrExtensoFormato (default extPadrao)
        extPadrao -> 15,10 - Quinze Reais e Dez Centavos
        extDolar  -> 15,10 - Dolares Americanos Quinze com 010/100

-- ACBrCalculadora --
[+]   Adicionada a propriedade "CorForm" : TColor (por: Nei Jos Van Lare Junior)

Data: 15/05/2007 
-- ACBrDIS --
[+] Adicionada a propriedade "RemoveAcentos : Boolean" default = True.
    (por Daniel Simoes de Almeida)
	
Data: 11/05/2007 
-- ACBrECFNaoFiscal --
[-] Corrigido Bug no Cancelamento de Item (arredondamento). (por Fabio Farias)
	
Data: 20/04/2007 
-- ACBrECFSChalter --
[-] Corrigido BUG na leitura do NumCupom aps a abertura do Cupom Fiscal
[-] Corrigido BUG na deteco de Estado estPagamento, quando ocorre
    SubtotalizaCupom sem desconto ou acrescimo
[-] Corrigido BUG no VerificaFimImpressao (no estava lendo toda a resposta)
(por Daniel Simoes de Almeida)

Data: 04/04/2007 
-- ACBrECFMecaf --
[+] Implementados mtodos de Cupom No Fiscal (por Daniel Simoes de Almeida)

Data: 01/04/2007  
-- ACBrECFNaoFiscal --
[+] Implementados mtodos de Cupom No Fiscal. (por Daniel Simoes de Almeida)
-- ACBrECFSChalter --
[+] Implementados mtodos de Cupom No Fiscal. (por Daniel Simoes de Almeida)

Data: 25/03/2007  
-- ACBrECFSChalter --
[+] Mtodo: GetNumUltimoItem (por Alan Lucas)
-- ACBrECFSweda --
[+] Novas propriedades: CNPJ, TotalAcrescimos, NumUltimoItem. (por Alan Lucas)
[-] Corrigido NumCOOInicial (por Jos Nilton Pace)

Data: 22/03/2007
--ACBrECFSweda --
[-] Gato para resolver o erro -P111+0065 no modelo 7000 1.1 logo aps
    um vinculado
[+] Novas propriedades: DataMovimento, GrandeTotal, NumCRZ, VendaBruta,
    TotalCancelamentos, TotalDescontos, TotalSubstituicaoTributaria,
    TotalNaoTributado, TotalIsencao,  NumCOOInicial
	(por Ederson Selvati)

Data: 21/03/2007
--ACBrECFSweda --	
[*] Mtodo SubtotalizaCupom adaptado para maior compatibilidade com as vrias
    verses de ECF Sweda. (por Alan Lucas)

Data: 15/03/2007 
-- ACBRDIS --
[+] Adicionada a propriedade "PausaVai_e_Volta" em ACBrDISLinha. (default 3)
    Permite deifinir uma pausa antes de inverter a direo.
	(por Daniel Simoes de Almeida)
	
Data: 06/03/2007  
-- ACBrECFNaoFiscal --
[-] Corrigido Bug na Abertura de Cupom Fiscal Vinculado, quando Cupom anterior
    continha mais de uma forma de Pagamento (por Fabio Farias)
	
Data: 27/02/2007  
-- ACBrECFDataRegis --
[*] Ajuste para rodar na verso 02.06 (melhoria da 02.05) (por Fabio Farias)

Data: 21/02/2007  
-- ACBrECFNaoFiscal --
[-] Corrigido Bug no Cancelamento de Item com Desconto. (por Marcos Agostini)

Data: 06/02/2007 
-- ACBrECFNaoFiscal --
[+] Adicionada a funo "NumeroColunas", para facilitar a impressao de linhas
    com expandido (por Thiago Delgado Pinto)
	
Verso 0.8.5b  02/12/06

-- ACBr --
[+]   Modo CONSOLE. Todos os componentes e Units do ACBr foram compatibilizadas
      para permitir a construo de aplicaes em MODO CONSOLE
      - IMPORTANTE: Quando alternar na compilao entre aplicaes no Modo
        CONSOLE e DESKTOP, SEMPRE execute: Project -> Build All

-- ACBrECF --
[+]   Adicionado propriedade: "GavetaSinalInvertido" : Boolean default False
      - til quando a leitura do Retorno da propriedade "GavetaAberta" est
        invertido... Isso ocorre em alguns casos, devido a diferena da pinagem
        dos diversos modelos de Gavetas de dinheiro

[+]   Adicionado novo evento "OnMsgRetentar". Que ser disparado quando a
      propriedade "Retentar" estiver ativa (True) e sempre que alguma msg do
      tipo "Deseja tentar Novamente ?" precise ser exibida.
      - Se o evento estiver programado o ACBrECF no exibe nenhuma Mensagem ou
        Dialogo. Se o evento NAO estiver programado,  exibida a Mensagem padro

[+]   Adicionada Propriedade "IntervaloAposComando" : Integer.  (default 100)
      - Essa propriedade permite definir um pequeno intervalo em Milesegundos
        aps a execuo de cada comando. Um valor menor pode tornar a
        comunicao com o ECF mais rpida porm pode causar problemas de comuni-
        cao em alguns modelos/verses de ECF... Use valores entre 1 e 100

[*]   Mtodo: "ImpactoAgulhas" modificado. Removido o MessageDLG, agora o mtodo
      recebe um parmetro:  ( NivelForca : Integer = 2), onde: 1-Fraco, 2-Normal
      , 3-Forte

[*]   Mtodo "MudaHorarioVerao", modificado. Removido MessageDLG. Se o mtodo
      for chamado sem parmetros ele tentar inverter o estado de HorarioVerao

[-]   Corrigido Bug no mtodo "FormMsgDoProcedure" (usado p/ bloqueio do teclado)
      A pilha de retorno das Excees no era executada corretamente
      - Em algumas situaes, ex: durante a impresso das Linhas do Relatrio
        Gerencial, caso houvesse alguma exceo durante a impresso o bloco
        "Except" programado pelo usurio no era executado.

[-]   Corrigido Bug em ArredondaPorQtd. Em algumas combinaes de valores e Qtd
      o ArredondaPorQtd falhava ao calcular o acrscimo na Qtd.

[*]   Mtodo VendeItem modificado para permitir Alquotas como ndice mesmo nos
      ECFs onde a Alquota j possui a Letra "T" no inicio. Exemplo. Na Daruma,
      a Alquota "TA" pode ser informada como: "TTA" ou "TA" para o mtodo
      VendeItem

[*]   Propriedade "NumSerie" no mais usa valor em cache. Sempre que houver uma
      leitura a essa propriedade, haver comunicao com o ECF.
      ( Exigncia do Fisco de Minas Gerais )

[+]   Adicionada as propriedades ReadOnly  "MFD"  e "Termica"  que so ativadas
      de acordo com o modelo de ECF Utilizado.

[+]   Adicionada as propriedades "DecimaisPreco" e "DecimaisQtd"

-- ACBrECFFiscNET --
[+]   Novo modelo de ECF implementado FiscNET (ZPM), compatvel com vrios ECFs
      MFDs que usam esse chip-set, como: Elgin MFD, Urano MFD, DataRegis MFD,
      Olivetti MFD, ZPM, e outros

-- ACBrECFDaruma --
[+]   Finalmente adicionada a compatibilidade com o ECF FS600 MFD
      ( com a ajuda de Juliano Pereira dos Santos )  
[-]   Corrigido alguns bugs na compatibilidade com o modelo FS 2000 em:
      GetEstado, VerificaFimImpressao, FechaRelatorio, GetGavetaAberta,
      GetPoucoPapel, GetHorarioVerao e GetArredonda
[-]   Corrigido bug na Impresso de Linhas do Vinculado e Gerencial. Bug
      introduzido na verso 0.8.4b. (tentativa de otimizar a impresso nas MFDs)
[+]   Adicionada a Impressao de Cheques na FS2000.
[-]   Corrigido o mtodo CarregaFormasPagamento na FS2000
[-]   Corrigido o retorno do contedo de "ComprovantesNaoFiscais" na FS345
[+]   Adicionada propriedade interna "ComprovantesNaoFiscaisVinculado" (somente
      na Classe Daruma)

-- ACBrECFBematech --
[-]   Aumentado o TimeOut dos comandos "LeituraX" e "AbreRelatorioGerencial"
[-]   Corrigido Bug no ECF MP40-FI II, esse modelo tem apenas 40 colunas e no
      48 como nos demais modelos... Agora o modelo  detectado e a propriedade
      "Colunas" ajustada corretamente.

-- ACBrECFYanco --
[*]   Diversos mtodos implementados... Agora a classe da Yanco est operacional
      ( por: Carlos do Nascimento Filho )

-- ACBrECFMecaf --
[*]   Diversos mtodos que usam campo de "Texto livre" foram modificados para
      filtrar os caracteres acentuados, pois a Mecaf no executa o comando se
      houver caracteres acentuados

-- ACBrDIS --
[*]    Novo modelo de Display de Teclado implementado "disKeytecTeclado"
       compatvel com os displays de teclado das Marcas "KeyTec" e "Fourth"
       ( por: Fabio Farias )

-- ACBrLCB --
[*]   Modificado mecanismo de leitura, para evitar a leitura de cdigos
      incompletos.
      - Se a propriedade SUFIXO for VAZIA.  TUDO que estiver disponvel no
        buffer serial no momento do evento, ser lido e retornado
      -  Se SUFIXO NAO for VAZIO. Apenas l os dados da serial SE e AT
         encontrar o Sufixo.
         - Se houver dados alem do Sufixo, deixa o restante no buffer serial
           para leitura no prximo evento (Mais de 1 cdigo no buffer)
         - Se o SUFIXO NAO for encontrado no Buffer da Serial NADA ser
           lido. Pois nesse caso, provavelmente o leitor ainda est enviando o
           cdigo e o Buffer da Serial est INCOMPLETO. O cdigo completo ser
           lido no prximo evento...

[*]   Demo do ACBrLCB, LCBTeste.dpr e QLCBTeste.dpr modificados para permitir
      configurar as propriedades da Porta Serial     (por: Waldir Paim)

-- ACBrCMC7 --
[-]   Corrigido Bug no calculo do digito Verificador 2
[+]   Adicionado Programa Demo para o componente ACBrCMC7   (CMC7Teste.dpr)
      ( por: Andr Ferreira de Moraes )

-- ACBrCHQUrano --
[*]   Novo modelo de impressora de Cheques compatibilizado com o ACBrCHQ.
      A Urano UR1000. (Usado o Protocolo "Genrico 2" na impresso de cheques)

-- ACBrUtil --
[+]   Adicionada as funes: "BinToInt" e "IntToBin" (http://delphi.about.com)
      - Converte Strings de Binrios para Inteiro e vice-versa.
[*]   Funo "TestBit" modificada para permitir Inteiros de 16 bits

-- ACBrExtenso --
[+]   Adicionada a propriedade "ZeroAEsquerda" : Boolean (default true)
        - Quando True , o valor: 0,21 = Zero Reais e Vinte e Um Centavos
        - Quando False, o valor: 0,21 = Vinte e Um Centavos

-- ACBrFala --
[-]   Corrigido Bug na fala de Valores com apenas centavos (removido Zero Reais)

-- SynaSer --
[*]  Fontes da Classe SynaSer atualizados para a verso: 007.000.001

Data: 07/11/2006
-- ACBrECFSweda --
[-] Corrigido problemas na Deteco do estado aps ocorrencia de Erro no ECF
[-] Corrigido problemas no Calculo do Valor Total em VendeItem (TruncFix)
[-] Corrigido problema na VendeItem quando executado vrias vezes rapidamente
    na sequencia. (por Daniel Simoes de Almeida)

Data: 03/10/2006
-- ACBrECFSweda --
[-] Comando ImprimeCheque adaptado para funcionar na Serie detectada como (B)
(por Daniel Simoes de Almeida)

Data: 23/08/2006
-- ACBrLCB --
[*] Modificado para permitir a String "TECLADO" na Porta. Isso permite ativar o 
    componente, mesmo sem a presena de um Leitor Serial.
    til apenas para quem controla a Fila do ACBrLCB manualmente.
	(por Daniel Simoes de Almeida)

Data: 22/08/2006 
-- ACBrECFDataRegis --
[-] Corrigido tempo de espera em EnviaComando quando impressora for xx.03
(por Fabio Farias)

Data: 17/08/2006
-- ACBrECFDataRegis --
[-] Corrigido bug em arquivo auxiliar de itens quando ocorrer erro no EfetuaPagamento
(por Anderson Rogerio Bejatto)

Data: 18/07/2006 
-- ACBrECFDataRegis --
[-] Corrigido bug na procedure EnviaMensagem
(por Daniel Simoes de Almeida e Anderson Rogerio Bejatto)

Data: 31/05/2006  
-- ACBrECFDataRegis --
[*] Se no achar a Uniade de Medida em VendeItem, tenta com "UN" (por Fabio Farias)

Verso 0.8.4b  25/05/06

-- ACBr_LCL.lpk --
[*]   Package do Lazarus corrigido para instalar corretamente... Testado no
      Lazarus 0.9.12 e FreePascal 2.0.2 (verses Windows e Linux)
[+]   Nova pasta criada para os Demos na verso Lazarus.
      - Demo "ECFTeste.dpr" convertido para Lazarus.

-- ACBrFala --
[+]   Novo componente ACBrFala. Processa todas as palavras de uma String,
      procurando por arquivos de Som correspondente a cada palavra.
      - Permite informar Valores (Double) que so traduzidos para Extenso.
      - Os arquivos de som podem estar em um Recurso (.RES / .LRS) ou em um
      diretrio.  Veja a pasta  \ACBr\source\Pascal\ACBrFalaWaves que contm
      exemplos de sons e arquivos de recurso para falar valores por Extenso
      (componente inicial, "FalaValor" escrito por Vinicius de Oliveira)

-- ACBrCMC7 --
[+]   Novo componente ACBrCMC7, que permite processar a Banda Magntica dos
      Cheques, Validando e convertendo de CMC7 para Banco, Agencia, Conta e
      vice-versa... (em desenvolvimento)          (por Andr Ferreira de Moraes)

-- ACBrECF --
[-]  Mtodo "VerificaFimImpressao" poderia disparar exceo com ECF off-line
     (Bug reportado por: Adriano Alves Dornelas)
[*]  Diminudo o tempo de vrias "pausas" (Sleeps) entre as rotinas de envio
     e recepo de dados, a fim de agilizar a comunicao... (experimental)
[*]  Adicionada sobrecarga ao mtodo MudaHorarioVerao.
     Procedure MudaHorarioVerao( EHorarioVerao : Boolean ) ;
     - Nesse novo mtodo no ser aberta nenhuma janela ShowModal
[*]  Mtodos "CarregaFormasPagamento" e "CarregaComprovantesNaoFiscais" sempre
     retornavam as Descries em maisculas... corrigido.
[*]  Mtodos "ProgramaFormaPagamento" e "ProgramaComprovanteNaoFiscais" sempre
     cadastravam as Descries em maisculas... corrigido.
[*]  Mtodos "LinhaRelatorioGerencial" e "LinhaCupomVinculado" agora permitem
     informar vrias linhas separadas por #10 ou #13+#10
     (til para agilizar a impresso desses documentos em alguns ECFs Trmicos)
[+]  Adicionado mtodo: PulaLinhas( NumLinhas : Integer = 0 ) ;

-- ACBrECFClass --
[*]  Mtodos "ListaRelatorioGerencial" e "ListaCupomVinculado" abstraidos
     pela classe TACBrECFClass... eliminando vrias linhas de cdigo nas
     classes filhas

-- ACBrECFQuattro --
[+]   Novo modelo de ECF implementado: "Quattro" graas ao emprstimo de um
      modelo (Easy IIF) para testes, concedido pela Quattro Eletrnica Ltda.
      (por Daniel Simes)

-- ACBrECFICash --
[+]   Iniciado o desenvolvimento do modelo ECF IChash    (por Rodrigo Frhwirth)

-- ACBrECFBematech --
[*]   Melhorado suporte a VendaItem em MFD, usando o novo comando "63"
      (antes no imprimia a Unidade)
[*]   Mtodo AchaFPGDescricao no tanta programar a Forma de Pagamento
      dinamicamente caso ela no seja encontrada quando o modelo de ECF for MFD
      (MP25/MPTH), pois nesses modelos as Formas de pagamento no so zeradas
      aps a Reduo Z
[*]   Mtodo ProgramaFormaPagamento no mais modifica a Descrio da Forma de
      Pagamento para 1a Maiscula e o restante em Minsculas, e sem espaos...
      Essas recomendaes eram do suporte da Bematech mas foi removida a pedido
      de vrios usurios.
[+]   Adicionada a propriedade Publica "IsTH", que retorna Verdadeiro se o ECF
      for Trmico (impresso mais rpida)
[*]   Se o ECF for Trmico imprime todas as Linhas dos mtodos "CupomVinculado"
      e "RelatorioGerencial" em apenas um comando, (muito mais rpido)

-- ACBrECFDataregis --
[*]   Corrigido Bug na Venda de Item introduzido com a adio do Item Vendido
      na verso 0.8.3b (Imprime o Item Vendido porm sem espao entre o cdigo)
      - Bug Reportado por Fabio Farias
[*]   Mtodo Cancela cupom detecta o estado do ECF para permitir cancelamento
      com o Cupom aberto (por Anderson Rogerio Bejatto)
[*]   Modificado mecanismo de Gravao e Leitura de memria auxiliar (INI) para
      ficar mais rpida a rotina de venda (por Anderson Rogerio Bejatto)
[-]   Corrigido Bug na leitura de modelos de Cheques (por Airton Stodulski)
[-]   No reconhecia corretamente todas as verses de .03 e .05
      (por Airton Stodulski)
[*]   Inserido suporte a Venda de Item com 3 casas decimais
[*]   Mtodo VendeItem usar o Arredondamento sempre que necessrio
[-]   Corrigido bug em pulos de Linha em "ListaRelatorioGerencial" e
      "ListaCupomVinculado"
[-]   "SubTotal", no considerava Desconto / Acrscimo pendente informado em
      "SubtotalizaCupom"
[*]   Acerto das cordenadas para Impresso de Cheques
      (por Anderson Rogerio Bejatto)

-- ACBrECFSweda --
[-]   Corrigido BUG em VendeItem quando havia desconto  (por Ederson Selvati)
[*]   Melhorado o Suporte a linha ST (MFD), graas ao emprstimo de um modelo
      ST100, por "Mauro Sano" da Sweda
[*]   Descrio extra na linha ST pode atingir at 209 caracteres e no apenas
      40... corrigido.
[-]   Corrigido bugs na deteco da Verso e Modelo do ECF
[-]   Corrigido Bug de TimeOut durante a Reduo Z e Abertura de Cupom Fiscal
      Vinculado em ECFs Matriciais (9000, 7000)
[-]   Corrigido Bug em SubTotalizaCupom na linha 9000. Se houvesse Desconto o
      comando no era processado.
[-]   ProgramaFormaPagamento e ProgramaComprovanteNaoFiscal ajustados para a
      linha ST (MFD)
[-]   Corrigido Bug no tratamento de Pouco Papel e Fim de Papel, caso o Item
      vendido no seja impresso, uma exceo ser gerada.

-- ACBrECFDaruma --
[+]   Adicionada a compatibilidade com o modelo ECF FS2000
      (por: Carlos do Nascimento Filho)
[-]   Corrigido Bug em CarregaFormasPagamento e CarregaComprovantesNaoFiscais.
      posies livres (no programadas) eram lidas como vlidas
[-]   Corrigido Bugs em ProgramaFormaPagamento.
      - Deteco automtica do prximo ndice livre falhava
      - Programao de FPG com Vinculado no causava a programao de um
        Comprovante No Fiscal (equalizao)
[-]   ProgramaComprovanteNaoFiscal, modificada para no permitir cadastrar j
      existente
[*]   Mtodo interno "VerificaFimImpressao" otimizado para usar os flags da
      "Palavra de Status" , pois o mtodo antigo falhava algumas vezes
[-]   Corrigido Bugs de TimeOut em vrios comandos como "VendeItem",
      "RelatorioGerencial", etc
[-]   Corrigido Bug em "TotalPago", que retornava o Valor de "SubTotal" mesmo
      antes do cupom ser SubTotalizado         (bug reportado por Fabio Farias)

-- ACBrECFSchalter --
[-]   Corrigido Bug em Mtodo "ZeraVinculados", que no cancelava o Vinculo "0"
      (por Alan Lucas)

-- ACBrECFNaoFiscal --
[-]   Usando Arquivos ou portas paralelas, em algumas ocasies ocorria erro de
      I/O ao Ativar / Desativar o componente    (bug reportado por Fabio Farias)

-- ACBrUtil --
[*]   Funes StringToAsc e AscToSTring movidas de ACBrECFNaoFiscal.pas para
      ACBrUtil.pas
[+]   Adicionada a Procedure: CopyFilesToDir(FileMask: string; ToDirName :
        String; const ForceDirectory : Boolean = False)  ;
      Copia todos os arquivos especificados na mascara <FileMask> para o
      diretrio <ToDirName> Gera Exceo se no conseguir copiar algum dos arquivos.
[+]   Adicionada funo   FunctionDetect (LibName, FuncName: String;
                                         var LibPointer: Pointer): boolean;
      - til para carregar funes de DLL / SO dinamicamente                                    
[*]   Funes InPort e OutPort agora suportam a DLL inpout32.dll, que permite
      acesso direto a portas no XP /NT / 98  http://www.logix4u.net/inpout32.htm
[+]   Adicionada as funes:
      StringToDateTime( DateTimeString : String ) : TDateTime ;
      StringToDateTimeDef( DateTimeString : String ; DefaultValue : TDateTime )
        : TDateTime ;
      - Para evitar problemas com as diferenas entre o Separador de Data (/)
        entre os diversos S.O.  
[+]   Adicionada a funo:  PosLast(const SubStr, S: string): Integer;
        Retorna a ltima posio de "SubStr" dentro da String "S", ou 0 se no
        encontrar a "SubStr" dentro de "S"

-- ACBrValidador --
[-]   Inscrio Estadual de "AL" aparentemente tambm aceita o numero 6 no 3
      dgito, apesar do site do sintegra informar o contrrio... Corrigido

-- ACBr.INC --
[*]   Adicionada compatibilidade com o Delphi 2006     (por  Luciano Donato)

-- ACBrECFClass.pas --
[*]   Vrias modificaes nos mtodos LeResposta ocorreram para compatibilizar o
      ACBr com o Lazarus. O mecanismo de Threads foi substituido por algo mais
      simples, usando um Simples TTimer...
      - O funcionamento de BloqueiaTeclado continua usando a "tcnica" de uma
        janela ShowModal

-- ACBrBase.pas --
[*]   Permite modificar alguns parmetros da porta serial mesmo com ela aberta.
[-]   Modificaes em run-time nos parmetros da serial no eram efetivadas na
      SynaSer

-- SynaSer --
[*]  Fontes da Classe SynaSer atualizados para a verso: 006.003.007

Data: 09/05/2006
-- ACBrECFSweda --
[-] GavetaAberta: modificado para ficar de acordo com o Manual. Se o sinal
    estiver invertido use a nova propriedade ACBrECF.GavetaSinalInvertido
[-] Inserido pequeno Interavalo na leitura do Estado se o ECF for swdC
(por Daniel Simoes de Almeida)
[-] Corrigido Bug na deteco do Modelo / Verso quando Versao = 1.1.
(por Daniel Simoes de Almeida  e  Ederson Selvati)

Data: 13/03/2006
-- ACBrECFSweda --
[-] Removida a propriedade UsaDTR, Revisto mecanismo de comunicao usando o
    DTR. Se tiver problemas com o DTR use ACBrECF1.Device.Hardflow := True ;
	(por Daniel Simoes de Almeida)
	
Data: 16/12/2005
-- ACBrECFSweda --
[-] Adicionda a propriedade UsaDTR : Boolean (False)... Se ela for Verdadeiro
    o DTR  desligado para ler a resposta do ECF, (isso pode ser necessrio
    em alguns modelos de ECF. No metodo Ativar o componente tenta detctar
    o estado necessrio para o UsaDTR) (por Daniel Simoes de Almeida)

Data: 08/12/2005  
-- ACBrECFDataRegis --
[*] VerificaFimImpressao poderia disparar excesso com ECF off-line
    (por Daniel Simoes de Almeida)
[*] Removido tempo de alguns Sleeps a fim de agilizar a comunicaao com o ECF
    (experimental) (por Anderson Rogerio Bejatto)
[*] Mtodo Cancela cupom detecta o estado do ECF para permitir cancelamento
    com o Cupom aberto... (por Anderson Rogerio Bejatto)
[*] Modificado mecanismo de Gravao e Leitura de memoria auxiliar (INI) para
    ficar mais rpida a rotina de venda (por Anderson Rogerio Bejatto)

Data: 29/11/2005 
-- ACBrECFNaoFiscal --
[-] Corrigido bug no retorno da propriedade NomeArqINI.
    ( por Daniel Simoes de Almeida)

Data: 22/11/2005 
-- ACBRECFDataRegis --
[*] Adicionada a Impresso do Numero do Item antes do Cod.Produto no formato
    001.. (DataRegis no imprime n.Item, o que dificulta no cancelamento)
	(por Daniel Simes de Almeida)

Verso 0.8.3b  20/10/05
-- ACBrTER --
[+]   Criado novo componente para controle de MicroTerminais. Com o ACBrTER fica
      fcil interagir com Microterminais, enviando linhas para o display e
      recebendo as teclas pressionadas pelos usurios em um evento.
      - Implementado inicialmente para o modelo:  Wilbor
      ( Componente criado por: Gabriel Rodrigo Frones )

-- ACBrTroco --
[+]   Criado um novo componente para calculo detalhado de Troco, informando as
      Cdulas e moedas necessrias. Permite editar a lista de Cdulas/Moedas
      ( Componente e Programa Demo enviado por: Anderson Rogrio Bejatto )

-- ACBrBAL --
[+]   Criado novo componente para interao com Balanas Eletrnicas.
      Atravs do mtodo "LePeso : Double"  possvel obter o peso aferido pela
      Balana... Tambm h a possibilidade de monitorar o envio automtico de
      peso em balanas que possuem essa caracterstica, ligando a propriedade
      boleana "MonitorarBalanca". A cada peso lido o evento "OnLePeso" ser
      disparado.
      - Inicialmente implementamos os modelos Filizola e Toledo PrixIII
      ( Componente e Programa Demo elaborados por Fbio Farias,
        Daniel Simes de Almeida e Walmir Silva)

-- ACBr_D5.dpk --
[+]   Criado novo package para compatibilizar o projeto com o Delphi 5
[+]   Adicionada nova Unit ACBrD5.pas contendo todas as Functions e Procedures
      que no existiam no Delphi 5, permitindo a compilao...
      - Essa Unit NAO  utilizada ou compilada nas verses do Delphi 6 acima.
      - Essa Unit NAO  LGPL pois contem cdigos de propriedade da Borland
[*]   Quase todos os fontes do projeto foram revisados para permitir a
      compilao condicional no Delphi 5 usando {$IFDEF Delphi6_UP}

-- ACBr_LCL.lpk --
[+]   Criado novo package para compatibilizar o projeto com o Lazarus (FPC)
      http://www.lazarus.freepascal.org/
      - Compatibilidade feita por: Douglas Fernando Scheibler
[*]   Vrios fontes do projeto foram revisados para permitir a compilao
      condicional no Lazarus usando {$IFDEF FPC}

-- ACBrECF --
[*]   Mtodo "VendeItem" modificado para permitir informar o Tipo da Alquota
      - O parmetro TIPO  opcional, a passagem de parmetros antiga continua
        funcionando
      - O Tipo pode ser informado na mesma String, no final da alquota,
         exemplos: 18T (18% ICMS) , 2,5S  (2,5% ISS)
      - Recurso adicionado para evitar conflito de alquotas com o mesmo valor
        porm de Tipos diferente: Exemplo: 01 12% ICMS,   02 12% ISS.
        Usando "12T", o ACBrECF usa a alquota 12 do ICMS, "12S" a do ISS
[*]   Mtodo "AchaICMSAliquota" modificado para receber o parmetro Tipo.
      AchaICMSAliquota( ValAliquota, Tipo = ' ')
      Se o Tipo no for informado assume (vazio), e a busca por alquota  feita
      sem se importar com o Tipo de alquota
[*]   Melhorado suporte a todos os comandos que recebem uma Double. O componente
      ir ajustar as Decimais dos valores para o mximo permitido pelo ECF
      usando a funo RoundTo()
[-]   Corrigido Bug Inserido verso 0.8.2b. mtodo FechaCupom e outros mtodos
      que recebiam um parmetro Observao : String. O caracter de Pulo de Linha
      na String ( representado por #10  ou  | (pipe)) no era processado.
      - Bug reportado por: Cludio Borba
[*]   No Mtodo ReduoZ, era obrigatria a passagem de um parmetro
      TDateTimTDateTime, que agora,  opcional.
      - Para os ECFs em que esse parmetro  obrigatrio ser usado "now" caso
        o parmetro no seja informado.
      - Nos ECFs em que o parmetro NAO  obrigatrio o comando enviado ao ECF
        no conter String com a DataHora caso o parmetro no seja informado.
[*]   Mtodo "SubtotalizaCupom" modificado para receber como 2o parmetro a
      Mensagem de Rodap do Cupom... (Permite a omisso dessa parmetro)
      - Em alguns ECFs (como a DataRegis)  necessrio informar a Mensagem antes
        dos pagamentos pois o ECF no possui um comando para Fechamento de Cupom
        O Fechamento  executado assim que o Total de pagamentos atinge o Total
        do Cupom
      - Nos ECFs que no usam a Mensagem de Rodap nesse mtodo ela ser
        acumulada internamente e usada em FechaCupom, caso nenhuma mensagem
        seja informada em FechaCupom
[+]   Criado um novo mecanismo de espera ao trmino da Impresso. Alguns ECFs
      respondem ao comando muito antes do trmino da impresso, e isso poderia
      causar problemas aos comandos enviados na sequencia.
      - Adicionada a propriedade "AguardaImpressao", quando ela  ajustada para
        True, o mtodo "LeReposta" ir efetuar chamadas a funo
        "VerificaFimImpressao" at que ela retorne True
      - "VerificaFimImpressao" foi implementada em cada Classe de ECF em substi-
        tuio ao mtodo "EnviaComandoEspera"
[+]   Adicionado mtodos e propriedades para Processar as Lista Unidades de
      Medida, presente apenas em alguns modelos de ECF. (DataRegis)
      procedure CarregaUnidadesMedida
      Property UnidadesMedida : TACBrECFUnidadesMedid
      function AchaUMDDescricao( Descricao : String ) : TACBrECFUnidadeMedida
      function AchaUMDIndice( Indice : String ) : TACBrECFUnidadeMedida
      Procedure ProgramaUnidadeMedida( var Descricao: String)
      - O programa ECFTeste.dpr foi modificado para exemplificar o uso desses
        novos mtodos

-- ACBrECFNaoFiscal --
[-]  Corrigido Bug na Abertura do dia atravs da LeituraX. ECF no ficava no
     estado estLivre mesmo aps a LeituraX
     -  Bug reportado por Fbio Farias
[-]  Leitura do comando de Abertura de gaveta do arquivo INI no era
     decodificada corretamente
     -  Bug reportado por Fbio Farias
[-]  Troco no cupom no era subtrado da forma de Pagamento: 01-Dinheiro
     -  Bug reportado por Fbio Farias
[-]  Corrigido Bug em Impresso de Relatrio Gerencial... A primeira linha no
     era impressa...   - Bug Reportado por:  Anderson Rogrio Bejatto
[-]  Corrigido consumo excessivo de CPU em Venda com Muitos Itens
     - Bug Reportado por:  Anderson Rogrio Bejatto
[*]  Relatrio Gerencial modificado para imprimir apenas um cabealho,
     semelhante aos ECFs novos (no imprime mais uma Leitura X antes do Relat.)
[+]  Propriedade "Operador" ser gravada no arquivo ACBrECFxxx.INI
[*]  Rodap padro modificado para incluir as Informaes: Verso do ACBr e
     Operador
[*]  Modificado o Texto impresso aps o trmino das Formas de pagamento de
     "Valor Recebido" para "S O M A"...
      - Essa linha ser impressa apenas se tiver mais de 1 pagamento no Cupom

-- ACBrECFSweda --
[-]  Corrigido BUG na Rotina EnviaComando, que causava TimeOuts em vrios
     mtodos e propriedades. ( O Controle de Fluxo de Hardware estava errado)
[*]  Modelo "ecfSweda" Compatibilizado com a srie ST (MFD). Testes realizados
     usando o emulador "Sweda SIM Connect"
[*]  Rotinas testadas e compatibilizadas com a srie 9000. Testes realizados em
     um ECF IF-S 9000IIIE ver 1.0
[-]  Corrigido Bug em "VendeItem", em alguns valores Qtd x Preo Unitrio a
     funo Trunc() do Delphi apresentava problemas, calculando errado o Total.
[*]  Modificado o sistema de deteco de Firmaware atravs da propriedade
     Publica "Versao : TACBrECFSwedaVersao"
[*]  Modificado o mecanismo de Espera do trmino da Impresso usando a nova
     propriedade "AguardaImpressao:=True" e a funo "VerificaFimImpressao"
[*]  Removido o mtodo EnviaComandoEspera
[*]  Adicionado suporte a Impresso de cheques

-- ACBrECFBematech --
[*]  Modificado o mecanismo de Espera do trmino da Impresso usando a nova
     propriedade "AguardaImpressao:=True" e a funo "VerificaFimImpressao"
[*]  Removido o mtodo EnviaComandoEspera
[-]  Corrigido BUG em CarregaFormasPagamento. Todas as formas carregadas eram
     convertidas para Maisculas   (Bug reportado por: Ederson Selvati)

-- ACBrECFDaruma --
[*]  Modificado o mecanismo de Espera do trmino da Impresso usando a nova
     propriedade "AguardaImpressao:=True" e a funo "VerificaFimImpressao"
[*]  Removido o mtodo EnviaComandoEspera
[-]  Corrigido BUG na carga de Formas de Pagamento e CNF. A rotina anterior
     carregava todas as formas de pagamento... mesmo as que no haviam sido
     programadas   (bug corrigido por Ederson Selvati)

-- ACBrECFDataregis --
[*]  Ajuste de todos os mtodos para compatibilizar com a verso 02.05
     (por: Anderson Rogrio Bejatto)
[*]  Modificado o mecanismo de Espera do trmino da Impresso usando a nova
     propriedade "AguardaImpressao:=True" e a funo "VerificaFimImpressao"
[*]  Removido o mtodo EnviaComandoEspera
[*]  VendeItem, Adicionado o Numero do Item Vendido antes da impresso do cdigo
     (DataRegis no imprime o No do Item, o que dificulta no Cancelamento de
      de Item)

-- ACBrECFMecaf --
[*]  Corrigido BUG em VendeItem... para a MECAF imprimir o Item em 2 linhas (e
     e no em 3 linhas) ela deve restringir a descrio em 20 caracteres
     (Bug Reportado por Rildecy de Queiroz Borba)
[*]  Compatibilizado com a verso 301
[*]  Corrigido BUG. Quando a reduo z ficava pendente de um dia para o outro
     o ECF ficava em estDesconhecido. (Gabriel Fernandes - Duel Informtica)

-- ACBrECFUrano --
[+]   Iniciado o desenvolvimento do modelo Urano (por Aurimenes Apolonio Silva)
      - Mtodos de Venda e Relatrios concludos.

-- ACBrCHQ --
[-]   Arquivo BemaFi32.INI, no era lido e processado mesmo quando existente na
      mesma pasta do Executvel.
      - Esse Bug tambm afeta o componente ACBrECF quando usando um modelo
        ecfBematech ( apenas no mtodo ACBrECF.ImprimeCheque )

-- ACBrCHQSchalter (ImpreCheque) --
[*]   Corrigido mtodos ImprimeLinha e ImprimeVerso

-- ACBrBase --
[*]   Criado {$DEFINE ThreadEnviaLPT}, que quando desligado permite desativar a
      ThreadEnviaLPT. Padro  desabilitar a Thread por motivos de performance
      - Use esse opo se voc deseja ligar a Thread
[*]   Adicionada funo "IIsTXTFilePort" que retorna Verdadeiro se o contedo da
      Porta termina com ".TXT"
[*]   Caso a porta seja um arquivo TXT (IsTXTFilePort) o componente mantm os
      dados no arquivo, acrescentando as linhas "impressas" no final

-- ACBrUtil --
[+]   Adicionada a Funo  TruncFix( X : Real) : Integer
      Essa funo  usada para corrigir o bug de otimizao da funo Trunc()
      original do Delphi


Verso 0.8.2b  05/07/05
-- ACBrECF --
[-]   Corrigido BUG em ArredondaPorQtd. Em algumas ocasies a Qtd era adicionada
      desnecessariamente. Ex: Qtd = 1, Preo = 1,99 o resultado impresso era:
      1,001 x 1,99 = 1,99
      - Bug causado por Erro na otimizao da funo Trunc do Delphi:
      ( http://www.activedelphi.com.br/modules.php?op=modload&name=News&file=
         article&thold=-1&mode=flat&order=0&sid=87 )

[*]   Melhorado suporte a todos os comandos que recebem uma String livre para
      Observao, removendo os Acentos e ajustando as quebras de linha, a fim
      de no causar erros na hora da Impresso.

-- ACBrECFDataRegis --
[+]   Iniciado o desenvolvimento do modelo DataRegis (por Airton Stodulski)

-- ACBrECFBematech --
[-]   Corrigido BUG em FechaCupom. Linhas de Observao eram impressas com
      alinhamento errado.                    ( Bug reportado por: Erique Costa )
[-]   Corrigido BUG em AbreCupom na MP25 / MFD. Mesmo que CPF/CNPJ no fosse
      informado era impressa a linha de CPF/CNPJ.
      ( Bug reportado por: Anderson Rogrio Bejatto )

-- ACBrECFMecaf --
[*]   Fontes adaptados para suporte da Versao FCP201 da MECAF (antiga)
[-]   Corrigido BUG em FechaCupom. Linhas de Observao eram impressas com
      alinhamento errado.        (Bug reportado por Licerio Jos Rodrigues Neto)
[-]   Corrigido BUG em Estado. No incio do dia Estado sempre constava como
      estBloqueda                (Bug reportado por Licerio Jos Rodrigues Neto)

-- ACBrECFDaruma --
[*]   Inicio do desenvolvimento para suporte a Daruma MFD (no concludo por
      falta de documentao )

-- ACBrECFSweda --
[-]   Corrigido alguns Bugs nos ECFs verso 0.3, em VendeItem e
      EfetuaPagamento        (Bugs reportados por Licerio Jos Rodrigues Neto)

-- ACBrECFSchalter --
[-]   Corrigido Bug na VendeItem, que interpretava errado Produtos vendidos sem
      sem nenhuma casa decimal como 3 casas decimais.
      (Bug corrigido por Valmor Florez)

-- ACBrECFNaoFiscal --
[-]   Variveis Subtotal ou TotalPago poderiam, conter valores com mais de 2
      decimais, o que poderia causar problemas nas comparaes dos valores.
      (Bug reportado por Licerio Jos Rodrigues Neto)

-- ACBrValidador --
[+]  Adicionada a propriedade Publica DigitoCalculado readonly, que assim como
     MsgErro, ter um valor definido apenas aps chamar o mtodo Validar

-- ACBrCHQ --
[-]  Corrigido BUG no envio da Data em Linux (data como dd-mm-aa)
     (Bug reportado por Matheus Nogueira)

-- ACBrUtil --
[+]   Adicionada as funoefunes:
      function OnlyNumber(const Value: string): String;
      - Retorna uma String apenas com os char Numricos contidos em <Value>
      function OnlyAlpha(const Value: string): String;
      - Retorna uma String apenas com os char Alpha contidos em <Value>
      function OnlyAlphaNum(const Value: string): String;
      - Retorna uma String apenas com os char Alpha-Numericos contidos em <Value>

[*]   Funo Poem_Zeros(Texto : String; Tamanho : Integer) modificada para
      permitir Strings com numeros (Texto) maiores do que o mximo permitido
      pelo tipo Inteiro.
	  
Data: 01/06/2005 
-- ACBrCHQ --
[*] Incluso do modelo ACBrCHQSotomaq (por Daniel Simoes de Almeida) 
	  
Data: 25/05/05
-- ACBrBAL --
[*] Adaptado para funcionar com vrios modelos de Filizola (MF, BP) permitindo
    variao na posio do ponto flutante (por: DSA)

Verso 0.8.1b  01/04/05
-- Estrutura de Diretrios --
[*]   Alterada a estrutura de diretrios e pacotes para facilitar a distribuio

-- ACBrMonitor --
[+]   Lanada a primeira verso do programa ACBrMonitor.
      - Permitir o acesso remoto dos componentes ACBr por TCP/IP ou TXT, neces-
        sario em aplicaes rodando em ambientes de "Terminal Burro" como por
        exemplo WTS (Windows Terminal Server), ou LTS, SSH, Telnet
      - Permite que outras linguagens que consigam usar a comunicao por TCP/IP
        ou ler e criar arquivos TXT, interagir com os componentes ACBr

-- ACBrECF --
[+]   Novo modelo de ECF implementado:   ecfSweda
      - Deve ser compativel com os seguintes modelos da Sweda:
        A - IF-7000III, B - IF-7000I,  C - IF-7000II, D - IF-7000IE,
        E - IF-7000IIE, F - IFS-9000,  G - IFS9000IIIE e todas as verses do
        modelo IF-7000I (0.03, 1.0, 1.5)
      - Testado apenas em uma Sweda IFS-7000I v1.5  Favor reportar bugs em
        demais modelos.
[+]   Novo roteiro de teste de ECF (Source\Pascal\Demo\RoteiroTestesECF.TXT).
      Ajude a testar o ACBr rodando o Roteiro de testes no seu equipamento.
[+]   Adicionado evento OnMsgPoucoPapel: TNotifyEvent;  que  acionado sempre
      que a msg de pouco papel precisa ser exibida. Para manter a funcionalidade
      anterior, se nada for atribudo a esse evento, uma MessageDlg ser exibida
      com a mensagem: "Pouco Papel"
[+]   Novas funes para localizar o ECF automaticamente:
      Function AcharECF( ProcuraModelo: Boolean = true;
                         ProcuraPorta : Boolean = true;
                         ATimeOut : Integer = 0): Boolean ;
      Function AcharPorta(ATimeOut: Integer = 0): Boolean;
      - Se a propriedade Porta = '' (vazia) ou 'procurar' o Componente ir
        tentar localizar o ECF definido em Modelo nas portas de COM1 a COM6
[+]   Adicionada a propriedade   ArredondaPorQtd: Boolean (Published). Com essa
      nova propriedade  possvel Arredondar sempre, mesmo que o ECF no permita
      Arredondamento (os novos ECF's MFD no permitem arredondar). Nesse caso o
      arredondamento  feito, somando 0.001 na QTD do Item Vendido at o valor
      Truncado ser igual ao Valor Arredondado.
[+]   Adicionada a propriedade   HorarioVerao: Boolean (readonly) que l o Flag
      de Horario de Vero do ECF
[+]   Adicionada a propriedade   Arredonda: Boolean (readonly) que l o Flag de
      Arredondamento do ECF
[+]   Adicionada a propriedade   NumLoja : String  (4) (readonly)
      - Apenas Bematech retorna corretamente o NumLoja, em todos outros modelos
        ser retornado '001'
[+]   Adicionada a propriedade   NumCRO  : String  (4) (readonly)
      - No funciona na Schalter (retorno padro '001')
[+]   Adicionado Metodos para Impresso e Captura da Memria Fiscal.
      Procedure LeituraMemoriaFiscal( DataInicial, DataFinal : TDateTime ) ;
      Procedure LeituraMemoriaFiscal( ReducaoInicial, ReducaoFinal : Integer);
      Procedure LeituraMemoriaFiscalSerial( DataInicial, DataFinal : TDateTime;
         var Linhas : TStringList ) ;
      Procedure LeituraMemoriaFiscalSerial( ReducaoInicial,ReducaoFinal:Integer;
         var Linhas : TStringList ) ;
      - Os mtodos usam a Sobrecarga. A LeituraMemoriaFiscalSerial retornar o
        contedo da leitura em um TStringList atravs do parmetro "Linhas"
[+]   Adicionada Procedure MudaArredondamento(Arredondar: Boolean);
      - Alguns modelos de ECF no possuem ou no permitem ligar o Arredondamento
      - Funciona somente aps Reduo Z e antes da 1a venda.
[*]   Procedure VendeItem agora permite que o parmetros AliquotaICMS seja
      especificado em Valor da Aliquota ou Indice da Aliquota.
      - Para especificar em Indice use o prefixo 'T' Exemplo:
        'T03' = Aliquota na posiao 03
      - Se AliquotaICMS iniciar com 'I', 'F' ou 'N' usa os respectivos totali-
        zadores internos para Isenao, SubstutiaoTributaria ou NaoIncidndia.
      - Se for um Numero vlido o componente ir usar o Indice da primeira
        aliquota equivalente ao Numero encontrada.. Exemplos: 18  ,  2.26  , 12 
[+]   Atendendo a pedidos, foi adicionado o mtodo de Programao de Alquotas
         Procedure ProgramaAliquota( Aliquota : Double; Tipo : Char = 'T';
            Posicao : String = '') ;
      - Funciona somente aps Reduo Z e antes da 1a venda e/ou Leitura X
      - Tipo pode ser: 'S' para Alquota de Servio (ISS) ou
        'T' (default) para ICMS
      - Se a posio no for informada (vazio = default) o componente achar a
        prxima posio livre
[*]   Adicionada o campo "Tipo : Char" em TACBrECFAliquota
      - Se TACBrECFAliquota.Tipo = 'T' alquota de ICMS, 'S' alquota de ISS.
[+]   Adicionado o mtodo de Programao de Formas de Pagamento (FPG)
         Procedure ProgramaFormaPagamento( var Descricao: String;
            PermiteVinculado : Boolean = true; Posicao : String = '') ;
      - Funciona somente aps Reduo Z e antes da 1a venda e/ou Leitura X
      - Se a posio no for informada (vazio = default) o componente achar a
        prxima posio livre
      - Na Daruma e Schalter, se PermiteVinculado for True, tambm ser
        programado um comprovante no fiscal (CNF) com a mesma descrio.
      - Bematech e Mecaf: no usam o parmetro PermiteVinculado.
[+]   Adicionado o mtodo de Programao de Comprovantes no Fiscais (CNF)
         Procedure ProgramaComprovanteNaoFiscal( var Descricao: String;
            Tipo : String = ''; Posicao : String = '') ;
      - Funciona somente aps Reduo Z e antes da 1a venda e/ou Leitura X
      - Tipo pode varias de acordo com o Modelo do ECF. Se vazio, assume o
        Default de cada ECF
        - Bematech e Mecaf: no usam o parmetro Tipo.
        - Daruma: 'V'  Comprovante Vinculado,
                  '+'  Entrada de Recursos,
                  '-'  Saida de Recursos...
                  - Se vazio assume: 'V'. Especifique apenas uma das opes.
        - Schalter: 'D' - Permite Desconto em Item.
                    'A' - Permite Acrescimo no Subtotal
                    'C' - Permite Cancelamento de Item
                    'P' - Obriga forma de Pagamento
                    'Vnn' - Obriga emisso de vinculado na Forma de Pagamento nn
                  - Se vazio assume Default = "DAC".
                  - Se usada a opo V todas as outras opes so ignoradas.
                    Exemplos:  V04 -> Torna a Emisso do Cupom Fiscal Vinculado.
                                      obrigatria para a Forma de Pagamento 04
      - Se a Posio no for informada (vazio = default) o componente achar a
        prxima posio livre

[-]   Corrigido Bug em Impresso de Relatrio Gerencial e Cupom NO fiscal
      Vinculado. Caso houvesse algum erro dentro desses relatrios no era
      gerada nenhuma exceo.

-- ACBrECFBematech --
[+]   Implementada correo para BUG detectado no comando TotalPago (35 22) das
      novas impressoras MP25FI e MFD verso 01.00.00.
      - Esse modelo ir retornar o Total Pago sempre igual ao Subtotal, o que
        pode ocasionar problemas em algumas aplicaes.
      - A correao  feita por meio de uma vrivel Interna, totalizando os
        pagamentos efetuados no Cupom. Portanto, se o programa for re-iniciado
        durante a fase de Pagamento do Cupom o problema ainda ocorrer.
[-]   Mtodo FechaRelatorio, gerava exceo caso a Impressora no estivesse com
      Relatrio Gerencial, ou CV aberto.
[-]   Falhava ao ler a Propriedade "NumSerie" em impressora no MFD.
[-]   CarregaAliquotas retornava valores errados se a Impressora tivesse mais
      de 8 alquotas cadastradas.
[-]   Procedure CorrigeEstadoErro gerava exceo em MFD pois essa no possui o
      cmd #70

-- ACBrECFDaruma --
[+]   Implementado mtodo: ImpactoAgulhas, que permite mudar a fora de Impacto.
[-]   Corrigido BUG em "FechaRelatorio", que no conseguia fechar corretamente
      um Cupom NAO Fiscal Vinculado, na Daruma FS345 - 1.20
      (Bug reportado por Aurimenes Apolonio Silva)

-- ACBrECFSchalter --
[-]   Corrigido Bug na AbreCupom, que omitia o Endereo do Emissor,
      (Bug Reportado por: Valmor Florez - Evoluthiva)
[*]   Inserido novo comando que permite imprimir o CNPJ / CPF do Cliente, na
      AbreCupom

-- ACBrECFMecaf --
[-]   Propriedade "Estado" no era detectada corretamente em algumas situaes,
      retornando "estRelatorio" na maioria das vezes.

-- ECFTeste.dpr --
[*]   Programa de teste do ACBrECF atualizado para testar os novos recursos do
      componente. (QECFTeste tambm foi atualizado)

-- ACBrLCB --
[-]   Corrigido bug em ACBrLCB. Quando o sufixo enviado pelo leitor era diferente
      do sufixo informado no componente, gerava erro de TimeOut e no lia o
      cdigo. Agora o cdigo  lido mesmo sem o sufixo ou com o sufixo errado.
      IMPORTANTE: Informar o sufixo correto para o componente  importante para
      ler corretamente um cdigo de cada vez. O sufixo  quem separa os cdigos
      lidos, sem o sufixo o componente pode ler 2 cdigos simultaneamente.

-- ACBrDIS --
[+]   Adicionado suporte a Linux para o Display de Mensagens modelo: Gertec Teclado
      - A comunicao com a Porta AT no  to rpida quando a Porta Serial,
        por isso, evite o uso excessivo de textos "animados"
      - A funo TxKeyboard(), usada nesse modelo, funciona normalmente em Win9x,
      - XP /NT /2000: deve-se usar um device driver que permita acesso direto
        a porta AT (disponvel em www.gertec.com.br)
      - Linux:  necessrio ter privilgios de ROOT para acessar /dev/port
        (use: su   ou   chmod u+s SeuPrograma )

-- ACBrValidador --
[+]   Adicionada rotina de verificao de CEPs
      (por Rennes Moreira Pimentel - InforSystem)
[+]   Adicionado verificao de CARTOES de Crdito, extrada do site:
      www.tcsystems.com.br
      - Testada com os cartes: (Dinners, Credicard, Visa, American Express)
[+]   Adicionada a propriedade: ExibeDigitoCorreto : Boolean ( default False )
      - Se houver erro no Digito Verificador e essa propriedade for True, o
        Digito calculado (correto) ser exibido na Mensagem de Erro.
[-]   Corrigido BUG na verificao de I.E. do Estado de GO para inscries na
      faixa de '101031050' a '101199979'

-- ACBrUtil --
[+]   Adicionada a Function   FilesExists(FileMask: string) : Boolean ;
[+]   Adicionada a Procedure  DeleteFiles(FileMask: string)  ;
[+]   Adicionada a Function   CopyFileTo(AFromFileName, AToFileName : String;
                                const AFailIfExists : Boolean = true) : Boolean;
[+]   Adicionada a Procedure: RunCommand(Command: String; Params: String = '';
                                Wait : Boolean = false; WindowState : Word = 0);

-- ACBrCalculadora --
[-]   Posio na tela da Calculadora no era mantida.

-- ACBrDevice --
[*]   Funo EnviaString quanto em Porta  Paralela ou Arquivo usa Thread para
      detectar se os Dados esto sendo "gravados" com sucesso. Evitando que o
      programa "congele" quando a Porta/Arquivo no est pronta.
[*]   Implementada deteco de EmLinha quando Porta  Paralela ou Arquivo,
      usando mecanismo de Thread citado acima.
[*]   Porta Paralela ou arquivo  aberto e fechado em seguida quando h a neces-
      sidade de enviar dados. Antes a Porta/Arquivo permanecia aberta enquanto
      ACBrDevice estivesse Ativo, isso retardava a impresso da ultima linha.

-- ACBr.inc --
[*]   Definio VisualCLX agora funciona automaticamente (identificando se QTypes
      ou QForms foram carregadas)
[*]   Suporte para identificao do Kylix 1, 2 e 3 e seus recursos
[*]   Suporte para identificao do Delphi 8 e 9 e seus recursos
[*]   Suporte para identificao do Free Pascal (FPC) e do Lazarus


Verso 0.07a  17/10/04
-- ACBrDIS --
[+]   Novo componente para Display de Mensagens para Cliente. Possui Procedures
      para exibir textos "animados" no display, usando uma Thread prpria para
      no atrapanhar o desempenho da Aplicao. VEJA o demo DISTeste.EXE
      - Modelo: disGertecSerial -  testado ok.
      - Modelo: disGertecTeclado - Por enquanto, funciona apenas em Win9X. Ir
        gerar exceo em WinXP/2000/NT ou Linux. Isso se deve ao fato da rotina
        que envia os caractres para a porta do Teclado ser escrita em ASSEMBLER
        e os SO mencionados acima no permitem acesso direto a porta do teclado.
[+]   Novo Demo para testar o ACBrDIS: DISTeste.dpr (VCL) e QDISTeste.dpr (CLX)

-- ACBrLCB --
[+]   Novo componente para Leitores de Cdigo de Barra Seriais.
      - Ajuste os parametros seriais de acordo com o seu modelo.
      (padro 9600,8,N,1).  O sufixo (caracter adicionado pelo Leitor) tambm
      deve ser informado corretamente (geralmente igual a #13  ou #13,#10).
      - Atravs da propriedade UsarFila  possvel ter um controle apurado de
        todos os cdigos informados pelo Leitor.
[+]   Novo Demo para testar o ACBrLCB: LCBTeste.dpr (VCL) e QLCBTeste.dpr (CLX)
[+]   Novo Emulador de Leitor Serial.  Se voc no dispoem de um Leitor serial
      para testes, esse emulador pode ser bem til. Use uma porta Serial dife-
      rente da especificada no ACBrLCB. O Emulador envia Strings pela Serial
      simulando um Leitor de Cod.Barras. Use o mesmo cabo utilizado pelos
      Emuladores de ECF para ligar as duas Portas Seriais

-- ACBrEnterTab --
[+]   Novo componente somente para CLX. Tem como finalidade traduzir a tecla
      ENTER como se fosse a tecla TAB, para poder mudar de campos com a tecla
      ENTER.  necessrio um ACBrEnterTab para cada Form a ser manipulado.
      - No h verso VCL, pois j existe o componente "JvEnterAsTab" da biblio-
        teca JEDI ( http://jvcl.sourceforge.net ).
      - Para ser compatvel com Linux esse componente NAO usa captura de
        mensagens ou chamadas a API. Ele utiliza KeyPreview e OnKeyPress do Form
        dono (Owner) do componente. Entretanto se houver algum evento OnKeyPress
        programado pelo usurio, ele continuar funcionando normalmente.

-- ACBrECFSChalter --
[-]  Corrigido retorno de DataHora (gerava exceo)
[-]  Corrigido retorno de NumSerie, que retornava 2xchr(0) no final do nmero.
[-]  Cancelamento de Cupom no era possvel se a Impressora estivesse em modo
     de Pagamento e com o Pagamento j finalizado.
[-]  CarregaComprovantesNaoFiscais (CNF) no estava lendo Flag de Permite-
     Vinculado e nem a Forma de Pagamento associada ao CNF,

-- ACBrECFDaruma --
[-]  Estado da Impressora sempre retornava Bloqueada
[-]  Venda de Item com Descriao Grande no funcionava
[-]  Bloquear Mouse / Teclado  e  Exibir Msg de Aguarde no funcionavam, pois a
     DARUMA responde muito antes da impressao acabar, finalizando a espera...
     Corrigido com adiao da procedure EnviaComandoEspera() como na BEMATECH.
[-]  Abertura de Gaveta de Dinheiro gerava TimeOut (nesse comando no h nenhuma
     resposta da impressora)

Verso 0.06a  14/09/04
-- ACBrCHQ --
[+]  Novo componente para manipular Impressoras de Cheques. Fabricantes suporta-
     dos: Bematech, Chronos, Schalter, Perto, ECF's, Imp.Comum.
     - Imp.Comum: Transforme aquela velha matricial em uma Impressora de Cheques
       O componente envia comandos diretamente para a porta das impressoras(LPT1
       ,LPT2, LPTn) usando "AssignFile()", e comandos EPSON ESC/P2 para configu-
       rar o Lay-Out da pgina do cheque. Portanto,impressoras "for Windows" no
       devem funcionar..
     - Para usar a impressao de cheques em ECF's  necessrio um ECF 2 estaoes
       e um componente ACBrECF configurado para o Modelo do ECF.
     - Modelo Bematech. Testada por "Everton H. Cardoso" da Bematech S/A - OK
     - Modelo Chronos. Testada por mim mesmo - OK
     - Modelo Schalter. No testado. (mas para minha surpresa, a Impressora
       Chronos funciona perfeitamente com os comandos da Schalter).
     - Modelo Perto. Unit no est finalizada. Todo o desenvolvimento foi
       baseado em Manuais, mas no pude "debugar" a Unit por no ter um Equipa-
       mento disponvel. Testes realizados pela Perto S/A por Miguel Silva,
       acusaram o funcionamento incorreto. Terminarei assim que uma impressora
       PertoCheck estiver disponvel....

-- ACBrECF --
[+]  Mais 3 impressoras Suportada pelo ACBrECF - Daruma, Schalter e Mecaf.
     Considerando os Modelos que utilizam chip-set da Mecaf o ACBrECF agora
     suporta os ECF's:  Bematech, Daruma, Schalter, Mecaf, (Elgin, Digiarte,
     Zanthus, Acr, Aoki, Chronos, Promcomp, TrendsSTS, Unigraph). Alm do modelo
     NAO FISCAL que  um Emulador de Impressora Fiscal em matriciais comuns
     (leia Nota legal durante o uso do Emulador)
     - Infelizmente no pude testar nenhum dos 3 ECF's lanados, por no ter um
       exemplar no momento. Entretanto, o cdigo desses Modelos de ECF's foram
       migrados de uma rotina em Clipper 5.01 (DOS) que tambm funcionam usando
       a comunicao direta na porta Serial.
     - Se voc possuir algum dos modelos de ECF citados acima, eu ficaria muito
       agradecido em saber o resultado dos seus testes...
       Por favor mande um e-mail...

[-]  As rotinas de Relatrio Gerencial e Cupom Fiscal Vinculado NAO estavam
     imprimindo a Linha 1 do Relatrio.  
[+]  Novo Evento OnAguardandoRespostaChange. Que  executado toda vez que o
     valor da propriedade AguardandoResposta for modificado. Muito til para
     bloquear os controles visuais e impedir que o usurio tente enviar novos
     comandos se o anterior ainda no terminou.
[+]  Adicionada propriedade "ComprovantesNaoFiscais" do tipo TObjectList,
     contendo a descriao de todos os CNF's  programados na Impressora.
     - Adicionado Metodo:  CarregaComprovantesNaoFiscais
     - Adcinada as funes: AchaCNFDescricao e AchaCNFIndice
[*]  Adicionada Sobrecarga nos Metodo CupomVinculado e AbreCupomVinculado com
     verso que  possivel informar o CodCompravanteNaoFiscal (necessrio em
     alguns modelos de ECF).
[*]  Removida Exceo que era disparada quando novo comando era solicitado e
     comando anterior ainda no havia sido concluido.
[*]  Abertura de Cupom zera o Tempo de mensagem para pouco papel, ou seja, se
     estiver com pouco papel, sempre haver alerta no caso de Abertura de Cupom
[*]  Propriedade (subcomponente) 'Serial' passou a se chamar 'Device'

-- ACBrECFBematech --
[*]  NumSerie adaptada para retornar 15 ou 20 carateres conforme a verso do ECF

-- ACBrGAV --
[*]  Propriedade (subcomponente) 'Serial' passou a se chamar 'Device'

-- ACBrDevice --
[+]  Adicionada propriedade Handshake, para facilitar a definicio do Handshake
     necessrio para cada equipamento. (RTS/CTS, DTR/DSR, XON/XOFF).
     Essa propriedade est ligada diretamente a HardFlow (RTS/CTS) e SoftFlow
     (XON/XOFF)
[+]  Adicionado Metodo ImprimePos( Linha, Coluna, AString) para facilitar a
     impressao direta de documentos em Matriciais.
     - Propriedade PosImp : Tpoint, contem a cordenada atual da Impressora.

Data: 30/08/2004
-- ACBrCHQ --
[*]Primeira Versao ACBrCHQImpressoraComum. (por  Daniel Simoes de Almeida)

Data: 24/08/2004 
ACBrCHQ --
[*] Primeira Versao ACBrCHQImpressoraECF. (por Daniel Simoes de Almeida)

Verso 0.05a  20/08/04
[+] Demos de todos os componentes ACBr j compilados para Linux e Windows
    adicionados no pacote final. DemosLinux_X.XXx.ZIP e DemosWin32_X.XXx.ZIP.
    Onde X.XXx  a verso do ACBr. Os Demos Win32 so VCL, portanto nao devem
    precisar de nenhuma biblioteca. Os Demos Linux devem precisar da QT
    (libborqt-6.9-qt2.3.so) disponivel no Kylix
-- ACBrValidador --
[+] Novo Componente para validao de diversos documentos como por exemplo:
    CPF, CNPJ, Num.Cheques, PIS, Inscrio Estadual (todos os estados).
    Considerando as Inscries Estaduais, esse componente verifica atualmente 31
    documentos diferentes. Novos documentos podero ser adicionados...
[+] Novo Demo para testar o ACBrValidador: ValidadorTeste.dpr (VCL) e
    QValidadorTeste.dpr (CLX)
-- ACBrExtenso --
[+] Novo Componente para traduzir Nmeros para Extenso. Permite mudar o nome da
    moeda e centavos
[+] Novo Demo para testar o ACBrExtenso: ExtensoTeste.dpr (VCL) e
    QExtensoTeste.dpr (CLX)
-- ACBrGAV --
[+] Adcionada String de abertura de Gavetas para Impressora NAO Fiscal Schalter
[-] Corrigido BUG que no permitia atribuir uma Porta se modelo de gaveta igual
    a gavImpressoraComum


Verso 0.04a  19/07/04
[-] Arquivos .DOF e .CFG no eram incluidos na pocote final de distribuio.
    Os mesmos so necessrios para compilao condicional usando a diretiva
    CLX ou VisualCLX no Delphi (Windows)
-- ACBrECF --
[+] Nova impressora para o componente ACBrECF implementada. Modelo:  "NaoFiscal"
    Na verdade esse modelo se trata de um pequeno "emulador" de impressora
    Fiscal. Se comportando de forma muito semelhante a um ECF, inclusive possui
    uma "memoria fiscal" que  gravada em um arquivo .INI. Muito til para
    ajudar no desenvolvimento de aplicaes com ECF. Pode imprimir em Portas
    Paralelas, Seriais, ou em arquivo, de acordo com a propriedade PORTA do
    componente ACBrECF.       
-- ACBrECFBematech --
[*] Mensagem de pouco papel a cada n segundos no funcionava como o esperado.
-- ACBrGAV --
[+] Novo Componente ACBrGAV para acionamento de Gavetas de Dinheiro. As gavetas
    podem ser ligadas a porta Serial, a uma impressora Fiscal ou a uma
    Impressora NAO Fiscal (impressora comum). No caso de impressora Fiscal,
    necessita de um componente ACBrECF.
[+] Novo Demo para testar o ACBrGAV: GAVTeste.dpr (VCL) e   QGAVTeste.dpr (CLX)



Verso 0.03a  28/06/04
-- ACBrECF --
[*] Propriedade NumVersao mudou de Integer para String para compatibilizar com
    alguns modelos de ECF
[*] Propriedades renomeadas: (Melhor organizaao visual das Propriedades)
    MsgTempoInicio -> TempoInicioMsg
    MsgExibe       -> ExibeMensagem
[*] Evento OnMsgAguarde teve seu parametro modificado de:
    TempoRestante : Integer -> Mensagem : String
    ( Peo perdo pelas mudanas acima. Mas achei necessrio para tornar o
      componente mais intuitivo. As propriedades no mais sero modificadas )
[+] Novas Propriedades:
    DescricaoGrande : Boolean default false;
    MsgRelatorio, MsgPausaRelatorio : String;
    PausaRelatorio : Integer  default 5
    LinhasEntreCupons : Integer  default 7
    FormMsgColor : TColor
    FormMsgFonte : TFonte
[+] Novos Metodos:
    RelatorioGerencial(Relatorio : TStrings; Vias : Integer = 1)
    AbreRelatorioGerencial
    LinhaRelatorioGerencial( Linha : String )
    CupomVinculado(COO, CodFormaPagto : String; Valor : Double
              Relatorio : TStrings; Vias : Integer = 1)
    AbreCupomVinculado(COO, CodFormaPagto : String; Valor : Double)
    LinhaCupomVinculado( Linha : String )

-- ACBrECFBematech --
[+] Melhorado o suporte a impressora MFD, nova propriedade:  IsMFD : Boolean
    ( Existe um bug na verso do Emulador EMULFITH 1.02 da Bematech, que no
      retorna corretamente o TotalPago (Comando 35 22)  )
[+] Suporte as novas propriedades e metodos de ACBrECF descritas acima.

-- QECFTeste / ECFTeste --
[+] Adcionadas rotinas de impresso de Relatrio Gerencial e Cupom Vinculado
[-] Rotina de exemplo "EnviarComando" corrigida para trabalhar com a Bematech


Verso 0.02a  16/06/04
---------------
[+] Demo para o componente ACBrECF em VCL e CLX desenvolvido para todos os
    comandos implementados no ACBrECF at o momento
[-] Diversos Bugs corrigidos nas rotinas de Cupom Fiscal e Formas de Pagamento
    da Impressora Bematech

Verso 0.01a   14/06/04
---------------
[+] Incio do Projeto
[+] Primeira Versao finalmente lanada.
[+] Componente ACBrCalculadora Finalizado,
[+] Componente ACBrECF implementado parcialmente (80%)
[+] Demo para o componente ACBrECF em VCL e CLX parcialmente desenvolvido (50%)

Data: 27/05/2004
--ACBrSerial --
[*] Criaao de um arquivo unico para registro dos Componentes
    (por Daniel Simoes de Almeida)
