terça-feira, 11 de outubro de 2011

DICAS PAF-ECF

#Dicas gerais
- Antes eles nos disponibilizavam internet e rede, mas dessa vez havia apenas o ponto de energia elétrica.
Eles nos conseguiram um monitor pois não tínhamos levado, mas recomendo levar tudo o que puderem, inclusive monitores, teclados, cabos, etc

- Testem além do roteiro. Quando me preparei para homologação, apenas segui os testes do roteiro à risca.
Mas o homologar vai além, e faz testes diferentes.

- Uma coisa é quase certa: não dá tempo. Os testes aumentaram, e a complexibilidade deles também.
Mas o tempo continua o mesmo de antes, então se preparem para comprar umas horas à mais, e levem o sistema muito bem testado, para não precisar perder tempo arrumando lá.
=========================
#O que precisei levar
- modem 3g para ter internet, e a NF-e configurada e pronta para emitir
- hub e cabos de rede
- muitas bobinas, levei 4 para garantir
- certificado digital válido para NF-e, pois precisamos tirar uma NF-e real
- pinpad e demais acessórios para o TEF
- adaptadores de plugs elétricos, por causa do novo padrão
=========================
#Testes
- teste 004 (pré-venda)
Existe uma observação bem pequena no roteiro: "não podendo esta função estar disponível no ponto de venda"
Aí complicou, pois a pré-venda não pode estar disponível na frente de caixa, então tive que adicionar um parâmetro no arquivo criptografado, para que o sistema dê uma mensagem de erro na frente de caixa, e libere a pré-venda apenas nos terminais que não possuam ECF.
Mas, obviamente, na frente de caixa deve ser possível fazer o procedimento de fechar a pré-venda e emitir o cupom. Também deve existir a opção de cancelar e mesclar a pré-venda. Essas opções não devem estar disponíveis nos outros terminais, apenas na frente de caixa onde está o ECF.

- teste 008 (DAV)
Aqui a única ressalva é que não é mais obrigatória a impressão do DAV.
O homologador também me informou que é possível fazer impressão em impressoras não fiscais, mesmo em UF que só permitam impressão no ECF, desde que essa impressora não esteja na frente de caixa. Mas não peguei mais detalhes com ele, vou me informar melhor a respeito disso.

- teste 17A = testes 23 e 24
O teste 17A gera o mesmo arquivo dos testes 23 e 24 (Ato Cotepe 17/04), mas com registros diferentes. Ou seja, os arquivos se complementam.
No teste 17A devem ser gerados os registros E01, E02 + registros E03 até E13;
Nos outros testes, devem ser gerados os registros E01, E02 + registros E14 até E21.

- teste 26 e 84 (arquivo estoque)
O detalhe nos arquivos de estoque é que devem ser gerados até o dia*anterior* ao movimento.
Ou seja, a movimentação do dia atual em que estão sendo feitos os testes não deve aparecer nos saldos de estoque. Apenas os lançamentos feitos até o fechamento do dia anterior.

- teste 38 (hash MD5)
Nessa versão, é preciso relacionar na lista de MD5 todos os executáveis e mais as DLLs. Ou seja, agora as DLLs também ficam travadas pelo MD5.

- teste 53 (após redução Z)
Nesse teste, são feitas muitas tentativas de trabalhar com o ECF após a redução Z, e todas devem ser tratadas corretamente.
Depois disso, é preciso gerar NF-e e nota do consumidor, e esses lançamentos devem aparecer nos arquivos de Vendas por Período (SPED e Sintegra).
Além disso, o ECF é desligado e repetem-se todos os testes. Então não se pode contar com o ECF para gerar os arquivos ou assiná-los. Tem que ser tudo pelo sistema.
Aqui é usado o modem 3G e o certificado válido para emitir a NF-e.

- requisito XXI
Aqui os homologadores estendem os testes para quase todas as telas do sistema.
Ou seja, os testes de checagem de valores negativos, zerados e tudo mais, são executados na maioria das telas do sistema (sangria, suprimento, NF-e, cupom fiscal, recebimento não fiscal, nota do consumidor, etc)

- requisito XXII
Aqui também os testes são estendidos.
A validação do número de série e do GT é feita em todas as telas que comunicam com o ECF (sangria, recebimento não fiscal, LMFC, LMFS, e etc); deve ser verificado até na leitura X que é algo bem mais simples.
Também deve ser feita essa verificação na inicialização do sistema, avisando que o ECF não está liberado ou não está configurado corretamente ao carregar o sistema.

- teste 80 (movimento por ECF)
Aqui me compliquei um pouco, por causa do Bloco VII. Pois nos testes desse bloco é preciso alterar informações como o número de série e data de movimento.
Aí ficou complicado, pois se é alterado o número de série por exemplo, a movimentação não aparecia mais, pois estava vinculada ao outro número.
Tive que modificar lá na hora para sempre aparecer toda a movimentação, independente das modificações que o homologador faça nos registros

- requisito XXVIII
A principal modificação nesses testes foram a inclusão do registros da NF-e:
- para o Sintegra, os registros tipo 50 e derivados
- para o SPED, registros tipo C100 e derivados
Os homologadores não conheciam muito bem como funcionava a NF-e, então não executaram muitos testes.
Apenas lançamos uma nota e deu certo. Com o tempo, provavelmente eles conheçam melhor e façam testes mais elaborados.

- Bloco V - teste 097 - (DAV-OS - oficinas de conserto)
Aqui existe um erro no roteiro. No passo 12 diz para guardar o CCF do cupom emitido, mas deve-se guardar o COO, como é mencionado nas condições de requisito atendido

- Bloco V - teste 100A (Conta de cliente - oficinas de conserto)
Esse teste é novo, e não tem segredo. É uma mistura de DAV-OS com a conferência de mesa dos restaurantes.
Só precisei modificar detalhes, como a impressão do texto exato que pede no roteiro.
Ou seja, eu abreviei a frase "SEM EMISSÃO DE CONFERÊNCIA DE CONTA DE CLIENTE", mas o homologador me informou que deve-se colocar a frase inteira, mesmo quebrando para a outra linha :)

- Bloco VII - geral
O bloco VII foi a parte mais complicada, pois o roteiro nos leva a entender algo, e o homologador cobra outro.
Quando analisei os testes, verifiquei todos os campos que deveriam ser alterados e implementei fazendo o hash desses campos.
Mas o homologador pode pedir a alteração de qualquer campo que o arquivo seja composto.
Por exemplo, no teste 103 diz para alterar o COO do cupom, COO do DAV, sequencial do ECF, nome adquirinte, CPF adquirinte, data do DAV e valor do DAV.
Mas o homologador pode alterar qualquer outro campo que faça parte do arquivo (título do DAV, por exemplo), e o efeito tem que ser o mesmo.
Foi aí que me compliquei, pois tive que fazer tudo de novo, e repetir todos os testes para gerar os hash corretamente. Não foi fácil hehe :)
Outro detalhe: os homologadores não aceitam triggers para isso. Tem que ser via hash ou criptografia dos dados mesmo.

- Bloco VII - teste 106
Esse teste é esquisito, pois numa parte o Ato Cotepe diz que as informações do estabelecimento e da desenvolvedora devem ser guardadas em arquivo auxiliar criptografado. E aqui nesse teste elas devem estar dentro do banco.
Simplesmente armazenei as informações nos 2 lugares. Fazer o que né :)

- Bloco VII - teste 107, 108, 109...
Aqui acontece aquilo que comentei no teste 80.
O homologador vai alterar, por exemplo, o número de série da redução Z. E o arquivo deve continuar mostrando a movimentação do número de série original, os totalizadores parciais, cupons fiscais, meios de pagamento, e etc

- Bloco VII - teste 115
Esse é o teste mais bizarro do roteiro.
Se o registro é excluído do banco de dados, como ele irá aparecer nos arquivos com interrogações?
E se ele é incluso exatamente igual à antes (inclusive o mesmo hash), não deveria marcar o registro com as interrogações! :)
Não consegui encontrar meios práticos/viáveis de executar esse teste. E no caso da minha homologadora, eles ainda estão verificando como fazer para cobrar esse teste, então nós o ignoramos.
Recomendo que confirmem com suas homologadoras se esse teste 115 será feito, e todos os detalhes de como será feito.

=========================


(C)2012 Focus Informatica