MARCELO BURATTI DE FREITAS
ESCOLHENDO JAVA COMO TECNOLOGIA PARA DESENVOLVIMENTO DE
UMA AUTOMAÇÃO COMERCIAL
Presidente Epit...
MARCELO BURATTI DE FREITAS
ESCOLHENDO JAVA COMO TECNOLOGIA PARA DESENVOLVIMENTO DE
UMA AUTOMAÇÃO COMERCIAL
Trabalho de Con...
FOLHA DE APROVAÇÃO
Dedico aos meus pais Edson Almir de Freitas e Denise Buratti
de Freitas que lutaram comigo todas as batalhas e Ainda
lutam...
AGRADECIMENTOS
Agradeço minha esposa Maria Caroline Bizarro que me apoiou em momentos
difíceis, ao meu filho Marcelo Burat...
RESUMO
A escolha certa de uma tecnologia para programação é muito importante para o
desenvolvimento de uma aplicação comer...
ABSTRACT
The right choice of technology for programming is very important to develop a
commercial application , the Java p...
LISTA DE ILUSTRAÇÕES
Figura 01 – Método......................................................................................
SUMÁRIO
1 INTRODUÇÃO.........................................................................................................
ANEXOS.......................................................................................................................
Fazendária)” de São Paulo, para trabalhar emitindo documentos fiscais válidos em
paralelo com um “Software” de Automação C...
comunicação nos sistemas de informação é que se pode incluir a transmissão
eletrônica de fundos nas operações comerciais, ...
O objetivo deste trabalho é demonstrar que a tecnologia Java é uma
excelente opção como plataforma de desenvolvimento para...
2 JAVA
2.1 HISTÓRIA DO JAVA
A linguagem de programação Java iniciou em 1991 e ganhou reconhecimento
com o surgimento da In...
Outra característica que torna o Java uma escolha consciente é o fato que o
programador não precisa se preocupar com o uso...
Desde sua explosão comercial o Java não para de crescer, pois é utilizado
como base para o desenvolvimento de aplicações d...
2.2.2 Portabilidade
O Java é uma linguagem de programação que não depende de um sistema
operacional específico como a ling...
2.2.4 Suporte a Comunicação
O conceito de reutilização de classes no Java é muito utilizado nessa
característica e é um di...
dados. Esse acesso é possível por meio da criação de uma ponte de comunicação
dentre Drivers JDBC-ODBC”(FURGERI,2002,p.20)...
O keytool é a ferramenta padrão da “JDK”(Java Development Kit) e possui
uma limitação quando se trata de chave privada, en...
3 AMBIENTE DE EXECUÇÃO
Entende-se como plataforma o recurso gerado por um “Software” ou
“Hardware” para executar um progra...
3.1 INTERFACE GRÁFICA
A importância de uma interface gráfica, “Graphical User Interface”(“GUI” ou
Interface Gráfica do Uti...
Figura 03 – Escolhendo o Projeto
Fonte: (MICROSYSTEMS, 2013, sp)
O “IDE” combina as palavras e oferece suporte como dicas ...
PHP, Grovy, Javadoc, JavaScript o editor ainda oferece a possibilidade de expansão
para outras linguagens.“The editor supp...
4 APLICATIVO COMERCIAL
4.1 SOFTWARE DE AUTOMAÇÃO COMERCIAL
Entende-se como um “software” comercial, ou mesmo como um “Soft...
Digitais Centro Sé – São Paulo – Capital CEP: 01017-911” (SÃO PAULO,
2013, s.p)
O desenvolvedor do sistema é responsável p...
encerramento diário das atividades do estabelecimento. (SÃO PAULO,
2013, s.p)
A emissão diária destes documentos é obrigat...
vias, uma para o cliente e a outra fica em uma fita para conferência da empresa e
armazenado em sua memória, ao final do m...
ou “PFE”, elas definem seu uso correto e suas obrigatoriedades e todos os
procedimentos que se referem ao uso e implementa...
5 INICIANDO O DESENVOLVIMENTO
Para um melhor entendimento, este capítulo abordará sobre os alguns
procedimentos iniciais q...
5.2.1 Arquivos Auxiliares
Para que haja comunicação com a impressora a fabricante disponibiliza um
pacote de arquivos cont...
O arquivo auxiliar “bemafi32.chm” ainda possui uma especificação
detalhada de todas as funcionalidade que são exigidas de ...
Ainda é importante tratar o retorno da impressora, por se tratar de um arquivo
com um demasiado número de linhas, uma clas...
6 OBRIGATORIEDADE DO ECF
6.1 PROCEDIMENTOS PARA USO
O uso do “ECF” é obrigatório para toda empresa que executa transações,...
modelo 1, ou de Nota Fiscal eletrônica - NF-e, modelo 55, ou de Cupom
Fiscal eletrônico - CF-e, modelo 59; d) usuário de s...
Os equipamentos fiscais possuem um preço considerável, ainda se torna
necessária a verificação de seu uso, é recomendado p...
Solicite ao fabricante a relação de interventores técnicos capacitados para
fazer a lacração inicial do ECF. (SÃO PAULO, 2...
aquisição do equipamento para confirmar os dados no mesmo site, esses prazos
são definidos por portarias regulamentares em...
A responsabilidade de cadastrar os dados no site do Posto Fiscal caberá ao
Interventor Técnico. O prazo para este procedim...
6.3.1 Casos de Furto, Roubo ou Extravio
Em ocasiões em que em que não é possível realizar a deslacração como em
casos de f...
È importante que o usuário saiba quais os procedimentos executar para
diminuir o seu prejuízo.
6.3.2 Casos de Dano Irrepar...
ser transferido. “Os modelos de equipamentos ECF do convênio ICMS 156/94 não
possuem Memória de Fita-Detalhe, à exceção do...
autorização de uso. A transferência deve ser registrada com emissão da
respectiva nota fiscal. (SÃO PAULO, 2013, s.p)
Cont...
solicitada nova autorização de uso pelo contribuinte adquirente do
equipamento usado que fora reindustrializado. (SÃO PAUL...
Podem ocorrer situações onde o cliente do usuário do emissor de cupom
fiscal solicite a nota fiscal, neste caso a solicita...
Nota Fiscal Eletrônica (NF-e), será então transmitido pela Internet para a
Secretaria da Fazenda de jurisdição do contribu...
O conhecimento que se tem sobre a linguagem de programação Java em
consenso entre autores é que o marco do seu apareciment...
Torna-se então necessário o conhecimento das obrigatoriedades para sua
aplicação e projeto em empresas que o utilizam, com...
BEMATECH.Emulador de Impressora Fiscal. São Paulo, Disponível em: <
http://www.bematech.com.br/suporte/downloads/fisc_win/...
awVt7yg&sig2=5rkdHlI31LgPd_z--F7vyw&bvm=bv.57752919,d.b2I> Acesso em 06 dez.
2013.
ROSSI, Rui. Java na Web. 1º Edição. Rio...
ANEXOS
ANEXO A - Gráficos do Tiobe
ANEXO B – Modelagem do Banco
Trabalho de Conclusão de Curso - Marcelo Buratti de Freitas
Próximos SlideShares
Carregando em…5
×

Trabalho de Conclusão de Curso - Marcelo Buratti de Freitas

1.013 visualizações

Publicada em

A escolha certa de uma tecnologia para programação é muito importante para o desenvolvimento de uma aplicação comercial, a linguagem de programação Java possui características como simplicidade, orientação a objetos, segurança, robustez, independência de plataforma, código aberto e constante aperfeiçoamento que a faz perfeita para qualquer projeto, e não deixa o usuário refém de um sistema operacional. Com o avanço tecnológico das linguagens surgiram novas opções e também novas regras. Um exemplo disso é a obrigatoriedade do uso de um sistema comercial e emissor de cupom fiscal homologado pela receita federal, em estabelecimentos comerciais, a partir de determinado faturamento mensal. A escolha baseada na análise na robustez da plataforma de desenvolvimento é a linguagem de programação Java que cada vez mais, se torna a tecnologia de desenvolvimento mais utilizada no mundo. E para qualquer projeto de desenvolvimento é necessário conhecer e identificar a necessidade de seu usuário, para que se obtenha um software final de qualidade.
O objetivo é demonstrar que a tecnologia Java é uma excelente opção como plataforma de desenvolvimento de um sistema de automação comercial e demonstrar como são as regras e as obrigatoriedades de um processo de homologação do emissor de cupom fiscal e assim identificar com mais facilidade a necessidade de cada usuário. A pesquisa é bibliográfica, pois é uma tecnologia já conhecida no mercado mundial.

Publicada em: Tecnologia
2 comentários
0 gostaram
Estatísticas
Notas
  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.013
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
20
Comentários
2
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Trabalho de Conclusão de Curso - Marcelo Buratti de Freitas

  1. 1. MARCELO BURATTI DE FREITAS ESCOLHENDO JAVA COMO TECNOLOGIA PARA DESENVOLVIMENTO DE UMA AUTOMAÇÃO COMERCIAL Presidente Epitácio– SP 2013
  2. 2. MARCELO BURATTI DE FREITAS ESCOLHENDO JAVA COMO TECNOLOGIA PARA DESENVOLVIMENTO DE UMA AUTOMAÇÃO COMERCIAL Trabalho de Conclusão apresentado à banca examinadora do curso de Sistemas de Informação da Faculdade de Presidente Epitácio para obtenção do grau de bacharelado. Orientador: Prof. Antonio S. Nogueira Presidente Epitácio– SP 2013
  3. 3. FOLHA DE APROVAÇÃO
  4. 4. Dedico aos meus pais Edson Almir de Freitas e Denise Buratti de Freitas que lutaram comigo todas as batalhas e Ainda lutam...Essa graduação é uma conquista nossa.
  5. 5. AGRADECIMENTOS Agradeço minha esposa Maria Caroline Bizarro que me apoiou em momentos difíceis, ao meu filho Marcelo Buratti de Freitas Filho que me motiva e me da força e ao meu irmão Vitor Matheus Buratti de Freitas, e ao meu orientador Profº Antônio Sérgio Nogueira que sempre me apoiou e estimulou, e é alguém que espero que seja sempre meu amigo.
  6. 6. RESUMO A escolha certa de uma tecnologia para programação é muito importante para o desenvolvimento de uma aplicação comercial, a linguagem de programação Java possui características como simplicidade, orientação a objetos, segurança, robustez, independência de plataforma, código aberto e constante aperfeiçoamento que a faz perfeita para qualquer projeto, e não deixa o usuário refém de um sistema operacional. Com o avanço tecnológico das linguagens surgiram novas opções e também novas regras. Um exemplo disso é a obrigatoriedade do uso de um sistema comercial e emissor de cupom fiscal homologado pela receita federal, em estabelecimentos comerciais, a partir de determinado faturamento mensal. A escolha baseada na análise na robustez da plataforma de desenvolvimento é a linguagem de programação Java que cada vez mais, se torna a tecnologia de desenvolvimento mais utilizada no mundo. E para qualquer projeto de desenvolvimento é necessário conhecer e identificar a necessidade de seu usuário, para que se obtenha um software final de qualidade. O objetivo é demonstrar que a tecnologia Java é uma excelente opção como plataforma de desenvolvimento de um sistema de automação comercial e demonstrar como são as regras e as obrigatoriedades de um processo de homologação do emissor de cupom fiscal e assim identificar com mais facilidade a necessidade de cada usuário. A pesquisa é bibliográfica, pois é uma tecnologia já conhecida no mercado mundial. Palavras – Chave: Java ; Software ; Cupom Fiscal ; Desenvolvimento
  7. 7. ABSTRACT The right choice of technology for programming is very important to develop a commercial application , the Java programming language has features like simplicity, object orientation, security , robustness , platform independence , open source and continuous improvement that makes perfect not for any project , and lets the user hostage of an operating system . With technological advances in languages emerged new options and also new rules . An example is the mandatory use of a trading system and tax Code approved by the IRS , in shops , from a given monthly billing issuer . A choice based on the robustness analysis of the development platform is the Java programming language that increasingly becomes the most used technology development in the world . And for any development project is necessary to know and identify the need of its users , in order to obtain a final software quality . The objective is to demonstrate that Java technology is an excellent choice as a development of a commercial automation system platform and demonstrate how the rules are and the obligatorily a process of approval of the tax coupon issuer and thus more easily identify the need for each user . The research literature is because it is a technology already known on the world market . Keywords: Java ; Software ; Tax Receipt ; Development
  8. 8. LISTA DE ILUSTRAÇÕES Figura 01 – Método.....................................................................................................18 Figura 02 – Keytool IUI PLus......................................................................................19 Figura 03 – Escolhendo o Projeto...............................................................................22 Figura 04 – Edição de Código.....................................................................................22 Figura 05 – Aparência da IDE.....................................................................................30 Figura 06 – Classe Teste de Comunicação................................................................31 Figura 07 – Tipos de Retorno do Método...................................................................31 Figura 08 – Repositório Online BemaECF..................................................................32
  9. 9. SUMÁRIO 1 INTRODUÇÃO.........................................................................................................09 2 JAVA........................................................................................................................13 2.1 HISTÓRIA DO JAVA................................................................................................13 2.2 CARACTERÍSTICAS DO JAVA..................................................................................15 2.2.1 Orientação a Objetos.......................................................................................15 2.2.2 Portabilidade.....................................................................................................16 2.2.3 Multithreading...................................................................................................16 2.2.4 Suporte a Comunicação..................................................................................17 2.2.5 Acesso remoto a Banco de Dados.................................................................17 2.2.6 Segurança.........................................................................................................18 3 AMBIENTE DE EXECUÇÃO...................................................................................20 3.1 INTERFACE GRÁFICA.............................................................................................21 4 APLICATIVO COMERCIAL.....................................................................................24 4.1 SOFTWARE DE AUTOMAÇÃO COMERCIAL................................................................24 4.2 EMISSOR DE CUPOM FISCAL..................................................................................26 5 INICIANDO O DESENVOLVIMENTO.....................................................................29 5.1 BANCO DE DADOS.................................................................................................29 5.2 EMULADOR DA IMPRESSORA..................................................................................29 5.2.1 Arquivos Auxiliares.........................................................................................30 5.2 INTEFACE COM NETBEANS.....................................................................................30 6 OBRIGATORIEDADES DO ECF...........................................................................33 6.1 PROCEDIMENTOS PARA USO..................................................................................33 6.2 LACRAÇÃO............................................................................................................35 6.3 DESLACRAÇÃO......................................................................................................37 6.3.1 Casos de Furto, Roubo ou Extravio...............................................................39 6.3.2 Casos de Dano Irreparável..............................................................................40 6.4 TRANSFERÊNCIA DO APARELHO..............................................................................40 6.4.1 Matrizes e Filiais...............................................................................................41 6.4.2 Venda de Equipamento Usado.......................................................................42 6.5 QUANDO O CUPOM FISCAL DEVE SER EMITIDO........................................................43 6.5.1 Nota Fiscal e Cupom Fiscal............................................................................44 6.5.1 Nota Fiscal Eletrônica......................................................................................44 7 CONSIDERAÇÕES FINAIS.....................................................................................46 REFERÊNCIAS...........................................................................................................48
  10. 10. ANEXOS.....................................................................................................................50 ANEXO A - Gráficos do Tiobe....................................................................................51 ANEXO B – Modelagem do Banco.............................................................................52 1 INTRODUÇÃO O avanço das tecnologias, as melhorias dos meios de comunicação e com uma maior quantidade de plataformas para o desenvolvimento fizeram com que os programas de computadores, ou “softwares”, evoluíssem juntos, essa evolução tornou possível a automatização de sistemas e inclusão de funcionalidades que tornam a sistematização da informação mais eficaz e muito mais eficiente, o uso de emissores de cupom fiscal, por exemplo, é obrigatório no âmbito comercial, essa obrigatoriedade é regida pela secretaria fazendária de cada estado, que assim define o enquadramento, além de ser importante para um maior controle fiscal. È necessário que a escolha da plataforma de desenvolvimento de um aplicativo comercial seja consciente, a tomada de decisão sensata de uma linguagem de programação pode trazer benefícios em um projeto como: recursos para aumentar a qualidade, diminuição do tempo de seu desenvolvimento e possibilidades de adequações futuras para a necessidade de seu usuário. A linguagem de programação Java possui muitos recursos para quem pretende desenvolver, com o investimento da “SunMicrosystem” ela cresceu e sua origem vem de melhorias de linguagens já renomadas no mercado como o ‘C’ e o ‘C++’, atualmente esta entre as mais utilizadas no mundo para desenvolvimento de aplicativos como pode ser verificado no Anexo A – “Gráficos do Tiobe”. Com o Java é possível desenvolver aplicativos para dispositivos móveis através de sua edição do “Java Micro Edition” (Java ME), sistemas para “Desktop´s” com a edição do “Java Standard Edition” (Java SE) ou mesmo para internet com a edição do “Java Enterprise Edition” (Java EE) e a transição entre as edições é possível muitas vezes sem que haja mudança de uma letra no código escrito. Questões que serão sanadas no trabalho: - Qual seria uma linguagem de programação eficiente para o desenvolvimento do projeto e eficaz quanto à otimização de tempo para o desenvolvedor, além de ser capaz de oferecer um suporte robusto de recursos, com uma interface de desenvolvimento moderna e gratuita? - E quais são os requisitos e obrigatoriedades que devem ser respeitadas para que um emissor de cupom fiscal seja autorizado pela “SEFAZ(Secretaria
  11. 11. Fazendária)” de São Paulo, para trabalhar emitindo documentos fiscais válidos em paralelo com um “Software” de Automação Comercial? Uma escolha baseada na robustez da plataforma e suas possibilidades é que nos leva a linguagem de programação Java, em que se observa um amplo crescimento no mercado, neste ano ficou no topo do ranking do site da “tiobe” que é uma página da internet que calcula a popularidade de uma linguagem de programação baseada em motores de busca de sites renomados como o “Google”, “MSN”, “Yahoo” entre outros, onde o mesmo site propõe uma reflexão baseada na quantidade de pessoas qualificadas, cursos e possibilidades de trabalho em toda a internet. Outro ponto a ser considerado é o acesso a manuais, tutoriais que são encontrados em grandes quantidades na internet, além do suporte gratuito que fóruns da comunidade oferecem, como o grupo de usuários Java (GUJ) mantido pela empresa “Caellun”. Existe atualmente várias opções de interfaces de desenvolvimento que facilitam a construção dos aplicativos, entre elas uma escolha baseada em boas práticas é o “Eclipse”, que é um “Integrated Development Environment” (IDE ou Interface de Desenvolvimento Integrado) muito poderosa, com vastos recursos e funcionalidades que otimizam o desenvolvimento além de ser distribuído gratuitamente. Com o passar do tempo, comunidades e algumas empresas investiram no Java, e assim uma grande gama de framework´s surgiu, e isso facilita e otimiza o trabalho de programadores e consequentemente melhora qualidade dos softwares desenvolvidos. Quando a Java é compilada ela cria um “bytecode” que é interpretado pela “JVM” que deverá ser instalada previamente no sistema operacional, ou seja, qualquer sistema operacional pode executar a Java sem que haja a necessidade de recompilar o código, entre alguns exemplos de sistemas operacionais que executam a Java são “Windows”, “Linux” e “Macintosh”. A linguagem de programação Java se mostra como uma escolha consciente para projetos de desenvolvimento, pois independe do sistema operacional para tal, a aplicação pode ser escrita em um sistema operacional e ser executada em outro. Com o avanço tecnológico da sistematização da informação, houve a expansão do uso de sistemas comerciais, uma demonstração na evolução da
  12. 12. comunicação nos sistemas de informação é que se pode incluir a transmissão eletrônica de fundos nas operações comerciais, emissão automatizada de comprovante fiscal e registro eletrônico de movimentação, esses sistemas são utilizados como parte do processo da solução de automação comercial nas empresas e atualmente são obrigatórios para a emissão de cupom fiscal. Seu uso é obrigatório quando o perfil da empresa se enquadra em normativas emitidas pela secretaria da fazenda, de cada estado, que definem as características fiscais e quando existe a obrigatoriedade. No estado de Santa Catarina é obrigatório para todas as empresas que efetuam transações com cartões de crédito, no estado de São Paulo existe a exigência quando se atinge um determinado faturamento mensal, em São Paulo não existe a necessidade de homologação do “Software de Automação Comercial” (definição do próprio “Posto Fiscal Eletrônico”), porém existe a necessidade de cadastro do desenvolvedor onde ele se torna responsável pelo aplicativo, somente com um “software” e seu desenvolvedor devidamente registrados é possível iniciar o processo para legalizar o equipamento emissor de cupom fiscal, somente depois de todos os procedimentos previstos pela “SEFAZ”, torna-se possível então iniciar o seu uso. Atualmente existem portarias emitidas pela secretária fazendária que dispõe sobre a emissão de documentos fiscais e suas normas bem como a escrituração de livros fiscais por contribuinte usuário de sistemas automatizados, onde é estipulado as condições para que sejam validados fiscalmente os cupons emitidos. A obrigatoriedade do uso do emissor de cupom fiscal exige também que a emissão de cupom fiscal será executada através de uma impressora específica, que deverá também ser lacrada por um interventor técnico. O intuito geral é definir uma linguagem de programação eficiente e eficaz, que ofereça suporte ao desenvolvedor, para que assim, seja possível a construção de um aplicativo de qualidade e com o que existe de mais moderno na atualidade e ofereça recursos ao usuário e desenvolvedor. Abordar sobre os procedimentos que devem ser tomados pelo desenvolvedor, para que o “software” construído seja não só capaz de emitir documentos fiscais válidos, mas também de oferecer uma assessoria para o usuário do seu aplicativo comercial, que deverá utilizar o aparelho para emissão de cupons que substituam a nota fiscal e possuir conhecimentos suficientes para modelar o projeto.
  13. 13. O objetivo deste trabalho é demonstrar que a tecnologia Java é uma excelente opção como plataforma de desenvolvimento para um sistema de automação comercial e demonstrar como são as regras e as obrigatoriedades de um processo de homologação do emissor de cupom fiscal e assim identificar com mais facilidade a necessidade de cada usuário. Referente a procedência das informações será efetuado uma pesquisa teórica onde os procedimentos serão expostos, em relação à forma de abordagem trata-se de uma pesquisa qualitativa onde apresentará a real aplicação, em relação aos objetivos refere-se a uma pesquisa descritiva onde se apresenta as empresas com as características para uso do software com cupom fiscal, quanto a fonte de dados a pesquisa será bibliográfica, pois trata-se de procedimentos e de uma linguagem já existente.
  14. 14. 2 JAVA 2.1 HISTÓRIA DO JAVA A linguagem de programação Java iniciou em 1991 e ganhou reconhecimento com o surgimento da Internet, a linguagem foi desenvolvida pela “Sun Microsystem” atualmente está sobre domínio da empresa “Oracle”. A tecnologia Java começou a ser desenvolvida pela Sun Microsystem e ganhou força em 1995, com a expansão da internet e com o suporte que os principais programas utilizados para navegar pela web passaram a dar execução de pequenos aplicativos escritos em Java(os applets). (ROSSI, 2007, p. 2) Ainda existem autores que defendem outra versão, onde se sugerem outras histórias para o seu aparecimento no mercado, porém também ligadas ao aparecimento da internet. Originalmente a linguagem foi concebida para a utilização de pequenos dispositivos eletrônicos inteligentes, entretanto com as dificuldades de financiamento deste setor na época e, principalmente devido ao surgimento da internet em 1993, novas oportunidades apareceram e a Sun entrou de cabeça. (FURGERI, 2002, p. 17) O Java ainda divide-se em três edições, cada qual para um uso, seja para desenvolvimento de “softwares” para computadores “desktop”, dispositivos móveis e tecnologia de servidor como desenvolvimento de páginas para a internet. Java Standard Edition (JSE) é a edição padrão da plataforma Java que prevê ferramentas e API´s para o desenvolvimento de aplicações desktop´s e alguns tipos de aplicações servidoras. Ela representa a base de sustentação da plataforma Java Enterprise Edition (JEE), uma vez que esta depende e faz uso do núcleo central da API da plataforma JSE. (ROSSI, 2007, p. 3) A plataforma Java é utilizada em milhares de aplicativos presentes em diversos dispositivos e eletrodomésticos no dia-a-dia das pessoas. Trata-se da maior rede do mundo de desenvolvedores, administradores de banco. “A Linguagem Java é muito versátil, podendo ser utilizada para construir vários tipos de aplicativos, para diferentes meios e finalidades.” (NETO, 2009, p.10).
  15. 15. Outra característica que torna o Java uma escolha consciente é o fato que o programador não precisa se preocupar com o uso da memória principal do equipamento, pois o Java contém em sua biblioteca de classes uma “API” (Application Programming Interface ou Interface de Programação de Aplicativos ) para isso, caso que não acontece em linguagens renomadas como o “C”. O Garbage Collector tem seus próprios algoritmos e ciclo de execução de modo que o programador não precisa se preocupar com alocação e desalocação de memória ao lidar com objetos. No Java quando um objeto não é mais necessário, basta anular sua referência apontando ao Garbage Collector. (NETO, 2009, p. 23) O Java vem de uma sequencia de aprimoramentos subsequentes, ela é originária da linguagem “C++”, que por sua vez é o a evolução do “C”, que evoluiu do “BCPL”, o que se pode concluir que o Java é o conjunto de melhoramentos de linguagens conhecidas no mercado. “O Java evoluiu a partir do C++, que evoluiu do C, que evoluiu do BCPL”(DEITEL, 2006, p. 6). O financiamento do projeto de pesquisa foi executado pela empresa “SunMicrosystem” em 1991, que observou o amplo crescimento no uso de microprocessadores que tem forte impacto nos dispositivos eletrônicos inteligentes, a empresa financiadora investiu na pesquisa de uma linguagem baseada em “C++”. Os Microprocessadores tem impacto profundo em dispositivos inteligentes eletrônicos voltados para o consumidor. Reconhecendo isso a SunMicrosystem, em 1991, financiou um projeto de pesquisa corporativa interna com o codinome Green, que resultou no desenvolvimento de uma linguagem baseada em C++. (DEITEL, 2006, p. 6) Inicialmente foi batizada de “Oak” em homenagem a uma árvore de carvalho que era vista da janela da “SunMicrosystem”, porém descobriu-se que já existia uma linguagem com esse nome, então seus desenvolvedores foram a uma cafeteria, onde serviam um café importado de uma cidade chamada Java, o nome foi sugerido e escolhido. seu criador James Goslin, chamou de “Oak” em homenagem a uma árvore de carvalho vista por sua janela da Sun. Descobriu-se mais tarde que já havia uma linguagem de computador chamada Oak.Quando uma equipe da Sun visitou uma cafeteria local, o nome Java (Cidade de origem de um tipo de café importado)foi sugerido. (DEITEL, 2006, p.6)
  16. 16. Desde sua explosão comercial o Java não para de crescer, pois é utilizado como base para o desenvolvimento de aplicações de todos os níveis, ou seja, em celulares, dispositivos móveis, computadores pessoais e servidores. Atualmente existem diversas ferramentas que tornam o desenvolvimento em Java mais atraente para os desenvolvedores. Embora não exista um consenso com relação a sua história o que realmente pode se concluir é que Java é uma escolha excelente para desenvolvimento. 2.2 CARACTERÍSTICAS DO JAVA Existem muitas características da linguagem de programação Java, porém algumas obtém destaque, e que são ressaltadas no aprendizado da linguagem, são elas orientação a objetos, multithreading, suporte a comunicação e o acesso remoto ao banco de dados.“As principais características enfocadas neste livro se referem a orientação a objetos, multithreading,suporte a comunicação e o acesso remoto ao banco de dados ”(FURGERI, 2002, p.19) Outra grande vantagem comercial do Java é que ela foi desenvolvida inicialmente com o intuito de ser utilizada na internet e somente depois migrou para “desktops”. 2.2.1 Orientação a Objetos É basicamente um conceito onde se permite reutilizar um trecho de código, chamado de classe, essa maneira de programar, basicamente consiste em representar objetos do mundo real, essa maneira de programar torna possível a reutilização de códigos, o que diminui o tempo de desenvolvimento. Orientação a Objetos é uma prática sólida no mercado e a maioria das linguagens hoje permite trabalhar desta forma. Como conceito inicial imagine a orientação a objetos como uma prática de programação que permite que diversos trechos de códigos sejam reutilizados. (FURGERI, 2002, p. 19) È uma característica muito relevante na escolha de uma linguagem pois torna possível o reaproveitamento do código escrito, o que otimiza o trabalho do programador.
  17. 17. 2.2.2 Portabilidade O Java é uma linguagem de programação que não depende de um sistema operacional específico como a linguagem “C”, “C++” ou “C#”, por isso é chamada de multiplataforma, um programa que seja desenvolvido em Java funcionará em qualquer sistema operacional e em redes heterogêneas como a da “wide world web”. Java é uma linguagem multiplataforma, ou seja, a mesma aplicação pode ser executada em diferentes tipos de plataforma sem a necessidade de adaptação do código. Essa portabilidade permite que um programa escrito na linguagem Java seja executado em qualquer sistema operacional. Com isso um mesmo programa escrito em Java consegue ter a mesma funcionalidade em redes heterogêneas como a internet. (FUGERI, 2002, p. 20) Essa característica pode significar uma grande economia financeira no projeto pois o usuário não fica dependente de plataforma específica como acontece com o “Asp” por exemplo, que necessita de servidor “Windows”, que é um software proprietário. 2.2.3 Multithreading È onde se consegue que uma linha de execução execute mais de um evento, onde esses eventos acontecem simultaneamente. Isso torna possível criar servidores de redes multiusuários em que cada linha de execução gerencia uma conexão de um cliente ao servidor e é possível executar instruções diferentes em pontos diferentes do mesmo programa. Multithreading: threads (linhas de execução) são o meio pelo qual se consegue fazer com que mais de um evento aconteça simultaneamente em um programa. Assim, é possível criar servidores de rede multiusuários, em que cada thread, por exemplo, cuida de uma conexão com o cliente e o servidor, isto é, um mesmo programa pode ser executado varias vezes ao mesmo tempo, e cada execução pode processar uma instrução e em um ponto diferente do mesmo programa”(FURGERI,2002,p.20) Entretanto outras tecnologias dependem do sistema operacional para oferecer esse recurso.
  18. 18. 2.2.4 Suporte a Comunicação O conceito de reutilização de classes no Java é muito utilizado nessa característica e é um diferencial, pois possui uma biblioteca de códigos com funcionalidades especificas, são classes já prontas para programação em rede, o que torna mais ágil a implementação de sistemas multiusuários. uma das vantagens do Java é fornecer um grande conjunto de classe com funcionalidades especificas, ou seja, muitos detalhes de programação são encapsulados em classes já prontas. Nesse contexto a linguagem oferece um conjunto de classe para programação em rede, o que agiliza a implementação de sistemas multiusuários. (FURGERI, 2002, p.20) O Java possui bibliotecas especificas para protocolos avançados de rede como o protocolo de controle de transporte e protocolo de internet (“TCP/IP” ou “Transport Control Protocol” / “Internet Protocol”), protocolo de transferência de hipertexto (“HTTP” ou “HyperText Tranfer Protocol”) e o protocolo de transferência de arquivos (“FTP” ou “File Transfer Protocol”). Nesse contexto, a linguagem oferece um conjunto de classe para programação em rede, o que agiliza a implementação de sistemas multiusuários. Tais classes são desenvolvidas para suportar tecnologias avançadas de comunicação como protocolos TCP/IP(Transport Control Protocol / Internet Protocol), HTTP, e FTP(File Transfer Protocol). (FURGERI, 2002, p. 20) Muitas vezes é possível fazer a transição de sistemas inteiros desenvolvidos para desktop´s para um ambiente de servidor sem que haja a necessidade de alteração do programa escrito. 2.2.5 Acesso Remoto a Banco de Dados È possível armazenar e/ou recuperar informações em qualquer local na internet, o que torna uma característica importante se levar em conta as possibilidades de automação oferecidas pelo Java, que possui em sua biblioteca classes prontas para realizar conexões ao banco de dados, que é possível por meio de uma ponte de comunicação utilizando os seus “drivers” “JDBC”. “Java utiliza classes já prontas, desenvolvidas pela Sun, para realizar o acesso ao banco de
  19. 19. dados. Esse acesso é possível por meio da criação de uma ponte de comunicação dentre Drivers JDBC-ODBC”(FURGERI,2002,p.20). Isso facilita a troca de dados com diversos bancos de dados, um exemplo é o MySql distribuído gratuitamente. 2.2.6 Segurança Um outro aspecto a se considerar sobre a escolha do Java, como linguagem de programação a ser utilizada no desenvolvimento de uma aplicação, é que a linguagem oferece mecanismos de segurança para internet, comparada com a linguagem “ASP” (que necessita de tecnologia de servidor “Windows”) por exemplo, o Java possui maior segurança, pois possui em sua biblioteca de classes elementos que tratam de chaves públicas e privadas para a geração de dados seguros. Um aspecto importante deve ser levado em consideração, principalmente porque o próprio mercado afirma, se refere aos mecanismos de segurança que a linguagem oferece para a realização de processos pela internet. Se comparada a outras linguagens utilizadas na internet, como o ASP, por exemplo, Java possui maior segurança, com diversas classes que tratam de chaves publicas e privadas para a geração de dados criptografados. (FURGERI, 2002, p. 20) Com algumas linhas de código é possível extrair a chave pública de um certificado digital, na imagem abaixo esta extração é feita utilizando um certificado digital “.x509”, que é exportado através da ferramenta “keytool” que gerencia o armazenamento de chaves criptográficas, cadeias de certificados X.509 e certificados confiáveis. Figura 01 - Método Fonte: (GUJ, 2013, sp)
  20. 20. O keytool é a ferramenta padrão da “JDK”(Java Development Kit) e possui uma limitação quando se trata de chave privada, entretanto é possível utilizar outra ferramenta que foi construída utilizando Java e sua biblioteca “Swing”. Ao trabalharmos com este tipo de arquivo a ferramenta da JDK padrão da SUN que é a keytool não atende todos os requisitos, pois não consegue importar a chave privada de um certificado. Com o objetivo de suprir esta deficiência foi encontrada uma ferramenta chamada KEYTOOL IUI PLUS que é construída em JAVA/SWING e utiliza a biblioteca Bouncy Castle para trabalhar com certificados digitais. (PARANÁ, 2006, p.4) A ferramenta conta com um visual simples e bem organizado, além de existir uma grande quantidade de material com referência a sua utilização na internet e é disponibilizado gratuitamente. Figura 02 – Keytool IUI PLus Fonte: (PARANÁ, 2006, p. 8) A segurança nas informações comerciais é algo que requer uma atenção especial por parte de qualquer desenvolvedor considerando o tráfego de informações financeiras, fiscais e de cunho sigiloso, observando os recursos do Java, sua eficiência no desenvolvimento e sua eficácia na comunicação para sistemas multiusuários, tornam a escolha do Java como linguagem de programação, atualmente, uma opção totalmente viável e segura, tanto para desenvolvedores, pelo acesso a manuais e suporte da comunidade quanto para seus usuários, pois não ficam reféns de “software” proprietários o que pode trazer benefícios em seu planejamento para a tecnologia da informação de sua empresa.
  21. 21. 3 AMBIENTE DE EXECUÇÃO Entende-se como plataforma o recurso gerado por um “Software” ou “Hardware” para executar um programa, a maioria das plataformas necessitam do conjunto de “Software” e “Hardware” para serem executados. A linguagem Java difere, pois para executar necessita apenas de um “Software” que opera em outra plataforma existente. Plataforma é um ambiente de Software ou Hardware no qual um programa roda.A maioria das plataformas é formada pelo conjunto Hardware e um sistema Operacional, isto é, um conjunto de Hardware e Software que atuam juntos. A Java difere da maioria das outras plataformas pois é composta apenas de um Software operando com uma outra plataforma qualquer. (FURGERI, 2002, p. 21) Atualmente existe uma grande diversidade de plataformas para desenvolvimento como o “Windows”, “Macintosh”, “OS/2” entre outras e geralmente é necessário compilar na plataforma que deverá ser executado o programa para que as funcione corretamente. O processo do Java é diferente, pois a compilação gera “bytecodes” que são enviados para a máquina virtual Java (“JVM” ou “Java Virtual Machine”) que então compilam as instruções e assim são enviadas ao sistema operacional em que o Java está instalado. A Java é uma nova plataforma de Software que possibilita que um mesmo programa seja executado em diversas plataformas, talvez a característica mais importante da Linguagem Java. Os bytecodes gerados pelo processo de compilação específicos a qualquer máquina física, são instruções para uma máquina virtual. (FURGERI, 2002, p. 22) A facilidade na utilização de programas escritos que utilizam a Java pode ser notada em ações publicitárias da própria desenvolvedora, que criou uma frase indicando que a linguagem pode ser executada em qualquer máquina “A Sun criou um Slogan para a plataforma Java ‘Write Once, Run Anywhare’”(FURGERI, 2002, p. 22). As possibilidade que são oferecidas por esta plataforma é o que a torna a escolha da maioria dos profissionais que trabalham com desenvolvimento no mundo.
  22. 22. 3.1 INTERFACE GRÁFICA A importância de uma interface gráfica, “Graphical User Interface”(“GUI” ou Interface Gráfica do Utilizador) é facilitar a compreensão do usuário com relação ao aplicativo, a aparência do software e a utilização dessa interface, além de tornar mais eficaz e eficiente o aprendizado, torna mais fácil a manipulação do sistema desenvolvido. Uma interface com o usuário (Graphical User Interface - GUI) apresenta um mecanismo amigável ao usuário para interagir com um aplicativo. Uma GUI (pronuncia-se ‘gui’) da uma ‘aparência’ e um ‘comportamento’ distintos. Fornecer aos diferentes aplicativos componentes de interface com o usuário consistentes e intuitivo com o usuário, permite de certa maneira, que ele se familiarize com um aplicativo, para que possa aprende-lo mais rapidamente e utilizá-lo com mais produtividade . (DEITEL, 2006, p. 373) Entre outros atributos, um fator que influência a escolha do desenvolvimento utilizando o Java são as possibilidades que as ferramentas desenvolvida para a linguagem oferece como o “NetBeans” e o “Eclipse”, otimiza o aprendizado, facilita o desenvolvimento ágil, o “Eclipse” possui uma interface de desenvolvimento muito robusta, desenvolvida pela empresa “eclipse.org”, em parceria com a “IBM” e sua distribuição é gratuita. “O Eclipse é uma ferramenta muito poderosa e totalmente gratuita para desenvolvimento Java, lançada pela Eclipse.org em parceria com a IBM e outros fornecedores de produtos Java”(NETO, 2009, p. 293). Contudo o “NetBeans” nas suas versões mais recentes já oferece suporte paras as mais novas tecnologias, e é a primeira “IDE´s” (Integrated Development Environment ou interface de desenvolvimento integrado) livre que oferece suporte para JDK 8 previews, JDK 7 , Java EE 7, incluindo seus acessórios HTML 5. NetBeans IDE provides first-class comprehensive support for the newest Java technologies and latest Java specification enhancements before other IDEs. It is the first free IDE providing support for JDK 8 previews, JDK 7, Java EE 7 including its related HTML5 enhancements, and JavaFX 2. (MICROSYSTEMS, 2013, sp) Possui uma extensa gama de ferramentas, além de disponibiliar modelos e exemplos para o desenvolvedor.
  23. 23. Figura 03 – Escolhendo o Projeto Fonte: (MICROSYSTEMS, 2013, sp) O “IDE” combina as palavras e oferece suporte como dicas de correção de sintaxe e semântica. Figura 04 – Edição de Código Fonte: (NETBEANS, 2013, sp) Facilita também a localização a modelos de códigos e seu editor oferece um suporte a diversas linguagens de programação como Java, C/C++, XML e HTML,
  24. 24. PHP, Grovy, Javadoc, JavaScript o editor ainda oferece a possibilidade de expansão para outras linguagens.“The editor supports many languages from Java, C/C++, XML and HTML, to PHP, Groovy, Javadoc, JavaScript and JSP. Because the editor is extensible, you can plug in support for many other languages.” Fonte: (NETBEANS, 2013, sp) Atualmente a Secretária da Fazenda de São Paulo, distribui aplicativos desenvolvidos em Java para ser utilizado em empresas, como o Emissor de Nota Fiscal Eletrônica.
  25. 25. 4 APLICATIVO COMERCIAL 4.1 SOFTWARE DE AUTOMAÇÃO COMERCIAL Entende-se como um “software” comercial, ou mesmo como um “Software de Automação Comercial” o sistema instalado no computador que é utilizado para a comunicação com um “ECF” (Emissor de Cupom Fiscal), que também pode ser denominado como “Aplicativo de Frente de Loja” ou “Aplicativo Comercial”. É o Programa Aplicativo Fiscal que se comunica com o ECF para efetuar a impressão do cupom fiscal. É comum também ser chamado de "Aplicativo do Frente de Loja", ou "software de automação comercial". Fundamento: artigo 2º, inciso XIV, da Portaria CAT 55/98 e Portaria CAT 108/03.. (SÃO PAULO, s.p) No estado de São Paulo não existe uma legislação definindo o “software de automação comercial” segundo o “Programa de Aplicativo Fiscal – Emissor de Cupom Fiscal”(PAF-ECF), sua utilização não é obrigatória para os emissores de cupom fiscal instalados nas empresas, o que não anula a necessidade de seu uso. O PAF-ECF, de que trata Convenio ICMS 15/08, não foi disciplinado na legislação do Estado de São Paulo, portanto, não há obrigatoriedade da sua utilização nos equipamentos ECF instalados nos estabelecimentos dos contribuintes paulistas. (SÃO PAULO, 2013, s.p) Mesmo com a inexistência da obrigatoriedade do uso do aplicativo comercial, os sistemas que forem utilizados para o uso do emissor do cupom fiscal deverão ser cadastrados no “Posto Fiscal Eletrônico” no site da secretaria da fazenda, após o cadastro que é exigido por uma portaria regulamentar, a CAT 108/03 que define a necessidade do envio de documentos para a sede da secretaria em São Paulo capital. Somente após este procedimento será possível comercializar o “software de automação comercial”. O cadastramento do aplicativo e de seu respectivo desenvolvedor deve ser efetuado por meio do Posto Fiscal Eletrônico, em http://pfe.fazenda.sp.gov.br, conforme artigo 1º da Portaria CAT 108/03. Posteriormente a esse procedimento na Internet deve-se enviar, pelo correio, a documentação relacionada no artigo 2º da Portaria CAT 108/03, ao seguinte endereço: secretaria de fazenda do estado de são paulo av. Rangel Pestana, 300 – 10º andar – DEAT - Supervisão de Documentos
  26. 26. Digitais Centro Sé – São Paulo – Capital CEP: 01017-911” (SÃO PAULO, 2013, s.p) O desenvolvedor do sistema é responsável pelo correto funcionamento de emissão de registros para “ECF”, e responderá por qualquer funcionalidade que possa fraudar o registro de operações de venda ou serviços. O desenvolvedor de aplicativo comercial é solidário quanto ao pagamento do imposto devido quando tiver desenvolvido, licenciado, cedido, fornecido, instalado, alterado ou prestado serviço de manutenção a programas aplicativos ou ao "software" básico do equipamento ECF, capacitando-os a fraudar o registro de operações ou prestações.” (SÃO PAULO, 2013, s.p) O desenvolvedor que utilizar qualquer procedimento na criação do aplicativo que, interfira no correto uso de emissão de dados com finalidade de sonegação de imposto, será responsabilizado e poderá ser enquadrado em crimes tributários que resultam em fins penais. As penalidades a que está sujeito encontram-se detalhadas no artigo 85 da Lei 6374 /89 e no artigo 527 do Regulamento do ICMS (RICMS/00), sem prejuízo do encaminhamento, quando for o caso, ao Ministério Público, de notícia de crime contra a ordem tributária, para fins penais. (SÃO PAULO, 2013, s.p). Existe também a necessidade do aplicativo que serve como base para o emissor de cupom fiscal que contenha funcionalidades obrigatórias como a “Leitura X” e a funcionalidade “Redução Z”. A “Leitura X” é um documento que é emitido pelo próprio emissor de cupom fiscal, sua finalidade é imprimir um documento que irá conter os dados da movimentação diária executada na frente de caixa em que for instalado. “A Leitura "X" é o documento fiscal emitido pelo ECF que indica os valores acumulados nos contadores e totalizadores, sem que sejam zerados ou diminuídos esses valores.” (SÃO PAULO, 2013, s.p) Já a finalidade da função “Redução Z” é muito parecida com a função “Leitura X”, onde também é emitido um documento fiscal pelo emissor, porém a finalidade é zerar os contadores parciais da movimentação. A Redução "Z" é, também, um documento fiscal emitido pelo ECF com informações idênticas às da Leitura "X", mas que importa, exclusivamente, em zerar os totalizadores parciais. A redução Z deve ser emitida no
  27. 27. encerramento diário das atividades do estabelecimento. (SÃO PAULO, 2013, s.p) A emissão diária destes documentos é obrigatória, e as punições ao seu descumprimento são previstas nos artigos vinte e vinte um da portaria “CAT 55/98” e na redação da portaria “CAT-58/99”. “A emissão dessas duas leituras é obrigatória diariamente e para todos os equipamentos do estabelecimento que estejam em perfeita condição de uso.” (SÃO PAULO, 2013, out. 17). Essas funções são descriminadas tecnicamente para os desenvolvedores na própria documentação do emissor de cupom fiscal, disponibilizada em várias linguagens de programação e inclui o Java. 4.2 EMISSOR DE CUPOM FISCAL Aparentemente é uma simples impressora desenvolvida especificamente para sua funcionalidade, mas é capaz de registrar e acumular as vendas em sua memória interna. “No aspecto físico, o ECF se assemelha a uma impressora comum, mas contém memória extra e programa específico capaz de registrar e acumular vendas.”( SÃO PAULO, 2013, s.p). Existe a necessidade de uma normatização para o “ECF”, que é controlado pela comissão técnica permanente e o Conselho Nacional de Política Fazendária. Este equipamento é normatizado pelo fisco por meio da Comissão Técnica Permanente do ICMS (COTEPE/ICMS) do Conselho Nacional de Política Fazendária (CONFAZ).Fundamento: artigos 135, 251 e 252 do RICMS/2000, Portaria CAT 45/06 e Portaria CAT-55/98”( SÃO PAULO, 2013, s.p) Uma definição simples da funcionalidade do “ECF” pode ser defini-lo como um equipamento que facilita a emissão de documentos fiscais pelos estabelecimentos comerciais “O ECF (Emissor de Cupom Fiscal) é um equipamento que tem por objetivo facilitar a emissão de documentos fiscais pelo estabelecimento comercial, em especial nas situações de venda a consumidor final.”( SÃO PAULO, 2013, s.p). A ideia do seu funcionamento baseia-se em um uso onde o caixa entra com os dados do processo da venda no “Software de Automação Comercial”, o software envia os dados para o “ECF”, onde o equipamento imprime o cupom fiscal em duas
  28. 28. vias, uma para o cliente e a outra fica em uma fita para conferência da empresa e armazenado em sua memória, ao final do mês é possível a impressão de relatório para levantamento do montante de impostos a ser pago. Em linhas gerais, seu funcionamento é bem simples: O caixa digita os dados da venda em um programa de computador (Aplicativo do Frente de Loja) ligado ao ECF; Os dados digitados são enviados ao ECF; O cupom fiscal é impresso pelo ECF em 2 vias. A primeira via, sempre em papel, é entregue ao consumidor. A segunda, para guarda do estabelecimento comercial, pode ser em papel (chamada de “Fita Detalhe”) ou em forma de arquivo eletrônico (chamada de “Memória de Fita Detalhe”), dependendo do equipamento. Atualmente os novos ECF comercializados somente trabalham com MFD. Ao final do mês o contribuinte verifica por meio de relatórios emitidos pelo ECF o total a ser escriturado para fins de apuração do imposto a ser pago.Fundamento: artigos 135, 251 e 252 do RICMS/2000, Portaria CAT 45/06, Portaria CAT-55/98 e artigo 18 das Disposições Transitórias (DDTT) do RICMS/00. (SÃO PAULO, 2013, s.p) No Brasil a legislação sobre a tributação é funda na lei federal 9.532/97 artigos 61,62 e 63, que estabelecem a obrigatoriedade do uso do emissor de cupom fiscal para as empresas que exercem a atividade de venda ou revenda de bens a varejo e as empresas prestadoras de serviços. Art. 61. As empresas que exercem a atividade de venda ou revenda de bens a varejo e as empresas prestadoras de serviços estão obrigadas ao uso de equipamento Emissor de Cupom Fiscal - ECF. § 1º Para efeito de comprovação de custos e despesas operacionais, no âmbito da legislação do imposto de renda e da contribuição social sobre o lucro líquido, os documentos emitidos pelo ECF devem conter, em relação à pessoa física ou jurídica compradora, no mínimo. (BRASIL, 2013, s.p.) A legislação define também os artigos que estão sujeitos a quem tentar burlar ou o utilizar o equipamento de maneira incorreta, ou seja, todos os emissores de cupom fiscal e seus respectivos aplicativos que não atenderem os requisitos especificados. Parágrafo único. O equipamento em uso, sem a autorização a que se refere o caput ou que não satisfaça os requisitos desta, poderá ser apreendido pela Secretaria da Receita Federal ou pela Secretaria de Fazenda da Unidade Federada e utilizado como prova de qualquer infração à legislação tributária, decorrente de seu uso. (BRASIL, 2013, s.p) No estado de São Paulo, para que os cupons emitidos pelo equipamento tenham validade fiscal, é necessário que seja respeitado as normativas da secretaria da fazendária (SEFAZ), para isso são emitida portarias pelo Posto Fiscal Eletrônico
  29. 29. ou “PFE”, elas definem seu uso correto e suas obrigatoriedades e todos os procedimentos que se referem ao uso e implementação do equipamento, software e dados cadastrais.
  30. 30. 5 INICIANDO O DESENVOLVIMENTO Para um melhor entendimento, este capítulo abordará sobre os alguns procedimentos iniciais que podem ser tomados para o desenvolvimento em casos em que a impressora escolhida é a “MP-2100 TH FI” da empresa “Bematech”, que é autorizada pela legislação fiscal paulista (SÃO PAULO, 2013, p. 15) pela portaria CAT-52 (Coordenação da Administração Tributária), pela legislação federal do SINTEGRA (Sistema Integrado de Informações sobre Operações Interestaduais com Mercadorias e Serviços) e ato do COTEPE (Comitê Técnico Permanente) 17/04. O Sistema operacional do usuário do “software” é o “Windows 7 Home Basic 32 bits” da empresa Microsoft e a plataforma de desenvolvimento será o Java utilizando o IDE NetBeans 7.4.1. 5.1 BANCO DE DADOS No “Anexo B – Modelagem do Banco” se tem como base um modelo da estrutura do banco de dados. Foi disponibilizado no repositório do site GitHub o código “sql” para banco de dados “MySql” exemplo, o banco já esta populado para que sejam feitos testes pode ser acessado pelo endereço eletrônico https://github.com/MarceloBFreitas/softwarefrentedecaixa/blob/master/bancodedado sPopulado?raw=true. 5.2 EMULADOR DA IMPRESSORA Não é necessário comprar uma impressora ECF para desenvolver seu software e efetuar testes, atualmente as empresas disponibilizam emuladores que simulam seu funcionamento real, é possível efetuar o seu download gratuitamente pelo próprio site da fabricante(BEMATECH,2013,sp). Junto com os arquivos existe um arquivo de ajuda que contem instruções de uso bem como informações importantes como observações que o emulador não funciona para comandos de impressão de códigos de barra, e a impressão PDF-417 da “redução z”.
  31. 31. 5.2.1 Arquivos Auxiliares Para que haja comunicação com a impressora a fabricante disponibiliza um pacote de arquivos contendo vários arquivos com extensão DLL e classes Java que são utilizados na comunicação com o aparelho e sua configuração. Neste caso, levando em consideração o sistema operacional do usuário do equipamento, o arquivo pode ser encontrado no próprio site do fabricante com nome de “bemafi32.zip”.“DLL de alto nível da Bematech que reduz em 80% o tempo de desenvolvimento do aplicativo com nossas impressoras fiscais.”(BEMATECH,2013,sp) Junto com os arquivos é possível encontrar o arquivo “BEMAFI.CHM” que fornece informações de configuração, como porta de acesso, neste caso a impressora da suporte a “Porta Serial” e “USB” entre outras configurações como localização do arquivo no disco, como será utilizado neste caso o “Windows 7 Home Basic 32 bits” a localização no disco será “C:WindowsSystem32”, porém é necessário ter privilégios de administrados no sistema operacional. 5.2 INTEFACE COM NETBEANS Abaixo uma imagem de um possível layout onde se utiliza a “IDE” do “NetBeans” para desenvolvimento. Figura 05 – Aparência da IDE Fonte: PrintScreen do NetBeans do aplicativo sendo Desenvolvido
  32. 32. O arquivo auxiliar “bemafi32.chm” ainda possui uma especificação detalhada de todas as funcionalidade que são exigidas de um software para a frente de caixa. Onde o arquivo especifica “Funções da DLL” existe uma lista como funções de inicialização, cupom fiscal, relatórios fiscais entre outras funções que incluem as que transações que necessitam de transferência eletrônica de fundos (TEF). Caso o desenvolvimento seja feito utilizando um computador que não possui uma porta serial, existem na internet softwares que criam uma porta virtual, para testar a comunicação do projeto com a impressora, contudo após tudo configurado pode ser utilizada uma classe para teste para a comunicação com o emulador, vale ressaltar que é necessário importar o arquivo “Bematech.jar” para a biblioteca do projeto e fazer sua importação para que se posso utilizar seus métodos. Figura 06 – Classe Teste de Comunicação Fonte: PrintScreen do NetBeans do aplicativo sendo Desenvolvido Se a conexão for bem sucedida o retorno deverá ser igual a um, é necessário acessar o arquivo de ajuda do emulador do ECF e verificar quais são as formas de comunicação disponiveis, este documento possui instruções de configuração do arquivo “BemaFI32.ini” que no caso do Windows deverá ser colocado na pasta “System32” que por padrão fica dentro da pasta “windows” no diretório raiz. Figura 07 – Tipos de Retorno do Método Fonte: PrintScreen do arquivo BEMAFI32.chm
  33. 33. Ainda é importante tratar o retorno da impressora, por se tratar de um arquivo com um demasiado número de linhas, uma classe contendo os principais métodos de comunicação com a impressora e métodos para tratamento de mensagens de retorno do ECF, está disponível no endereço eletrônico https://github.com/MarceloBFreitas/softwarefrentedecaixa/blob/master/BemaECF.jav a. Figura 08 – Repositório Online BemaECF Fonte: PrintScreem da tela de acesso no endereço no GitHub - https://github.com/MarceloBFreitas/softwarefrentedecaixa/blob/master/BemaECF.java Está disponibilizado também o código do Layout, fui utilizado um objeto “JFrame” e o código utilizado pode ser encontrado no seguinte endereço eletrônico <https://github.com/MarceloBFreitas/softwarefrentedecaixa/blob/master/JFrameVisua l>. Assim o intuito deste capitulo é facilitar a inicialização do desenvolvimento e demonstrar a possibilidade de desenvolvimento de uma frente de caixa utilizando o Java como plataforma.
  34. 34. 6 OBRIGATORIEDADE DO ECF 6.1 PROCEDIMENTOS PARA USO O uso do “ECF” é obrigatório para toda empresa que executa transações, seja de mercadorias ou de serviços, para pessoa física ou pessoa jurídica não contribuinte do ICMS, acima de determinada receita bruta. “Pessoa jurídica não contribuinte do ICMS é aquela que não pratica com habitualidade ou em volume que caracterize intuito comercial o fato gerador do imposto, conforme definido em lei”( SÃO PAULO, 2013, s.p). “É obrigatório o uso de Equipamento Emissor de Cupom Fiscal - ECF por estabelecimento que efetue operação com mercadoria ou prestação de serviços em que o destinatário ou o tomador do serviço seja pessoa natural ou jurídica não-contribuinte do imposto.”( SÃO PAULO, 2013, s.p) Existe também a obrigatoriedade para toda a empresa que possuir uma expectativa de receita bruta anual superior a cento e vinte mil reais, neste caso estas empresas deverão obter o equipamento de “ECF” que possua uma fita detalhe eletrônica, denominada “MDF”(Memória de Fita-Detalhe). O estabelecimento com expectativa de receita bruta anual superior a R$ 120.000,00 (cento e vinte mil reais) deverá adotar Equipamento Emissor de Cupom Fiscal - ECF com memória de Fita-Detalhe (MFD). (SÃO PAULO, 2013, s.p) Entre outras definições, estão as empresas onde a obrigatoriedade não se aplica, entre elas estão empresas responsáveis por fornecimento de energia elétrica, gás natural, empresas de abastecimento de água, empresas de telefonia, empresas de transporte de carga e valor, empresas que utilizam sistema eletrônico de processamento de dados para emissão de modelos específicos, empresas de transporte intermunicipal, interestadual e internacional de passageiros. A obrigatoriedade do uso de Equipamento Emissor de Cupom Fiscal - ECF, nos termos do artigo 251 do RICMS/2000, não se aplica: a estabelecimento:a) de concessionária ou permissionária de serviço público relacionado com fornecimento de energia elétrica, fornecimento de gás canalizado ou distribuição de água; b) prestador de serviço de comunicação e de transporte de carga e de valor; c) em relação ao qual seja utilizado sistema eletrônico de processamento dados para emissão de Nota Fiscal,
  35. 35. modelo 1, ou de Nota Fiscal eletrônica - NF-e, modelo 55, ou de Cupom Fiscal eletrônico - CF-e, modelo 59; d) usuário de sistema eletrônico de processamento de dados, para emissão de Bilhete de Passagem nas prestações de serviços de transporte intermunicipal, interestadual e internacional de passageiros. (SÃO PAULO, 2013, s.p) Uma definição mais clara sobre Pessoa jurídica não contribuinte do ICMS ainda é definida pela Secretária da Fazenda, onde é feito o cálculo de todas as transações comerciais de bens, e assim, é feito uma soma da receita de todas as empresas no estado de São Paulo pertencentes ao mesmo proprietário. Considera-se receita bruta o produto da venda de bens e serviços nas operações em conta própria, o preço dos serviços prestados e o resultado das operações em conta alheia, não incluído o valor do IPI, o das vendas canceladas e o dos descontos incondicionais.Para a apuração da receita bruta, deverá ser considerado o somatório da receita bruta anual de todos os estabelecimentos, situados neste Estado, pertencentes ao mesmo titular. (SÃO PAULO, 2013, s.p) No site da Secretária Fazendária de São Paulo, ainda contam informações a respeito da obrigatoriedade do “ECF”, onde existe a orientação do modelo a ser adquirido, essas publicações são feitas com um despacho no portal do “PFE” que contém uma lista detalhada dos modelos funcionais. O que é de suma importância a ser consultado para todos que pretendem comercializar não somente seu próprio “software” e sim toda a parte da solução do ponto de venda da empresa. O modelo a ser adquirido deverá constar de relação de equipamentos homologados por meio de Ato COTEPE/ICMS (órgão técnico do CONFAZ), ou despacho do seu Secretário Executivo, que publica o "Termo Descritivo Funcional" do equipamento. Atualmente, a consulta dos ECFs registrados se faz por meio da página do Posto Fiscal Eletrônico, cujo endereço é www.pfe.fazenda.sp.gov.br. (SÃO PAULO, 2013, s.p) O site do Posto Fiscal Eletrônico possui muitas informações e pode ser dificultoso o seu acesso, é necessário efetuar um cadastro para obter o acesso a essa relação. Entre as informações pertinentes ao “ECF” ainda é possível encontrar avisos informando a necessidade de cautela na escolha, pois outro requisito que pode inutilizar o equipamento para finalidades fiscais é a data limite de sua utilização. “Alertamos que apenas os modelos de equipamento ECF relacionados em "Ajuda-ECF" e que não estejam com data limite de utilização expirada terão seu uso autorizado pela Secretaria da Fazenda.”( SÃO PAULO, 2013, out. 17).
  36. 36. Os equipamentos fiscais possuem um preço considerável, ainda se torna necessária a verificação de seu uso, é recomendado pelo próprio site da Secretária Fazendária um planejamento prévio para identificar se sua funcionalidade servirá para finalidades fiscais ou apenas aperfeiçoar o processo de automatização comercial da empresa tendo em vista que existe modelos distintos a disposição no mercado. Também orientamos o contribuinte que vai adquirir um equipamento ECF a definir previamente suas necessidades, para que possa escolher um modelo apropriado: se vai apenas cumprir uma exigência legal ou se vai aproveitar para introduzir ou aperfeiçoar o processo de automação comercial de suas atividades, tendo em vista a existência de modelos bastante distintos no mercado. (SÃO PAULO, 2013, s.p). A maior parte das empresas que se enquadram no perfil de obrigatoriedade do uso do “ECF”, contudo ainda vale ressaltar que depois de efetuado a compra do equipamento é necessário efetuar um pedido de uso junto ao fisco. Não se deve esquecer que após a aquisição do ECF, deverá ser feito o pedido para sua autorização de uso junto ao fisco. Para mais detalhes, consulte a questão "O que devo fazer para usar um ECF?". Fundamento: inciso I do artigo 3º da Portaria CAT-41/2012, com vigência a partir de 02/05/2012. (SÃO PAULO, 2013, s.p) Exemplos de empresas que podem se enquadrar na obrigatoriedade são bicicletarias, mercearias, padarias, supermercados entre outras. 6.2 LACRAÇÃO Sendo assim existe a necessidade da impressora ser “lacrada”, esse processo, sendo que seu uso só irá ser cedido após a emissão de um “Atestado de Intervenção em Equipamento Emissor de Cupom Fiscal - ECF”, para localizar um profissional credenciado é necessário entrar em contato com o fabricante do aparelho para se obter quais são os profissionais técnicos capacitados para fazer a lacração inicial do equipamento. De posse do equipamento, deve ser efetuada a lacração do mesmo, realizada por interventor técnico credenciado, com emissão do respectivo Atestado de Intervenção em Equipamento Emissor de Cupom Fiscal – ECF.
  37. 37. Solicite ao fabricante a relação de interventores técnicos capacitados para fazer a lacração inicial do ECF. (SÃO PAULO, 2013, s.p) Após ser efetuado a lacração do equipamento o interventor técnico fará o cadastramento do atestado diretamente no “Posto Fiscal Eletrônico” em um prazo máximo de sessenta dias que serão contados a partir da emissão do “Atestado de Intervenção”. “Após o procedimento de lacração executado pelo interventor técnico, esse fará o cadastramento do Atestado de Intervenção diretamente no Posto Fiscal Eletrônico em até 60 dias, contados da data de emissão do Atestado de Intervenção.” (SÃO PAULO, 2013, s.p). Posterior ao cadastramento o utilizador o proprietário ou seu contador deverão confirmar os dados do atestado emitido pelo interventor no Atestado de Intervenção, somente após este procedimento poderá ser iniciado o uso do Emissor de Cupom Fiscal. Uma vez cadastrado o Atestado pelo interventor, o uso de ECF será autorizado pela Secretaria da Fazenda, mediante solicitação do contribuinte ou contabilista, por meio da internet, na página do Posto Fiscal Eletrônico - PFE, no endereço http://pfe.fazenda.sp.gov.br ou www.fazenda.sp.gov.br. O contribuinte ou contabilista deverá confirmar os dados já inseridos pelo interventor técnico credenciado no Atestado de Intervenção em ECF. (SÃO PAULO, 2013, s.p) Entre os dados contidos no atestado emitido pelo interventor, deverá constar CPF ou CNPJ do desenvolvedor do aplicativo comercial que se comunicará com o “ECF”, confirmado o cadastramento no Posto Fiscal Eletrônico e informado o número da autorização do equipamento, estará habilitado seu uso automaticamente restando ao usuário a guarda da documentação relacionada no artigo 6º da Portaria CAT 41/12. Quando da confirmação do atestado de intervenção pelo contribuinte ou contabilista, deverá ser informado o CPNJ ou CPF do desenvolvedor responsável pelo programa aplicativo comercial.Confirmado o cadastramento pelo contribuinte no PFE e informado o número de autorização do ECF, o mesmo estará automaticamente autorizado para uso, cabendo ao contribuinte apenas a guarda da documentação relacionada no artigo 6º da Portaria CAT 41/12, com vigência a partir de 02/05/2012. (SÃO PAULO, 2013, s.p) Ainda existe um prazo de dez dias para o interventor inserir os dados do atestado no site do Posto Fiscal Eletrônico, e trinta dias a contar da data da
  38. 38. aquisição do equipamento para confirmar os dados no mesmo site, esses prazos são definidos por portarias regulamentares emitidos pelo mesmo portal. O prazo para inserção de Atestado de Intervenção no PFE é 10 dias segundo a Portaria CAT 55/1998 e o contribuinte, segundo a Portaria CAT 86/2001, tem 30 dias, a contar da data de compra do equipamento, para confirmar o atestado no PFE. A partir de 02/05/2012, começam a viger os novos prazos, de acordo com as Portarias CAT 40 e 41/2012. (SÃO PAULO, 2013, s.p) Uma informação pertinente é a regulamentação em relação ao desenvolvedor do Aplicativo de Automação Comercial, que trata os casos onde existe a necessidade de substituição do desenvolvedor, sendo assim deve-se alterar as informações situadas no site do Posto Fiscal Eletrônico utilizando o serviço de alteração, onde o prazo é de trinta dias regulamentada por portarias emitidas pela “SEFAZ”. Quando houver a substituição do desenvolvedor do programa aplicativo comercial utilizado no ECF, o contribuinte deverá, no prazo de 30 (trinta) dias contados da substituição, alterar a informação no PFE, mediante acesso ao serviço “Alteração: Desenvolvedor de Aplicativo ECF Instalado”, disponível na pasta “Autorizações”, opção “ECF”. (SÃO PAULO, 2013, s.p) No estado de Santa Catarina é necessário que o software seja homologado também, ao contrário de São Paulo que apenas exige o cadastro do desenvolvedor. 6.3 DESLACRAÇÃO O caso de pedido de cessação de uso pode ocorrer em diversas ocasiões, como em ocorrência de roubo, furto ou extravio do equipamento ou mesmo em caso de encerramento das atividades da empresa, em casos de encerramento o primeiro procedimento deve ser a “deslacração” que também deverá ser efetuada por um interventor técnico que deverá emitir um Atestado de Intervenção de Equipamento Emissor de Nota Fiscal. Primeiramente deverá ser efetuada intervenção técnica para deslacração do equipamento realizada por interventor técnico credenciado e emissão do respectivo Atestado de Intervenção em Equipamento Emissor de Cupom Fiscal. (SÃO PAULO, 2013, s.p)
  39. 39. A responsabilidade de cadastrar os dados no site do Posto Fiscal caberá ao Interventor Técnico. O prazo para este procedimento é de sessenta dias a contar da data da Emissão do Atestado. Caberá ao Interventor Técnico efetuar o cadastramento dos dados do Atestado diretamente no site do Posto Fiscal Eletrônico – PFE, no endereço http://pfe.fazenda.sp.gov.br, em até 60 dias a contar da data de emissão do supracitado atestado de intervenção. (SÃO PAULO, 2013, s.p) Existe a necessidade de confirmação de dados previamente cadastrados pelo interventor para que o procedimento de cessação de uso seja validado, após a Emissão do Atestado de Intervenção, o prazo máximo é de sessenta dias a contar da data de emissão do atestado. e, em até 60 dias da inserção do Atestado de Intervenção no PFE, o contribuinte ou contabilista deverá, por meio da internet, no site do Posto Fiscal Eletrônico – PFE, acessar o formulário "Pedido de Cessação de Uso de ECF", disponível em "Serviços ao Contribuinte" ou "Serviços ao Contabilista" - na pasta "Autorizações", no sítio eletrônico www.fazenda.sp.gov.br. (SÃO PAULO, 2013, s.p) Outra fonte de dados para estas informações podem ser encontradas em portarias que regulamentam os procedimentos, que são emitidas pelo mesmo site do Posto Fiscal Eletrônico. “Fundamento: artigo 7º, da Portaria CAT-41/2012 e artigo 66 da Portaria CAT 55/98, com vigência a partir de 02/05/2012.”( SÃO PAULO, 2013, s.p). É possível efetuar a confirmação da cessação de uso mediante comprovante que é emitido pelo Posto Fiscal que estará disponível para impressão, quando o processo de cessação de uso é realizado dentro dos prazos e datas estipuladas a realização é imediata. Mediante emissão, pelo Posto Fiscal Eletrônico, do comprovante da Cessação de Uso de Equipamento ECF, do qual deverão ser impressas as vias necessárias pelo próprio site, na disponibilização das telas. Após esse procedimento, caso o contribuinte acesse a "Consulta: ECF por IE/CNPJ" o ECF constará com tendo o seu uso cessado. Observar que quando o procedimento é realizado com sucesso pelo PFE, dentro do prazo estabelecido na legislação, a emissão do comprovante da Cessação é imediata. (SÃO PAULO, 2013, s.p) O equipamento então ficará inutilizável e não poderá ser utilizado logo após a intervenção técnica.
  40. 40. 6.3.1 Casos de Furto, Roubo ou Extravio Em ocasiões em que em que não é possível realizar a deslacração como em casos de furto, roubo ou extravio, o usuário deverá efetuar o preenchimento de uma requisição “Pedido de Cessação de Uso de ECF - Impossibilidade de Intervenção Técnica”. Sempre que houver impossibilidade de se realizar a intervenção técnica para deslacrar o equipamento, o contribuinte poderá efetuar o pedido de cessação de uso de ECF diretamente no Posto Fiscal de sua vinculação, mediante entrega de 2 (duas) vias, devidamente preenchidas, do formulário “Pedido de Cessação de Uso de ECF - Impossibilidade de Intervenção Técnica”. (SÃO PAULO, 2013, s.p) É necessário que o usuário ainda compareça a uma delegacia para efetuar o boletim de ocorrência e uma publicação deve ser veiculada em algum jornal da cidade por um período de três dias. “No caso de furto, roubo ou extravio deve-se apresentar também os seguintes documentos: a) cópia do boletim de ocorrência; b) cópia de anúncio relativo à ocorrência publicado por três dias em jornal da localidade.” (SÃO PAULO, 2013, s.p). Antes de ser efetuado o “Pedido de Cessação de Uso de ECF - Impossibilidade de Intervenção Técnica”, o proprietário do equipamento deverá comparecer a um Cartório de Registros para lavrar um termo circunstanciado em um livro “Registro de Utilização de Documentos Fiscais e Termos de Ocorrências”, o anúncio no jornal pelo período supracitado ainda deve conter dados o tipo, modelo, série, subsérie e número de fabricação do equipamento, ainda existe a necessidade do termo que foi lavrado ser autenticado pelo Posto Fiscal de Vinculação do Contribuinte. Previamente ao pedido, o contribuinte deverá providenciar, no caso de extravio, furto ou roubo de equipamento ECF:I – lavrar termo circunstanciado no livro Registro de Utilização de Documentos Fiscais e Termos de Ocorrências - RUDFTO, modelo 6;II – providenciar publicação de anúncio relativo à ocorrência do fato, por três dias em jornal da localidade, constando o tipo, modelo, série, subsérie e número de fabricação do equipamento furtado, roubado ou extraviado e a data da ocorrência.O termo circunstanciado lavrado no RUDFTO deverá, no prazo de 30 (trinta) dias contados do furto, roubo ou extravio, ser vistado pelo Posto Fiscal de vinculação do contribuinte.(SÃO PAULO, 2013, s.p)
  41. 41. È importante que o usuário saiba quais os procedimentos executar para diminuir o seu prejuízo. 6.3.2 Casos de Dano Irreparável Em caso que o equipamento sofra algum tipo de dano irreparável ao equipamento e que não exista a possibilidade de ser realizada a intervenção técnica para se deslacrar o equipamento, é necessário a entrega de duas vias do “Pedido de Cessação de Uso de ECF - Impossibilidade de Intervenção Técnica”, também será necessário a emissão de um laudo técnico por um agente credenciado pelo fabricante do “ECF”, e deverá descrever o ocorrido. Sempre que houver impossibilidade de se realizar a intervenção técnica para deslacrar o equipamento, o contribuinte poderá efetuar o pedido de cessação de uso de ECF diretamente no Posto Fiscal de sua vinculação, mediante entrega de 2 (duas) vias, devidamente preenchidas, do formulário “Pedido de Cessação de Uso de ECF - Impossibilidade de Intervenção Técnica”. No caso de dano irreparável no equipamento deve-se apresentar também laudo técnico emitido por interventor credenciado ou pelo fabricante do ECF, atestando a ocorrência do dano. (SÃO PAULO, 2013, s.p) O mesmo procedimento deve ser tomado em caso da inexistência de técnicos interventores. 6.4 TRANSFERÊNCIA DO APARELHO A permissão de transferência do “ECF” irá depender sob qual regulamento fiscal, assim sendo, se o usuário está sobre uma regulamentação que data antes do dia dois de maio de dois mil e doze, o equipamento não poderá ser transferido para outra pessoa. O contribuinte que possuir ECF construído sob a égide do Convênio ICMS 156/94 não pode transferi-lo a outro contribuinte desde 31/12/2001, conforme artigo 111-b da Portaria CAT 55/98.Entretanto, o equipamento poderá permanecer em uso no seu estabelecimento até o esgotamento da Memória Fiscal. Nessa oportunidade deverá solicitar cessação de uso no Posto Fiscal Eletrônico – PFE. (SÃO PAULO, 2013, s.p) Os equipamentos autorizados para o convênio ICMS 156/94 não possuem fita “MDF” (Memória de Fita-Detalhe) com apenas uma exceção, que também não pode
  42. 42. ser transferido. “Os modelos de equipamentos ECF do convênio ICMS 156/94 não possuem Memória de Fita-Detalhe, à exceção do modelo ECF-PDV Lite, que também não pode mais ser transferido, conforme disposto no artigo 111-b da Portaria CAT 55/98. ” (SÃO PAULO, 2013, s.p). Contudo a secretária fazendária estipula que caso a aquisição tenha ocorrido a partir do dia dois de maio de dois mil e doze será possível efetuar a transferência do aparelho. 6.4.1 Matrizes e Filiais Em casos onde existe a necessidade de transferência de equipamentos entre empresas matrizes e filiais, será permitido pela secretaria fazendária desde que haja a troca da “MDF”, o sistema é monousuário, nesse caso deve haver uma reprogramação para o “Usuário Seguinte”. Transferência entre empresas matriz e filial, ou vice e versa (CNPJ base iguais):O equipamento poderá ser transferido desde que seja trocada a MFD, por se tratar de componente eletrônico monousuário. Poderá ser mantida a mesma Memória Fiscal do equipamento, devendo passar a ser utilizado, mediante reprogramação, o USUÁRIO SEGUINTE constante da Memória Fiscal. (SÃO PAULO, 2013, s.p) Entretanto, caso não exista a possibilidade de reprogramação no equipamento, o “ECF” deverá sofrer uma intervenção de cessação e não poderá ser transferido. “Caso não haja, no equipamento a ser transferido, a possibilidade de reprogramação do usuário seguinte, o equipamento deverá ser cessado e não poderá ser transferido.” (SÃO PAULO, 2013, out. 17). Em situações onde á possível à reprogramação da “MDF”, para que a transferência seja autorizada, será necessário que o equipamento sofra uma “baixa” no site do posto fiscal eletrônico, além de uma intervenção técnica para cadastro dos novos dados, como “CNPJ”, “CPF”, “IE” e os dados do novo usuário, será necessário também que a transferência seja registrada em cartório com emissão de nota fiscal. Deverá haver intervenção técnica a fim de que seja alterado o CNPJ, Inscrição Estadual e endereço, para abrigar os dados do novo usuário. No PFE da SEFAZ/SP, o equipamento deverá ser baixado e ser solicitada nova
  43. 43. autorização de uso. A transferência deve ser registrada com emissão da respectiva nota fiscal. (SÃO PAULO, 2013, s.p) Contudo o capital investido não é perdido pois ainda existe a possibilidade de vender o equipamento usado. 6.4.2 Venda de Equipamento Usado O “ECF” pode representar um investimento significativo, um supermercado, por exemplo, deverá conter um aparelho por terminal de venda, ou seja, se existir 15 caixas, é obrigatório seu uso em todos os terminais, o que pode tornar a compra dos equipamentos usados algo a ser considerado. Esse processo é autorizado pela Secretaria Fazendária, desde que sejam cumpridas as exigências como troca da Memória Fiscal da máquina e troca da Memória de Fita Detalhe. O equipamento poderá ser vendido (nota fiscal emitida com indicação de venda de ativo usado) a outro contribuinte desde que seja trocada a MFD, por se tratar de componente eletrônico monousuário. Deverá também ser trocada a Memória Fiscal (MF) do equipamento. (SÃO PAULO, 2013, s.p) Para isso é necessário a substituição de “Placa Controladora Fiscal” e as memórias “MDF” e “MF”, será necessário enviar o equipamento ao fabricante para que isso seja feito. Como será necessária a troca de ambas memórias, será necessário a troca da base fiscal, para ser inserida nova Placa Controladora Fiscal (PCF), e novas MF e MFD. Esse procedimento exige o envio do equipamento ao fabricante que o fará em seu laboratório. (SÃO PAULO, 2013, s.p) Esse procedimento é considerado uma “reindustrialização”, pois o equipamento recebe novas memórias e uma nova “Placa Controladora Fiscal” além de receber um novo número de fabricação, deve-se também efetuar uma baixa pelo Posto Fiscal Eletrônico pelo usuário do equipamento original, o novo usuário deverá também acessar o “PFE” para solicitar uma nova autorização de uso. Cumprido esse procedimento, o ECF receberá novo número de fabricação, atribuído pelo estabelecimento que o reindustrializou e estará apto para uso por outro contribuinte. No Posto Fiscal Eletrônico - PFE da SEFAZ/SP, o equipamento original deverá ser baixado pelo contribuinte originário e ser
  44. 44. solicitada nova autorização de uso pelo contribuinte adquirente do equipamento usado que fora reindustrializado. (SÃO PAULO, 2013, s.p) Porém as fitas de memória “MDF” e “MF” e a placa controladora fiscal do equipamento original, deverão permanecer em posse do usuário que vender seu equipamento para demonstrá-lo a fiscalização quando lhe for solicitado. A base fiscal, que representa o conjunto das memórias – MF e MFD e da Placa Controladora Fiscal, deverá permanecer com o contribuinte vendedor do equipamento pelo prazo previsto na legislação, para oferecimento à fiscalização quando solicitado. (SÃO PAULO, 2013, s.p) Os procedimentos corretos evitam problemas com a receita federal além de oferecer uma segurança extra para quem vende e quem compra equipamentos usados. 6.5 QUANDO O CUPOM FISCAL DEVE SER EMITIDO O cupom fiscal deve ser emitido em toda transação financeira para consumidores finais ou para empresas que efetuam a compra e não irão revender, e quando o produto ou serviço é consumido ou retirado no estabelecimento. “Nas vendas a pessoa física ou jurídica não contribuinte do imposto em que a mercadoria seja retirada ou consumida no próprio estabelecimento.” (SÃO PAULO, 2013, s.p). A secretaria da Fazenda ainda prevê situações como em casos de falta de energia elétrica, onde é orientado que se deve ser utilizado nota fiscal de venda ao consumidor modelo dois, onde não existe a necessidade de um meio especifico para isso, porém deverá ser registrada em cartório essa ocorrência. Enquanto persistir a impossibilidade de uso do equipamento, deve ser emitido outro documento fiscal (pode ser a Nota Fiscal de Venda a Consumidor, modelo 2) por qualquer meio, inclusive o manual, com lavratura de termo no Livro Registro de Utilização de Documentos Fiscais e Termos de Ocorrência, modelo 6 (RUDFTO), e no campo "Observações" do Mapa Resumo. (SÃO PAULO, 2013, s.p) Contudo, empresas que se enquadram na obrigatoriedade precisam emitir o cupom em todas as suas vendas. 6.5.1 Nota Fiscal e Cupom Fiscal
  45. 45. Podem ocorrer situações onde o cliente do usuário do emissor de cupom fiscal solicite a nota fiscal, neste caso a solicitação da nota fiscal não substitui a necessidade da emissão do cupom fiscal, assim fica obrigado o estabelecimento a emitir ambos os documentos, onde a nota fiscal deverá estar com destaque no imposto de circulação de mercadorias (ICMS), e o cupom fiscal deverá ser grampeado junto à nota. Estando o contribuinte obrigado ao uso do ECF, os dois documentos deverão ser emitidos: Cupom Fiscal e Nota Fiscal, modelo 1 ou 1-A ou NF- e.A Nota Fiscal, com destaque de ICMS, se a operação for tributada, será entregue ao adquirente da mercadoria e o Cupom Fiscal ficará anexo à via fixa (grampeado). (SÃO PAULO, 2013, s.p) A nota fiscal ainda deve conter os dados do código fiscal de operações e prestações (CFOP) com número 5.929 caso o seja residente no estado de São Paulo, e de número 6.929 caso seja de outro estado. Essa Nota Fiscal emitida deve conter o CFOP 5.929, caso o adquirente seja de SP, ou 6.929, caso o adquirente seja de outro Estado. Ela deve ser toda preenchida, sendo a sua escrituração feita com valores zerados, já que o débito será feito pelo cupom, Assim, no livro Registro de Saídas deve ser registrado para esta nota apenas a coluna "Observações", onde serão indicados o seu número e a sua série. (SÃO PAULO, 2013, s.p) Assim a nota fiscal, independente do modelo não pode substituir o cupom fiscal, o único documento que pode ser emitido em seu lugar é a nota fiscal eletrônica. 6.5.2 Nota Fiscal Eletrônica O processo da nota fiscal eletrônica baseia-se na geração de um arquivo eletrônico que contém as informações fiscais das operações comerciais, ele é transmitido para a secretária da fazenda e utiliza a internet como meio, em retorno a essa operação haverá uma autorização de resposta da secretaria autorizando a transação. De maneira simplificada, a empresa emissora de NF-e gerará um arquivo eletrônico contendo as informações fiscais da operação comercial, o qual deverá ser assinado digitalmente, de maneira a garantir a integridade dos dados e a autoria do emissor. Este arquivo eletrônico, que corresponderá à
  46. 46. Nota Fiscal Eletrônica (NF-e), será então transmitido pela Internet para a Secretaria da Fazenda de jurisdição do contribuinte que fará uma pré- validação do arquivo e devolverá um protocolo de recebimento (Autorização de Uso), sem o qual não poderá haver o trânsito da mercadoria. (BRASIL, 2013, s.p) O processo do preenchimento dos dados pode se tornar vagaroso, um exemplo são casos como os supermercados, que por sua vez optam pelo uso do cupom fiscal. Sendo assim a nota fiscal eletrônica é um documento que pode substituir o cupom fiscal em operações e situações em que o receptor seja o consumidor final. O Cupom Fiscal foi idealizado para acobertar operações e prestações em que o destinatário seja consumidor final, visto que por meio dele não se transfere crédito. Assim, quando o adquirente da mercadoria estiver inscrito no Cadastro de Contribuintes, ainda que não contribuinte do imposto, poderá ser emitida a Nota Fiscal Eletrônica – NF-e. (SÃO PAULO, 2013, s.p) É muito importante o acesso a essas informações para o desenvolvedor do aplicativo e para o usuário final do “Software” de Automação comercial, para que possa ter em seu projeto um plano de contingência ou saber qual procedimento tomar no caso ocorrido. É necessário para qualquer projeto em que se almeja sucesso, identificar as necessidades dos clientes, bem como suas nuances e casos adversos, e tentar projetar suas futuras necessidades e possíveis incidentes, o que torna mais simples o planejamento do gerenciamento de riscos e gerenciamento de problemas, independente do modelo de gestão adotado para o projeto, são informações em que desenvolvedor e usuário devem ter acesso. 7 CONSIDERAÇÕES FINAIS
  47. 47. O conhecimento que se tem sobre a linguagem de programação Java em consenso entre autores é que o marco do seu aparecimento no mercado esta totalmente ligada ao aparecimento da internet, essa poderosa plataforma de desenvolvimento oferece suporte para projetos variados, como “softwares” para computadores pessoais, dispositivos móveis e tecnologias de servidor como páginas para internet. Atualmente é a plataforma mais popular do mundo onde supera linguagens de programação renomadas como o “C”, “C++” entre outras como “Cobol” e “Python”. Sua biblioteca facilita o trabalho do programador e oferece recursos para quem modela um projeto pela sua grande gama de aplicações. Característica não únicas mais importantes e muito robustas nesta linguagem como orientação a objetos, portabilidade, multiprocessamento por linhas de comando e um vasto suporte a comunicação com bibliotecas específicas para protocolos de redes locais, transferências de protocolos de hipertexto e transferência de arquivos, são ponderados em sua escolha, pois otimizam o tempo de desenvolvimento, garantem a funcionalidade e sua robustez de recursos, ainda possibilita o acesso remoto a bancos de dados. Outro fator que não pode deixar de ser mencionado é a segurança que a linguagem oferece. Uma biblioteca com várias classes que se referem apenas a chaves públicas de acesso, que a torna mais segura que linguagens como o “ASP”, por exemplo. Muitas possibilidades de desenvolvimento que podem ser escolhidas em diferentes ambientes de execução, uma biblioteca que oferece uma grande gama de opções para o desenvolvimento de sua interface gráfica são as características que tornam o Java uma escolha consciente e segura para se iniciar um projeto. Atualmente a secretária da fazenda de são Paulo disponibiliza alguns aplicativos comerciais todos desenvolvidos em Java, o que torna mais plausível a escolha do Java no desenvolvimento de um “software” de automação comercial. No estado de São Paulo não existe a obrigatoriedade de homologação do aplicativo comercial, mais sim do registro de seu desenvolvedor no posto fiscal eletrônico, onde seu desenvolvedor fica responsável pelo seu funcionamento e pela emissão correta de tributos e comunicação com periféricos como equipamentos emissores de cupom fiscal.
  48. 48. Torna-se então necessário o conhecimento das obrigatoriedades para sua aplicação e projeto em empresas que o utilizam, como supermercados, padarias, bicicletarias e toda empresa que se enquadre na obrigatoriedade de emissão. È um nicho de mercado que tende a crescer cada vez mais se levar em consideração o número de empresas que iniciam suas atividades no país e as empresas que precisam regularizar sua situação fiscal. REFERÊNCIAS
  49. 49. BEMATECH.Emulador de Impressora Fiscal. São Paulo, Disponível em: < http://www.bematech.com.br/suporte/downloads/fisc_win/Emul2100v101.zip > Acesso em 17 out. 2013. BEMATECH.Especificações Técnicas. São Paulo, Disponível em: < http://www.bematech.com.br/equipamento-produto-impressoras+fiscais-mp- 2100+th+fi-funcionalidades.html#conteudozip > Acesso em 17 out. 2013. BRASIL, Ministério da Fazenda. Casa Civil Subchefia para Assuntos Jurídicos. Brasília: Serviço Federal de Processamento de Dados (SERPRO), 2013, Disponível em: <http://www.planalto.gov.br/ccivil_03/leis/l9532.htm>. Acesso em 17 out. 2013. BRASIL, Ministério da Fazenda.Nota Fiscal Eletrônica. Brasília: Serviço Federal de Processamento de Dados (SERPRO), Disponível em: <http://www.nfe.fazenda.gov.br/portal/sobreNFe.aspx? tipoConteudo=HaV+iXy7HdM=#A8ZFhBIu/eo=> Acesso em 17 out. 2013. DEITEL, Harvey M. Java: Como Programar. 6º Edição. São Paulo: Editora Parson, 2006. 1200p. FURGERI,Sergio. Java 2 Ensino Didático. 5º Edição.São Paulo: Editora Érica,2002. 352p GUJ. Caellum.Grupo de Usuários Java.São Paulo, Disponível em: <http://www.guj.com.br/java/115516-usar-chave-publica-dentro-do-java-depois-de- exporta-la-pela-ferramenta-keytool> Acesso em 17 out. 2013. NETBEANS. The Smarter and Faster Way to Code. Santa Clara. Califórnia. EUA, Disponível em: < https://netbeans.org/features/index.html#o2> Acesso em 06 dez. 2013. NETO, Oziel M. Entendendo e Dominando Java. 3º Edição. São Paulo: Editora Digerati Books, 2009. 416p. PARANÁ.Manual de Utilização da Ferramenta Keytool IUI.Curitiba: Tecnologia da Informação e comunicação do Paraná, Disponível em: <https://www.google.com.br/url? sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&ved=0CEYQFjAC&url=http%3A%2F %2Fwww.documentador.pr.gov.br%2Fdocumentador%2FacessoPublico.do%3Faction %3DdownloadArquivoUuid%26uuid%3D15728a03-0238-4bfc-8f98- 1025926e458e&ei=jsihUqPxOqm62AWZ14DABA&usg=AFQjCNG6XIDqhcTxhUackVd2bFQ
  50. 50. awVt7yg&sig2=5rkdHlI31LgPd_z--F7vyw&bvm=bv.57752919,d.b2I> Acesso em 06 dez. 2013. ROSSI, Rui. Java na Web. 1º Edição. Rio de Janeiro: Axcel Books, 2007. 380p. SÃO PAULO,Secretária Fazendária.Posto Fiscal Eletrônico. Brasília: Serviço Federal de Processamento de Dados (SERPRO), Disponível em: <https://www.fazenda.sp.gov.br/nfe/downloads/arquivos_vigentes.asp> Acesso em 17 out. 2013. SÃO PAULO,Secretária Fazendária. Passos e Orientações para solicitação de credenciamento como emissor de NF-e. Brasília: Serviço Federal de Processamento de Dados (SERPRO), Disponível em: <https://www.fazenda.sp.gov.br/nfe/credenciamento/Manual %20Credenciamento.pdf> Acesso em 17 out. 2013. SÃO PAULO,Secretária Fazendária. Perguntas Técnicas mais Freqüentes (FAQ Técnico). Brasília: Serviço Federal de Processamento de Dados (SERPRO), Disponível em: < http://www.nfp.fazenda.sp.gov.br/nfo/pdf/faqtecnico.pdf> Acesso em 17 out. 2013. YOURDON,Edward. Análise e Projeto Orientado a Objetos.São Paulo: Editora:MAKRON Books,1999. 328p.
  51. 51. ANEXOS ANEXO A - Gráficos do Tiobe
  52. 52. ANEXO B – Modelagem do Banco

×