Instituto Politécnico de Coimbra Instituto Superior de Engenharia de Coimbra Departamento de Engenharia Informática e de Sistemas Informação Empresarial Simplificada de acordo com o Sistema de Normalização Contabilística Elisabete Maria Videira Baptista Mestrado em Informática e Sistemas Dezembro, 2011 IES de acordo com o SNC Ao meu avô Arménio Videira i IES de acordo com o SNC Agradecimentos AGRADECIMENTOS Ao meu orientador, Professor Doutor Jorge Bernardino pela sua disponibilidade, dedicação e apoio contínuo com que orientou todo este trabalho. Agradeço ainda o esforço desenvolvido na leitura e pelas sugestões de revisão que permitiram o enriquecimento do texto desta tese. Ao Instituto Nacional de Estatística por me ter proporcionado esta oportunidade de Estágio nas suas instalações e por todas as facilidades concedidas. Ao Dr. Jorge Magalhães, pela oportunidade da realização deste Estágio, pelo apoio e incentivo demonstrado. À colega Dr.ª Ana Chumbau e alguns colegas do INE, pela documentação fornecida bem como a disponibilidade e colaboração demonstrada na partilha de conhecimento estatístico. Ao colega e amigo João Pêga pela troca de ideias e todo o apoio dado ao longo deste trabalho. Aos amigos, Eng.ª Ana Pinheiro, Eng.ª Cristiana e Eng.º Eugénio Santos, pelos preciosos momentos de conversa, de apoio na realização da tese. À minha grande amiga, D. Graça, pelas palavras de coragem e ânimo nos momentos difíceis, que sem elas tornaria mais difícil a finalização deste Estágio. Aos meus pais pelo apoio, carinho e por todas as palavras ditas nos momentos certos e, em especial ao meu avô por tudo isso, assim como, pelo seu exemplo de vida. Por último, um agradecimento a todos aqueles que de algum modo contribuíram para a realização desta tese. ii IES de acordo com o SNC Resumo RESUMO O novo modelo de normalização contabilística, designado Sistema de Normalização Contabilística (SNC), tornou-se uma nova realidade contabilística e financeira. A sua adopção permitiu a harmonização do quadro contabilístico nacional para com as normas internacionais de contabilidade adoptadas pela União Europeia, revogando assim o Plano Oficial de Contabilidade. Com a introdução deste novo modelo, em vigor a partir 2010, a informação reportada ao Instituto Nacional de Estatística (INE), pela Informação Empresarial Simplificada (IES), necessitou de uma reestruturação. Neste contexto, de forma a atender às necessidades específicas do INE, para a produção e divulgação da informação estatística relativa à contabilidade das empresas, implementámos os procedimentos necessários à inserção das declarações submetidas pelas empresas, através do Portal do Ministério das Finanças, na base de dados do INE segundo este novo modelo. A aplicação desenvolvida encontra-se em funcionamento desde Agosto de 2011, estando actualmente a ser executada diariamente. É de realçar que, até ao dia 9 de Novembro de 2011, foram já inseridas 419.112 declarações na base de dados do INE. Palavras-Chave Informação Empresarial Simplificada (IES); Sistema de Normalização Contabilística (SNC); eXtensible Markup Language (XML); XML Schema Definition (XSD); Instituto Nacional de Estatística (INE). iii IES de acordo com o SNC Abstract ABSTRACT The new accounting standard model, called System Accounting Standards (SNC), has become a new practice to accounting and financial reporting in Portugal. Its adoption led to the harmonization of the national accounting standards with international accounting standards adopted by the European Union, revoking the Official Accounting Plan. With the introduction of this new model, since 2010, the information reported to the National Statistics Institute (INE), by Simplified Business Information (IES), required reorganization. In this context, and in order to meet the specific needs of the INE, the production and dissemination of statistical information relating to accounting firms, we have implemented the procedures necessary for insertion of submitted company declarations through the Portal of the Finance Ministry, to the INE database under this new model. The application developed is in operation every day since August 2011. It is worth noting that until the 9th of November 2011, 419.112 statements have already been inserted in the INE database. Keywords Simplified Business Information System; Accounting Standards; eXtensible Markup Language; XML Schema Definition; National Institute of Statistics. iv IES de acordo com o SNC Índice ÍNDICE 1. INTRODUÇÃO ...................................................................................................................1 1.1. Objectivos................................................................................................................................ 2 1.2. Principais contribuições deste trabalho .................................................................................. 3 1.3. Estrutura do relatório ............................................................................................................. 3 2. ENQUADRAMENTO ........................................................................................................5 2.1. Instituto Nacional de Estatística (INE) ................................................................................... 5 2.1.1. Introdução .............................................................................................................................. 5 2.1.2. Caracterização da Empresa .................................................................................................... 8 2.1.3. Actividade Estatística........................................................................................................... 11 2.2. Informação Empresarial Simplificada (IES) ........................................................................ 11 2.2.1. Introdução ............................................................................................................................ 12 2.2.2. Formulários da IES .............................................................................................................. 15 2.2.3. Procedimentos de envio ....................................................................................................... 17 2.2.4. Circuito de Informação da IES............................................................................................. 19 2.2.5. Vantagens da IES ................................................................................................................. 21 2.3. Sistema de Normalização Contabilística (SNC).................................................................... 21 2.3.1. Introdução ao SNC ............................................................................................................... 22 2.3.2. O POC .................................................................................................................................. 23 2.3.3. O SNC .................................................................................................................................. 24 2.4. IES de acordo com o SNC ..................................................................................................... 36 2.4.1. IES 2011 .............................................................................................................................. 36 2.4.2. Equipa do projecto ............................................................................................................... 37 2.4.3. Disponibilização da informação da IES ............................................................................... 37 3. XSD E XML ....................................................................................................................... 39 3.1. XML Schema Definition ....................................................................................................... 39 3.1.1. Modelos de dados ................................................................................................................ 39 3.1.2. Ficheiros XSD...................................................................................................................... 41 3.1.3. XSD da IES .......................................................................................................................... 47 3.2. XML ...................................................................................................................................... 50 3.2.1. Origem do XML .................................................................................................................. 52 3.2.2. Características da Linguagem XML .................................................................................... 52 3.2.3. Regras de formatação XML ................................................................................................. 53 v IES de acordo com o SNC Índice 3.2.4. XML da IES ......................................................................................................................... 54 4. BASE DE DADOS ............................................................................................................ 57 4.1. Reorganização de competências............................................................................................ 57 4.2. Estrutura da Base de dados .................................................................................................. 57 4.2.1. Informação das declarações ................................................................................................. 58 4.2.2. Informação de controlo ........................................................................................................ 59 4.2.3. Listas e Sublistas .................................................................................................................. 59 4.2.4. Modelo de Entidade Relacionamento .................................................................................. 61 4.3. Tarefas adicionais ................................................................................................................. 63 4.3.1. Aquisição de conhecimentos ................................................................................................ 63 4.4. Principais dificuldades .......................................................................................................... 63 5. IMPLEMENTAÇÃO DA APLICAÇÃO .................................................................... 65 5.1. Enquadramento .................................................................................................................... 65 5.2. Ferramentas / Tecnologias .................................................................................................... 66 5.2.1. Microsoft Office Visio ......................................................................................................... 66 5.2.2. XML Spy ............................................................................................................................. 68 5.2.3. Toad for Oracle e o PL/SQL Developer .............................................................................. 69 5.2.4. JCreator LE e o Eclipse........................................................................................................ 72 5.3. Funcionalidades implementadas ........................................................................................... 73 5.3.1. Estruturas no servidor .......................................................................................................... 74 5.3.2. Funcionamento da aplicação ................................................................................................ 78 5.3.3. Aplicação desenvolvida ....................................................................................................... 82 5.3.4. Execução da Aplicação ........................................................................................................ 87 5.4. Principais dificuldades .......................................................................................................... 88 6. TESTES DE DESEMPENHO ....................................................................................... 91 6.1. Total de declarações inseridas por Anexos ........................................................................... 91 6.2. Total de declarações inseridas por datas .............................................................................. 92 6.3. Tempos e testes ...................................................................................................................... 94 6.3.1. Tempos de execução em ambientes diferentes .................................................................... 94 6.3.2. Tempos de execução em horários diferentes........................................................................ 95 6.4. Melhorias efectuadas ............................................................................................................ 97 7. CONCLUSÕES E TRABALHO FUTURO ............................................................... 99 vi IES de acordo com o SNC Índice 7.1. Conclusões ............................................................................................................................. 99 7.2. Trabalho futuro .................................................................................................................. 100 REFERÊNCIAS BIBLIOGRÁFICAS .......................................................................... 103 ANEXO A – PROPOSTA DE ESTÁGIO.................................................................... 109 ANEXO B – ACTIVIDADE ESTATÍSTICA DO INE .............................................. 117 ANEXO C – FORMULÁRIO DO ROSTO DA IES .................................................. 127 ANEXO D – MODELO ER E DESCRIÇÃO DAS TABELAS DA BASE DE DADOS ................................................................................................................................. 131 vii IES de acordo com o SNC Índice de Figuras ÍNDICE DE FIGURAS Figura 2.1- Edifício da Sede do INE – Lisboa ................................................................. 6 Figura 2.2 - Biblioteca da Delegação de Coimbra............................................................ 9 Figura 2.3 - Ponto de Acesso no Instituto Politécnico de Bragança............................... 10 Figura 2.4 - Circuito de informação da IES.................................................................... 20 Figura 3.1 - DTD versus XML Schema Definition. ........................................................ 41 Figura 3.2 - Componentes XSD (adaptado de Stokol, 2011). ........................................ 44 Figura 3.3 – Modelo XSD do ficheiro IES-DA.xsd. ...................................................... 48 Figura 3.4 - Atributos do ficheiro IES-DA.xsd. ............................................................. 49 Figura 3.5 - Exemplo da lista Q10-1 do Rosto.xsd. ....................................................... 49 Figura 3.6 - Exemplo da lista Q10-1 do Rosto.xml. ....................................................... 50 Figura 3.7 - Exemplo da estrutura choice. ...................................................................... 50 Figura 3.8 - O XML (conteúdo) é validado segundo o XSD (regras de validação). ...... 51 Figura 3.9 - Exemplo demonstrativo de um ficheiro XML bem estruturado. ................ 53 Figura 4.1 - Exemplo de XSD composto por uma lista com uma sublista. .................... 60 Figura 4.2 - Exemplo XML de uma lista com uma sublista. .......................................... 60 Figura 4.3 - Exemplo da criação de uma tabela do tipo lista.......................................... 61 Figura 4.4 - Exemplo da criação de uma tabela do tipo sublista. ................................... 61 Figura 4.5 - Extracto do modelo ER da IES. .................................................................. 62 Figura 5.1 - Microsoft Office Visio 2003 – Block Diagram. .......................................... 67 Figura 5.2 - Microsoft Office Visio 2003 – Database..................................................... 67 Figura 5.3 - Edição do AnexoA1.xsd no XML Spy 4.0. ................................................. 68 Figura 5.4 - Edição do Rosto.xml no XML Spy 4.0. ....................................................... 69 Figura 5.5 - Interface do Toad for Oracle 9.7. ............................................................... 70 Figura 5.6 - SQL e Script Output no Toad for Oracle 9.7. ............................................ 70 Figura 5.7 - Interface do PL/SQL Developer 7.1. ........................................................... 71 Figura 5.8 - SQL e Script Output no PL/SQL Developer 7.1. ........................................ 71 Figura 5.9 - Interface do JCreator LE 4.5. ..................................................................... 72 Figura 5.10 - Interface do Eclipse IDE for Java Developers. ........................................ 72 Figura 5.11 - Circuito de transferência dos ficheiros zip do ITIJ para o INE. ............... 74 Figura 5.12 - Estrutura na área designada Dados. .......................................................... 75 Figura 5.13 - Exemplos de nomes de ficheiros zip......................................................... 77 viii IES de acordo com o SNC Índice de Figuras Figura 5.14 - Estrutura na área designada Areas. ........................................................... 78 Figura 5.15 - Representação do algoritmo da aplicação. ................................................ 82 Figura 5.16 - Projecto IES 2010 no Eclipse. .................................................................. 83 Figura 5.17 - XML do Anexo RSNC. .............................................................................. 86 Figura 5.18 - XML de uma lista com uma sublista do Anexo ASNC. ............................ 86 Figura 5.19 - Script que executa a aplicação. ................................................................. 87 Figura 6.1 - Número de declarações inseridas. ............................................................... 92 Figura 6.2 - Número de declarações inseridas por datas. ............................................... 93 Figura 6.3 - Comparação de tempos em situações diferentes......................................... 96 ix IES de acordo com o SNC Índice de Tabelas ÍNDICE DE TABELAS Tabela 2.1 - Terminologia POC versus SNC. ................................................................ 28 Tabela 2.2 - Conversão do POC para o SNC (Franco, 2010). ........................................ 31 Tabela 2.3 - Extracto do Quadro 4A (Activo) do Anexo A............................................. 32 Tabela 6.1 - Comparação de tempos em ambientes diferentes....................................... 95 x IES de acordo com o SNC Abreviaturas ABREVIATURAS BLOB - Binary Large Object CAE - Classificação Portuguesa das Actividades Económicas CLOB - Character Large Object DEE/EP - Departamento de Estatísticas Económicas / Serviço de Estatísticas das Empresas DGCI - Direcção-Geral dos Impostos do Ministério das Finanças DGITA - Direcção Geral de Informática e apoio aos Serviços Tributários e Aduaneiros do Ministério das Finanças DMSI/DA - Departamento de Metodologia e de Sistemas de Informação / Serviço de Desenvolvimento Aplicacional DMSI/II - Departamento de Metodologia e de Sistemas de Informação / Serviço de Infra-Estrutura Informacional DMSI/IT - Departamento de Metodologia e de Sistemas de Informação / Serviço de Infra-Estrutura Tecnológica DTD - Document Type Definition HTML - HyperText Markup Language IES - Informação Empresarial Simplificada INE - Instituto Nacional de Estatística IRC - Imposto sobre o Rendimento das Pessoas Colectivas IRS - Imposto sobre o Rendimento das Pessoas Singulares ITIJ - Instituto das Tecnologias de Informação na Justiça do Ministério da Justiça Modelo ER - Modelo de Entidade Relacionamento NCA - Normas de Contabilidade Ajustadas NIF - Número de Identificação Fiscal PCES - Plano de Contas para as Empresas de Seguros PCSB - Plano de Contas para o Sistema Bancário xi IES de acordo com o SNC POC - Plano Oficial de Contabilidade RIIBES – Redes de Informação do INE em Bibliotecas do Ensino Superior SEN - Sistema Estatístico Nacional SGML - Standard Generalized Markup Language SNC - Sistema de Normalização Contabilística TOC - Técnico Oficial de Contabilidade URI - Uniform Resource Identifier W3C - World Wide Web Consortium XML - eXtensible Markup Language XSD - XML Schema Definition xii Abreviaturas Capítulo 1 1. INTRODUÇÃO O Instituto Nacional de Estatística (INE) produz e divulga informação estatística, promovendo o desenvolvimento e a divulgação da actividade estatística nacional. Em relação às empresas, existe um conjunto de informação de carácter anual de extrema relevância para efeitos estatísticos, fiscais e de prestação de contas. As empresas estavam obrigadas a prestar a mesma informação sobre as suas contas anuais a diversas entidades públicas, através de meios diferentes: registo da prestação de contas anuais (em papel) nas Conservatórias do Registo Comercial; a entrega da declaração anual de informação contabilística e fiscal (efectuada em papel e a partir de 2001 através da Internet) ao Ministério das Finanças (Direcção-Geral dos Impostos - DGCI); a entrega de informação anual de natureza contabilística sobre as suas contas ao INE para efeitos estatísticos, através do Inquérito à Empresa Harmonizado (IEH) e a entrega de informação anual de natureza estatística sobre as suas contas ao Banco de Portugal. No essencial, o cumprimento de cada uma destas obrigações implicava, para as empresas, a necessidade de transmitir informação substancialmente idêntica sobre as suas contas anuais a quatro entidades diferentes e através de quatro meios diferentes. Com a entrada em vigor da Informação Empresarial Simplificada (IES), toda a informação que as empresas têm de prestar relativamente às suas contas anuais é transmitida num único momento e perante uma única entidade, através do preenchimento de formulários únicos, submetidos por via electrónica. A IES inclui informação de natureza fiscal, contabilística e estatística sobre as contas das empresas, transversal a todos os sectores de actividade económica. Para o INE constitui a nova forma de entrega de informação anual para fins estatísticos, que veio substituir o Inquérito à Empresa Harmonizado (IEH). Tal corresponde a uma diminuição substancial da carga estatística das empresas, simplificando bastante a vida destas, pois passam a cumprir quatro obrigações com o envio de um único formulário electrónico através do Portal das Finanças, tendo constituído uma melhoria ao nível dos resultados produzidos pelo INE. 1 Introdução No dia 1 de Janeiro de 2010 entrou em vigor um novo modelo de normalização contabilística, designado por Sistema de Normalização Contabilística (SNC) que revogou o Plano Oficial de Contabilidade (POC). O SNC vem trazer à comunidade técnica uma nova realidade contabilística e de relato financeiro, assim como permitir a harmonização do quadro contabilístico nacional e das normas internacionais de contabilidade adoptadas pela União Europeia. Com a adopção do SNC foram introduzidas profundas alterações à informação reportada através da IES, transição do POC para o SNC, tendo sido alterados os modelos da IES até agora utilizados. Os formulários foram adaptados de forma a possibilitar às empresas responderem em situação de exercício de 2009 e anteriores (POC) e ao período de 2010 e seguintes (SNC), contemplando assim as duas versões (POC versus SNC). A IES, de acordo com o SNC, resulta de uma adaptação das Normas Internacionais de Contabilidade à realidade nacional, tendo apenas adoptado os conceitos do SNC, com uma estrutura definida pelo Grupo de Trabalho da IES. Este facto deu origem à criação de novos formulários da IES, de forma a harmonizar a informação e ser possível o seu tratamento. Neste contexto, de forma a atender às necessidades específicas do INE, existe a necessidade de implementar uma aplicação que possibilite o carregamento automático das declarações IES das empresas, de acordo com o SNC. 1.1. OBJECTIVOS O presente Estágio tem como objectivo desenvolver as componentes tecnológicas necessárias para a recepção e tratamento dos dados da IES de acordo com o SNC. As empresas submetem a informação relativa à sua contabilidade através do preenchimento de formulários, por via electrónica, através do Portal das Finanças. A aplicação a desenvolver tem como finalidade inserir todas as declarações da IES de acordo com o SNC na base de dados Oracle do INE. Assim, para atingir o resultado esperado é necessário cumprir um conjunto de tarefas, tais como: • 2 levantamento de todos os requisitos; Capítulo 1 • validação das declarações segundo um modelo específico; • criação do modelo de dados1; • definição, implementação e teste da aplicação que permite efectuar o upload da informação, IES de acordo com o SNC, na base de dados do INE; • participação na análise dos erros gerados; • melhorar o desempenho da aplicação. 1.2. PRINCIPAIS CONTRIBUIÇÕES DESTE TRABALHO Este Estágio tem como objectivo desenvolver as componentes necessárias que permitam inserir a informação da IES de acordo com o SNC na base de dados Oracle do INE. As principais contribuições deste trabalho são as seguintes: • obter resultados estatísticos da contabilidade das empresas nacionais, de uma forma mais eficaz. Deste modo, as empresas tornam-se similares ao contexto europeu para poderem competir, quer no acesso ao crédito quer na internacionalização do seu negócio, não condicionando o desenvolvimento da economia portuguesa; • criar um sistema que possa ser facilmente integrado em outros projectos do INE na recolha de informação; • resolver o problema de transferência directa de um documento específico (XML) para a base de dados Oracle, devido à elevada quantidade de informação por declaração, uma vez que existem limitações em termos de número de colunas por tabela. 1.3. ESTRUTURA DO RELATÓRIO Este relatório está estruturado do seguinte modo: • o capítulo seguinte apresenta uma descrição do local onde foi realizado o Estágio, o INE, e um conjunto de conceitos relacionados com o trabalho desenvolvido. Também é apresentado todo o circuito de transferência da 1 Nos objectivos iniciais do projecto estava prevista apenas uma pequena participação na criação do modelo de dados, tendo, no entanto, esta tarefa sido também desenvolvida na sua totalidade na sequência de uma reestruturação de tarefas entre serviços do INE. 3 Introdução informação, após a submissão das declarações por parte das empresas no Portal das Finanças, até ao INE; • no terceiro capítulo é efectuada a apresentação de um conjunto de conceitos relativos ao XML e XSD, usados na obtenção e validação da informação das declarações IES. Também são apresentados exemplos concretos com os ficheiros XSD e XML da IES, clarificando assim todo o processo envolvido; • no quarto capítulo apresenta-se o trabalho desenvolvido ao nível da base de dados, bem como as dificuldades na criação do respectivo modelo; • no capítulo cinco é abordada a implementação da aplicação IES, fazendo referência às ferramentas utilizadas e apresenta a opção da linguagem utilizada. Para além disso, é apresentada a estrutura necessária ao bom funcionamento da aplicação, as opções de implementação desta e as principais dificuldades sentidas durante o seu desenvolvimento; • no capítulo seis apresenta-se um conjunto de informação importante na avaliação do desempenho da aplicação, bem como os respectivos testes. Por fim, descreve-se uma solução introduzida ao nível da implementação, que implicou a reestruturação de todo o código, de forma a optimizar e simplificar o mesmo; • por último, no capítulo sete, apresentam-se as conclusões do trabalho realizado, bem como alguns dos possíveis melhoramentos a serem efectuados no futuro. Como anexo encontram-se os seguintes documentos: 4 • Anexo A: Proposta de Estágio; • Anexo B: Actividade Estatística do INE; • Anexo C: Formulário do Rosto da IES; • Anexo D: Modelo ER e a Descrição das Tabelas da Base de Dados. Capítulo 2 2. ENQUADRAMENTO Este capítulo apresenta uma descrição do Instituto Nacional de Estatística (INE), onde foi realizado o Estágio que deu origem a esta dissertação. Em seguida, descreve-se o que veio substituir o meio e a informação entregue pelas empresas, num único acto, por via electrónica, facilitando assim a vida das empresas: a designada Informação Empresarial Simplificada (IES). A IES baseava-se no Plano Oficial de Contabilidade (POC), que desempenhou durante anos um papel fundamental a nível nacional. No entanto, desde há algum tempo, tem-se revelado insuficiente para as entidades com maiores exigências qualitativas de relato financeiro. Para além de carecer de revisão técnica, as empresas portuguesas não podiam deixar de adoptar um sistema de relato financeiro similar ao já utilizado pela generalidade das empresas europeias. Sendo assim, em 2010, procedeu-se à revogação do POC e foi criado o novo modelo de normalização contabilística, designado por Sistema de Normalização Contabilística (SNC), que representa a maior mudança contabilística desde a entrada em vigor do POC. Neste contexto, com a entrada em vigor do SNC, foram introduzidas profundas alterações na informação reportada através da IES. A implementação da IES de acordo com o SNC é o objectivo proposto para este trabalho. 2.1. INSTITUTO NACIONAL DE ESTATÍSTICA (INE) Nesta secção é efectuada uma breve descrição do INE, dos diversos serviços de difusão de informação bem como a sua actividade estatística. 2.1.1. Introdução O Instituto Nacional de Estatística tem por missão produzir e divulgar de forma eficaz, eficiente e isenta, informação estatística oficial de qualidade, relevante para toda a Sociedade. O INE é um Instituto Público (IP), dotado de personalidade jurídica, património próprio e autonomia administrativa, tutelado pelo Ministro da Presidência (INE, 2011). 5 Enquadramento Na Figura 2.1 apresenta-se o Edifício da Sede do INE em Lisboa. Figura 2.1- Edifício da Sede do INE – Lisboa (retirada do INE, 2006). Tendo o INE como missão produzir e divulgar informação estatística, torna-se essencial fazer uma definição de informação. Segundo os autores Luís Amaral e João Varajão, o conceito de informação pode ser definido por: “um conjunto de dados que, quando fornecido de forma e a tempo adequados, melhora o conhecimento da pessoa que o recebe, ficando ela mais habilitada a desenvolver determinada actividade ou a tomar determinada decisão. É interessante notar que a utilidade e o valor da informação são determinados pelo utilizador nas suas acções e decisões, não sendo só por si uma característica dos dados. Assim, a utilidade e o valor da informação dependem do contexto em que são utilizados” (Amaral e Varajão, 2007). Neste contexto, a informação estatística, para se manter relevante, enquanto retrato da realidade, tem de saber acompanhar as constantes mudanças a que a realidade está sujeita, detectando novas necessidades, fazendo opções sobre o que, a cada momento, importa medir. É hoje uma forma de conhecimento imprescindível na tomada das decisões que fazem surgir e progredir as empresas, bem como essencial ao enquadramento das políticas com que se governam as nações. O INE tem sede em Lisboa (ver Figura 2.1) e é composto por Delegações, sendo estas unidades descentralizadas dos Serviços Centrais. A actividade das Delegações, 6 Capítulo 2 enquanto unidades descentralizadas, decorre, de forma integrada, da actividade das unidades orgânicas que estruturam o INE (Ordem de Serviço do INE N.º O/03/2008). As actuais Delegações do INE existentes no território nacional são as seguintes: • Delegação do Porto; • Delegação de Coimbra; • Delegação de Évora; • Delegação de Faro. No âmbito nacional também participam o Serviço Regional de Estatísticas dos Açores e a Direcção Regional de Estatística da Madeira, equiparados, para esse efeito, a Delegações do INE. O INE delega ainda competências de parte da actividade estatística do País em outras entidades nacionais, assumindo o objectivo de promover a coordenação dessa actividade e de facilitar aos utilizadores o acesso a toda a informação produzida. As entidades com delegação de competências do INE são (INE, 2010): • Direcção-Geral da Política de Justiça / Ministério da Justiça; • Direcção-Geral das Pescas e Aquicultura / Ministério da Agricultura, Mar, Ambiente e Ordenamento do Território; • Gabinete de Estatística e Planeamento da Educação / Ministério da Educação; • Gabinete de Estratégia e Planeamento / Ministério da Solidariedade e da Segurança Social; • Gabinete de Planeamento, Estratégia, Avaliação e Relações Internacionais / Ministério da Ciência, Tecnologia e Ensino Superior; • Direcção Geral de Energia e Geologia / Ministério da Economia e do Emprego; • Agência para a Sociedade do Conhecimento, IP / Ministério da Educação e Ciência. A visão do INE é ser reconhecido, nacional e internacionalmente, como uma autoridade estatística de excelência, enquanto (INE, 2011): • produtor e fornecedor de informação estatística oficial de qualidade; 7 Enquadramento • organização independente e credível; • grande impulsionador da Literacia Estatística na Sociedade; • entidade empenhada e eficaz na cooperação internacional. 2.1.2. Caracterização da Empresa O INE tem uma política de difusão claramente orientada para o utilizador, atribuindo um elevado valor à satisfação das suas necessidades e expectativas. O acesso amplo e fácil à informação do INE é uma prioridade, assim como a melhoria contínua da qualidade do serviço prestado. O INE coloca à disposição dos seus utilizadores diversos serviços de difusão da informação que publica: • no Portal do INE, onde é possível: o consultar e importar gratuitamente um conjunto muito vasto de informação; o aceder a outros serviços, como a subscrição de conteúdos e o envio de pedidos de informação não disponível online. No caso de se efectuar um pedido de informação estatística, este será analisado e enviada uma resposta, no prazo de cinco dias úteis. Caso a informação esteja sujeita a tarifação, é recebido um orçamento prévio, elaborado com base no tarifário em vigor (INE, 2011); o consultar a BDEO – Biblioteca Digital de Estatísticas Oficiais que permite o acesso a todas as publicações editadas pelo INE e também ao catálogo bibliográfico (INE, 2011); • nas Bibliotecas do INE – Porto, Coimbra, Lisboa, Évora e Faro – onde é possível consultar gratuitamente todas as publicações do Instituto, em papel e em CD-ROM; as publicações de outros organismos, nacionais, estrangeiros e internacionais (INE, 2011) como por exemplo: Annuaire des Statistiques du Travail, cuja última edição reporta-se a 2007; Comptes nationaux trimestriels: SEC, tendo deixado de ser editada em papel, mas os dados encontram-se disponíveis no Portal do Eurostat; Quarterly Panorama of European business 8 Capítulo 2 statistics 2011 e Programa Estadístico de Castilla y León 2011 cujos dados também se encontram disponíveis no Portal do Eurostat. A Figura 2.2 mostra a Biblioteca da Delegação de Coimbra, situada na Rua Aires de Campos, Casa das Andorinhas, em Coimbra. Figura 2.2 - Biblioteca da Delegação de Coimbra. • nos Pontos de Acesso (PAs), localizados em Bibliotecas do Ensino Superior. Estes constituem as Redes de Informação do INE em Bibliotecas do Ensino Superior (RIIBES), existentes em todos os distritos do Continente, como por exemplo: o Instituto Politécnico da Guarda, Instituto Politécnico de Beja, Instituto Politécnico de Leiria, Universidade da Beira Interior, Universidade de Aveiro, Universidade de Coimbra, entre outros. Nos Pontos de Acesso é possível consultar as publicações em papel e em CD-ROM, bem como aceder a outros serviços prestados pelo Instituto, com o apoio de técnicos formados para o efeito, dispondo também de um telefone com ligação directa e gratuita ao INE para apoio ou esclarecimentos adicionais. Os PAs proporcionam uma aproximação mais significativa à informação estatística, que está acessível de uma forma rápida e gratuita, permitindo, assim, a democratização da informação, tanto para a comunidade académica como para o público em geral. 9 Enquadramento O primeiro Ponto de Acesso da Rede de Informação do INE em Bibliotecas do Ensino Superior foi inaugurado em Novembro de 2004, no Instituto Politécnico de Castelo Branco (IPCB). Em 2005, foi criada uma folha informativa, com periodicidade bimestral, que foca a seguinte informação: a vida interna do INE; descreve um Ponto de Acesso; apresenta testemunhos de alguns utilizadores do respectivo PA e informação sobre acções de formação desenvolvidas para dar a conhecer os diferentes produtos e serviços do PA. Por exemplo, na folha informativa do mês de Julho de 2011 é dado relevo aos Pontos de Acesso à RIIBES no Instituto Politécnico de Bragança através de uma entrevista à Responsável por estes PAs e depoimentos de vários utilizadores. Também é dado foco à operação Censos 2011, de que agora são conhecidos os resultados preliminares. Em relação ao PA instalado na Biblioteca da Escola Superior Agrária, em Bragança, este teve como intuito proporcionar à comunidade académica da Escola de Mirandela, e à população local, igualdade no acesso à informação estatística, instalando, dois anos depois, uma extensão do PA na Biblioteca Municipal Sarmento Pimentel. Neste momento, apenas no Distrito de Bragança e no Porto, existem mais do que um Ponto de Acesso. A Figura 2.3 é uma fotografia do Ponto de Acesso instalado na Biblioteca da Escola Superior Agrária, no Instituto Politécnico de Bragança (IPB). Figura 2.3 - Ponto de Acesso no Instituto Politécnico de Bragança (retirada da Folha Informativa, 2011). 10 Capítulo 2 2.1.3. Actividade Estatística Nos termos da lei n.º 22/2008 do Sistema Estatístico Nacional (SEN)2 de 13 de Maio, a prestação de informação ao INE é obrigatória sempre que solicitada e gratuita. Além disso, toda a informação de carácter individual é de natureza estritamente confidencial, no exercício das suas competências e no quadro de autoridade estatística que lhe é conferido. A resposta aos inquéritos do INE é um dever de cidadania, no qual as pessoas devem fornecer a informação necessária ao INE para a produção de estatísticas oficiais (Carvalho, 2011). A título de exemplo, o Recenseamento da População e da Habitação, abreviadamente designado por Censos, realizado este ano em 2011, é uma contagem da população e do parque habitacional que decorre todos os dez anos. A informação recolhida permite saber quantos somos, como somos e como vivemos. Através dos Censos é possível planificar um conjunto de bens e serviços essenciais à população, tais como escolas, hospitais, segurança e transportes. Normalmente, a atribuição de verbas e a definição de políticas a nível regional têm por base os resultados dos recenseamentos. O Instituto Nacional de Estatística foi a entidade responsável pela preparação e realização dos Censos 2011 e contou com a colaboração das Câmaras Municipais e das Juntas de Freguesia de todo o País. Em anexo, encontram-se os vários métodos de recolha de informação, bem como alguns exemplos de inquéritos através dos quais são obtidos os dados para o INE. 2.2. INFORMAÇÃO EMPRESARIAL SIMPLIFICADA (IES) A Informação Empresarial Simplificada, abreviadamente designada por IES, veio substituir o meio e a informação entregue pelas empresas num único acto, por via 2 SEN - conjunto orgânico integrado pelas instituições e entidades a quem compete o exercício da actividade estatística oficial. 11 Enquadramento electrónica, facilitando assim a vida das empresas. Segue-se uma explicação mais detalhada sobre a IES, os formulários que a constituem, os procedimentos de envio por parte das empresas, o circuito de informação (desde a entrega da informação por parte das empresas até ao INE) e as suas principais vantagens. 2.2.1. Introdução A Informação Empresarial Simplificada consiste numa nova forma de entrega, por via electrónica e de forma totalmente desmaterializada, de obrigações declarativas de natureza contabilística, fiscal e estatística, que entrou em vigor em 2007. A IES agrega num único acto o cumprimento de quatro obrigações legais: a entrega da declaração anual de informação contabilística e fiscal, o registo da prestação de contas, a prestação de informação de natureza estatística ao Instituto Nacional de Estatística e a prestação de informação relativa a dados contabilísticos anuais para fins estatísticos ao Banco de Portugal, que se encontravam dispersas e nos termos das quais era necessário prestar informação materialmente idêntica a diferentes organismos, por quatro vias diferentes. Até à entrada em funcionamento da IES em 2007, as empresas estavam obrigadas a prestar a mesma informação sobre as suas contas anuais a diversas entidades públicas, através dos diferentes meios: • registo da prestação de contas anuais, em papel, nas Conservatórias do Registo Comercial; • entrega da declaração anual de informação contabilística e fiscal ao Ministério das Finanças (Direcção-Geral dos Impostos - DGCI), que era efectuada em papel até 2001 e desde então através da Internet; • entrega de informação anual de natureza contabilística sobre as suas contas ao INE para efeitos estatísticos, através do Inquérito à Empresa Harmonizado (IEH); • entrega de informação anual de natureza estatística sobres as suas contas ao Banco de Portugal, através do Inquérito Anual da Central de Balanços, e a entrega da informação anteriormente incluída no Quadro 2 dos Questionários ao Investimento Directo do Exterior em Portugal e de Portugal no Exterior. 12 Capítulo 2 No essencial, o cumprimento de cada uma destas obrigações implicava, para as empresas, a necessidade de transmitir informação substancialmente idêntica sobre as suas contas anuais a quatro entidades diferentes: Conservatórias do Registo Comercial, Ministério das Finanças (Direcção-Geral dos Impostos - DGCI), INE e Banco de Portugal, e consequentemente, através de quatro meios diferentes. A única obrigação fiscal integrada na IES foi a entrega da Declaração Anual de Informação Contabilística e Fiscal (Declaração Anual), por parte dos sujeitos passivos de IRC e dos titulares de estabelecimentos individuais de responsabilidade limitada (EIRL). O procedimento de entrega da IES é o mesmo que anteriormente era seguido para envio da Declaração Anual ao Ministério das Finanças, tendo de haver registo prévio no Portal das Finanças (Portal das Finanças, 2011). No caso do INE, a IES constitui a nova forma de entrega de informação anual para fins estatísticos que veio substituir o Inquérito à Empresa Harmonizado (IEH), correspondendo a uma diminuição substancial da carga estatística das empresas. O IEH tinha como objectivo recolher dados de natureza económico-financeira das empresas cuja actividade principal está classificada na subsecção DA3 (Indústrias Alimentares, das Bebidas e Tabaco), da CAE-Rev.2 (Classificação Portuguesa das Actividades Económicas, Revisão 2). O procedimento do IEH era o seguinte: o INE fazia a expedição às empresas seleccionadas por via postal, uma vez que o IEH era um inquérito por amostragem, de dois modelos: Modelo A – para empresas com mais de vinte pessoas ao serviço e Modelo B – para empresas com menos de vinte pessoas ao serviço] e dos anexos específicos conforme o sector de actividade. As empresas devolviam os inquéritos preenchidos novamente por via postal e, no INE, era feito o seu registo numa aplicação para esse fim. A IES inclui informação de natureza fiscal, contabilística e estatística sobre as contas das empresas transversal a todos os sectores de actividade económica. A informação de carácter específico para determinados 3 DA - é a codificação de uma subsecção da CAE Rev.2. O sistema de codificação adoptado na CAERev.2 pode dividir-se em duas partes: uma alfabética com dois níveis (Secção e Subsecção) e outra numérica com quatro níveis (Divisão, Grupo, Classe e Subclasse). Na parte alfabética, as Secções são codificadas com uma letra de A a Q e as Subsecções com letras (a primeira da esquerda para a direita define a Secção e a segunda uma ordem sequencial alfabética). Das 17 Secções incluídas na CAE-Rev.2 só as Secções C e D estão subdividas em Subsecções reais, isto é, têm um código duplo alfabético. As restantes, por definição, da Secção (por exemplo: Secção A = Subsecção AA) (INE, 1993) 13 Enquadramento sectores de actividades, tais como a Construção, Indústria, Serviços Prestados às Empresas e Ambiente, continuam a ser recolhidas pelo INE por amostragem, através de inquéritos. Algumas das operações estatísticas que o INE mantém em vigor, via Internet através de um formulário electrónico ou via postal, são as seguintes (INE, 2011): o Inquérito Trimestral às Empresas Não Financeiras (ITENF, anteriormente designado por PTRE); o Inquérito Anual à Produção Industrial (IAPI); o Inquérito Anual às Empresas de Construção (IAEC); o Inquérito às Unidades Comerciais de Dimensão Relevante (UCDR); o Inquérito às Empresas - Gestão e Protecção do Ambiente (IEGPA). Nos inquéritos referidos anteriormente existe informação que já não é solicitada, como por exemplo o volume de negócios (VVN), que é obtida através da IES, mas completam a informação que o INE necessita, para enviar ao Eurostat (Serviço de Estatísticas da Comunidade Europeia). Ao Banco de Portugal mantém-se o reporte directo da informação que consta dos restantes quadros, excepto a informação anteriormente incluída no Quadro 2 (que faz parte da IES) dos Questionários ao Investimento Directo do Exterior em Portugal e de Portugal no Exterior, designadamente informação individualizada sobre as relações económicas entre investidores e empresas objecto de investimento directo, sendo importante garantir a consistência dos dados aí transmitidos com os dados da IES. Com a entrada em vigor da IES, toda a informação que as empresas têm de prestar relativamente às suas contas anuais é transmitida, num único momento e perante uma única entidade, através do preenchimento de formulários únicos submetidos por via electrónica e de forma totalmente desmaterializada. Este modelo visa concretizar o programa SIMPLEX do Ministério da Justiça. A criação da IES permitiu o acesso, por via administrativa e de forma quase exaustiva, ao universo das empresas portuguesas. Entre elas, incluem-se todas as sociedades e os Empresários em Nome Individual com contabilidade organizada com Estabelecimento 14 Capítulo 2 Individual de Responsabilidade Limitada (EIRL), sendo estes últimos em número muito reduzido, no máximo 300 registos (na base de dados do INE, em relação ao ano de 20094 existem apenas 157 registos e 193 registos para o ano de 2008). Os restantes Empresários em Nome Individual com contabilidade organizada preenchem a Declaração Anual - Anexo I (Sujeitos passivos de IRS, com rendimentos da categoria B - Rendimentos empresariais ou profissionais, com contabilidade organizada) e os Empresários em Nome Individual sem contabilidade organizada o Modelo 3 - Anexo B (Categoria B - Rendimentos profissionais e empresariais - regime simplificado de tributação), sendo estes enviados para o INE através da fonte administrativa do Ministério das Finanças - Direcção Geral de Contribuições e Impostos (DGCI). A IES constitui então uma oportunidade para a reformulação das estatísticas das empresas, com uma consequente melhoria ao nível dos resultados produzidos pelo INE. A sua implementação só foi possível com a importante participação de todas as partes interessadas e com a execução dos seguintes passos: • em primeiro lugar todas as instituições públicas envolvidas identificaram as suas próprias necessidades, através de lista de características; • posteriormente, estas características foram comparadas, em termos de conceitos e definições, chegando a um consenso com as instituições públicas; • com base na lista final, foram preparadas as instruções e os modelos para obtenção de dados, bem como as mais de 2.000 regras de edição (Chumbau, Pereira e Rodrigues, 2010). Além das instituições públicas, também foi importante apoio da Câmara dos Revisores Oficiais de Contas, de empresas de fornecimento de software, de seguradoras e de supervisores bancários (Chumbau, Pereira e Rodrigues, 2010). 2.2.2. Formulários da IES A informação a prestar no âmbito da IES consiste no modelo de declaração criado e constituído pelos seguintes anexos: 4 ano de exercício a que se refere a declaração. 15 Enquadramento • Folha de Rosto - Declaração Anual; • Anexo A - IRC5 - Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola e entidades não residentes com estabelecimento estável; • Anexo A1 - IRC - Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola - contas consolidadas; • Anexo B - IRC - Empresas do sector financeiro; • Anexo B1 - IRC - Empresas do sector financeiro - contas consolidadas; • Anexo C - IRC - Empresas do sector segurador; • Anexo C1 - IRC - Empresas do sector segurador - contas consolidadas; • Anexo D - IRC - Entidades residentes que não exercem, a título principal, actividade comercial, industrial ou agrícola; • Anexo I - IRS6 - Sujeitos passivos de IRC e dos titulares de estabelecimentos individuais de responsabilidade limitada (EIRL); • Anexo R - Informação estatística - Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola, entidades não residentes com estabelecimento estável e EIRL (Estabelecimentos Individuais de Responsabilidade Limitada); • Anexo S - Informação estatística - Empresas do sector financeiro; • Anexo T - Informação estatística - Empresas do sector segurador. No Portal das Finanças, na parte IES/DA (DA - Declaração Anual) existem outros anexos que também podem ser entregues electronicamente e que não foram incluídos na IES, uma vez que essa informação não era comum às quatro entidades envolvidas, tais como: • Anexo F - IRC - Benefícios fiscais; • Anexo L - IVA - Elementos contabilísticos e fiscais. Desse modo, existe uma diferença entre a IES/DA e a IES, sobre a qual incide este trabalho. 5 6 IRC - Imposto sobre o Rendimento das Pessoas Colectivas. IRS - Imposto sobre o Rendimento das Pessoas Singulares. 16 Capítulo 2 No âmbito da IES, as empresas terão, consoante as suas actividades, de apresentar conjuntamente as seguintes combinações: • Folha de Rosto + Anexo R (Informação estatística) + Anexo A - Empresas com actividade comercial, industrial ou agrícola; • Folha de Rosto + Anexo R (Informação estatística) + Anexo I (se EIRL) Sujeitos passivos de IRC e dos titulares de estabelecimentos individuais de responsabilidade limitada (EIRL); • Folha de Rosto + Anexo B (Informação estatística) + Anexo S - Empresas do sector financeiro; • Folha de Rosto + Anexo T (Informação estatística) + Anexo C - Empresas do sector segurador. 2.2.3. Procedimentos de envio As entidades obrigadas à entrega da IES e os TOCs são identificados por senhas atribuídas pela Direcção-Geral dos Impostos (DGCI), no Portal das Finanças (Portal das Finanças, 2011). Para submeter a IES, existem as seguintes formas possíveis: • online, a partir do Portal das Finanças (Portal das Finanças, 2011), de acordo com os seguintes passos: 1. Seleccionar: 1.1 Serviços online; 1.2 TOCs ou empresas, consoante o caso; 1.3 Entregar; 1.4 IES/DA; 2. Preencher a declaração, validar a informação e corrigir os erros detectados; 3. Submeter a declaração; • offline, através da opção Downloads, disponível no Portal das Finanças (Portal das Finanças, 2011), seleccionar a opção IES/DA, fazer o download da 17 Enquadramento aplicação consoante o formato pretendido (Windows, MAC OS, Sistema Unix e genéricos) e efectuar os seguintes passos: 1. Proceder à instalação da aplicação localmente; 2. Preencher a declaração ou importar um ficheiro pré-formatado, validar os dados, corrigir eventuais erros e gravar a informação num ficheiro; 3. Estabelecer uma Sessão Segura; 4. Seleccionar a opção Serviços online / Entregar / IES/DA; 5. Importar a declaração gravada; 6. Submeter a declaração; • software’s de contabilidade, gestão financeira e administrativa, que foram actualizados, de forma a ser possível a exportação do ficheiro com o formato XML, onde também são feitas algumas validações antes da exportação, como exemplo o software CentralGest (CentralGest, 2011). Nesta situação, apenas é necessário efectuar os passos a partir do passo 3 (Estabelecer uma Sessão Segura), referidos no ponto anterior. Ao submeter a declaração poderão surgir erros e, neste caso, as correcções terão que ser feitas através da aplicação disponibilizada no Portal das Finanças, pois segundo o software CentralGest a declaração encontra-se correcta; • Interface Web Services, com o objectivo de promover a integração de aplicações remotas com os Web Services fornecidos pela DGITA (Direcção Geral de Informática e apoio aos Serviços Tributários e Aduaneiros) para a submissão de declarações fiscais. Neste caso, terá de ser feita a formalização do pedido de acesso ao Web Services, através de um contacto com a DGCI. A obrigação declarativa só estará cumprida após a submissão dos dados, a obtenção da identificação da declaração, da data e hora de recepção. A partir do segundo dia útil seguinte ao da submissão das declarações, as empresas deverão consultar a situação definitiva da IES. O pagamento do registo de prestação de contas terá de ser feito nos cinco dias úteis seguintes à submissão da IES. 18 Capítulo 2 A IES não introduziu qualquer alteração quanto às entidades que estão sujeitas à prestação de contas, mantendo-se, quanto a essa matéria, as regras anteriormente vigentes. Assim, estão sujeitas a registo de prestação de contas: • as sociedades comerciais e as sociedades civis sob forma comercial; • as sociedades anónimas europeias; • as empresas públicas; • os estabelecimentos individuais de responsabilidade limitada. 2.2.4. Circuito de Informação da IES O circuito de dados consiste na entrega de um documento electrónico das empresas ou dos TOCs, através de uma ligação segura pela Internet ao Ministério das Finanças, no Portal das Finanças (Portal das Finanças, 2011). Estes formulários condensam toda a informação necessária ao cumprimento das quatro obrigações legais integradas na IES. O sistema de apoio já inclui um conjunto de regras de coerência, a fim de garantir a consistência de todos os dados apresentados. Uma vez recebida a informação, é feita uma primeira validação a fim de garantir que a declaração respeita um conjunto de requisitos e caso a declaração não os cumpra, esta é rejeitada e a empresa é obrigada a apresentar uma nova declaração. Quando as declarações cumprem as validações iniciais, a DGITA efectua outro tipo de validações, tais como: se os códigos inseridos são válidos (por exemplo: se os Números de Identificação Fiscal, os códigos da Classificação Portuguesa das Actividades Económicas (CAE), entre outros, são válidos). Além das validações a DGITA também adiciona alguns dados (que constam da sua base de dados do cadastro das empresas) às declarações recebidas das empresas, dados esses definidos no âmbito do Grupo de Trabalho da IES por todas as entidades envolvidas. A DGITA (Ministério das Finanças) envia posteriormente ao ITIJ (Ministério da Justiça) as declarações em ficheiro XML, cabendo ao ITIJ agrupar e criar um ficheiro zip com as declarações recebidas, segundo as regras definidas. O nome do ficheiro zip deverá ter a seguinte estrutura IES_AAAAMMDD_HHMMSS_NDec.zip, o NDec (que faz parte do nome do ficheiro 19 Enquadramento zip) é o número de declarações incluídas no ficheiro zip, o que perfaz no máximo duas mil declarações. O ITIJ disponibiliza nos seus servidores, ao INE e ao Banco de Portugal, as declarações recebidas da DGITA agrupadas em ficheiros zip. A transferência entre o ITIJ e o INE é efectuada diariamente, utilizando o protocolo File Transfer Protocol (FTP). As declarações são disponibilizadas dentro de um período máximo de 48 horas para o INE, estando a partir deste momento sujeitas ao segredo estatístico. No INE, cada declaração é submetida a um novo processo de controlo e de validações que, além de garantir a coerência interna da informação é feita a comparação com a mesma empresa do ano anterior e empresas com características semelhantes. A Figura 2.4 ilustra o circuito de informação da IES, conforme a descrição acima referida. Figura 2.4 - Circuito de informação da IES. 20 Capítulo 2 2.2.5. Vantagens da IES A IES permite que toda a informação que as empresas têm de prestar relativamente às suas contas anuais, passe a ser transmitida num único momento e perante uma única entidade. Resumidamente, as principais vantagens são as seguintes: • simplifica a vida das empresas - passam a cumprir quatro obrigações com o envio de um formulário único. Evitam-se deslocações e elimina-se a entrega de documentos em papel; • reduz o custo para as empresas - o registo da prestação de contas é mais barato. As empresas poupam em deslocações e na produção de documentos em formatos diferentes para quatro entidades públicas; • torna a economia mais competitiva e transparente - existe mais informação sobre o mercado português. A informação é mais actualizada, porque é disponibilizada mais rapidamente; • informação estatística sobre o universo (quase exaustivo) das empresas portuguesas - visão mais fidedigna e completa da evolução da economia nacional (IES, 2011). 2.3. SISTEMA DE NORMALIZAÇÃO CONTABILÍSTICA (SNC) O Sistema de Normalização Contabilística, designado pela sigla SNC, vem substituir o Plano Oficial de Contabilidade (POC) e a legislação complementar, assim como permitir a harmonização do quadro contabilístico nacional e das normas internacionais de contabilidade adoptadas pela União Europeia. Nesta secção é apresentado um conjunto de informação necessária ao entendimento do SNC, referidas algumas das suas vantagens, as principais mudanças e maiores dificuldades e preocupações das empresas. Neste contexto, e recuando no tempo da história contabilística, apresenta-se o POC. Por fim, são mencionadas as alterações à IES na sequência da entrada em vigor do SNC. 21 Enquadramento 2.3.1. Introdução ao SNC O novo modelo de normalização contabilística, designado por Sistema de Normalização Contabilística (SNC) foi criado e revogado o POC em Julho de 2009, tendo entrado em vigor a partir do dia 1 de Janeiro de 2010. O SNC é um modelo de normalização mais assente em princípios (conceitos) do que em regras explícitas (contrariamente ao modelo com base no POC) que consiste em criar uma metodologia comum, a ser seguida pelas unidades económicas visando, fundamentalmente, a comparabilidade das informações inter-unidades, a universalidade dos dados recolhidos e a sua compreensão pelos diversos agentes económicos. Basear-se mais em princípios que em regras significa que a interpretação das mesmas não se pode confinar ao seu aspecto meramente literal, mas deve ter em consideração os objectivos gerais que lhe estão consignados no contexto do SNC. Por exemplo, que os indicadores sugeridos para a determinação da moeda funcional de uma entidade não sejam definitivos, cabendo ao órgão de gestão a utilização de juízo de valor se necessário e que se “ajude” à classificação das locações com base em exemplos e indicadores, ainda que se assuma a possibilidade de os mesmos não serem conclusivos. Significa, obviamente, que está implícito um maior grau de subjectividade na elaboração e no entendimento das normas. No entanto, por outro lado, significa também que o sistema normalizador é suficientemente abrangente para que seja ineficaz a construção de realidades com o objectivo único de contornar as regras concretas de contabilização e relato (Infocontab, 2011). Em termos básicos, o que muda é um conjunto de conceitos e procedimentos técnicos que, de momento se prendem com a primeira aplicação do SNC e que consiste numa ordenação diferente das contas, da arrumação do balanço e das restantes demonstrações financeiras, dos efeitos da nova terminologia e de uma nova estrutura conceptual. Conclui-se que o SNC constitui uma adaptação (e não adopção) das Normas Internacionais de Contabilidade (NIC ou IAS - Internacional Accounting Standard), das Normas Internacionais de Relato Financeiro (NIRF ou IFRS - International Financial 22 Capítulo 2 Reporting Standards) e das respectivas Interpretações (SIC - Standing Interpretation Committee e IFRIC - International Financial Reporting Interpretation Committee), emitidas pelo International Accounting Standards Board (IASB), em resultado da estratégia da União Europeia (UE), mantendo-se, contudo, algumas características próprias, como é o exemplo de um código de contas auxiliar. A contabilidade das empresas assume um papel fundamental em todo o sistema económico e financeiro, designadamente no que respeita à criação das demonstrações contabilísticas (que permitem avaliar uma empresa em termos do seu património num determinado momento), ao volume de resultados criado durante um certo período de tempo, aos fluxos financeiros de entrada e saída ocorridos também num determinado período de tempo, entre outros. De facto, a informação contabilística é extremamente importante em várias vertentes, como por exemplo: na tomada de decisões de investimento, de financiamento e na cobrança de impostos por parte do Estado. 2.3.2. O POC Recuando no tempo e na história da contabilidade, em Fevereiro de 1977, foi instituído em Portugal o principal modelo de normalização contabilística para as empresas comerciais e industriais e outras entidades. Foi então aprovado o POC e criada simultaneamente a Comissão de Normalização Contabilística (CNC)7 para o seu acompanhamento e actualização, mas remetendo para uma futura portaria a designação dos seus membros em 1980 (CNC, 2011). O POC é um documento que explana todas as regras e preceitos a utilizar obrigatoriamente na contabilidade da maioria das empresas e encontra-se dividido em vários capítulos, cada um deles tratando de um aspecto específico associado à contabilidade. Entretanto, o POC foi objecto de sucessivas alterações, essencialmente motivadas pela necessidade de adaptação do modelo contabilístico nacional a instrumentos jurídicos comunitários. O POC desempenhou durante anos um papel fundamental e tem-se 7 CNC - organismo tecnicamente independente, no qual estão representadas, a nível nacional, as entidades públicas e privadas interessadas no domínio da contabilidade administrativa e financeira no âmbito do Ministério das Finanças e da Administração Pública (CNC, 2011). 23 Enquadramento revelado, desde há algum tempo, insuficiente para as entidades com maiores exigências qualitativas de relato financeiro. No entanto, carece de revisão técnica no que concerne, nomeadamente, a aspectos conceptuais, critérios de reconhecimento8 e mensuração9, conceito de resultados e também em relação aos modelos das demonstrações financeiras individuais e consolidadas. Assim, as empresas portuguesas não podiam deixar de adoptar um sistema de relato financeiro similar ao já utilizado pela generalidade dos seus concorrentes no espaço europeu. Manter o POC colocaria em risco, a breve prazo, a capacidade competitiva das empresas portuguesas, quer no acesso ao crédito quer na internacionalização do seu negócio, podendo condicionar o desenvolvimento da economia portuguesa (PricewaterhouseCoopers, 2009). 2.3.3. O SNC O SNC aplica-se às sociedades abrangidas pelo Código das Sociedades Comerciais, empresas individuais reguladas pelo Código Comercial, estabelecimentos individuais de responsabilidade limitada, empresas públicas, cooperativas, agrupamentos complementares de empresas e agrupamentos europeus de interesse económico, bem como a outras entidades que, por legislação específica, se encontrem sujeitas ao POC ou venham a estar sujeitas ao SNC (Portal Gestão, 2011). À semelhança do que ocorre no POC, as entidades que, exercendo a título individual qualquer actividade comercial, industrial ou agrícola, não realizem na média dos últimos três anos um volume de negócios superior a cento e cinquenta mil euros, estão dispensadas da sua aplicação (Portal Gestão, 2011). Tendo em conta as entidades a que se destina o SNC, no processo de adaptação das normas internacionais de contabilidade, foi criada uma norma especificamente destinada 8 Reconhecimento, de uma forma sucinta, é o processo de incorporar no balanço e na demonstração de resultados um item que satisfaça a definição de uma classe e os critérios de reconhecimento (Sage, 2011). 9 Mensuração é o processo de determinar as quantias monetárias pelas quais os elementos das demonstrações financeiras devem ser reconhecidos e inscritos no balanço e nas demonstrações de resultados (Sage, 2011). 24 Capítulo 2 às entidades de menor dimensão que, assente na mesma filosofia de conceitos e orientada pelos mesmos requisitos técnicos de referência, permite delimitar e simplificar num único documento, mais acessível e de mais fácil aplicação, as exigências contabilísticas mais comuns a esse universo. Neste contexto, assegura-se inteira compatibilidade e coerência entre os normativos aplicáveis aos seguintes três grandes grupos de entidades que operam em Portugal, sendo nomeadamente: • empresas com valores cotados que aplicam directamente as normas internacionais de contabilidade; • restantes empresas dos sectores não financeiros, que aplicarão as Normas Contabilística e de Relato Financeiro (NCRF); • empresas de menor dimensão que aplicarão a Normas Contabilísticas e de Relato Financeiro para Pequenas Entidades (NCRF-PE). O SNC é composto pelos seguintes instrumentos: • Bases para a Apresentação de Demonstrações Financeiras (BADF) - são as bases para a apresentação de demonstrações financeiras de finalidades gerais que estabelecem os requisitos globais e que permitem assegurar a comparabilidade, quer com as demonstrações financeiras de períodos anteriores da empresa quer com as de outras empresas; • Modelos de Demonstrações Financeiras (MDF) - são os modelos de demonstração financeira que, assim como os modelos simplificados para empresas que adoptem as Normas Contabilísticas e de Relato Financeiro para Pequenas Entidades (NCRF-PE), contemplam modelos para as demonstrações financeiras previstas no SNC; • Código de Contas (CC) - constitui um documento não exaustivo que contém: o quadro síntese de contas, o código de contas (lista codificada de contas) e notas de enquadramento. Deverá ainda ser adoptado pelas empresas que adoptem as NCRF - PE; • Normas Contabilísticas e de Relato Financeiro (NCRF) - são o núcleo central do SNC, constituem uma adaptação das normas internacionais de contabilidade, adoptadas na União Europeia, tendo em conta o tecido empresarial português. Cada uma delas constitui um instrumento de normalização onde, de modo 25 Enquadramento desenvolvido, são expostos os vários tratamentos técnicos a adoptar em matéria de reconhecimento, de mensuração, de apresentação e de divulgação das realidades económicas e financeiras das entidades; • Normas Contabilísticas e de Relato Financeiro para Pequenas Entidades (NCRFPE) - constitui o regime simplificado de adopção das NCRF e corresponde a uma simplificação adicional das NCRF. Enquadram-se aqui as PMEs cuja dimensão não ultrapasse dois dos três limites seguintes: 1.000.000€ de total de vendas líquidas e outros rendimentos; 500.000€ de total de balanço e vinte trabalhadores (número médio de trabalhadores empregados durante o exercício); • Normas Interpretativas (NI) - são criadas para esclarecimento e orientação sobre o conteúdo dos restantes instrumentos integrantes do SNC, sempre que tal se justifique (Decreto de lei n.º158/2009). 2.3.3.1. Vantagens do SNC O SNC vem introduzir uma maior fluidez ao nível da ciência económica, tendo como finalidade que as demonstrações financeiras reflictam cada vez mais uma imagem verdadeira e apropriada da entidade (Ferreira, 2010). O SNC visa contribuir para um maior investimento e financiamento por parte de investidores estrangeiros, promovendo também uma melhor integração das empresas portuguesas nos mercados internacionais, uma vez que qualquer investidor poderá avaliar e perceber os relatos financeiros de uma empresa de qualquer parte do mundo, já que os critérios utilizados nos seus relatos financeiros serão os mesmos. Face ao POC e às várias Directrizes Contabilísticas, o SNC, mais concretamente nos aspectos relativos aos Activos fixos tangíveis10 (anteriormente designado como Imobilizado Corpóreo, por exemplo: equipamentos básicos como edifícios, computadores, automóveis, etc.), vem colmatar várias omissões, que de certa forma eram ultrapassadas por diplomas fiscais (Ferreira, 2010). 10 Activos fixos tangíveis - são considerados os bens móveis ou imóveis que a empresa utiliza na sua actividade operacional e não se destinem a ser vendidos ou transformados, com carácter de permanência superior a um ano. Inclui igualmente as benfeitorias e as grandes reparações que sejam de acrescer ao custo daqueles activos (Franco, 2010). 26 Capítulo 2 Importa ainda salientar como vantagens decorrentes da implementação do SNC, as seguintes: • relato financeiro mais moderno gerando um potencial “afastamento” fiscal; • redução do risco de informação, pois o SNC aumenta a transparência, numa perspectiva de políticas de divulgação da informação bastante detalhadas e transparentes; • melhoria da organização interna; • facilitador de negócios atendendo à linguagem “internacional”, eliminando muitas diferenças actuais. 2.3.3.2. Principais mudanças A adopção do Sistema de Normalização Contabilística envolve, à partida uma mudança na forma de pensar e de encarar a contabilidade e o relato financeiro, o que reflecte inevitavelmente também numa maior exigência ao nível dos conhecimentos técnicos e obriga, necessariamente, a um investimento pessoal e organizacional de todos os intervenientes no sector. O SNC exige maior domínio de conceitos e menor conhecimento das regras de registo contabilístico, comparativamente com o POC. A contabilização e a geração da informação financeira são essencialmente baseadas em conceitos expressos nas Normas Contabilísticas e de Relato Financeiro (NCRF), o que se reflecte na forma como as empresas passam a contabilizar os seus resultados e desempenho. Tudo isto obriga à alteração de um conjunto de termos gerais, até agora utilizados. Na Tabela 2.1 são evidenciadas algumas das diferenças de terminologia entre o POC e o SNC. 27 Enquadramento Tabela 2.1 - Terminologia POC versus SNC. Terminologia POC Existências Imobilizados Incorpóreos Imobilizados Corpóreos Custos e Perdas Proveito Proveito e Ganho … SNC Inventários ou Activos Biológicos Activos Intangíveis Activos Fixos Tangíveis Gastos Rédito Rendimento … Esta correspondência poderá não ser linear, pois depende da análise feita caso a caso. Cada empresa, de acordo com o seu tipo de actividade e com o tipo de exercício para o qual esteve mais direccionada durante o ano em causa, poderá responder em contas diferentes, conforme exemplos abaixo descritos. Seguem-se dois exemplos, um em que o raciocínio utilizado é o mesmo, tanto no SNC como no POC, sendo diferentes apenas as contas e outro em que é totalmente diferente. 1. A compra de uma viatura depende da sua finalidade e do tipo de actividade da empresa. Considerando que o objectivo da empresa respeita a actividade de transportes e que a aquisição da viatura tenha como finalidade a actividade de transportes. Por exemplo, a aquisição de uma viatura no valor de 40.000€, considerando quatro anos a vida útil do bem, deve ser registado nas seguintes contas: No momento da aquisição: • conta 433 (débito) - Activos fixos tangíveis - Equipamento básico: com o valor total, os 40.000€; • conta 12 (crédito) - Depósito à ordem: com o valor total. No fim do ano: • conta 6423 (débito) - Gastos de depreciação e de amortização Equipamento básico: por cada ano de vida do bem, o valor de 10.000€ (40.000€/4); • e por contrapartida da conta 6423 na 4383 (crédito) - Depreciações acumuladas - Equipamento básico: no primeiro ano, o valor de 10.000€, 28 Capítulo 2 no segundo ano, mais 10.000€, que somando com os que já existiam fica um valor de 20.000€ e assim sucessivamente. No caso de uma empresa com uma actividade diferente, onde a compra de uma viatura não se encontra directamente relacionada com a actividade da empresa. Por exemplo: o transporte de dirigentes, ir ao correio, ou seja, para servir no diaa-dia da empresa, então neste caso, deve ser registada nas seguintes contas: No momento da aquisição: • conta 434 (débito) - Activos fixos tangíveis - Equipamento de transporte: com o valor total, os 40.000€; • conta 12 (crédito) - Depósito à ordem: com o valor total. No fim do ano: • conta 6424 (débito) - Gastos de depreciação e amortização Equipamento de transporte: por cada ano o valor de 10.000€ (40.000€/4); • e por contrapartida da conta 6424 na 4384 (crédito) - Depreciações acumuladas - Equipamento de transporte: no primeiro ano o valor de 10.000€, no segundo ano mais 10.000€, que somando com os que já existiam, fica um valor de 20.000€ e assim sucessivamente. Para o exemplo anterior, em POC, o raciocínio era semelhante, mesmo ao nível do registo dos valores, apenas as contas eram diferentes, sendo elas: • conta 423 (débito) - Imobilizações Corpóreas - Equipamento básico; • conta 12 (crédito) - Depósito à ordem: com o valor total. No fim do ano: • conta 6623 (débito) - Amortizações de Imobilizações Corpóreas Equipamento básico; 29 Enquadramento • e por contrapartida da conta 6623 na 4823 (crédito) - Amortizações acumuladas - Equipamento básico. Na situação em que o equipamento é considerado de transporte e não está relacionado com a actividade da empresa, este era registado nas seguintes contas: • 424 - Imobilizações Corpóreas - Equipamento de transporte; • 6624 - Amortizações de Imobilizações Corpóreas - Equipamento de transporte; • e por contrapartida da conta 6624 na 4824 - Amortizações acumuladas – Equipamento de transporte. 2. A compra de um edifício no valor de 500.000€, com o objectivo de o rentabilizar (vender ao fim de 5 anos). Segundo o POC, o registo era feito no ano de aquisição pelo valor da compra, pois não existia as contas de valorização e/ou desvalorização. Actualmente, com o SNC, ao fim dos 5 anos pode ser registado o justo valor (não sendo obrigatório). Com um valor final de 550.000€, o registo é: No 1º ano: • conta 422 - Propriedade de investimento - Edifícios e outras construções: o valor da aquisição, 500.000€; • conta 773 - Ganhos por aumento de justo valor - Em propriedades de investimento: o valor da valorização, por exemplo 10.000€. No 2º ano: • conta 422 - Propriedade de investimento - Edifícios e outras construções: esta conta tem o valor de 500.000€, regista-se o valor da valorização, como exemplo 10.000€, totalizando 510.000€; • conta 773 - Ganhos por aumento de justo valor - Em propriedades de investimento: regista-se o valor da valorização. 30 Capítulo 2 E assim sucessivamente, obtendo o valor de 550.000€ na conta 422, no fim dos cinco anos. Todas as contas acumulam o valor de um ano para o outro, excepto as contas 6, 7 e 8 (contas de Demonstração de Resultados) que no fim de cada ano são liquidadas a zero (Almeida, Dias e Carvalho, 2011). A Tabela 2.2 tem como objectivo comparar as contas do POC com as do SNC, com a finalidade de ser perceptível e evidenciar as diferenças entre eles. Em alguns casos, a conta POC pode não ser exactamente igual à da conta SNC, sendo nessas situações indicadas as contas para essa comparação. As diferenças que possam existir só podem ser esclarecidas com os textos explicativos (coluna observações). Tabela 2.2 - Conversão do POC para o SNC (Franco, 2010). De acordo com a estrutura do Balanço do Quadro 4A do Anexo A, é possível verificar a distinção entre Activo não corrente e Activo corrente. 31 Enquadramento Na Tabela 2.3 é demonstrada a parte inicial do Quadro 4A – Balanço, o Activo (Activo não corrente e Activo corrente) do Anexo A. Tabela 2.3 - Extracto do Quadro 4A (Activo) do Anexo A. A nomenclatura indicada em cada uma das rubricas presentes na Tabela 2.3 deve ser entendida conforme o modelo de contas utilizado: N – Normas Internacionais de Contabilidade; S – Sistema de Normalização Contabilística e M – Normalização Contabilística para Microentidades. O Goodwill surge no Balanço nos Activos não correntes. O Goodwill refere-se à quantia que resulta da diferença entre o custo de aquisição e o justo valor líquido dos activos, passivos e passivos contingentes identificáveis, e da qual se esperam benefícios 32 Capítulo 2 económicos futuros. Por exemplo, a aquisição de uma cedência de exploração de um estabelecimento comercial ou um “trespasse” (Franco, 2010). No entanto, antes de avançar, torna-se essencial fazer uma introdução ao que se entende por Activo. Com o POC, todos os TOCs reconheciam um Activo mediante um conjunto de situações padronizadas, descritas em livros, ou seja, de acordo com regras. Segundo o SNC, um Activo é um recurso controlado pela entidade como resultado de acontecimentos passados e do qual se espera que fluam benefícios económicos futuros para a entidade, como exemplo: • compra de uma máquina – a aquisição poderá ser fruto da necessidade de aumentar vendas e a empresa julga que o novo equipamento irá trazer benefícios económicos; • despesas de instalação – não geram benefícios económicos futuros de forma directa, isto porque não se consegue vender de forma isolada. Um recurso não deve ser avaliado único e exclusivamente pela sua definição, mas também pela sua substância e realidade económica (Ferreira, 2010). Um Activo não corrente deverá obedecer aos seguintes requisitos: • não se espera que seja vendido ou consumido num ciclo operacional; • não ser detido com a finalidade de ser negociado; • não seja “caixa”, que compreende o dinheiro em caixa e em depósito à ordem, ou equivalente de caixa, que são considerados os investimentos financeiros a curto prazo, altamente líquidos que sejam convertíveis para quantias conhecidas de dinheiro e que estejam sujeitos a um risco insignificante de alterações de valor; • não se espera que seja realizado num período até doze meses, após a data do balanço (Ferreira, 2010). Considera-se Activo não corrente: • Activos fixos tangíveis (nova denominação); • Propriedades de investimento (novo); 33 Enquadramento • Activos intangíveis (nova denominação); • Activos biológicos (novo); • Entre outros. Como exemplos de Activos não correntes podem referir-se: máquinas, despesas de instalação, software, entre outros. O Activo corrente é o inverso do anterior, sendo exemplos os seguintes: • Inventários; • Clientes; • Adiamento a fornecedores; • Entre outros. A importância do Anexo aumentou significativamente no conjunto das Demonstrações Financeiras, reforçando as suas características de complementaridade, homogeneização e harmonização das restantes Demonstrações Financeiras (DF), nomeadamente nos seguintes aspectos: • a própria alteração da designação apenas para “Anexo”, em vez de “Anexo ao balanço e à demonstração dos resultados” no POC, evidencia que é uma DF complementar não só ao balanço e à demonstração dos resultados mas também relativamente às restantes DF; • o aumento significativo das divulgações exigidas pelas Normas Contabilísticas e de Relato Financeiro (NCRF); • a sua ligação às restantes DF, através da inclusão de colunas autónomas nas próprias DF, para referir as notas do Anexo aplicáveis (Guimarães, 2011). 2.3.3.3. Maiores dificuldades O SNC representa a maior mudança contabilística desde a entrada em vigor do POC em 1977. Este longo período de vigência do POC permitia assegurar o conhecimento destas matérias por parte de um leque alargado de intervenientes. Era necessário um empenho acrescido da parte dos intervenientes, não só no sentido de se inteirarem das alterações 34 Capítulo 2 introduzidas pelo SNC, como de prepararem as empresas portuguesas para a adopção do novo sistema. A atitude do TOC perante o SNC muda perante os seus clientes. Enquanto este profissional enquadrava as questões nos termos e condições em que o legislador as regulava, perante o SNC isso já não acontece, uma vez que o órgão de gestão e os profissionais é que têm de ajuizar e enquadrar as situações nos princípios contabilísticos em que assentam no novo SNC. As tomadas de decisões tornaram-se mais complexas, sendo agora confrontados com o ter de efectuar juízos de valor e tomar decisões, o que exige um maior conhecimento do negócio dos seus clientes ou entidades patronais. No entanto, há decisões que só podem ser tomadas pela entidade patronal, pois só ela conhece os parâmetros produtivos e as metas que se pretendem atingir com determinado procedimento ou investimento. Neste sentido, a formação dos empresários na área da gestão do SNC revela-se fundamental para a introdução de uma Contabilidade mais transparente e adequada à nossa realidade objectiva (Azevedo, 2010). Outra das principais dificuldades são as profundas diferenças entre o novo código de contas e o POC, que compreende desde alterações em classes de contas, a criação de novas classes e adaptação de vocabulário, já que introduz novos termos como se apresentou na Tabela 2.1, entre outros (Cunha, 2009). Devido ao longo período de vigência do POC, criaram-se vícios que se podem transformar em resistência na transição para o SNC. Pelo que acrescem mais algumas dificuldades: • a enorme necessidade de formação que se fará sentir, já que o POC será substituído por inúmeras normas que é imprescindível conhecer; • procedimentos iniciais para adopção das novas normas, como a reclassificação de activos e passivos; • novos formatos das demonstrações financeiras e do plano de contas. 35 Enquadramento 2.4. IES DE ACORDO COM O SNC Nesta secção descreve-se a IES segundo o SNC, bem como a equipa que constitui o projecto e qual a motivação da informação recolhida pela IES. 2.4.1. IES 2011 Com a entrada em vigor do SNC foram introduzidas profundas alterações à informação reportada através da Informação Empresarial Simplificada, transição do POC para o SNC e alterações dos modelos da IES até agora utilizados. Os formulários foram adaptados de forma a ser possível, às empresas responderem em situação de exercício de 2009 e anos anteriores (POC) e no período de 2010 e seguintes (SNC), ou seja, os formulários contemplam as duas versões (POC versus SNC). A título de exemplo, as situações em que as empresas reportam a informação relativa ao exercício de 2009 e anos anteriores (POC) são os casos de empresas que têm de rectificar dados de anos anteriores a 2010 e as empresas que pagaram multa por não terem submetido a IES dentro do prazo e submetem a IES de anos anteriores a 2010, depois de 2009. Neste primeiro ano de 2011, considerada a fase de transição, as empresas, para algumas rubricas, terão de responder para o ano de 2009 (N-1) e o ano 2010 (N) de forma a ser possível comparar a informação de um ano para o outro. No SNC apenas a Demonstração de Resultados e o Balanço estão normalizados, a restante informação não se encontra do mesmo modo, ou seja, segundo o SNC a empresa é livre de colocar a informação na rubrica que seja mais adequada, de forma a retratar a realidade da empresa. Existe, assim, a possibilidade da informação ser apresentada de várias formas, isto é, não há harmonização da informação, podendo ocorrer o risco de cada empresa entregar a informação de forma diferente. Assim sendo, poderiam surgir situações, como exemplo: numeração no meio do texto, determinado campo poderia ser preenchido em numerário e noutros casos por extenso. Desta forma, o Grupo de Trabalho da IES normalizou a forma de registo da informação em quadros com códigos e campos específicos, de forma a ser possível o tratamento da informação e o INE atingir os seus objectivos: o de fazer estatísticas. 36 Capítulo 2 Sendo assim, a IES de acordo com o SNC, resulta de uma adaptação das Normas Internacionais de Contabilidade à realidade nacional, tendo apenas adoptado os conceitos do SNC, com uma estrutura definida pelo Grupo de Trabalho da IES. Este facto deu origem à criação de novos formulários da IES, de forma a harmonizar a informação e tornar possível o seu tratamento. 2.4.2. Equipa do projecto Este projecto, devido à sua complexidade, é constituído por uma equipa da qual fazem parte elementos de três serviços do Departamento de Metodologia e Sistemas de Informação (DMSI). A parte inicial, que consiste na cópia dos ficheiros zip do servidor do ITIJ para o INE e a invocação da aplicação desenvolvida, é da responsabilidade do Serviço de Infraestrutura Tecnológica (DMSI/IT). A cargo do Serviço de Infra-Estrutura Informacional (DMSI/II) e desenvolvido no âmbito deste Estágio, foram criadas as condições para inserir a informação das declarações recebidas na base de dados do INE, tais como: a criação da estrutura da base de dados (criação de roles, a atribuição de métodos às roles, a atribuição de permissões, entre outros), a implementação da aplicação, o controlo do carregamento diário e participação na análise dos erros gerados. A fase seguinte é da responsabilidade do Serviço de Desenvolvimento Aplicacional (DMSI/DA) que, através de uma aplicação, permite aos colegas do DEE/EP (Departamento de Estatísticas Económicas – Serviço de Estatísticas das Empresas) fazer a análise dos dados, listar as declarações disponíveis nas várias formas de pesquisa, para posterior consulta ou edição. Sintetizando, a elaboração deste trabalho consiste, essencialmente, na elaboração de todos os procedimentos necessários para que a informação disponibilizada pelo ITIJ possa ser utilizada tanto pelo Serviço de Desenvolvimento Aplicacional como pelo Serviço de Estatísticas das Empresas. 2.4.3. Disponibilização da informação da IES A informação obtida da IES é disponibilizada em Julho, com os dados relativos ao ano de exercício anterior. Este ano, em Julho de 2011, foram disponibilizados os dados de 37 Enquadramento 2009, no Portal do INE em formato publicação (pdf) e quadros em formato csv, que permitem aos utilizadores fazer os seus estudos. Além disso, em Outubro de 2011, foram disponibilizados os Dados Preliminares. Para o ano de exercício de 2010 serão, em Julho de 2012, disponibilizados os Dados Definitivos ao Eurostat. 38 Capítulo 3 3. XSD E XML Neste capítulo, pretende apresentar-se um conjunto de conceitos sobre o XSD e o XML usados na obtenção e validação da informação das declarações. As declarações da IES (Informação Empresarial Simplificada) são ficheiros, disponibilizados pela DGITA (Direcção-Geral dos Impostos do Ministério das Finanças), obtidos no formato XML que, após validação segundo o formato XSDs, são inseridos na base de dados do INE. Inicialmente, são apresentadas as tags específicas para a construção de um ficheiro XSD (cabeçalho, componentes, declaração de elementos, declaração de atributos, tipos de dados e estruturas), apresentando-se exemplos concretos com os XSDs da IES, clarificando assim todo o processo envolvido. Segue-se o mesmo raciocínio para a linguagem XML, onde é apresentada uma introdução, a origem, características e as regras de formatação de um ficheiro XML. Por fim descreve-se o XML da IES. 3.1. XML SCHEMA DEFINITION O XML Schema com a denominação de XML Schema Definition (XSD) é uma linguagem modelo para todos os ficheiros XML (eXtensible Markup Language) e para os dados. Este modelo define a estrutura, elementos, atributos, entidades, suas relações e os tipos de dados que podem ser usados e onde podem ser aplicados num ficheiro XML. Além disso, permite descrever cada tag11 e definir regras para interpretar e validar a informação de um ficheiro XML. (W3C, 2011; w3schools, 2011a;). 3.1.1. Modelos de dados Um modelo de dados é um ficheiro escrito com uma sintaxe própria permitindo descrever um ficheiro XML e, desse modo, verificar e validar se esse mesmo ficheiro XML está de acordo com a linguagem definida. Os principais modelos são os seguintes: • DTD (Document Type Definition); • XSD (XML Schema Definition). 11 tag – termo genérico para um descritor de elemento de linguagem. O conjunto de tags de um ficheiro ou outra unidade de informação é, por vezes, referido como a marcação. 39 XSD e XML O modelo DTD já era usado antes de surgir a linguagem XML. Era o modelo para validação de ficheiros da linguagem antecessora do XML (o SGML - Standard Generalized Markup Language), tendo sido a primeira linguagem disponível para validar a estrutura e o conteúdo de um ficheiro XML. Porém, desde 2001, este modelo está a ser substituído aos poucos pelo XML Schema Definition. O modelo DTD contém algumas limitações, tais como: • o conteúdo e as declarações dos atributos são difíceis de entender e ler; • não contém um conjunto amplo de tipos de dados; • os elementos têm de aparecer na ordem especificada; • a sintaxe não é baseada no formato XML (Bray et al., 2008). O modelo XSD (XML Schema Definition) ou XS (XML Schema) substituiu com vantagens a utilização do modelo DTD, além de fornecer mais funcionalidades. O XSD permite a definição de novos tipos de dados e o relacionamento entre elementos de dados dentro do XML. As ferramentas para trabalhar com o XML, classes nas linguagens de programação e diversos aplicativos, incluem hoje um amplo suporte ao modelo XSD. Por estes motivos, o XSD é cada vez mais a solução preferida para validação de ficheiros XML entre a comunidade dos programadores. Resumidamente, algumas vantagens do XSD são (Sousa, 2002): • extensível para alterações futuras; • mais rico e útil que o DTDs; • escrito em XML; • suporta namespaces; • suporta vários tipos de dados e é mais fácil: o descrever o conteúdo de ficheiros; o validar os dados. A Figura 3.1 mostra algumas diferenças entre um modelo DTD e um XSD (Ehow, 2011; Jervis, 2011), apresentando um extracto do Rosto.xsd da IES, no formato DTD versus XSD. Esta conversão foi efectuada com recurso ao XML Spy. 40 Capítulo 3 Figura 3.1 - DTD versus XML Schema Definition. 3.1.2. Ficheiros XSD Um ficheiro XSD deve obedecer às mesmas regras que um ficheiro XML, embora tenha outras necessidades, tais como: os nomes dos elementos e atributos esperados no XML, a hierarquia entre esses elementos, o tipo de dados (sendo possível a criação de novos tipos de dados) e o tipo de utilização. De forma a satisfazer essas necessidades, é necessário definir as partes de um ficheiro XSD, que tem uma semântica própria que deve ser respeitada. 41 XSD e XML De seguida serão apresentadas as tags específicas para a construção de um ficheiro XSD (Stokol, 2011; w3schools, 2011a; Thompson et al., 2004). 3.1.2.1. Cabeçalho XSD O cabeçalho de um XSD contém várias informações, que é possível visualizar no quadro (cabeçalho dos ficheiros XSD da IES) seguinte: <?xml version="1.0" encoding="ISO-8859-1"?> - <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.mj.gov.pt/2011/IES-DA" xmlns="http://www.mj.gov.pt/2011/IES-DA" elementFormDefault="qualified"> … </xs:schema> A primeira tag indica a versão e o atributo de codificação de caracteres utilizado, neste caso, ISO-8859-112. O schema é a raiz onde toda a descrição da estrutura de um XML é efectuada, contendo os seguintes atributos: • xmlns:xs - identifica que a declaração do esquema seguirá as regras definidas no namespace13 do W3C, cujo nome é http://www.w3.org/2001/XMLSchema, e define um apelido (xs) para esse namespace, que passa a ser usado internamente no XSD. Assim, o prefixo xs é utilizado para indicar tags pertencentes ao domínio desse namespace, como em xs:schema. A declaração do namespace tem a seguinte sintaxe: xmlns:prefixo=”URI” (Uniform Resource Identifier). O namespace não tem de fazer referência a um ficheiro real ou a um site, pode ser, por exemplo, o nome de uma empresa. • targetNamespace - define o namespace ao qual os elementos do XML estão vinculados. xmlns - indica o namespace que deve ser usado quando não contém o targetNamespace. 12 encoding ISO-8859-1 - codificação para linguagem da Europa Ocidental. namespace XML - conjunto de nomes identificados por uma URI, que são usados em ficheiros XML como tipos de elementos e atributos, de forma a evitar ambiguidades com objectos de origens diferentes, mas com nomes iguais. 13 42 Capítulo 3 Estes dois atributos (targetNamespace e xmlns) estão relacionados com o namespace da situação em concreto (neste caso da IES). • elementFormDefault – indica, quando criamos um XML segundo um XSD, se o namespace é obrigatório ser especificado ou se é subentendido. As seguintes definições da declaração do schema são equivalentes: <xs:schema xmlns:xs ="http://www.w3.org/2001/XMLSchema"></xs:schema> <xsd:schema xmlns:xsd ="http://www.w3.org/2001/XMLSchema"></xsd:schema> 3.1.2.2. Componentes XSD Nesta secção iremos descrever os vários componentes de um ficheiro XSD. A raiz de um ficheiro XSD é o <schema> e pode conter uma ou mais declarações para: • elementos XML <element>, que contêm <attribute>’s, estruturados como <simpleType> ou <complexType>; • atributos <attribute>; • <simpleType> define um tipo simples estruturado como <list> ou <union>, especifica as restrições <restriction> e informação sobre os valores de atributos ou elementos; • <complexType> define uma estrutura complexa que pode ser composta de outros componentes, tais como <sequence>, <choice> e <all>. Um elemento do tipo <complexType> é um elemento que contém outros elementos e/ou atributos; • <group> agrupa um conjunto de declarações de elementos para que possam ser considerados como um grupo do tipo complexo <complexType>; • <attributeGroup> define uma lista de atributos do tipo complexo <complexType>. A Figura 3.2 ilustra os vários componentes de um ficheiro XSD, conforme a descrição acima referida. 43 XSD e XML Figura 3.2 - Componentes XSD (adaptado de Stokol, 2011). Na declaração de elementos utiliza-se a tag “element” e os principais atributos são: • name: nome do elemento; • type: tipo de dados do elemento; • minOccurs: número mínimo de vezes que o elemento pode aparecer; • maxOccurs: número máximo de vezes que o elemento pode aparecer (a palavra unbounded pode ser utilizada para especificar uma quantidade ilimitada). Para os atributos minOccurs e maxOccurs, o valor por omissão é 1 e terá de ser um número inteiro não negativo. Exemplo de uma declaração de um elemento: <xs:element name="AnexoS" type="AnexoSType" minOccurs="0" maxOccurs="2"/> Esta declaração cria um elemento chamado AnexoS do tipo AnexoSType (tipo complexo, sendo o elemento raiz do AnexoS.xsd), que pode aparecer no mínimo 0 vezes e no máximo 2 vezes. 44 Capítulo 3 3.1.2.3. Declaração de Atributos As declarações de atributos, de uma forma geral, são semelhantes às declarações de elementos, contendo atributos comuns como o name e o type. Além dos já mencionados, na declaração de atributos é importante identificar a utilização do atributo use (obrigatório, opcional ou proibido). Exemplo de declaração de dois atributos: <xs:attribute name="id-declaracao" type="xs:long" use="required"/> <xs:attribute name="nif-toc" type="NIFType" use="optional"/> O atributo id-declaracao é do tipo long e é obrigatório. O atributo nif-toc é do tipo NIFType (tipo criado para especificar um Número de Identificação Fiscal, definido no ficheiro Global.xsd) e é opcional. 3.1.2.4. Tipos de Dados O XSD possui diversos tipos de dados, que podem ser utilizados tantos nos elementos como nos atributos. Além da possibilidade de criar novos tipos de dados, pode recorrerse aos mais comuns, sendo estes: • string – conjunto de caracteres de comprimento ilimitado; • boolean – valor booleano (true (1), false (0)); • decimal – número decimal; • float - vírgula flutuante; • date – uma data no calendário gregoriano; • dateTime – um instante específico no calendário gregoriano; • integer – número inteiro. 3.1.2.5. Estruturas Existem várias estruturas para os elementos de um ficheiro XSD, sendo elas as seguintes: • sequence – identifica a ordem pela qual os elementos devem aparecer. Se a ordem especificada não for obedecida ocorrerá um erro; 45 XSD e XML Exemplo de uma estrutura sequence: <xs:sequence> <!-- Quadro 01 do Rosto --> <xs:element name="Q01-1-inicio" type="xs:date" minOccurs="0"/> <xs:element name="Q01-1-fim" type="xs:date" minOccurs="0"/> <xs:element name="Q01-ano" type="xs:gYear" minOccurs="0"/> ... </xs:sequence> A estrutura sequence acima apresentada identifica, no ficheiro XML, que o elemento Q01-1-fim deverá surgir sempre a seguir ao elemento Q01-1-inicio e antes do elemento Q01-ano. • all – indica que os elementos não necessitam de cumprir uma ordem específica, mas devem constar no ficheiro; Exemplo de uma estrutura all: <xs:all> <xs:element name="Q01-1-inicio" type="xs:date" minOccurs="0"/> <xs:element name="Q01-1-fim" type="xs:date" minOccurs="0"/> <xs:element name="Q01-ano" type="xs:gYear" minOccurs="0"/> </xs:all> Com este exemplo da estrutura all, o ficheiro XML não terá de seguir esta ordem, por exemplo, poderá surgir o Q01-ano, Q01-1-inicio e o Q01-1-inicio. No entanto, é obrigatório constarem os três elementos no ficheiro XML. • choice – especifica que um de dois elementos poderá constar no ficheiro. Se os dois elementos surgirem, ocorrerá um erro. Exemplo de uma estrutura choice: <xs:choice> <xs:element name="AnexoA" type="AnexoAType" minOccurs="0"/> <xs:element name="AnexoASNC" type="AnexoASNCType" minOccurs="0"/> </xs:choice> Segundo o exemplo anterior, no ficheiro XML, poderá constar o elemento AnexoA ou o elemento AnexoASNC. 46 Capítulo 3 • complexType– especifica a construção de elementos compostos, podendo incluir os elementos anteriormente apresentados. Para que esses elementos sejam declarados é necessário utilizar a tag “complexType” (Sousa, 2002). Exemplo de uma estrutura complexType: <xs:element name="Q10-2-lista" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="Q10-2-linha" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> <xs:element name="Q10-2-A005" type="NIFType" minOccurs="0"/> <xs:element name="Q10-2-A005-nome" type="xs:string" minOccurs="0"/> <xs:element name="Q10-2-A007" type="NIFType" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> O elemento Q10-2-lista contém uma estrutura complexType e, dentro desta, uma estrutura sequence com o elemento Q10-2-linha. O elemento Q10-2-linha, à semelhança do elemento Q10-2-lista, contém também uma estrutura complexType e, dentro desta, uma estrutura sequence com os elementos Q10-2A005, Q10-2-A005-nome e o Q10-2-A007. No ficheiro XML, se existir o elemento Q10-2-lista, deverá existir o elemento Q10-2-linha que poderá ter um número ilimitado de linhas (maxOccurs="unbounded"). Para cada linha do elemento Q10-2-linha deverão existir os elementos Q10-2-A005, Q10-2-A005-nome e o Q10-2-A007. 3.1.3. XSD da IES A estrutura da IES (Informação Empresarial Simplificada) é composta por vários ficheiros XSD. 47 XSD e XML O ficheiro IES-DA.xsd é considerado o ficheiro principal, contendo oito atributos (o cabeçalho que identifica a declaração) e os includes para os seguintes modelos XSD: • o Rosto – que identifica o declarante; • todos os Anexos que constituem a IES; • o Global - onde estão definidos os novos tipos de dados necessários à estrutura da IES. Na Figura 3.3 é apresentado o XSD do ficheiro IES-DA.xsd. Figura 3.3 – Modelo XSD do ficheiro IES-DA.xsd. Exemplo dos atributos que constam do ficheiro IES-DA.xsd: 48 Capítulo 3 Figura 3.4 - Atributos do ficheiro IES-DA.xsd. A Figura 3.4 ilustra os nomes, os tipos e a utilização (obrigatório, opcional ou proibido) dos 8 atributos que constam do ficheiro IES-DA.xsd, por exemplo: • o atributo versao é do tipo short e é obrigatório; • o atributo nif-toc é do tipo NIFType (tipo definido pela IES para especificar um NIF, definido no ficheiro Global.xsd) e é opcional. O Rosto e os Anexos (Anexo A, Anexo ASNC, Anexo B, Anexo C, Anexo D, Anexo I, Anexo R, Anexo RSNC, Anexo S e Anexo T) contêm uma ou várias listas com vários tipos de relacionamentos: • 1..∞ - uma relação de um (1) para N, deverá existir uma ou várias linhas; • 0..∞ - uma relação de zero(0) para N, poderão não existir valores; • 0..10 - uma relação de zero(0) para 10. Na Figura 3.5 demonstra-se o exemplo da lista Q01-1 do ficheiro Rosto.xsd: Figura 3.5 - Exemplo da lista Q10-1 do Rosto.xsd. A Figura 3.6 ilustra um exemplo da lista Q10-1 do Rosto.xml, correspondente à estrutura XSD da Figura 3.5: 49 XSD e XML Figura 3.6 - Exemplo da lista Q10-1 do Rosto.xml. As listas existentes no Rosto e em alguns Anexos referem-se a quadros que permitem inserir vários registos sobre a mesma categoria de informação. A título de exemplo, a Figura 3.6 mostra que existe apenas um registo no Quadro Q10-1 na declaração em causa. Na base de dados, as listas são tabelas que podem conter vários registos por declaração. Segundo a Figura 3.7 no ficheiro XML, poderá constar um Anexo A ou o Anexo ASNC. Para declarações do ano 2009 e anteriores é obrigatório o Anexo A, para as restantes será o Anexo ASNC. Figura 3.7 - Exemplo da estrutura choice. 3.2. XML O XML, designado como eXtensible Markup Language, é uma linguagem de marcação usada para estruturar, transferir e guardar dados. Permite a definição de um número infinito de tags, a criação de formatos únicos para a descrição de dados de aplicações específicas (como acontece na IES) e possui a importante característica de ser extensível e auto-descritivo. Permite ainda que novas tags de marcação sejam criadas por quem o utiliza, podendo ser utilizado em qualquer lugar em que haja a necessidade de troca de dados ou simplesmente a distribuição dos mesmos (Stokol, 2011; w3schools, 2011b). Foi definida por um grupo de trabalho liderado pelo comité W3C, com os seguintes objectivos: • 50 descrever dados; Capítulo 3 • armazenar e organizar ficheiros; • criar ficheiros fáceis com um design formal e conciso; • trocar dados na Internet ou qualquer outro meio electrónico; • descrever meta-informação de uma aplicação; • suportar uma ampla variedade de aplicações. Os ficheiros XML, recomendados pela W3C, deverão ter a sua estrutura segundo um DTD ou um XSD, de forma a permitir a validação e o processamento por todos os utilizadores. A Figura 3.8 apresenta o processo de validação de um ficheiro XML (que contém a informação) segundo o XSD (regras de validação). O XSD referencia o ficheiro XML. Assim, fazendo uma leitura do ficheiro XSD, é possível identificar o nome, o tipo e a utilização dos elementos que irão constar no XML. Figura 3.8 - O XML (conteúdo) é validado segundo o XSD (regras de validação). 51 XSD e XML 3.2.1. Origem do XML Tanto o XML como o HTML (HyperText Markup Language) derivam do SGML (Standard Generalized Markup Language), tendo sido a primeira linguagem de criação de ficheiros estruturados em formato electrónico. A definição de um ficheiro SGML passa pela definição prévia de um DTD, podendo ser utilizadas tags no ficheiro e efectuada a validação da estrutura, que terá de estar de acordo com o DTD. A diferença entre o XML e o SGML está na adaptação de alguns parâmetros internos e na eliminação de outros menos usados. Embora o XML e o HTML derivem do SGML, há diferenças entres eles (Stokol, 2011; w3schools, 2011). As tags do HTML são orientadas para a descrição do aspecto gráfico da página no browser, enquanto que no XML o objectivo é descrever o conteúdo do ficheiro, ou seja, o XML define o assunto e o HTML define como ele será mostrado ao utilizador. 3.2.2. Características da Linguagem XML Algumas das principais características da linguagem XML são: • uma sintaxe clara e simples, tornando-se fácil de ler e analisar; • oferece muitas maneiras de analisar a qualidade de um ficheiro, com regras para sintaxe, comparação com modelos de ficheiros e tipos de dados; • armazena e organiza praticamente qualquer tipo de informação em qualquer formato; • aceita uma vasta gama de símbolos e todo o tipo de caracteres devido à utilização do Unicode14 como seu conjunto de caracteres padrão; • como padrão aberto, o XML é independente de qualquer empresa ou software em particular. 14 Unicode é um padrão que permite aos computadores representar e manipular, de forma consistente, texto de qualquer sistema de escrita existente (Oracle, 2011a). 52 Capítulo 3 3.2.3. Regras de formatação XML Um ficheiro construído de acordo com as regras básicas de XML é considerado bem estruturado (well-formed) (Stokol, 2011; w3schools, 2011b), se tiver em consideração as seguintes normas: • todo o ficheiro XML deve conter uma raiz e os outros elementos devem estar alinhados dentro do elemento raiz; • as tags são case sensitive, ou seja, a tag de fecho terá de ser escrita da mesma forma que a tag de início; • a primeira linha deveria definir a versão do ficheiro XML; • todas as tags devem ser fechadas. A Figura 3.9 mostra a parte inicial de um ficheiro Rosto.xml considerado bem estruturado, onde é possível visualizar as regras de formatação referidas anteriormente: Figura 3.9 - Exemplo demonstrativo de um ficheiro XML bem estruturado. 53 XSD e XML 3.2.4. XML da IES Cada ficheiro XML da IES (Informação Empresarial Simplificada) contém a informação de apenas uma declaração. Este ficheiro é composto por um cabeçalho que identifica a declaração (com os atributos: ano, nif, nif-representante, nif-toc, versao, iddeclaracao, id-sequencial-ies e a data-recepcao), pelo Rosto que identifica o declarante (com os campos: Q03-nome, Q03-telefone, Q03-nif, entre outros) e pelos Anexos. Relativamente aos anexos existem as seguintes combinações: Anexos AR (quem entrega o Anexo A deverá entregar o Anexo R), IR, BS, CT e D. Além destes anexos existem ainda os anexos Anexo A1, Anexo B1 e Anexo C1 que são as contas consolidadas, cujo conteúdo é o balanço, demonstração e a explicação através de notas do balanço e da demonstração, com formato pdf. Na situação de um grupo de empresas (por exemplo, o Grupo Sonae) a empresa-mãe deverá entregar o Anexo A e o Anexo A1 (contas consolidadas) e cada empresa deverá entregar o Anexo A. Uma declaração com um anexo de contas consolidadas (Anexo A1, Anexo B1 e Anexo C1) contém apenas os atributos e o Rosto. A entrada em vigor do Sistema de Normalização Contabilística (SNC) deu origem a diversas alterações sobre a informação que as empresas terão de disponibilizar ao INE. O SNC define-se como um conjunto de regras e princípios que consiste em criar uma metodologia comum, a ser seguida pelas unidades económicas, visando, fundamentalmente, a comparabilidade das informações inter-unidades, a universalidade dos dados recolhidos e a sua compreensibilidade pelos diversos agentes económicos. Neste contexto, foram criados novos anexos (Anexo ASNC e Anexo RSNC) e novos tipos de dados (por exemplo: CAEV3Type, SignedPercent5Type, entre outros). Em relação aos restantes anexos foram adicionados e removidos campos e foram alterados tipos de dados, como por exemplo: a restrição totalDigits do tipo SignedMontante17Type passou de 13 para 17 dígitos. Os novos anexos Anexo ASNC e Anexo RSNC são obrigatórios para as declarações do ano 2010 e posteriores, enquanto que para os anos anteriores serão o Anexo A e o Anexo R. 54 Capítulo 3 O nome do ficheiro XML, que representa uma declaração, está configurado com parâmetros devidamente específicos. É constituído por um identificador sequencial e pelo Número de Identificação Fiscal da empresa, obtendo-se assim a seguinte configuração: id-sequencial-ies_nif.xml. Concluindo, todas as declarações disponibilizadas pelo ITIJ (Ministério da Justiça), agrupadas e compactadas, estão no formato XML, que, após validadas segundo o modelo XSD, fornecido pela DIGITA (Ministério das Finanças), serão submetidas na base de dados do INE. 55 Capítulo 4 4. BASE DE DADOS Neste capítulo, iremos descrever o trabalho desenvolvido ao nível da base de dados da IES, uma vez que, inicialmente, apenas estava prevista uma participação na definição do modelo de dados e, na realidade, foi efectuado todo o processo de criação do modelo de dados na sequência de uma reestruturação de tarefas entre serviços do INE. Além disso, será apresentada a estrutura da base de dados e as tarefas adicionais com a reorganização de competências entre serviços. Finalmente são mencionadas as dificuldades encontradas no desenvolvimento das tarefas relacionadas com a base de dados. 4.1. REORGANIZAÇÃO DE COMPETÊNCIAS Inicialmente, quando foi efectuada a proposta deste Estágio, o objectivo em relação à base de dados era apenas a participação na definição do modelo da base de dados. No entanto, na sequência de uma reestruturação de competências dentro dos serviços DSMI/DA (Serviço de Desenvolvimento Aplicacional) e DMSI/II (Serviço de Infra-Estrutura Informacional) do Departamento de Metodologia e Sistemas de Informação, envolvidos no projecto da IES, houve uma transferência de competências relacionadas com a base de dados para o Serviço DMSI/II. As tarefas relacionadas com a base de dados, como por exemplo: a criação de tabelas; criação de roles; atribuição de utilizadores às roles, entre outros, passou para a responsabilidade do Serviço DMSI/II, sendo inicialmente da responsabilidade do DMSI/DA. Neste contexto, as tarefas relacionadas com a base de dados foram incluídas no âmbito do Estágio. 4.2. ESTRUTURA DA BASE DE DADOS A base de dados da IES é em Oracle (Oracle, 2011b), sendo o motor que o INE utiliza na maior parte dos seus projectos. A estrutura da base de dados divide-se fundamentalmente em duas áreas: a informação das declarações propriamente dita e a informação de controlo. Para a sua elaboração foi 57 Base de dados necessário efectuar uma análise completa ao modelo XSD de forma a verificar qual a melhor estrutura. 4.2.1. Informação das declarações A base de dados da IES é composta por várias tabelas (Campos, 1999; Bastien, 2003). Estas contêm a informação das declarações da IES e são compostas por um Rosto e respectivos Anexos. Nos Anexos existem listas e sublistas (listas dentro de listas) e para cada um destes casos foi criada uma tabela. O Rosto e os respectivos Anexos deram origem, por norma, a uma tabela, com excepção de alguns Anexos, tais como os anexos Anexo ASNC e Anexo B, entre outros. Para estes anexos foi necessário criar várias tabelas, devido à sua dimensão e quantidade de informação que comportam, bem como devido a uma limitação da Oracle em relação ao número de colunas por tabela, máximo 1.000 colunas. O principal critério da divisão das tabelas consistiu fundamentalmente em dividir por quadros o formulário do respectivo anexo ou agrupar numa tabela com informação do mesmo tipo, por exemplo, a tabela T_Anexo_A_SNC_Comenta que contém todos os campos do Anexo ASNC do tipo CLOB (Character Large Object)15. O anexo Anexo ASNC foi dividido em 14 tabelas, excluindo um total de 14 listas que correspondem a 14 tabelas e as 2 sublistas que são 2 tabelas, ou seja, o anexo Anexo ASNC é composto por 14 tabelas mais as 14 listas e as 2 sublistas que dá um total de 30 tabelas. A chave primária das tabelas é uma chave composta pelos campos: Ano_Ref (ano de exercício a que se refere a declaração), Nif (Número de Identificação Fiscal) e o Id_Declaracao (é um número sequencial atribuído pela DGCI a cada uma das declarações fiscais entregues, quer seja IES, IRS, IRC ou IVA), com a excepção das tabelas T_Controlo_Dcl, T_Dcl_Err_Files das listas e sublistas. 15 58 CLOB- são campos para armazenar texto, podendo conter até 4 GB de dados. Capítulo 4 4.2.2. Informação de controlo A informação de controlo é todo um conjunto de dados cujo objectivo é registar informação relativa ao contexto de carregamento (T_Controlo_dcl), o registo das declarações (T_Chaves) e dos erros (T_Dcl_Err). De seguida, apresenta-se uma breve descrição dos conteúdos destas tabelas: • T_Controlo_Dcl é a tabela de controlo dos ficheiros zip recebidos e inseridos na base de dados, isto é, permite verificar se os ficheiros zip existentes no servidor (os ficheiros zip com data inferior à data actual) estão todos inseridos na base de dados. A chave primária desta tabela é o campo pacote (nome do ficheiro zip) e o ficheiro (nome do ficheiro XML); • T_Chaves tem as chaves das declarações, o seu cabeçalho e a informação que auxilia quem consulta os dados, como o número de filtros e o número de regras que as declarações cumprem. Em relação ao cabeçalho da declaração é informação do tipo: versão (permite identificar a versão do XSD); nif_toc (é o Número de Identificação Fiscal do Técnico Oficial de Contabilidade); nif_representante (número de Identificação Fiscal do representante da empresa), entre outros. 4.2.3. Listas e Sublistas A maioria dos Anexos das declarações são compostos por um conjunto de listas e estas, por sua vez, podem conter outras listas, que são designadas como sublistas (listas dentro de listas). No caso das listas que contêm (Ano_Ref, Nif e Id_Declaracao), que são chave composta, apresentam mais um campo (Indice_Nif) que é incrementado de forma automática, para evitar duplicação de chaves, uma vez que para a mesma declaração poderão existir vários registos. As sublistas, para além da chave composta referida anteriormente para as listas, contêm outros dois campos (Indice_Nif_L e NIF_A5466 ou NIF_A5480) que são o Indice_Nif e o NIF da respectiva lista. 59 Base de dados Como exemplo, a Figura 4.1 mostra um excerto de um XSD composto por uma lista com uma sublista. Figura 4.1 - Exemplo de XSD composto por uma lista com uma sublista. O elemento Q05-05064A representa uma lista e o elemento Q05-05064A-partInd é a sublista da lista Q05-05064A. Na Figura 4.2 apresenta-se o XML do exemplo XSD da Figura 4.1. Figura 4.2 - Exemplo XML de uma lista com uma sublista. 60 Capítulo 4 A Figura 4.3 ilustra a criação da tabela do elemento Q05-05064A composta por uma lista. Figura 4.3 - Exemplo da criação de uma tabela do tipo lista. A Figura 4.4 mostra a criação de uma tabela do elemento Q05-05064A-partInd composta por uma sublista, onde é possível visualizar, além da chave composta, os dois campos da respectiva lista, o Indice_Nif_L e NIF_A5466. Os restantes campos são os elementos da sublista Q05-05064A-partInd. Figura 4.4 - Exemplo da criação de uma tabela do tipo sublista. 4.2.4. Modelo de Entidade Relacionamento Nesta secção pretende dar-se apenas uma ideia, devido à sua dimensão, do modelo de dados do projecto da IES. 61 Base de dados A Figura 4.5 mostra uma parte das tabelas, bem como parte dos campos, do modelo ER (modelo de Entidade Relacionamento) (Lee, Kim e Moon, 2009) da base de dados da IES. Figura 4.5 - Extracto do modelo ER da IES. O modelo apresentado na Figura 4.5 exemplifica um extracto da estrutura da base de dados da IES, que vai armazenar a informação das declarações e respectivos anexos. As tabelas T_Chaves e T_Controlo_DCL são as tabelas com informação de controlo, como por exemplo, número de declarações por cada ficheiro zip recepcionado e chaves das declarações. A tabela T_Rosto representa o Rosto propriamente dito da declaração, contendo a identificação básica da empresa e que está directamente relacionada com outras tabelas que correspondem a listas existentes no Rosto da declaração. Para além disso, esta tabela está relacionada com as várias tabelas que constituem a informação dos vários anexos. É de realçar que para os anexos, devido à quantidade de informação e à limitação do número de colunas por tabela no Oracle (máximo de 1.000 colunas), foi necessário proceder à fragmentação, gerando assim um conjunto de várias tabelas para o mesmo Anexo. Além disso, podem conter listas e sublistas que estão relacionadas com outras tabelas com essa informação. 62 Capítulo 4 Mais informação sobre a estrutura e descrição das tabelas da base de dados, bem como o modelo ER, encontram-se em anexo. 4.3. TAREFAS ADICIONAIS Além das operações da linguagem SQL utilizadas na implementação da aplicação, tais como a selecção, a actualização, a inserção e a eliminação de dados, foi necessário criar vários scripts, nomeadamente: a criação de novas tabelas, alteração de algumas tabelas já existentes, desde a adição de colunas à alteração de tipos de dados (Campos, 1999; Bastien, 2003). Para efectuar estas operações foram utilizadas as ferramentas Toad for Oracle 9.7 e o PL/SQL Developer 7.1. Para o desenvolvimento destas operações e antes de se passar à produção, recorreu-se a um servidor de testes disponíveis para o efeito no INE. 4.3.1. Aquisição de conhecimentos Para o desenvolvimento do modelo da base de dados, foi necessário efectuar alguma pesquisa para a implementação dos scripts necessários à criação das tabelas, atribuição das chaves primárias, atribuição de índices como também dos tipos de dados reconhecidos pela Oracle (Campos, 1999; Maron, Torquato e Alves, 2008). Os tipos de dados atribuídos aos campos, no momento da criação das tabelas, estão segundo os XSDs, tendo sido necessário adaptar os tipos definidos nos XSDs aos tipos de dados reconhecidos pela Oracle. É de salientar que, com o desenvolvimento desta tarefa (criação do modelo de dados) e devido à dimensão do projecto, foi adquirido um conjunto vasto de conhecimentos ao nível da administração da base de dados. 4.4. PRINCIPAIS DIFICULDADES As principais dificuldades sentidas no desenvolvimento das tarefas relacionadas com o modelo da base de dados, foram as seguintes: • a inexperiência na utilização da linguagem SQL para a criação do modelo de dados; 63 Base de dados • a dimensão do modelo de dados, o elevado número de tabelas e o número de campos por tabela; • pouco tempo disponível devido a constantes alterações ao nível do planeamento, que serão pormenorizadamente referidas no capítulo seguinte. Após reconstrução da base de dados, de forma a estar adaptada segundo o novo modelo de normalização contabilística, estão reunidas todas as condições para a implementação da aplicação que fará todo o processo de carregamento da informação das declarações para a base de dados do INE. 64 Capítulo 5 5. IMPLEMENTAÇÃO DA APLICAÇÃO Neste capítulo, iremos descrever detalhadamente o trabalho desenvolvido para a criação das componentes tecnológicas necessárias à recepção e tratamento dos dados da IES de acordo com o SNC. Neste contexto, descrevemos as razões que justificaram a opção de uma aplicação Java, de forma a clarificar a necessidade do trabalho realizado e a opção da respectiva linguagem. De seguida, serão apresentadas as ferramentas utilizadas e as funcionalidades implementadas para o bom funcionamento da aplicação desenvolvida; o carregamento das declarações IES, o processo de transferência dos ficheiros do ITIJ (Instituto das Tecnologias de Informação na Justiça) para o INE; a estrutura necessária no servidor; o funcionamento da aplicação; uma descrição das classes desenvolvidas e como é feita a execução da aplicação. Por fim, apresentam-se as principais dificuldades sentidas durante o desenvolvimento da aplicação. 5.1. ENQUADRAMENTO As razões que justificaram a opção pela criação de uma aplicação Java foram diversas, sendo apresentadas de seguida. A importação dos ficheiros XML directamente para a base de dados era impossível, devido à existência de declarações com anexos de elevada dimensão em termos de campos (Oracle tem uma limitação máxima de 1.000 colunas por tabela). Sendo a linguagem Java uma linguagem de programação orientada a objectos, a programação do ambiente tornar-se-ia simplificada pelas características associadas a este tipo de paradigma de programação. Outras das razões é que a linguagem Java permite a geração de executáveis extremamente pequenos, que facilitam a transferência rápida, mesmo em linhas de comunicação lentas. Na aplicação IES, esta situação torna-se importante devido à grande dimensão do projecto, que originou muitas classes devido à elevada quantidade de informação a processar (elevado número de declarações para inserir na base de dados) num menor tempo possível e, principalmente, no término do prazo da entrega das declarações por parte das empresas. 65 Implementação da Aplicação Um das vantagens da linguagem Java é a portabilidade e a independência do resultado final, onde o mesmo programa pode ser executado independentemente do Sistema Operativo, facilitando assim a distribuição da aplicação implementada. A aplicação IES foi desenvolvida no sistema operativo Windows e é executada num servidor Linux. Para concluir, teve-se em consideração o baixo custo das ferramentas de desenvolvimento (software free), tendo sido utilizadas as ferramentas JCreator LE 4.5 (JCreator, 2011) e o Eclipse IDE for Java Developers (Eclipse, 2011) 5.2. FERRAMENTAS / TECNOLOGIAS As ferramentas utilizadas durante o estágio foram as seguintes: • Microsoft Office Visio 2003 - elaboração do modelo de Entidade Relacionamento da base de dados e o fluxograma; • XML Spy 4.0 - análise dos XSDs e dos ficheiros XML (declarações); • Toad for Oracle 9.7 e o PL/SQL Developer 7.1 - acesso a base de dados; • JCreator LE16 4.5 e o Eclipse IDE17 for Java Developers - desenvolvimento da aplicação. 5.2.1. Microsoft Office Visio O Microsoft Office Visio é uma ferramenta que permite a criação de diversos tipos de diagramas, tais como fluxogramas, modelo de dados, diagramas de redes, entre outros. O Visio foi desenvolvido pela Visio Corporation, uma empresa independente que foi adquirida em 2000 pela Microsoft e desde então, incorporado no pacote do Microsoft Office (Microsoft, 2011). 16 17 66 LE - Learn Edition. IDE (Integrated Development Environment) - ambiente integrado para desenvolvimento de software. Capítulo 5 Figura 5.1 - Microsoft Office Visio 2003 – Block Diagram. A Figura 5.1 mostra a interface do Microsoft Office Visio 2003 com as várias categorias disponíveis. No exemplo apresentado está seleccionado o Diagrama de Blocos onde são visíveis os seus templates. Figura 5.2 - Microsoft Office Visio 2003 – Database. Na Figura 5.2 são apresentados os templates disponíveis para a criação do modelo de base de dados. 67 Implementação da Aplicação 5.2.2. XML Spy O XML Spy, da Altova, é um editor e ambiente de desenvolvimento XML com uma interface de edição intuitiva. Permite a edição, transformação, conversão de ficheiros (como, por exemplo, um XSD para DTD), visualização gráfica dos XSDs e debugging relacionados com o XML, XSD, entre outros (Altova, 2011). A Figura 5.3 apresenta a interface do XML Spy 4.0 com o ficheiro AnexoA1.xsd visível graficamente. Figura 5.3 - Edição do AnexoA1.xsd no XML Spy 4.0. Na Figura 5.4 mostra um excerto do ficheiro Rosto.xsd no XML Spy 4.0. 68 Capítulo 5 Figura 5.4 - Edição do Rosto.xml no XML Spy 4.0. 5.2.3. Toad for Oracle e o PL/SQL Developer O Toad for Oracle e o PL/SQL Developer são ferramentas de desenvolvimento e administração de base de dados. Permitem a criação, edição, alteração e eliminação de tabelas. Além das tabelas, possibilitam a criação e execução de views, functions, procedures, packages, roles, entre outros. 69 Implementação da Aplicação A Figura 5.5 apresenta a interface do Toad for Oracle 9.7. Figura 5.5 - Interface do Toad for Oracle 9.7. A Figura 5.6 mostra o editor de SQL com um select à tabela T_Chaves de uma determinada declaração, com o resultado na janela Script Output. Figura 5.6 - SQL e Script Output no Toad for Oracle 9.7. Na Figura 5.7 apresenta-se a interface do PL/SQL Developer 7.1, que é uma ferramenta de desenvolvimento e administração de base de dados. 70 Capítulo 5 Figura 5.7 - Interface do PL/SQL Developer 7.1. A Figura 5.8 mostra o editor de SQL com o mesmo select e o resultado, apenas com formato em coluna, da Figura 5.6. Figura 5.8 - SQL e Script Output no PL/SQL Developer 7.1. 71 Implementação da Aplicação 5.2.4. JCreator LE e o Eclipse O JCreator e o Eclipse são ferramentas de desenvolvimento de projectos em Java. A Figura 5.9 apresenta a interface do JCreator LE 4.5 com o projecto IES, ficando a classe Rosto.java visível na área central e o output da execução da aplicação no rodapé. Figura 5.9 - Interface do JCreator LE 4.5. Figura 5.10 - Interface do Eclipse IDE for Java Developers. 72 Capítulo 5 Na Figura 5.10 mostra-se a interface do Eclipse IDE for Java Developers com o projecto IES, a classe Rosto.java e o output da execução da aplicação, à semelhança do que se apresenta na Figura 5.9. O Eclipse, em relação ao JCreator, tem a vantagem de permitir fazer debugging e identifica automaticamente os métodos. O Eclipse é considerado por muitos um dos melhores e mais completos IDEs para desenvolvimento em Java, requerendo, no entanto, uma máquina mais sofisticada e potente. A principal vantagem do JCreator é o facto de ser menos exigente do ponto de vista do hardware (GUJ, 2011). Ao trabalhar com estas tecnologias, adquiriu-se competências na utilização de ferramentas de desenvolvimento, principalmente no Eclipse. 5.3. FUNCIONALIDADES IMPLEMENTADAS Nesta secção, descrevem-se as funcionalidades implementadas para o bom funcionamento da aplicação desenvolvida para o carregamento das declarações da IES de acordo com o SNC. Neste contexto, e antes de apresentar as estruturas necessárias, explica-se o procedimento da transferência dos ficheiros zip do ITIJ para o INE. Após o conhecimento de como os ficheiros zip são copiados para o INE, para o servidor interno (onde se encontram as áreas necessárias), segue-se a descrição dessas áreas. A área designada Dados, como o próprio nome indica, é onde se encontram os dados, sendo composta por várias directorias. É a área onde se encontram disponíveis os ficheiros zip copiados do ITIJ e é a directoria de trabalho, ou seja, onde se desenvolve o processo de carregamento. A área Areas é onde se coloca a programação dos projectos, no caso da aplicação IES encontram-se as classes criadas pelo compilador Java e as packages necessárias para a execução da aplicação. Em seguida, descreve-se o funcionamento da aplicação e como se processa a sua execução. 73 Implementação da Aplicação 5.3.1. Estruturas no servidor Antes de descrever a estrutura necessária para o bom funcionamento da aplicação desenvolvida, é fundamental explicar o procedimento da transferência dos ficheiros zip do servidor do ITIJ para o servidor do INE. O procedimento da transferência dos ficheiros zip do ITIJ para o INE é feito através de um script que ao minuto 59, horário este predefinido pelo Serviço de Intra-Estrutura Tecnológica do INE. Este script compara o conteúdo do servidor externo do INE com a área do ITIJ e, caso existam diferenças, efectua a cópia dos ficheiros zip que não existem no servidor externo do INE. Após 4 minutos, dos 59 minutos anteriores, é lançado pelo servidor interno um procedimento semelhante ao executado com o servidor do ITIJ, que copia os ficheiros para a área designada Dados, onde deverá ter a estrutura necessária para o funcionamento da aplicação. Este processo passa por dois servidores por questões de segurança. O servidor interno não tem permissões para ir ao exterior, de forma a evitar possíveis ataques e intrusões. Na área Dados é onde se desenvolve o processo do carregamento na base de dados Oracle. A Figura 5.11 apresenta o circuito de transferência dos ficheiros zip do ITIJ para o INE, conforme a descrição acima referida. Figura 5.11 - Circuito de transferência dos ficheiros zip do ITIJ para o INE. 74 Capítulo 5 No servidor interno, de forma a separar os dados dos ficheiros criados pelo compilador Java, são utilizadas as seguintes áreas: • Dados - para onde é feita a cópia dos ficheiros zip, separada por anos, e existe um conjunto de directorias necessárias ao bom funcionamento da aplicação; • Areas - onde se encontra toda a estrutura necessária à execução da aplicação, como as classes criadas pelo compilador Java e as packages18 necessárias para a execução da aplicação. 5.3.1.1. Dados Esta área é para onde se efectua a cópia dos ficheiros zip, separada por anos. Nessa mesma área, a estrutura necessária é a seguinte: Figura 5.12 - Estrutura na área designada Dados. A Figura 5.12 ilustra a estrutura necessária, na área designada Dados, para o bom funcionamento da aplicação desenvolvida. 18 Packages é um recurso da linguagem que permite formar grupos de classes relacionadas entre si de forma que elas ofereçam facilidades umas às outras. 75 Implementação da Aplicação Nas directorias IES pdf e IES2010_pdf serão guardados os ficheiros pdf que contêm os campos do tipo "xs:base64Binary" no XSD e na base de dados do tipo BLOB (Binary Large Object). Na directoria IES pdf são guardados os balanços, anexos e outro tipo de informação das empresas. A directoria IES2010_pdf contém os anexos das contas consolidadas (contas do grupo), consoante o sector de actividade em questão, como as entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola (Anexo A1), as empresas do sector financeiro (Anexo B1) e as empresas do sector segurador (Anexo C1), nomeadamente: • Acta da deliberação de aprovação das contas consolidadas do exercício, onde conste o montante dos resultados consolidados; • Balanço consolidado, demonstração consolidada dos resultados e anexo; • Certificação legal das contas consolidadas (IES, 2011). A directoria “IES_Comentário” contém os ficheiros de texto. Nos modelos XSDs, são campos do tipo ”xs:string” e na base de dados do tipo CLOB. Para os campos dos tipos referidos anteriormente, além da informação ser inserida na respectiva tabela da base de dados, também são gerados os ficheiros correspondentes e guardados nas directorias mencionadas acima. O nome do ficheiro pdf é constituído pela chave composta da tabela Ano_Ref, Nif, Id_Declaracao e o nome do respectivo anexo fica, por exemplo “2010_123456789_117720541_AnexoB.pdf”, de forma a ser possível identificar dentro da directoria os ficheiros pdf dos respectivos anexos. As directorias onde são guardados os ficheiros (com formato txt ou pdf) têm uma subdirectoria com o nome tmp que, como o próprio nome indica, é uma directoria temporária. Inicialmente o ficheiro é guardado na subdirectoria tmp com o objectivo de, caso exista um erro após a criação do ficheiro, permitir que este seja eliminado. As directorias tmp deverão estar sempre sem ficheiros, existindo estes ficheiros do tipo txt ou pdf apenas temporariamente, isto é, durante a inserção de uma declaração e caso esta contenha campos do tipo ”xs:string” ou “xs:base64Binary". 76 Capítulo 5 Da directoria “IES_” constam as seguintes directorias: • xml_erros – o objectivo desta directoria é ter os ficheiros com erros, que, por vários motivos, como por exemplo: validação de dados; erro ao descompactar o ficheiro zip ou ficheiro zip corrompido; erros de base de dados; entre outros, não foram inseridos na base de dados; • xml_especiais – para esta directoria são movidos os ficheiros considerados de tratamento especial, quando ocorre o erro do tipo OutOfMemoryError; • xml_recebidos – nesta directoria deverão estar os modelos XSD para que seja possível efectuar a validação dos ficheiros XML; • zip – é para esta directoria que são copiados os ficheiros zip a carregar; • zip_erros – em caso de erro ao descompactar o ficheiro zip ou ficheiro corrompido, o mesmo é movido da diretoria zip para a zip_erros, para posterior análise. Como se pode verificar na Figura 5.13, o nome do ficheiro zip é composto por IES_AAAAMMDD_horaMinutosSegundos_nDeclaracoes.zip. Figura 5.13 - Exemplos de nomes de ficheiros zip. Na Figura 5.13 apenas o último ficheiro zip contém 93 declarações, os restantes 0 declarações, informação obtida apenas através dos nomes dos ficheiros zip. O nome da declaração é composto pelo id_sequencial_ies_Nif.xml, como por exemplo “1653715_123456789.xml”. 77 Implementação da Aplicação 5.3.1.2. Areas Nesta área, designada por Areas, encontra-se toda a estrutura necessária à execução da aplicação, tal como as classes criadas pelo compilador Java e as packages, conforme se pode visualizar na Figura 5.14. Figura 5.14 - Estrutura na área designada Areas. 5.3.2. Funcionamento da aplicação Tal como foi apresentado no início deste capítulo, a aplicação desenvolvida em Java consiste no carregamento das declarações IES de acordo com o SNC. As declarações IES, em ficheiros XML, são agrupadas em ficheiros zip e disponibilizadas pelo ITIJ ao INE. Cada ficheiro XML contém a informação de apenas uma declaração e um ficheiro zip nunca contém mais de 2.000 declarações. Neste contexto, o objectivo da aplicação é inserir as declarações na base de dados Oracle com a mesma estrutura de dados que o ficheiro XML. Para que uma declaração seja inserida na base de dados terá de respeitar o modelo XSD disponibilizado pela DGITA (Direcção Geral de Informática e apoio aos Serviços Tributários e Aduaneiros do Ministério das Finanças). De seguida, será descrito o funcionamento da aplicação, mas antes é necessário referir que a execução da aplicação pode ser invocada de duas formas: sem parâmetro (tratamento de ficheiros zip) ou com parâmetros (tratamento de ficheiros XML). A necessidade do parâmetro de entrada deve-se ao facto de, em caso de erro, ser possível, numa fase seguinte, o carregamento destas declarações, sendo atribuído um nome fictício ao ficheiro zip. 78 Capítulo 5 O carregamento das declarações com incoerência de dados só é feito após posterior análise e segundo indicações do Serviço de Estatísticas das Empresas, que pertence ao Departamento de Estatísticas Económicas (DEE/EP). O erro é guardado na tabela de backup de erros (T_Dcl_Err_Files_SNC_B). As declarações estão agrupadas em ficheiros zip e, ao descompactá-los, é feito o registo do seu conteúdo (ficheiros XML) numa tabela de controlo (T_Controlo_dcl). Numa situação de erro no carregamento da declaração, após todo o procedimento referido anteriormente (análise do erro, segundo indicações do serviço DEE/EP e armazenamento do erro na tabela de backup de erros), quando se efectua o carregamento dessa declaração, já não é feito o registo na tabela de controlo. Apenas se faz o carregamento das declarações, dando-lhe um nome que permita identificar o erro e a data, como por exemplo “erros_FILE002_20111012.zip”, para que na tabela T_Chaves o campo Pacote (nome do ficheiro zip) se encontre preenchido. O erro com o código FILE_002 ocorre quando o nome da declaração, que é composta pelo id_sequencial_ies_Nif, não é igual à informação que consta dentro da declaração. Neste caso, regista-se o erro com a designação “O ID_SEQUENCIAL_IES_NIPC 1653715_123456789 não corresponde ao nome do ficheiro...). Estes códigos são criados consoante as necessidades. Ao criar um código de erro deverá ser feito o registo na tabela (T_Erro_Msg) com uma descrição, de forma a identificar mais facilmente o tipo de erro. Na situação da aplicação ser invocada com parâmetro, uma vez que não existe ficheiro zip mas apenas ficheiros XML, os ficheiros XML deverão ser previamente copiados para a directoria xml_recebidos. No caso da inexistência de parâmetros, na execução da aplicação, situação mais comum, os ficheiros zip a carregar deverão ser previamente copiados para a directoria zip, através do scritp que executa a aplicação. O ficheiro zip é descomprimido e é feito o registo do seu conteúdo na tabela de controlo (T_Controlo_dcl). A tabela T_Controlo_dcl permite identificar, além de outra informação, em qual ficheiro zip se encontra determinada declaração. Em caso de erro a declaração pertence ao ficheiro zip, que inicialmente foi disponibilizado pelo ITIJ. 79 Implementação da Aplicação A aplicação pode ser invocada automaticamente ou em modo manual, sendo este utilizado apenas em situações de sobrecarga ou de erro. Neste caso, enquanto existirem ficheiros zip na directoria zip, é efectuado, por cada ficheiro zip, o seguinte: • move-se para a directoria onde se encontram os XSDs (xml_recebidos); • verifica-se se o ficheiro zip já existe na tabela T_Controlo_dcl, se o ficheiro zip existir na tabela regista o erro na tabela de erros com o código ZIP_001 e a designação “O nome do zip nome já existe…”; • caso o ficheiro zip não exista na base de dados, este é descomprimido na directoria onde se encontra (xml_recebidos) e, em simultâneo, é feito o registo do conteúdo do ficheiro zip na tabela de controlo. Além disso, é efectuada uma contagem dos ficheiros XML que constam do ficheiro zip, a fim de validar se o número de declarações que fazem parte do nome do ficheiro zip corresponde realmente ao número de ficheiros contidos neste ficheiro. Caso seja diferente regista-se um erro na tabela de erros, mas o procedimento do carregamento não é interrompido. Após a descompressão do ficheiro zip, para cada ficheiro XML, são feitas as seguintes validações: • validação da estrutura do nome do ficheiro XML (se o id_sequencial_ies e o NIF, que constituem o nome do ficheiro, são iguais aos que constam dentro do ficheiro); • validação com o XSD; • verificação da existência da declaração na base de dados. Em caso de erro, regista-se o erro na tabela de erros com o respectivo tipo de erro e a designação. O ficheiro é movido para a directoria de erros, para posterior análise. No caso de não existirem erros dos tipos referidos anteriormente, procede-se à inserção da declaração na base de dados. No entanto, nesta fase de inserção na base de dados, também podem surgir erros de base de dados e os procedimentos efectuados são os já referidos anteriormente. A leitura do ficheiro XML é feita elemento a elemento, de acordo com o XSD. 80 Capítulo 5 Se o processo de inserção da declaração for bem-sucedido é feito o commit, senão é feito o rollback e a ligação à base de dados é fechada no final do carregamento de um ficheiro zip, tendo sido estabelecida após o início da leitura de cada ficheiro zip. No final do carregamento são feitas outras validações e actualizações, isto é: • controlo de sequência - verifica se existem falhas na numeração do id_sequencial_ies uma vez que este é sequencial; • update a campos, consoante determinado valor - actualiza o campo CAE Rev. 21 ou CAE Rev. 3; • update aos campos dos respectivos anexos da declaração a 1 e os restantes a 0 o que identifica na tabela T_Rosto os anexos de uma determinada declaração; • identificação no campo id_sequencial_ies de valores repetidos; • verificação da inserção dos ficheiros do ITIJ na base de dados Oracle Por último, no final de todo o processo é enviado um e-mail com todos os erros, que constam na tabela de erros, aos utilizadores que efectuam a sua respectiva análise. 5.3.2.1. Algoritmo Um algoritmo tem como objectivo representar o raciocínio envolvido na lógica de programação e, dessa forma, permitir a abstracção de uma série de detalhes sintácticos, que podem ser posteriormente acrescentados. Neste contexto, apresenta-se, na Figura 5.15, o fluxograma do algoritmo da aplicação desenvolvida. 81 Implementação da Aplicação Figura 5.15 - Representação do algoritmo da aplicação. 5.3.3. Aplicação desenvolvida A aplicação foi desenvolvida em Java (Claro e Sobral, 2008), usando inicialmente a ferramenta JCreator, e, posteriormente, a ferramenta Eclipse devido às vantagens anteriormente apresentadas. 82 Capítulo 5 Figura 5.16 - Projecto IES 2010 no Eclipse. A Figura 5.16 apresenta, no Eclipse, o projecto IES 2010, onde é possível visualizar o Project Explorer, a classe que contém o método main designada IES e o tab outline que possibilita a visualização dos métodos da classe seleccionada. De seguida, são apresentadas, com uma breve descrição, as classes que constituem a aplicação: • IES – como já foi referido, contém o método main e, consoante a existência ou não de parâmetros, invoca os respectivos métodos; • Chaves – esta classe tem como objectivo carregar a informação da tabela T_Chaves. Esta tabela tem um tratamento diferente das outras tabelas porque, além da informação da declaração, contém o cabeçalho da declaração; • DescompProcessaZips – verifica se existem ficheiros zip na respectiva directoria. Por cada ficheiro zip existente na directoria zip, faz a sua cópia para a directoria onde se encontram os XSDs; verifica se o ficheiro zip já existe, senão existir descomprime o ficheiro zip. Ao mesmo tempo faz a contagem dos ficheiros XML; • verificaFicheiros – esta classe tem vários métodos, que recebem o caminho da directoria e retornam uma lista de ficheiros. Por exemplo, o método listaSchema retorna a lista de ficheiros XML; 83 Implementação da Aplicação • GestaoPacote – esta classe tem vários métodos, sendo eles: o verificaNomeZip - recebe o nome do ficheiro zip como parâmetro e verifica se o nome deste ficheiro existe na tabela de controlo; o EscreveDados - utilizado para registar a informação do ficheiro zip na tabela de controlo que é invocado na classe DescompProcessaZips; o VerificaId_Sequencial_IES - verifica a existência de falhas na sequência no campo id_sequencial_ies; o Id_Sequencial_IES_Repetidos - verifica se existem valores repetidos no campo id_sequencial_ies; • GestaoErros – tem o método EscreveErro. Este método como o próprio nome indica, escreve os erros na tabela de erros. O método EscreveErro recebe os seguintes parâmetros: código do erro, a designação, o nome do ficheiro e o nome do ficheiro zip; • conexaoBaseDados – nesta classe estão definidas as variáveis necessárias à ligação da base de dados (url, driver, user e password) e contém os métodos: getConnection (retorna uma ligação à base de dados), isclosed, commitClose e o rollbClose. Estes dois últimos métodos (commitClose e rollbClose) recebem um boolean como parâmetro, de forma a identificar se é para fazer o commit ou apenas roolback ou, além do commit e do roolback, fechar também a ligação da base de dados; • CopyPaste – tem o método moveFicheiro que como o próprio nome indica, é invocada quando é necessário mover os ficheiros. Este método é utilizado em várias situações, como por exemplo: mover os ficheiros zip para a directoria onde se encontram os XSDs; em situações de erro, tanto dos ficheiros zip (para a directoria zip_erros) como dos ficheiros XML (para a directoria xml_erros); • XMLReaderValidator – esta classe é executada quando é passado o nome do ficheiro zip como parâmetro, ou seja, existem apenas ficheiros XML. Esta classe tem o método ProcessaXMLs que, por cada ficheiro XML, chama o método carregaDados da classe ValidacaoXML; • ValidacaoXML – tem os seguintes métodos: ValidacaoEsquema (que faz a validação dos ficheiros XML segundo o XSD); o método carregaDados (que faz 84 Capítulo 5 a validação e o processo de carregamento) e o método novaClasseTabela (que instância as várias classes consoante os conteúdos (anexos) da declaração). • classeTabela – esta classe é a base de todas as classes que fazem carregamento numa tabela. Esta classe tem diversas variáveis definidas que são utilizadas nas classes derivadas. A classe classeTabela tem vários métodos: SQLCamposFixos (retorna uma string composta por: “Ano_ref, Nif, Id_Declaracao,”); SLQTiposFixos (retorna uma string composta pelos tipos da chave (que são os considerados campos fixos); colocaDadosFixos (adiciona os valores dos campos que identificam a declaração ao comando SQL); insertSQL (este método constrói o comando insert correspondente à tabela), carregaDados (este método lê os valores dos campos do ficheiro XML e adiciona ao comando SQL); • updateCampos – tem os dois métodos: updateCampoAnexos (actualiza os campos que permitem identificar os anexos de uma declaração) e updateCampoCae (que actualiza os campos da CAE Rev. 21 e da CAE Rev. 3 consoante a respectiva CAE); • VerificaZipCarregados - verifica se todos os ficheiros zip copiados do ITIJ se encontram inseridos na base de dados. Se existirem ficheiros zip que não estão inseridos na base de dados é feito o registo na tabela de erros, para posterior carregamento, neste caso, em modo manual; • EnvioEmail – permite o envio do e-mail para os utilizadores. Consoante a situação, se existem erros, na tabela de erros, é criado um ficheiro do tipo csv com o conteúdo da tabela que é anexado ao e-mail, senão é enviada a seguinte mensagem “Não existem erros na tabela T_Dcl_err_files”; • as restantes classes correspondem a uma tabela da base de dados, com excepção das listas e sublistas que necessitam de duas classes, como por exemplo: AnexoR_SNC_Q04A_Lista e o AnexoR_SNC_Q04A_Linha à semelhança do XML. A definição destas classes (herdadas da classeTabela) é basicamente a definição dos atributos da base, pois todo o processamento está implementado na classeTabela. A Figura 5.17 apresenta o XML do Anexo RSNC, onde é possível visualizar o elemento Q04A-lista e, dentro deste, o elemento Q04A-linha. 85 Implementação da Aplicação Figura 5.17 - XML do Anexo RSNC. Na classe com terminação “Lista” apenas é indicado o nome do elemento da linha (Q04A-linha). Existe um método do tipo classeTabela que incrementa o numIndice e, ao instanciar a classe com terminação “linha”, passa a chave composta mais o numIndice. As classes com terminação em “Linha”, além do método com o mesmo nome da classe, à semelhança das outras classes, recebe mais o parâmetro numIndice. Estas classes têm os seguintes métodos redefinidos: SQLCamposFixos (retorna a string constituída pelos nomes da chave composta e o indice_nif (nome do campo da tabela na base de dados); SQLTiposFixos (retorna a string constituída pelos tipos da chave composta e o tipo do indice_nif) e colocaDadosFixos (insere os valores dos campos que identificam o registo no comando SQL). As classes com terminações “Sub_Linha” e “Sub_Lista” têm funcionamentos semelhantes aos das classes com terminação “Linha” e “Lista” mas com a adição de mais um nível hierárquico, conforme a Figura 5.18. Figura 5.18 - XML de uma lista com uma sublista do Anexo ASNC. 86 Capítulo 5 5.3.4. Execução da Aplicação A execução da aplicação desenvolvida é chamada num script que é executado às 00h:10m. O script, antes de executar a aplicação da IES, copia todos os ficheiros IES_data_ nDeclaracoes.zip, em que a data é o dia actual menos um, para a directoria zip, excluindo da cópia os ficheiros zip com zero declarações (identificadas através do nome do ficheiro zip). Após a cópia, a aplicação do carregamento é inicializada. A Figura 5.19 apresenta o script que é executado no servidor diariamente às 00h:10m, que executa a aplicação desenvolvida. Figura 5.19 - Script que executa a aplicação. Na Figura 5.19 é definido o Classpath que indica à Máquina Virtual Java (JVM) a directoria actual, a localização das classes e das packages necessárias ao funcionamento da aplicação. Em termos conclusivos e de um modo global, a aplicação percorre uma determinada directoria, que contém um conjunto de ficheiros zip, copiando-os e descompactando-os para a directoria onde se encontram os modelos de validação, os ficheiros XSD. Por 87 Implementação da Aplicação cada declaração, representada por um ficheiro XML, a informação é inserida na base de dados, assim que estes forem devidamente validados pelas várias regras anteriormente apresentadas. É de realçar que as declarações, que não passam nos vários testes de validação, são automaticamente registadas e reportadas via e-mail ao Departamento de Estatísticas Económicas/Serviço de Estatística das Empresas. 5.4. PRINCIPAIS DIFICULDADES De seguida são apresentadas as várias dificuldades encontradas durante a realização deste Estágio. Dificuldade ao nível do planeamento: as sucessivas alterações dos prazos de entrega das declarações por parte das empresas não permitiram fazer um planeamento correcto do trabalho a realizar. O prazo da entrega das declarações da IES, inicialmente previsto para meados de Setembro de 2011, foi antecipado para o dia 15 de Julho. Com as profundas alterações introduzidas na IES de acordo com o SNC e, devido ao facto do quadro normativo relativo à normalização contabilística só ficar concluído com a publicação em 9 de Março (Decreto-Lei n.º 36-A/2011), implicou alterações nos procedimentos tais como: a definição da estrutura dos ficheiros a utilizar para submissão da IES, por transmissão electrónica de dados, e a disponibilização da respectiva aplicação informática. Em 30 de Maio foi adiado novamente o prazo para o dia 16 de Agosto, por despacho do Secretário de Estado dos Assuntos Fiscais do XVII Governo Constitucional. Uma vez que os procedimentos informáticos necessários à disponibilização da aplicação para a entrega da IES apenas ficaram concluídos em finais de Julho, o tempo entre a disponibilização da aplicação e a data fixada para a entrega da IES (16 de Agosto de 2011) era demasiado reduzido. Em 19 de Julho, foi mais uma vez, adiado o prazo para 16 de Setembro de 2011. No dia 15 de Setembro, o Secretário de Estado dos Assuntos Fiscais decidiu prorrogar o prazo de entrega até ao dia 30 de Setembro, na sequência de alguma indisponibilidade do Portal das Finanças, nos dias anteriores ao término do prazo, impedindo que algumas empresas tivessem submetido as suas declarações. 88 Capítulo 5 Dificuldade na obtenção de dados reais atempadamente: a primeira declaração para os testes foi recebida, via e-mail, apenas no dia 27 de Julho de 2011, pois somente a partir do dia 25 de Julho ficou disponível a aplicação (da DGITA) que permite às empresas submeter as declarações. Dificuldade na estabilização do modelo de dados atempadamente: as várias versões dos XSDs obtidas entre o dia 1 de Abril e o dia 7 de Julho (num total de 7 versões) implicaram constantes alterações, tanto na base de dados como no código já implementado, restando pouco tempo para a restante implementação e execução de testes. Estas sucessivas alterações são normais em projectos informáticos, mas, neste caso, a grande dificuldade residiu no encurtamento do prazo. Dificuldade relacionada com a dimensão do trabalho a realizar: a grande dimensão do Anexo ASNC (que, excluindo os campos das listas e sublistas, contém mais de três mil campos de informação, 14 tabelas, 14 listas e 2 sublistas, num total de 30 tabelas) tornam o projecto bastante complexo. O pouco tempo disponível para a implementação originou, por vezes, erros, que nem sempre foram fáceis de identificar devido à sua dimensão. Dificuldade na introdução das sublistas: o conhecimento da existência de sublistas dentro de listas implicou a redefinição do algoritmo e a alteração de grande parte do código. A primeira versão dos modelos XSDs foi disponibilizada apenas a 1 de Abril de 2011, tendo sido desde esse momento efectuado um estudo à estrutura dos XSDs e gerada uma declaração para testes. Na fase seguinte, a da criação da nova estrutura da base de dados, é que existe um conhecimento mais exacto do XML versus XSD. 89 Capítulo 6 6. TESTES DE DESEMPENHO Neste capítulo, apresenta-se um conjunto de informação relevante para a avaliação do desempenho da aplicação, bem como os respectivos testes. Nesse sentido, apresenta-se graficamente o número de declarações inseridas desde o dia 3 de Agosto de 2011, primeiro dia de carregamento no servidor de Produção, até ao dia 9 de Novembro de 2011. Esta apresentação é efectuada através de Anexos e datas das declarações, para mostrar que o anexo com mais campos, o designado Anexo ASNC, representa 97% da informação recebida. A apresentação por datas evidencia o período de maior carga de informação (intervalo de tempo em que é inserido o maior número de declarações). Posteriormente apresentam-se os tempos e testes efectuados em ambientes diferentes, com a finalidade de mostrar que os tempos de execução são condicionados por vários factores, como por exemplo, as características do servidor, o horário de execução e a quantidade de informação por Anexo. Por fim, descreve-se as optimizações efectuadas. 6.1. TOTAL DE DECLARAÇÕES INSERIDAS POR ANEXOS As declarações que contêm o anexo Anexo ASNC (Empresas com actividade comercial, industrial ou agrícola) e o Anexo RSNC (Informação estatística) são as declarações que contêm mais informação, devido ao elevado número de campos do Anexo ASNC, logo, estas declarações poderão demorar mais tempo na sua inserção. A Figura 6.1 apresenta o número total das declarações inseridas na base de dados, o número de declarações inseridas com o Anexo ASNC e o número de declarações inseridas com os restantes Anexos até ao dia 9 de Novembro de 2011. 91 Testes de Desempenho Total de declarações inseridas até ao dia 9 de Novembro de 2011 450.000 419.112 407.007 400.000 N.º Declarações 350.000 300.000 250.000 200.000 150.000 100.000 50.000 7.610 Total Anexo ASNC Total de declaraçoes inseridas Anexo D 3.248 Anexo A 1.247 Outros Anexos Número de declarações por Anexos Figura 6.1 - Número de declarações inseridas. De acordo com a Figura 6.1 6 verifica-se que 97,1% % da informação inserida na base de dados são declarações que contêm o anexo Anexo ASNC. Os outros anexos com maior número mero de declarações são os o Anexo D e o Anexo A com 1,8% e 0,8% % da informação inserida, respectivamente. DECLARA INSERIDAS POR DATAS 6.2. TOTAL DE DECLARAÇÕES O objectivo da aplicação é o de inserir as declarações na base de dados Oracle existente no INE.. Além do objectivo principal, uma das preocupações é o seu desempenho, ou seja, que o processamento da informação seja efectuado no menor menor tempo possível. Neste contexto, de forma a evidenciar o período de maior carga de informação recebida correspondendo ao término do prazo de entrega da IES, por parte das empresas, apesar das as sucessivas alterações nos prazos de entrega (data final 30 de Setembro tembro de 2011), 201 apresenta-se na Figura 6.2 o número de declarações inseridas na base ase de dados desde o 92 Capítulo 6 dia 3 de Agosto até ao dia 9 de Novembro de 2011. As primeiras declarações datam do dia 27 de Julho. Número de declarações inseridas na base de dados 450.000 412.401 419.112 400.000 356.252 350.000 N.º Declarações 300.000 250.000 200.000 188.493 167.759 142.959 150.000 100.000 50.000 0 0 0 27-07 3.070 3.070 03-08 56.149 45.534 42.464 6.711 31-08 15-09 30-09 15-10 09-11 Data Número de declarações inseridas na base de dados Diferença entre a data anterior e a actual Figura 6.2 - Número de declarações inseridas por datas. Na Figura 6.2 visualiza-se o número total de declarações inseridas na base de dados até ao dia 9 de Novembro de 2011 (data de execução) e a diferença entre a data anterior e a data actual das declarações inseridas, ou seja, o número real de declarações inseridas num determinado intervalo de datas. Como exemplo, pode-se verificar que entre o período de 30-09 a 15-10 foram inseridas 56.149 declarações. Além disso, destaca-se o mês de Setembro como sendo o período considerado de maior fluxo pela quantidade de informação inserida, com um valor total de 310.718 declarações, que representa 74% da informação (considerando como data limite o dia 9 de Novembro de 2011). Sendo assim, é bem evidente a relevância do tempo na inserção de uma declaração, que se reflecte no tempo total do carregamento de um ficheiro zip (conjunto de declarações). 93 Testes de Desempenho 6.3. TEMPOS E TESTES Os tempos de execução obtidos variam por declaração, tanto na validação segundo o XSD, como no carregamento na base de dados. Esta variação depende de alguns factores, tais como: a quantidade de informação contida em cada declaração, as características do servidor onde é executada a aplicação e o horário de execução da mesma. 6.3.1. Tempos de execução em ambientes diferentes Como já foi referido, os tempos de execução dependem de vários factores, no entanto, pretendem mostrar-se nesta secção as implicações das características do servidor onde a aplicação é executada. Em inícios de Setembro de 2011 foi detectado que os tempos de execução obtidos no carregamento das declarações não eram compatíveis com o volume de declarações esperadas. Assim, verificou-se que entre o dia 3 de Agosto e o dia 6 de Setembro de 2011 apenas foram inseridas cerca de 70 mil declarações, tendo sido previstas mais de 400 mil declarações. Para analisar a situação, efectuou-se um carregamento a partir de um computador da Delegação de Coimbra (encontrando-se os servidores em Lisboa) do carregamento do dia 3 de Agosto de 2011 (informação relativa ao dia 2 de Agosto), de forma a comparar os resultados obtidos com o servidor de Produção. Concluiu-se que a parte da validação demorava consideravelmente mais tempo, o que é demonstrado na Tabela 6.1. A seguir comparam-se os tempos de execução, em segundos, do carregamento da informação relativa ao dia 2 de Agosto, no servidor da Produção, e a partir de Coimbra. 94 Capítulo 6 Tabela 6.1 - Comparação de tempos em ambientes diferentes Na Tabela 6.1 verifica-se que o servidor de Produção demora consideravelmente mais tempo no carregamento da informação. O tempo total do carregamento no servidor de Produção foi de 1h:08m e, a partir de Coimbra (no horário laboral), demorou apenas 48 minutos. A validação de cada declaração demorou 2 a 3 segundos, enquanto que a partir de Coimbra demorou 1 segundo. Dada a análise, uma vez que se verifica uma grande diferença do tempo de processamento de uma declaração entre o carregamento efectuado a partir de Coimbra em horário laboral e o servidor de Produção (que se encontra em Lisboa) a executar durante a noite, foi necessário tentar perceber qual o problema desta diferença de tempos e encontrar uma solução. O primeiro passo foi colocar a execução da aplicação noutro servidor, onde se obtiveram os valores pretendidos (semelhantes aos obtidos a partir de Coimbra em horário laboral), concluindo que o problema estava relacionado com o servidor de Produção. Uma outra solução seria distribuir o processo por vários servidores, implicando a replicação de toda a estrutura necessária e uma maior concentração, de forma a evitar erros, ao executar os processos em modo manual. 6.3.2. Tempos de execução em horários diferentes No final de cada carregamento é obtido um relatório com a informação dos tempos de execução. 95 Testes de Desempenho A Figura 6.3 apresenta um exemplo desse relatório no período de maior carga, quando o carregamento se encontra em modo manual. O carregamento efectuado no dia 30 de Setembro de 2011 (Sexta-feira) com o término às 13h:27m teve maior duração em relação ao carregamento do dia 2 de Outubro de 2011 (Domingo) às 6h:13m. Assim, é possível constatar que os tempos de execução variam consoante o horário e os dias da semana. Figura 6.3 - Comparação de tempos em situações diferentes. 96 Capítulo 6 6.4. MELHORIAS EFECTUADAS Como referido anteriormente 97% das declarações recebidas são declarações que contêm um grande volume de informação e, como tal, exigem grande carga de processamento na sua leitura e inserção. Nesse sentido, houve um cuidado acrescido na fase de implementação, de forma a que este processo ficasse o mais eficiente possível em relação ao que existia. A solução introduzida, que implicou a reestruturação de todo o código, levou a uma melhoria significativa, pois conseguiu-se que a função que identifica os tipos de classes ficasse mais reduzida e as classes do tipo lista e sublista fossem identificadas mais rapidamente. Esta alteração consistiu, de um modo geral, em retirar todos os nomes de tabelas que não fossem da base da declaração, mantendo-se apenas o Rosto e os Anexos da declaração e melhorar o algoritmo de pesquisa das tabelas. Inicialmente existia uma função que instanciava todos os objectos do tipo tabela em que cada uma das tabelas é identificada por uma string (por exemplo AnexoA). Sempre que se instanciava um objecto deste tipo, a aplicação tinha de pesquisar todos os nomes para identificar o objecto (tabela) a instanciar. Com a introdução desta solução, os nomes das classes que são associados ao Rosto e Anexos, as designadas listas e sublistas, passaram a ser instanciadas dentro da classe correspondente. Por exemplo, a lista Q06-LISTA é instanciada na classe que carrega o Anexo D, uma vez que esta lista pertence ao Anexo D. Esta solução só foi possível após a análise dos ficheiros XML, onde se verificou que respeitavam quase sempre uma determinada ordem o que permitiu fazer uma adaptação do código que beneficia dessa ordem. 97 Capítulo 7 7. CONCLUSÕES E TRABALHO FUTURO Neste capítulo apresentam-se as conclusões, assim como algumas possíveis melhorias a introduzir no processo usado pelo INE na implementação da Informação Empresarial Simplificada (IES) de acordo com o Sistema de Normalização Contabilística (SNC). 7.1. CONCLUSÕES A IES inclui informação de natureza fiscal, contabilística e estatística sobre as contas das empresas. Para o Instituto Nacional de Estatística, a IES tornou-se numa nova forma de entrega de informação anual para fins estatísticos tendo substituído o Inquérito à Empresa Harmonizado (IEH). Tal permitiu uma diminuição substancial da carga estatística das empresas, assim como uma melhoria ao nível dos resultados produzidos pelo INE. Com a introdução do novo modelo do Sistema de Normalização Contabilística em 2010, tendo sido revogado o Plano Oficial de Contabilidade (POC), foram introduzidas profundas alterações à informação reportada através da IES e, consequentemente, alterados os modelos até então utilizados pelo INE. Os formulários foram adaptados de forma a ser possível as empresas responderem em situação de exercício de 2009 e anteriores (POC) e período de 2010 e seguintes (SNC), incluindo então formulários que contemplam as duas versões (POC versus SNC). Neste contexto, foi necessário desenvolver uma aplicação que permitisse inserir as declarações da IES segundo o SNC na base de dados Oracle, com a mesma estrutura de dados que o ficheiro XML. A aplicação desenvolvida reúne um conjunto de características que procura garantir que não haja qualquer obstáculo que impeça a sua utilização, nomeadamente, a portabilidade, podendo ser executada em diferentes arquitecturas. Foi apenas necessário criar uma estrutura específica e copiar um conjunto de ficheiros da directoria classes (que contém os ficheiros criados pelo compilador Java) e da directoria das packages. 99 Conclusões e Trabalho Futuro Em relação à utilização da aplicação IES, foram inseridas 419.112 declarações na base de dados até ao dia 9 de Novembro de 2011, encontrando-se, neste momento, a ser executada diariamente às 00h:10m através do script em modo automático. Esta é a situação ideal, libertando qualquer controlo por parte de um técnico, reduzindo a sua intervenção e, consequentemente, a possibilidade de possíveis erros. A elaboração deste Estágio exigiu uma pesquisa exaustiva na área da Contabilidade e Finanças, de forma a compreender todo um conjunto de conceitos, nomeadamente IES, SNC, a IES de acordo com o SNC. Além disso foi necessário compreender todo o circuito de transferência da informação, após a submissão das declarações por parte das empresas, no Portal das Finanças até ao INE, podendo, assim, identificar todas as vantagens deste novo modelo, bem como as necessidades específicas para o desenvolvimento da aplicação. O projecto desenvolvido cumpre o objectivo pretendido, podendo, no entanto, sofrer algumas melhorias que são apresentadas na secção seguinte. É de realçar que nos objectivos iniciais do projecto estava prevista apenas uma pequena participação na criação do novo modelo de dados, tendo, no entanto, esta tarefa sido também desenvolvida na sua totalidade no âmbito do projecto, na sequência de uma reestruturação de tarefas entre serviços do INE. Para finalizar, é importante realçar as competências adquiridas na utilização de ferramentas de desenvolvimento, principalmente no Eclipse e de base de dados, considerando assim este Estágio uma experiência bastante enriquecedora, tanto a nível profissional como pessoal. 7.2. TRABALHO FUTURO A aplicação IES é composta por um conjunto de procedimentos que poderão ser melhorados e/ou alargados com a inclusão de novas funcionalidades. De seguida especificam-se alguns dos possíveis melhoramentos para a aplicação IES: • optimizar os algoritmos de inserção para que seja possível inserir o maior número de declarações no menor tempo possível; 100 Capítulo 7 • permitir que sejam enviados relatórios de forma automática, permitindo detectar períodos de maior carga e identificar situações em que o tempo de execução é superior ao previsto; • construir uma aplicação auxiliar com interface intuitiva, para que seja possível verificar a qualquer altura a situação dos carregamentos, bem como configurar todos os procedimentos anuais necessários para o carregamento de informação, por exemplo, script para criação da estrutura necessária de forma automática; • encontrar novas soluções de forma a que, no período de maior carga, o processo de execução da aplicação se possa manter em modo automático, evitando assim possíveis falhas e manutenções que necessitam de ser efectuadas com a intervenção de um técnico. 101 Referências Bibliográficas REFERÊNCIAS BIBLIOGRÁFICAS Almeida, R.; Dias, A.; Carvalho, F. SNC explicado. Agualva, Cacém, ATF – Edições Técnicas, 2009. Altova. “XML Editor, Data Management, UML and Web Services tools”. http://www.altova.com/ xmlspy.html, 2011 [Agosto, 2011]. Amaral, L. e Varajão, J. Planeamento de Sistemas de Informação, 4ª ed., Lisboa, FCA, 2007. Azevedo, A. (2010, Janeiro e Fevereiro). “SNC - uma atitude diferente”. Revista electrónica - Contabilidade & Empresas, N.º 1, Disponível em: http://www.otoc.pt/downloads/indexrevista.php [Fevereiro de 2011]. Bastien, M.; (2003, Agosto). “Accessing multidimensional Data Types”. Oracle 9i Release 2. Disponível em: http://www.dblp.org/search [Maio de 2011]. Bray, T.; Paoli, J.; McQueen. C.; Maler, E.;Yergeau, F. (2008). “Extensible Markup Language (XML) 1.0 (Third Edition)”, 1ª ed., Word Wide Web Consortium. Campos, L. Oracle 8i, Lisboa, FCA, 1999. Carvalho, A. Questionário de Família, Censos 2011, INE, Disponível em: http://www.ine.pt/xportal/xmain?xpid=INE&xpgid=ine_censos2011_asp_org_questiona rio. Chumbau, A., Pereira, H.; Rodrigues, R. (2010). Simplified Business Information (IES): Impact of Admin Data in the production of Business Statistics. Disponível em: http://www.ine.pt [Março de 2011]. 103 Referências Bibliográficas Claro, D. e Sobral J. (2008). Programação em JAVA. Copyleft Pearson Education. Florianópolis, SC. Disponível em: http://www.lasid.ufba.br/pessoal/danielaclaro/download/Programando%20em%20Java. pdf [Maio de 2011]. CNC. ”Comissão de Normalização Contabilística”. Disponível em: http://www.cnc.min-financas.pt, 2011 [Janeiro de 2011]. Cunha, V. (2009). “SNC – Sistema de Normalização Contabilística”. Disponível em: http://www.artigopt.com/negocios/gestao/snc-sistema-de-normalizacaocontabilistica.html [Janeiro de 2011]. Eclipse. Site do Eclipse. Disponível em: http://www.eclipse.org., 2011 [Março de 2011]. Ehow (2011). “How to Convert a DTD to XSD”. Disponível em: http://www.ehow.com/how_6708750_convert-dtd-xsd.html [Março de 2011]. Ferreira, R. (2010). “Sistema de Normalização Contabilística (SNC) ACTIVOS FIXOS TANGÍVEIS”. Disponível em: www.p2p.com.pt/files/Artigo-SNC_Activos-FixosTangiveis.pdf [Março de 2011]. Folha Informativa (2011). Rede de Informação do INE em Bibliotecas do Ensino Superior (RIIBES), Instituto Politécnico de Bragança (IPB), 34 [Maio de 2011]. Franco, P. (2010). “POC versus SNC explicado”. Disponível em: http://www.otoc.pt/fotos/editor2/SNC_web_12MAR.pdf [Março de 2011]. GUJ. “Notícias, artigos e o maior fórum brasileiro sobre Java”. Disponível em: http://guj.com.br, 2011 [Maio de 2011]. 104 Referências Bibliográficas INE. Classificação Portuguesa das Actividades Económicas (CAE Rev.2), Lisboa, INE Secção de Reprografia, 1993. INE. Setenta anos: O Instituto Nacional de Estatística ao Serviço da sociedade Portuguesa, Lisboa, DFA- Departamento Financeiro e Administrativo, 2006 [Junho de 2011]. INE (2010). “Plano de Actividades do INE, I.P. e das Entidades com Delegação de Competências do INE”, Disponível em: http://www.ine.pt [Junho de 2011]. INE. Portal do INE, Disponível em: http://www.ine.pt, 2011 [Janeiro de 2011]. IES. Site da IES, Disponível em: http://www.ies.gov.pt, 2011 [Janeiro de 2011]. Infocontab. “O Portal da contabilidade em Portugal”, Disponível em: http://www.infocontab.com.pt, 2011 [Março de 2011]. JCreator. Site do JCreator, Disponível em: http://www.jcreator.com, 2010 [Setembro de 2011]. Jervis, M. ”XML DTDs Vs XML Schema”. Disponível em: http://www.sitepoint.com/xml-dtds-xml-schema, 2011 [Junho de 2011]. Lee, S.; Kim, N.; Moon, S. Context-Adaptive Approach for Automated Entity Relationship Modeling. J. Info. Sci Eng., 2009. Maron, D.; Torquato, J.; Alves, P. (2008). “Banco de dados distribuídos Oracle”, Disponível em: http://disciplinas.dcc.ufba.br/pub/MATA60/WebHome/Banco_de_dados_SBDD_ORA CLE.pdf [Maio de 2011]. 105 Referências Bibliográficas Microsoft. “Manual do Microsoft Office Visio http://www.microsoft.com/brasil/2007office/programs/visio/guide.mspx, [Setembro de 2011]. 2007”, 2006, Oracle. “Character Sets and Encodings”, Disponível em: http://docs.oracle.com/javaee/1.4/tutorial/doc/WebI18N5.html, 2011a [Setembro de 2011]. Oracle. Portal da Oracle, Disponível em: http://www.oracle.com, 2011b [Maio de 2011]. Portal das Finanças. Disponível em: http://www.portaldasfinancas.gov.pt, 2011 [Fevereiro de 2011]. Portal Gestão.“Introdução ao novo Sistema de Normalização Contabilística”, Publicado em Contabilidade, Disponível em: http://www.portal- gestao.com/gestao/contabilidade/item/2626-introdução-ao-novo-sistema-denormalização-contabilística.html, 2011 [Fevereiro de 2011]. PricewaterhouseCoopers Contabilística (2009). “A adopção (SNC)”. do Sistema de Normalização Disponível em: http://www.pwc.com/pt_PT/pt/corporate/imagens/SNC-set-09.pdf [Fevereiro de 2011]. Sage. Site da Sage, Disponível em: http://www.sncpt.com, 2011 [Fevereiro de 2011]. Sousa, A. (2002). Bases de Dados Web e Xml. FCA. Stokol, G. (2011). “Validating XML by Using XML Schema” Oracle 10g: XML Fundamentals, 1ª ed., vol. 1, 2004. Thompson, H.; Beech, D.; Maloney, M.; Mendelsohn, N. “XML Schema Part 1”, 2ª ed, W3C, Disponível em: http://www.w3.org/TR/xmlschema-1, 2004 [Março de 2011]. 106 Referências Bibliográficas W3C. “Word Wide Web Consortium”, Disponível em: http://www.w3.org, 2011a [Abril de 2011]. w3schools. “XML Schema Tutorial”, Disponível em: http://www.w3schools.com/schema, 2011a [Abril de 2011]. w3schools. “XML Tutorial”, Disponível em: http://www.w3schools.com/xml, 2011b [Abril de 2011]. 107 ANEXO A – PROPOSTA DE ESTÁGIO PROPOSTA DE ESTÁGIO 109 DEPARTAMENTO DE ENGENHARIA INFORMÁTICA E DE SISTEMAS Delegação de Coimbra INSTITUTO SUPERIOR DE ENGENHARIA DE COIMBRA PROPOSTA DE ESTÁGIO MESTRADO em INFORMÁTICA E SISTEMAS Ramo de Tecnologia da Informação e do Conhecimento Ano Lectivo de 2010/2011 TEMA Aplicação para o tratamento da Informação nformação Empresarial Simplificada de acordo com o Sistema de Normalização Contabilística SUMÁRIO Neste estágio pretende-se se desenvolver as componentes tecnológicas necessárias para a recepção e tratamento dos dados da Informação Empresarial Empres Simplificada (IES) de acordo com o Sistema de Normalização Contabilística (SNC) (Decreto-Lei ( n.º 158/2009 de 13 de Julho de 2009). 2009 A construção dessass componentes exige o domínio mínio de diferentes tecnologias, linguagens de programação e gestão de Base de Dados (JAVA, ( XML, ORACLE, PL/SQL,, entre outros). outros) Esta aplicação informática deve permitir lidar com as a declarações da IES,, entregues pelos vários tipos de empresas, através do preenchimento de formulários submetidos por via electrónica, electrónica disponíveis no servidor do Instituto das Tecnologias de Informação na Justiça (ITIJ). 1. ÂMBITO O Instituto tituto Nacional de Estatística, IP (INE) tem como missão produzir e divulgar informação estatística oficial de qualidade, promovendo a coordenação, o desenvolvimento e a divulgação da actividade estatística nacional. No caso das empresas, existe um vasto conjunto de informação de carácter anual de extrema relevância para efeitos estatísticos, fiscais e de prestação de contas. Estas estavam obrigadas a prestar a mesma informação sobre as suas contas anuais a diversas entidades públicas, através de meios diferentes: • Depósito das contas anuais e correspondente registo, em papel, junto das conservatórias do registo comercial; 111 DEPARTAMENTO DE ENGENHARIA INFORMÁTICA E DE SISTEMAS INSTITUTO SUPERIOR DE ENGENHARIA DE COIMBRA • Delegação de Coimbra Entrega da declaração anual de informação contabilística e fiscal ao Ministério das Finanças e da Administração Pública (Direcção Geral dos Impostos); • Entrega de informação anual de natureza contabilística ao INE para efeitos estatísticos; • Entrega de informação relativa a dados contabilísticos anuais para fins estatísticos ao Banco de Portugal. O cumprimento de cada uma destas obrigações obrigações implicava para as empresas a necessidade de transmitir informação substancialmente idêntica sobre as suas contas anuais a quatro entidades diferentes (conservatórias do registo comercial, Administração Fiscal, INE e Banco de Portugal) e através de quatro meios diferentes. Com a criação da IES (Informação Informação Empresarial Empres Simplificada), toda a informação que as empresas têm de prestar relativamente às suas contas anuais passou a ser transmitida num único momento e por uma única via, através do preenchimento preenchimento de formulários únicos submetidos por via electrónica, electrónica conforme os vários tipos de empresas: • Anexo A – Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola e entidades não residentes com estabelecimento estável; • Anexo A1 – Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola – contas consolidadas; • Anexo B – Empresas do sector financeiro; fin • Anexo B1 – Empresas do sector financeiro – contas consolidadas; • Anexo C – Empresas do sector segurador; • Anexo C1 – Empresas do sector segurador - contas consolidadas; • Anexo D – Entidades residentes que não exercem, a título principal, actividade comercial, industrial ou agrícola; • Anexo I – Sujeitos passivos com contabilidade organizada; • Anexo R – Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola, entidades não residentes com estabelecimento estável e EIRL (Estabelecimentos Individuais de Responsabilidade Limitada); • Anexo S – Empresas do sector financeiro; • Anexo T – Empresas do sector segurador; A IES é uma medida do programa SIMPLEX e é entregue anualmente nos 6 meses posteriores ao encerramento do ano económico. económico Isto significa que, nos casos em que o ano económico das empresas coincide com o ano civil, a IES deve ser entregue até ao último dia útil do mês de Junho do ano seguinte 112 DEPARTAMENTO DE ENGENHARIA INFORMÁTICA E DE SISTEMAS Delegação de Coimbra INSTITUTO SUPERIOR DE ENGENHARIA DE COIMBRA àquele a que as contas respeitam. Quando não haja essa coincidência, o prazo é de 6 meses a contar da data em que termina o ano económico. O ITIJ (Instituto Instituto das Tecnologias de Informação na Justiça) Justiça disponibiliza,, ao INE, as declarações das empresas em ficheiros XML (eXtensible eXtensible Markup Language) Language agrupados num ficheiro ZIP. Cada Ca ficheiro XML contém a informação de apenas uma declaração. Este ficheiro é composto por um cabeçalho que identifica a declaração, o rosto osto que identifica o declarante e os anexos nexos correspondentes à declaração. Neste contexto, as declarações são inseridas numa Base de Dados Oracle com a mesma estrutura de dados que o ficheiro XML. Para que uma declaração seja inserida na Base de Dados, esta declaração terá que respeitar o modelo XSD (XML Schema Definition) disponibilizado pelo ITIJ. ITIJ Em caso de incoerência dos dados, regista-se se um erro numa tabela criada para o efeito e a declaração é colocada numa directoria para posterior análise. Em Julho de 2009 (Decreto-Lei Lei n.º 158/2009 de 13 de Julho de 2009), ), entrou em vigor o Sistema de Normalização Contabilística (SNC) que se define como um conjunto de regras e princípios que, q consiste em criar uma metodologia comum, a ser seguida pelas unidades económicas visando, fundamentalmente, a comparabilidade das informações inter-unidades, a universalidade dos dados recolhidos idos e a sua compreensibilidade pelos diversos agentes económicos. Assim, de forma a atender às necessidades específicas do INE, é necessária a implementação e adaptação no sistema stema de produção de uma aplicação que possibilite o carregamento das declarações IES de acordo com o sistema (SNC) ( que entrou em vigor. O carregamento de toda a informação, nomeadamente destas declarações, é efectuado através de um ficheiro XML (eXtensible Markup Language). ). Este ficheiro, contém apenas uma declaração e é composto co por: • um cabeçalho que identifica a declaração e é composto por 8 atributos; • o rosto osto que identifica o declarante, declarante, poderá conter no máximo 50 elementos e 12 listas (outras tabelas); • e os Anexos nexos correspondentes à declaração. declaração Em relação aos anexos existem algumas combinações, Anexos AR (quem entrega o Anexo A deverá entregar o Anexo R), IR, BS, CT e D. O Anexo A é o maior anexo e contém no máximo 1 532 elementos e 8 listas. O Anexo R contém 9 elementos e uma lista com 22 elementos. elemen As declarações poderão não incluir todos os elementos, mas no caso da combinação do Anexo AR, o XML poderá conter no máximo 1 549 elementos fora as listas (9 listas, uma dela com 22 elementos). 113 DEPARTAMENTO DE ENGENHARIA INFORMÁTICA E DE SISTEMAS INSTITUTO SUPERIOR DE ENGENHARIA DE COIMBRA Delegação de Coimbra O número aproximado de declarações recebidas será de 400 000 declarações onde 97% das declarações são do Anexo AR. Após o desenvolvimento da aplicação e os testes realizados, a aplicação desenvolvida passará à produção, sendo executada diariamente através de um script automático a uma determinada hora (no ( método antigo a hora é nocturna, de forma a minimizar o esforço computacional dos servidores). 2. OBJECTIVOS Os objectivos do estágio passam por cumprir um determinado conjunto de tarefas de forma a criar as condições necessárias para inserir a informação das declarações da IES segundo o Sistema de Normalização Contabilístico, recebidas do Instituto das Tecnologias de Informação na Justiça na Base de Dados do INE: • Validação das declarações XML segundo o modelo XSD; • Participação na definição do modelo da Base de Dados; • Definição, implementação e teste da aplicação que vai permitir efectuar o upload da informação na Base de Dados do INE; INE • Participação ão na análise dos erros gerados. 3. PROGRAMA DE TRABALHOS TRABALHO O Estágio consistirá nas seguintes actividades e respectivas tarefas: • T1 – Familiarização com a IES (Método antigo e Novo Método - Sistema de Normalização Contabilístico) Análise do funcionamento mento do método antigo e identificar as alterações ões para o novo método, no que se refere aos ficheiros XSDs, formulários e outra documentação. • T2 – Validação das declarações obtidas do ITIJ Verificação e validação de ficheiros XML de forma a verificar se estes respeitam o modelo XSD. • T3 – Especificação e análise da aplicação a desenvolver Levantamento de todos os requisitos necessários ao desenvolvimento da aplicação. • T4 – Participação na definição do modelo da Base de Dados Na sequência do conhecimento adquirido na tarefa T3, participação na criação das várias tabelas necessárias ao armazenamento da informação. • 114 T5 – Desenvolvimento da aplicação DEPARTAMENTO DE ENGENHARIA INFORMÁTICA E DE SISTEMAS Delegação de Coimbra INSTITUTO SUPERIOR DE ENGENHARIA DE COIMBRA Inserção das declarações das empresas, que se encontram agrupadas num ficheiro ZIP, ZIP recebidos do ITIJ na Base ase de Dados do INE. Nesta fase, é ainda necessário incluir algumas validações, tais como: validação com o XSD, validação da estrutura trutura do nome do ficheiro XML, verificação da existência, ou não, da declaração na Base de Dados. • T6 – Fase de testes, correcções orrecções e optimização Elaboração de testes de forma a validar a aplicação desenvolvida, detectar possíveis falhas bem como verificar o desempenho da aplicação. • T7 – Elaboração do relatório de estágio e toda a documentação que suporta a aplicação aplicaç desenvolvida. 4. CALENDARIZAÇÃO DAS TAREFAS T As Tarefas acima descritas serão executadas de acordo com a seguinte calendarização: Sem anas N Tarefas N+1 N+2 N+3 N+4 N+5 N+6 N+7 N+8 T1 T2 T3 T4 T5 T6 T7 Metas INI M1 M2 M3 M4 M5 M6 M7 (INI + X Semanas) (INI + X Semanas) (INI + X Semanas) (INI + X Semanas) (INI + X Semanas) (INI + X Semanas) (INI + X Semanas) INI M1 M2 M3 M4 M5 M6 M7 Início dos trabalhos Tarefa T1 terminada Tarefa T2 terminada Tarefa T3 terminada Tarefa T4 terminada Tarefa T5 terminada Tarefa T6 terminada Tarefa T7 terminada 5. RESULTADOS Os resultados do estágio serão consubstanciados num relatório a elaborar pelo estagiário ao longo do estágio e na aplicação informática mática para carregamento das declarações IES de acordo com o sistema (SNS) que entrou em vigor. 115 DEPARTAMENTO DE ENGENHARIA INFORMÁTICA E DE SISTEMAS INSTITUTO SUPERIOR DE ENGENHARIA DE COIMBRA Delegação de Coimbra 6. LOCAL DE TRABALHO O estágio será executado tado nas instalações do INE. Instituto Nacional de Estatística – Delegação de Coimbra Departamento de Metodologia e Sistemas de Informação Serviço de Infra-Estrutura Informacional Rua Aires de Campos Casa das Andorinhas 3000-014 Coimbra Telf.: 351 239 790 400 7. ORIENTAÇÃO ISEC: Nome: Doutor Jorge Bernardino Categoria: Professor Coordenador oordenador Entidade de Acolhimento: Nome: Dr. Jorge Magalhães ([email protected]) ( Cargo: Chefe de Serviço 8. CARACTERIZAÇÃO • • Data de início: Março de 2011 Data de fim: Setembro de 2011 Notas: • No âmbito deste estágio ou dos seus resultados não será divulgada qualquer informação confidencial do INE. 116 ANEXO B – ACTIVIDADE ESTATÍSTICA DO INE ACTIVIDADE ESTATÍSTICA DO INE 117 Anexo B ACTIVIDADE ESTATÍSTICA A prestação de informação ao INE é obrigatória sempre que solicitada. A resposta aos seus inquéritos é um dever de cidadania, no qual as pessoas devem fornecer a informação necessária ao INE para a produção de estatísticas oficiais (Carvalho, 2011). 1. COMO É OBTIDA A INFORMAÇÃO A informação do INE pode ser obtida através de: • inquéritos exaustivos (recenseamentos) em que todos os elementos de um universo são sujeitos a observação. São exemplos: o Recenseamento da População e da Habitação (Censos), já mencionado anteriormente; o Recenseamento Agrícola (RA) – realizado em 2009, traduz-se na inquirição de todos os produtores agrícolas. O RA contribui, de forma decisiva, para a caracterização da agricultura do país, das estruturas de produção, da população rural e dos modos de produção agrícola. Este conhecimento é imprescindível para a tomada de decisões de diferentes âmbitos, como sejam os das políticas económicas, regionais, sociais e até ambientais. O Recenseamento Agrícola de 2009 (RA09) foi uma operação estatística da responsabilidade do INE, que contou com a participação activa do Ministério da Agricultura, do Desenvolvimento Rural e das Pescas (MADRP), em especial das Direcções Regionais de Agricultura e Pescas (DRAP), para a recolha, validação e análise da informação e do Gabinete de Planeamento e Políticas, na articulação e apoio técnico. Nas Regiões Autónomas participaram, na realização do RA09, o Serviço Regional de Estatística dos Açores e a Direcção Regional dos Assuntos Comunitários da Agricultura, a Direcção Regional de Estatística da Madeira e a Direcção Regional de Agricultura e Desenvolvimento Rural. Os Censos e o Recenseamento Agrícola têm uma periodicidade decenal. Os Censos foram realizados em anos com término em um (1), 119 Actividade Estatística respectivamente, 1991, 2001 e 2011 e o RA foi efectuado em anos com término em nove (9), respectivamente,1989, 1999 e 2009; o Inquérito à Permanência de Campistas nos Parques de Campismo (IPCAMP) - todos os parques de campismo que se encontram em funcionamento são, nos termos da lei nº 22/08 de 13 de Maio, obrigados a enviar mensalmente ao INE, até ao 8º dia útil de cada mês, um boletim relativo à permanência de campistas havida no mês anterior. Não havendo movimento de campistas mantém-se a obrigatoriedade do envio do boletim ao INE; o Inquérito à Utilização de Tecnologias da Informação e da Comunicação nos Hospitais (IUTICH), com periodicidade bienal, com os seguintes objectivos: produção de informação acerca da utilização de Tecnologias da Informação e da Comunicação (TIC) por parte dos Hospitais, e utilização de infraestruturas TIC; a tipificação das formas de utilização de computador e de Internet pelo pessoal ao serviço; a realização de telemedicina; as encomendas de bens e ou serviços através da Internet (Comércio Electrónico) e seu pagamento online; a presença dos Hospitais na Internet; a disponibilização de meios tecnológicos para acesso a computadores e Internet pelos doentes internados; assim como a disponibilização de serviços de saúde aos cidadãos. Este inquérito é composto por cinco módulos específicos e carácter exaustivo, pois considera a totalidade dos Hospitais englobados nos Sectores Oficial (Público e Não Público) e Particular em Portugal Continental e nas Regiões Autónomas dos Açores e Madeira. É promovido pelo INE e desenvolvido em parceria com a UMIC – Agência para a Sociedade do Conhecimento, IP. O IUTICH enquadra-se no âmbito do desenvolvimento de operações estatísticas que visam contribuir para a criação de um sistema estatístico consistente e harmonizado, relativo à Sociedade de Informação. • inquéritos por amostragem em que são recolhidos os dados de uma amostra representativa do universo a observar. No processo de apuramento de resultados 120 Anexo B são usados métodos estatísticos, para extrapolação dos dados resultantes da inquirição da amostra para o universo, sendo exemplos os seguintes inquéritos: o Inquérito ao Emprego (IE) - tem por principal objectivo a caracterização da população face ao mercado de trabalho. O IE é um inquérito trimestral, por amostragem, dirigido a residentes em alojamentos familiares no espaço nacional e disponibiliza resultados trimestrais e anuais; o Inquérito às Deslocações dos Residentes (IDR) - a informação recolhida por este inquérito permite analisar o fenómeno da procura turística dos residentes em território nacional, conhecer as principais características e os fluxos das viagens realizadas em Portugal, para destinos dentro e fora da Europa. São inquiridos os indivíduos residentes em Portugal, cuja residência principal é um alojamento não colectivo, que tenham realizado deslocações em que dormiram (pelo menos uma noite) fora do seu ambiente habitual, pelos seguintes motivos: Lazer, Recreio e Férias; Profissionais e de Negócios; Visita a Familiares e Amigos, Saúde (razões voluntárias), Religiosos e Outros motivos. Este inquérito tem periodicidade trimestral; o Inquérito às Despesas das Famílias (IDEF) – visa caracterizar a estrutura das despesas das famílias, a distribuição regional do rendimento, o acesso a bens e equipamentos de conforto e o conhecimento das quantidades de produtos alimentares consumidas pelos indivíduos. Estes resultados são fundamentais para a revisão da estrutura do Índice de Preços ao Consumidor, efectuada pelo INE, sendo também amplamente utilizados, pelos investigadores, em estudos sobre as condições de vida em Portugal. O IDEF é uma operação quinquenal; o Inquérito às Condições de Vida e Rendimento (ICOR) – permite a análise: da composição e distribuição do rendimento das famílias e dos indivíduos; das condições de vida (condições de habitação e conforto, capacidade financeira, etc.); o impacto das transferências sociais ao nível da pobreza e exclusão social; da ligação entre a pobreza e exclusão social e a actividade económica, emprego, tipologia sócio-familiar, educação, 121 Actividade Estatística saúde e habitação. De forma sucinta, os objectivos deste inquérito são a produção de estatísticas sobre a distribuição do rendimento, as condições de vida e exclusão social. Este inquérito tem uma periodicidade anual. • fontes administrativas, conjunto de actividades envolvidas na obtenção e armazenamento de dados provenientes de uma ou mais fontes administrativas. Neste momento a IES (Informação Empresarial Simplificada) é a principal fonte administrativa do INE. Além da IES, são também exemplos de informação recolhida através de fontes administrativas: o Operações de Loteamento Urbano (Inquérito Q1), Trabalhos de Remodelação de Terrenos (Q2), Projectos de Obras de Edificação e Demolição de Edifícios (Q3), Utilização de Obras Concluídas (Q4) e Alterações de Utilização dos Edifícios (Q6). Estes inquéritos fazem parte do Sistema de Indicadores das Operações Urbanísticas (SIOU). O SIOU assenta a sua essência no inquérito aos Projectos de Obras de Edificação e Demolição de Edifícios (Q3). De facto, este inquérito tem como objectivo produzir dados relativos aos projectos de construção de edifícios, designadamente quanto ao titular, tipo de obra e uso a que se destina, bem como à quantificação de elementos de caracterização física e económica, permitindo ainda a quantificação do número de edifícios e de fogos demolidos. Esta informação é obtida e enviada mensalmente ao INE pelas Câmaras Municipais; o Imposto Municipal sobre Transacções Onerosas de Imóveis (IMT) é um imposto local, autárquico, que incide sobre a transmissão onerosa de bens imóveis ou sobre a transmissão de direitos de propriedade ou de figuras parcelares desse direito sobre bens imóveis. Tem uma periodicidade mensal e a fonte é o Ministério das Finanças – DirecçãoGeral dos Impostos (DGCI), designada anteriormente por Direccão-Geral de Contribuições e Impostos; o Imposto Municipal sobre Imóveis (IMI) é um imposto municipal que incide sobre o valor patrimonial tributário dos prédios (rústicos, urbanos 122 Anexo B ou mistos) situados em Portugal. Esta informação é recebida anualmente através do Ministério das Finanças – DGCI; o Informação sobre: Nascimentos de crianças nascidas vivas (Nadosvivos); Óbitos de indivíduos com 28 dias ou mais; Óbito Fetal ou Neonatal (a causa de morte não é uma fonte administrativa) e Casamentos celebrados com origem na informação registada nas Conservatórias do Registo Civil. Esta informação é recebida diariamente e enviada através de Web Services em que o emissor é o ITIJ (Ministério da Justiça) e o receptor é o INE. A informação sobre aos Divórcios e Separações Judiciais, decretados pelos Tribunais e pelas Conservatórias do Registo Civil, é recebida anualmente através da Direcção-Geral da Politica de Justiça (DGPJ – Ministério da Justiça). 2. QUEM RESPONDE AOS INQUÉRITOS A resposta aos inquéritos do INE pode ser obtida através de organizações ou dos próprios cidadãos: • organizações (do sector público e privado, empresas, associações, administração central e local, entre outros). A selecção é feita a partir da base de dados do INE (Ficheiro de Unidades Estatísticas - FUE), que contém informação sobre empresas e estabelecimentos, empresários em nome individual, associações, organismos da Administração Pública, central e local, entre outros. Esta base é constituída a partir dos dados de cadastro vindos do Registo Nacional de Pessoa Colectiva. A sua actualização é feita com recurso a diversas fontes, entre as quais se destacam a informação fiscal, os registos de pessoa colectiva, bem como as alterações conhecidas a partir dos inquéritos do INE. A informação pode ser obtida pelos seguintes métodos: o inquéritos em papel - via postal, devolvendo ao INE os questionários no envelope RSF que os acompanha, sendo alguns deles: Inquérito à Permanência de Campistas nos Parques de Campismo (IPCAMP), já referido anteriormente; Inquérito Anual à Produção Industrial (IAPI), com periodicidade anual, sendo as entidades inquiridas empresas. Traduz uma 123 Actividade Estatística integração completa da metodologia definida a nível comunitário, para as estatísticas da produção industrial, nomeadamente ao nível da cobertura da produção nacional, variáveis inquiridas e os tipos de produção realizada. Este inquérito tem como objectivo contribuir para a caracterização da produção industrial portuguesa, mediante a disponibilização de informação sobre produtos produzidos e vendidos, materiais comprados e energia consumida; Inquérito à Utilização de Tecnologias da Informação e da Comunicação nos Hospitais (IUTICH); Sistema de Indicadores das Operações Urbanísticas (SIOU). O IUTICH e o SIOU já foram referidos anteriormente. o transmissão electrónica de um ficheiro: Inquérito Anual à Produção Industrial (IAPI); Sistema de Indicadores das Operações Urbanísticas (SIOU). Inquéritos já referidos anteriormente. o via Internet por formulário electrónico através do seu preenchimento online. O formulário electrónico está disponível em https://webinq.ine.pt/aderentes ou através do Portal (http://www.ine.pt/): Inquérito à Permanência de Campistas nos Parques de Campismo (IPCAMP); Inquérito Anual à Produção Industrial (IAPI); Inquérito à Utilização de Tecnologias da Informação e da Comunicação nos Hospitais (IUTICH). Concluindo, a informação pode ser obtida através de vários métodos de recolha: • o IAPI pode ser recolhido pelos três métodos de recolha: em papel (via postal), transmissão de um ficheiro e por formulário electrónico; 124 Anexo B • o SIOU pode ser recolhido pelos dois métodos: por via postal e por transmissão electrónica; • o IPCAMP pode ser recolhido pelos dois métodos: via postal e por formulário electrónico. • cidadãos são seleccionados pelo INE e previamente informados por escrito. Esta selecção é feita a partir da chamada Amostra-Mãe, que o INE utiliza para a realização de inquéritos às famílias. Esta base é constituída por alojamentos familiares, seleccionados a partir dos dados dos Recenseamentos da População e Habitação. A Amostra-Mãe poderá sofrer atualizações ao longo dos dez anos, na sequência de um inquérito exclusivo para esse fim, denominado Inquérito à Actualização da Amostra-Mãe. Os cidadãos podem ser chamados a responder aos inquéritos do INE, através dos seguintes métodos de recolha: o entrevista directa, a realizar na morada do agregado familiar e efectuada por entrevistadores do INE, devidamente credenciados para o efeito. Alguns exemplos destes inquéritos são: o conhecido e, ainda em vigor, Inquérito ao Emprego (IE) e o Inquérito às Condições de Vida e Rendimento (ICOR). Em Agosto de 2011, o ICOR encontrava-se na fase de codificação e análise; o auto-preenchimento de questionários que são deixados em casa, mas sempre com o apoio do entrevistador. Alguns exemplos são: os Censos e o Inquérito às despesas das Famílias (IDEF); o telefone (CATI – Computer Assisted Telephone Interview), com alargamento gradual a um número cada vez maior de operações estatísticas, tais como: Inquérito ao Emprego (IE); Inquérito às deslocações dos residentes (IDR); o via Internet por formulário electrónico, de que são exemplos os Censos 2011. Este ano, 2011, foi possível, pela primeira vez, responder aos Censos através da Internet, disponível em www.censos2011.ine.pt. 125 ANEXO C – FORMULÁRIO DO ROSTO DA IES FORMULÁRIO DO ROSTO DA IES 127 MUITO IMPORTANTE × DGCI ANO Direcção-Geral dos Impostos 2 IRN De Informação Empresarial Simplificada ___________ 02 / _____ / _____ a ___________ Instituto dos Registos e do Notariado / _____ / _____ INE ÁREA DA SEDE, DIRECÇÃO EFECTIVA OU ESTAB. ESTÁVEL Instituto Nacional de Estatística 1 SERVIÇO DE FINANÇAS CÓDIGO BP DECLARAÇÃO ANUAL Banco de Portugal IDENTIFICAÇÃO DO SUJEITO PASSIVO 03 NOME 1 NÚMERO DE IDENTIFICAÇÃO FISCAL 2 DESIGNAÇÃO DA ACTIVIDADE ECONÓMICA E ESTABELECIMENTOS 04 CÓDIGO CAE - REV 3 ACTIVIDADE PRINCIPAL 1 VOL. DE NEGÓCIOS 2 CÓDIGO DA TABELA DE ACTIVIDADES % N.º ESTABELECIMENTOS (incluíndo a sede) 3 4 ANEXOS QUE DEVEM ACOMPANHAR A DECLARAÇÃO 05 INDIQUE NÚMERO Anexo A -- Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola e entidades não residentes com estabelecimento estável 1 Anexo A1 -- Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola - contas consolidadas (Modelo não oficial) 20 Anexo B -- Empresas do sector financeiro IRS INDIQUE NÚMERO Anexo I -- Sujeitos passivos com contabilidade organizada 2 Anexo B1 -- Empresas do sector financeiro - contas consolidadas (Modelo não oficial) IVA 21 Anexo C -- Empresas do sector segurador 3 Anexo C1 -- Empresas do sector segurador - contas consolidadas (Modelo não oficial) Anexo D -- Entidades residentes que não exercem, a título principal, actividade comercial, industrial ou agrícola 4 Anexo E -- Elementos Contabilísticos e Fiscais (entidades não residentes sem estabelecimento estável) 5 Anexo F -- Benefícios Fiscais 6 Anexo G -- Regimes Especiais 7 Anexo H -- Operações com Não Residentes 8 06 IS 22 IE ANTES DE PREENCHER ESTA DECLARAÇÃO LEIA COM ATENÇÃO AS INSTRUÇÕES QUE A ACOMPANHAM × PERÍODO DE TRIBUTAÇÃO 1 IES IRC MODELO EM VIGOR A PARTIR DE JANEIRO DE 2011 01 9 Anexo L -- Elementos Contabilísticos e Fiscais 11 Anexo M -- Operações realizadas em espaço diferente da sede (DL n. o 347/85, de 23 de Agosto) 12 Anexo N -- Regimes especiais 13 Anexo O -- Mapa Recapitulativo de Clientes 14 Anexo P -- Mapa Recapitulativo de Fornecedores 15 Anexo Q -- Elementos Contabilísticos e Fiscais 16 Anexo R -- Entidades residentes que exercem, a título principal, actividade comercial, industrial ou agrícola, entidades não residentes com estabelecimento estável e EIRL 17 Anexo S -- Empresas do sector financeiro 18 Anexo T -- Empresas do sector segurador 19 DECLARAÇÕES ESPECIAIS DECLARAÇÃO COM PERÍODO ESPECIAL DE TRIBUTAÇÃO DECLARAÇÃO DE CONSOLIDAÇÃO DECLARAÇÃO DO PERÍODO DE CESSAÇÃO 1 ANTES DA ALTERAÇÃO 2 TIPO DE DECLARAÇÃO 07 APÓS A ALTERAÇÃO 3 DECLARAÇÃO DO EXERCÍCIO DO INÍCIO DE TRIBUTAÇÃO 4 SITUAÇÃO DA EMPRESA 08 SITUAÇÃO DA EMPRESA 1ª DECLARAÇÃO DO ANO 09 1 DECLARAÇÃO DE SUBSTITUIÇÃO 2 5 Ano 1 EM: Mês 2 IDENTIFICAÇÃO DO SUJEITO PASSIVO OU REPRESENTANTE LEGAL E DO TÉCNICO OFICIAL DE CONTAS NIF do Representante Legal NIF do Técnico Oficial de Contas 1 2 ACONTECIMENTOS MARCANTES 10 NIF Empresa Destino NIF Empresa Origem 1 - FUSÃO 1 A0001 A0002 2 - CISÃO 2 A0005 A0006 3 - PARAGEM DE ACTIVIDADE 3 INACTIVO DURANTE 4 4 - OUTROS 5 DESCREVA QUAIS 6 A0003 A0004 NIF Empresa Destino NIF Empresa Origem A0007 A0008 Meses NIF Empresa Destino NIF Empresa Origem A0009 A0010 A0011 A0012 Dia ANEXO D – MODELO ER E DESCRIÇÃO DAS TABELAS DA BASE DE DADOS MODELO ER DESCRIÇÃO DAS TABELAS DA BASE DE DADOS 131 133 135 Anexo D DESCRIÇÃO DAS TABELAS DA IES A base de dados da IES é composta por várias tabelas: as tabelas de carácter geral e outras designadas como listas e sublistas, que não são mais do que tabelas correspondentes às listas e/ou sublistas existentes nos vários anexos das declarações. Um registo nas tabelas de carácter geral corresponde a uma declaração, enquanto que nas listas e sublistas uma única declaração poderá ter vários registos. Esta é a diferença essencial entre as tabelas de carácter geral e as designadas listas e sublistas. A chave das tabelas é uma chave composta pelos campos: Ano_Ref, Nif e Id_Declaracao com excepção às seguintes tabelas: • T_Controlo_Dcl – a chave são os campos Pacote (nome do ficheiro zip) e o campo Ficheiro (nome do ficheiro xml); • T_Dcl_Err_Files e a T_Erro_Msg – a chave é apenas o campo Erro_Cod. No caso das listas, para além da chave composta (Ano_Ref, Nif e Id_Declaracao), existe um campo adicional, o campo Indice_Nif, que é incrementado de forma automática, para evitar duplicação de chaves, uma vez que para a mesma declaração poderão existir vários registos. As sublistas, para além da chave composta referida anteriormente para as listas, contêm outros dois campos Indice_Nif_L e NIF_A5466 ou NIF_A5480, que são o Indice_Nif e o NIF da respectiva lista. Devido a uma limitação da Oracle, em relação ao número de colunas por tabela (máximo 1.000 colunas), foi necessário, para alguns anexos da declaração, fragmentar o anexo em várias tabelas. Sendo assim, segue-se uma descrição das tabelas, das listas e das sublistas existentes. 137 Descrição das Tabelas 1. T_CONTROLO_DCL A tabela T_Controlo_Dcl é a tabela de controlo dos ficheiros zip recebidos e inseridos na base de dados. Isto é, permite verificar se os ficheiros zip existentes no nosso servidor (ficheiros zip com data inferior à data actual) estão inseridos na base de dados. Esta tabela contém a informação sobre os ficheiros zip (nome do ficheiro zip, nome do ficheiro xml, id_sequencial_ies e data execução). 2. T_CHAVES A tabela T_Chaves tem as chaves das declarações, o cabeçalho das declarações (com os 8 atributos) e a informação que auxilia quem consulta os dados, como o número de filtros e o número de regras que as declarações cumprem. 3. T_ROSTO A tabela T_Rosto contém a informação do Rosto da declaração, sendo esta a seguinte: • o período de tributação para efeitos de IRS; • o código do serviço de finanças onde está centralizada a contabilidade; • a identificação do sujeito passivo; • a designação da actividade económica e estabelecimentos (estabelecimento corresponde a uma empresa ou parte de uma empresa (fábrica, oficina, armazém, etc.) situada num local identificado); • declarações especiais: declaração de consolidação (Anexo A1, Anexo B1 e Anexo C1), declaração do período de cessação, declaração com período especial de tributação e declaração do exercício do início de tributação; • tipo de declaração; • situação da empresa; • identificação do sujeito passivo ou representante legal e do Técnico Oficial de Contas; • acontecimentos marcantes: fusão, cisão, paragem de actividade (nesta situação existe um campo para indicar o número de meses inactivos) e outros. 138 Anexo D Além da informação já referida, a tabela T_Rosto contém ainda alguns campos que não fazem parte do ficheiro XML, de forma a facilitar o trabalho dos utilizadores da informação e permitir identificar várias situações. Alguns desses campos identificam os anexos que acompanham a declaração, como por exemplo o tipo de CAE (Classificação Portuguesa das Actividades Económicas) e o número de meses de actividade. 3.1. LISTAS DO ROSTO As listas são quadros existentes no Rosto e em alguns Anexos, que permitem vários registos sobre a informação do quadro em causa por declaração. Na base de dados, as listas são tabelas que podem conter vários registos por declaração, conforme já foi referido anteriormente. Para os acontecimentos (Q10) que envolvam outras empresas, estas devem ser identificadas, sendo possível inserir tantos registos quantos os necessários. Deste modo, o Rosto tem as seguintes listas: • T_Rosto_Q10_1L – para o acontecimento fusão, as empresas são identificadas nos campos A0001 (NIF Empresa Origem) e A0003 (NIF Empresa Destino), conforme a sua posição em termos de origem ou destino do acontecimento; • T_Rosto_Q10_2L – para o acontecimento cisão, as empresas são identificadas nos campos A0005 (NIF Empresa Origem) e A0007 (NIF Empresa Destino); Para as listas Q10_5 as empresas são identificadas nos campos A0009 (NIF Empresa Origem) e A00011 (NIF Empresa Destino): • T_Rosto_Q10_5_1L - transferência de parte significativa dos trabalhadores de empresas do grupo, sem cisão; • T_Rosto_Q10_5_2L - transferência de parte significativa dos trabalhadores para empresas do grupo, sem cisão; • T_Rosto_Q10_5_3L - alienação de parte significativa de património produtivo, sem cisão; 139 Descrição das Tabelas • T_Rosto_Q10_5_4L - aquisição de parte significativa de património produtivo, sem cisão; • T_Rosto_Q10_5_5L - encerramento de parte significativa de património produtivo, sem cisão; • T_Rosto_Q10_5_6L - transferência total ou parcial de actividade de outra empresa, sem cisão; • T_Rosto_Q10_5_7L - transferência total ou parcial de actividade para outra empresa, sem cisão; • T_Rosto_Q10_5_8L - mudança de actividade com manutenção da actividade da empresa original e com criação de outra empresa; • T_Rosto_Q10_5_9L - mudança de actividade com manutenção da actividade da empresa original e sem criação de outra empresa; • 4. T_Rosto_Q10_5_10L - outros acontecimentos. ANEXO A – ENTIDADES RESIDENTES QUE EXERCEM, A TÍTULO PRINCIPAL, ACTIVIDADE COMERCIAL, INDUSTRIAL OU AGRÍCOLA E ENTIDADES NÃO RESIDENTES COM ESTABELECIMENTO ESTÁVEL Este anexo é utilizado para as declarações do ano 2009 e anteriores, sendo composto pelas seguintes tabelas: • T_ ANEXO_A_Q03 – informação do Quadro 03 (Demonstração dos resultados por naturezas); • T_ ANEXO_A_Q04 – informação do Quadro 04 (Balanço); • T_ANEXO_A_Q05_1 – informação do Quadro 0507_Nota7 (Pessoas ao serviço e horas trabalhadas) até ao Quadro 0540_Nota40 (Variações nas rubricas de capital próprio); • T_ANEXO_A_Q05_2 - informação do Quadro 0541_Nota41 (Demonstração do custo das mercadorias vendidas e das matérias consumidas) até ao Quadro 0544_Nota44 (Repartição de valores por actividades económicas e por mercados geográficos); • 140 T_ANEXO_A_Q06_Q09 – contém a seguinte informação: Anexo D o Quadro 06 – outras informações contabilísticas e fiscais; o Quadro 07 – deliberação de aprovação de contas; o Quadro 08 – relatório de gestão/parecer do órgão de fiscalização/certificação legal das contas; o Quadro 09 – mais-valias: reinvestimento dos valores de realização; o Quadro 11- comércio electrónico; • T_ANEXO_A_Q07_PDF – tabela apenas com um campo do tipo BLOB (Binary Large Object). Este tipo de dados (BLOB) permite armazenar imagens e ficheiros, entre outros. No caso da IES é um ficheiro de formato pdf; • T_ANEXO_A_COMENTA – contém todos os campos comentario. Para os anexos em que existem campos de textos sem limitação de tamanho, foi criada uma tabela por anexo com o nome COMENTA. Os campos são do tipo CLOB (Character Large Object) e são úteis para armazenar texto, podendo conter até 4 GB de dados; • T_ANEXO_A_INDICA – contém todos os campos indicador. Estes campos são do tipo Char (1byte) na BD e boolean no XSD. 4.1. LISTAS DO ANEXO A • T_ANEXO_A_Q05_0504 - informação da Nota 4 (Cotações utilizadas para conversão em euros); • T_ANEXO_A_Q05_NOTA14 - informação da Nota 14 (Outras informações relativas ao imobilizado corpóreo e em curso); • T_ANEXO_A_Q05_NOTA15 - informação da Nota 15 (Valores contabilísticos de bens utilizados em regime de locação financeira); • T_ANEXO_A_Q05_NOTA16 - informação da Nota 16 (Empresas do grupo e associados em que participa); • T_ANEXO_A_Q05_NOTA17 - informação da Nota 17 (Acções e quotas incluídas na conta “Títulos negociáveis”); • T_ANEXO_A_Q05_NOTA37 - informação da Nota 37 [Participação ( >10%) no capital subscrito por cada uma das pessoas colectivas]; • T_ANEXO_A_Q05_NOTA39 - informação da Nota 39 (Variações das reservas de reavaliação ocorridas no exercício); 141 Descrição das Tabelas • T_ANEXO_A_Q05_NOTA44 - informação da Nota 44 (Repartição de valores por actividades económicas e por mercados geográficos); • T_ANEXO_A_Q10 - informação do Quadro 10 [Operações com entidades relacionadas (Território Nacional)]. 5. ANEXO ASNC – ANEXO A DE ACORDO COM O SISTEMA DE NORMALIZAÇÃO CONTABILÍSTICA, PARA DECLARAÇÕES DE 2010 E ANOS POSTERIORES O Anexo ASNC é composto pelas seguintes tabelas: • T_ANEXO_A_SNC_Q02A – contém, além da chave, apenas o campo (Q02A_OPCAO), do tipo Char (1byte) na base de dados e byte no XSD. Este campo indica o modelo utilizado para elaborar as contas da empresa, sendo as opções as seguintes: o 1 - NIC’s (N) - Normas Internacionais de Contabilidade; o 2 - NCRF’s (S) - Normas Contabilísticas e de Relato Financeiro; o 3 - NCRF-PE (S) - Norma Contabilística e de Relato Financeiro para Pequenas Entidades; o 4 - NC-ME (M) - Norma Contabilística para Microentidades. Os quadros das tabelas seguintes deverão ter em consideração todas as indicações constantes da regulamentação contabilística aplicável (SNC e NCM – Normalização Contabilística para Microentidades). A nomenclatura, indicada em cada uma das rubricas dos quadros, deve ser entendida conforme o modelo de contas utilizado: • N – Normas Internacionais de Contabilidade; • S – Sistema de Normalização Contabilística; • M – Normalização Contabilística para Microentidades. • T_ANEXO_A_SNC_Q03A – informação do Quadro 03A (Demonstração dos resultados por naturezas). Esta tabela, além da chave, contém 52 campos do tipo 142 Anexo D Number1. A composição do Number() depende da informação indicada no XSD para cada campo; • T_ANEXO_A_SNC_Q04A – informação do Quadro 04A (Balanço). Esta tabela contém 122 campos de informação do tipo Number(), sendo o valor máximo Number (16,2); • T_ANEXO_A_SNC_Q04B – informação do Quadro 04B (Demonstração das alterações no capital próprio). Esta tabela contém 392 campos de informação também do tipo Number(); • T_ANEXO_A_SNC_Q04C – informação do Quadro 04C (Demonstração de fluxos de caixa - operacionais, investimento e de financiamento). Esta tabela contém 68 campos de informação do tipo Number(); • T_ANEXO_A_SNC_COMENTA – contém todos os campos “divulgacao”, os campos Q06_061A_OUTRASINFORMACOES e Q08-A0850. Esta tabela contém 34 campos de informação do tipo CLOB; • T_ANEXO_A_SNC_Q05A_INDICA - contém todos os campos “indicador” do quadro Q05A. Estes campos (total de 32) são do tipo Char (1byte) na base de dados e boolean no XSD; • T_ANEXO_A_SNC_Q05A_02A073 - contém a seguinte informação: o Quadro 02A – referencial contabilístico de reparação das demonstrações financeiras; o Quadro 0504A – fluxos de caixa; o Quadro 0505A – totais das políticas contabilísticas, alterações nas estimativas contabilísticas e erros; o Quadro 05061A- relacionamentos com empresas-mãe; o Quadro 05068A – informação do grupo – contas consolidadas; o Quadro 05071A- quantia escriturada e movimentos do período em activo intangíveis; o Quadro 05072A – quantia escriturada do excedente de revalorização e movimentos do período e quantia escriturada ao modelo do custo; o Quadro 05073A - outra informação. 1 Number() – é composto pelo número de dígitos, por exemplo: Number(5) ou Number (5,2). No exemplo Number (5,2) o cinco (5) é o total de dígitos e o dois (2) o número de casas decimais. 143 Descrição das Tabelas Esta tabela tem 397 campos de informação de vários tipos, tais como: Number(), Char(), VARCHAR2() e NVARCHAR2(); • T_ANEXO_A_SNC_Q05A_081A083 - contém a seguinte informação: o Quadro 05081A – quantia escriturada e movimentos do período em activos fixos tangíveis; o Quadro 05082A – quantia escriturada do excedente de revalorização e movimentos do período; o Quadro 05083A- outra informação. Esta tabela contém 323 campos de informação do tipo Number(); • T_ANEXO_A_SNC_Q05A_09A112 - contém a seguinte informação: o Quadro 05091A – quantia escriturada e movimentos do período em activos não correntes detidos para venda; o Quadro 05092A – outra informação relativa a unidades operacionais descontinuadas; o Quadro 0510A – locações (esfera do locatário); o Quadro 0511A – custos de empréstimos obtidos; o Quadro 05112A – custos de empréstimos obtidos capitalizados por activo que se qualifica. Esta tabela tem 405 campos de informação do tipo Number(); • T_ANEXO_A_SNC_Q05A_121A152 - contém a seguinte informação: o Quadro 0512A – propriedades de investimento; o Quadro 0513A – imparidade de activos; o Quadro 0514A – interesses em empreendimentos conjuntos; o Quadro 05152A - quantia escriturada e movimentos do período no goodwill2. Esta tabela contém 315 campos de informação do tipo Number(); • 2 T_ANEXO_A_SNC_Q05A_16A192 – contém a seguinte informação: Goodwill – termo contabilístico utilizado para designar a parte do valor de mercado (ou valor intrínseco) de uma empresa, que não esteja directamente reflectida nos seus activos e passivos. 144 Anexo D o Quadro 0516A – investimentos em subsidiárias, associadas e outros investimentos; o Quadro 0517A – exploração e avaliação de recursos minerais; o Quadro 0518A – agricultura; o Quadro 0519A - inventários. Esta tabela tem 398 campos de informação do tipo Number(); • T_ANEXO_A_SNC_Q05A_22A31 – contém a seguinte informação: o Quadro 0522A – provisões, passivos contingentes e activos contingentes; o Quadro 0523A – subsídios do governo e apoios do governo; o Quadro 05241A – efeitos de alterações em taxas de câmbio – diferenças de câmbio; o Quadro 0526A – imposto sobre o rendimento; o Quadro 0527A – matérias ambientais; o Quadro 0528A – instrumentos financeiros / activos e passivos financeiros; o Quadro 0529A – benefícios dos empregados, pessoas ao serviço e gastos com pessoal; o Quadro 05301A – informação por actividades económicas – total; o Quadro 05302A – informação por mercado geográfico; o Quadro 0531A – capital próprio. Esta tabela contém 558 campos de informação do tipo Number(); • T_ANEXO_A_SNC_Q06AQ11 – contém a seguinte informação: o Quadro 06 - outras informações contabilísticas e fiscais, excepto o campo Q06_061A_OUTRASINFORMACOES (do tipo CLOB), que se encontra na tabela T_ANEXO_A_SNC_COMENTA; o Quadro 07 – deliberação de aprovação de contas; o Quadro 08 – relatório de gestão / parecer do órgão de fiscalização / certificação legal das contas; o Quadro 09 – mais-valias: reinvestimentos dos valores de realização; o Quadro 11 – comércio electrónico. Esta tabela contém 221 campos de informação do tipo Number(), Char() e Date(); 145 Descrição das Tabelas 5.1. LISTAS DO ANEXO ASNC • T_ANEXO_A_SNC_Q0505A_A5427_L – informação do campo A5427 (aplicação inicial da disposição de uma NCRF/NC-ME) do Quadro 0505A (Políticas contabilísticas, alterações nas estimativas contabilísticas e erros). Esta tabela do tipo Lista tem 4 campos de informação; • T_ANEXO_A_SNC_Q0505A_A5428_L – informação do campo A5428 (alteração voluntária em políticas contabilísticas) do Quadro 0505A (Políticas contabilísticas, alterações nas estimativas contabilísticas e erros). Esta tabela contém 4 campos de informação; • T_ANEXO_A_SNC_Q0505A_A5429_L – informação do campo A5429 (alterações em estimativas contabilísticas) do Quadro 0505A (Políticas contabilísticas, alterações nas estimativas contabilísticas e erros), com 3 campos de informação; • T_ANEXO_A_SNC_Q0505A_A5430_L – informação do campo A5430 (erros materiais) do Quadro 0505A (Políticas contabilísticas, alterações nas estimativas contabilísticas e erros), com 3 campos de informação; • T_ANEXO_A_SNC_Q05062A_L – informação do Quadro 05062A (Entidades que participam no capital da empresa declarante), com 9 campos de informação; • T_ANEXO_A_SNC_Q05063A_L - informação do Quadro 05063A (Entidades em que a empresa declarante participa), com 13 campos de informação; • T_ANEXO_A_SNC_Q05064A_L – informação dos campos A5466 a A5473 do Quadro 05064A (Entidades objecto de consolidação), com 9 campos de informação; • T_ANEXO_A_SNC_Q05064A_L2 – informação dos campos A5474 a A5479 do Quadro 05064A (Entidades objecto de consolidação). Esta tabela é uma sublista da tabela anterior (T_ANEXO_A_SNC_Q05064A_L), ou seja, se as empresas preencheram o campo A5472 (participação indirecta de direito no capital social (%)) ou o campo A5473 (participação indirecta de direito de voto (%)) deverão preencher esta sublista (T_ANEXO_A_SNC_Q05064A_L2). Esta tabela, além da chave composta referida anteriormente para as listas, contém 146 Anexo D outros dois campos (Indice_Nif_L e NIF_A5466) que são o Indice_Nif e o NIF da respectiva lista e ainda 4 campos de informação; • T_ANEXO_A_SNC_Q05065A_L – informação dos campos A5480 a A5486 do Quadro 05065A (Entidades que não integram o perímetro de consolidação), com 8 campos de informação; • T_ANEXO_A_SNC_Q05065A_L2 – esta tabela é uma sublista da tabela anterior (T_ANEXO_A_SNC_Q05065A_L) à semelhança da tabela T_ANEXO_A_SNC_Q05064A_L2. • T_ANEXO_A_SNC_Q05066A_L – informação do Quadro 05066A (Participações materialmente irrelevantes), com 6 campos de informação; • T_ANEXO_A_SNC_Q05067A_L – informação do Quadro 05067A (Interesses em empreendimentos conjuntos (entidades conjuntamente controladas)), com 6 campos de informação; • T_ANEXO_A_SNC_Q05151A_L – informação do Quadro 05151A (Natureza e efeito financeiro das concentrações de actividades empresariais), com 9 campos de informação; • T_ANEXO_A_SNC_Q0520A_L – informação do Quadro 0520A (Contratos de construção), com 17 campos de informação; • T_ANEXO_A_SNC_Q05242A_L – informação do Quadro 05242A (Moedas utilizadas nas demonstrações financeiras das unidades operacionais no estrangeiro), com 3 campos de informação; • T_ANEXO_A_SNC_Q0530A_L - informação do Quadro 05301A (Informação por actividades económicas), com 25 campos de informação. 6. ANEXO A1 – ENTIDADES RESIDENTES QUE EXERCEM, A TÍTULO PRINCIPAL, ACTIVIDADE COMERCIAL, INDUSTRIAL OU AGRÍCOLA – CONTAS CONSOLIDADAS O Anexo A1 contém apenas uma tabela designada T_ANEXO_A1 que, além da chave, tem mais dois campos: um do tipo Char (1- pdf e 2- Formulário) e outro do tipo BLOB. 7. ANEXO B – EMPRESAS DO SECTOR FINANCEIRO Este anexo encontra-se dividido nas seguintes tabelas: 147 Descrição das Tabelas • T_ANEXO_B_Q02AA062 - informação do Quadro 02 ao Quadro 062, excepto o Quadro 062A (tabela T_ANEXO_B_Q62A) e Quadro 05 (tabela T_ANEXO_B_Q05): o Quadro 02 - identifica como se encontra a contabilidade organizada: de acordo com as NCA (Normas de Contabilidade Ajustadas) ou com o PCSB (Plano de Contas para o Sistema Bancário); o Quadro 03 - demonstração de resultados – NCA; o Quadro 03A - demonstração de resultados – PCSB; o Quadro 04 - demonstração de resultados – NCA; o Quadro 04A - demonstração de resultados – PCSB; o Quadro 06 - outras informações contabilísticas e fiscais; • T_ANEXO_B_Q62A – informação do Quadro 062A (Inventário da carteira de títulos – PCSB); • T_ANEXO_B_Q05 – informação do Quadro 05 (Anexo ao balanço e à demonstração de resultados). Esta tabela contém apenas um campo do tipo BLOB; • T_ANEXO_B_Q63AA11 - informação do Quadro 063A ao Quadro 11: o Quadro 063A – imobilizações corpóreas e incorpóreas – movimento do exercício – PCSB; o Quadro 07 – deliberação de aprovação de contas; o Quadro 08 – relatório de gestão/parecer do órgão de fiscalização/certidão de contas; o Quadro 10 – deste quadro apenas consta um campo (do tipo byte 1-Sim, 2-Não e 3-Dispensado), que permite identificar como se encontra organizada a documentação relativa aos preços de transferência praticados. Os restantes campos encontram-se na tabela T_ANEXO_B_Q10L (do tipo lista); o Quadro 09 – mais-valias: reinvestimento dos valores de realização; o Quadro 11 – comércio electrónico; • T_ANEXO_B_COMENTA - contém o campo B1750 (transcrição das reservas e ênfases constantes da certidão legal das contas) do Quadro 08 (Relatório de gestão / parecer do órgão de fiscalização / certificação legal das contas) do tipo 148 Anexo D CLOB. Este campo deve ser preenchido sempre que tenham sido assinalados os campos 24 (com reservas) ou 26 (com ênfases) ou 27 (escusa de opinião) do Quadro 08, que pertencem à tabela T_ANEXO_B_Q63AA11; • T_ANEXO_B_Q63AA66 - contém a seguinte informação: o Quadro 063 – outros activos tangíveis e intangíveis; o Quadro 065 – bens em locação financeira; o Quadro 066 – participação no capital social. 7.1. LISTA DO ANEXO B Este anexo apenas contém uma lista que corresponde à tabela T_ANEXO_B_Q10L com os campos do Quadro 10 - Operações com entidades relacionadas (Território Nacional). 8. ANEXO B1 – EMPRESAS DO SECTOR FINANCEIRO – CONTAS CONSOLIDADAS O Anexo B1 contém apenas uma tabela T_ANEXO_B1 que além da chave, tem um campo do tipo BLOB. 9. ANEXO C - EMPRESAS DO SECTOR SEGURADOR O Anexo C encontra-se dividido nas seguintes tabelas: • T_ANEXO_C_03AQ06 – informação do Quadro 03 ao Quadro 06: o Quadro 03 – conta de ganhos e perdas – conta técnica do seguro não vida; o Quadro 04 – conta de ganhos e perdas – conta técnica do seguro de vida; o Quadro 05 – conta de ganhos e perdas – conta não técnica; o Quadro 06 – balanço; Esta tabela é utilizada para declarações do ano 2007 e anteriores; • T_ANEXO_C_NOTA7A23 – informação da Nota 07 à Nota 23: o Quadro 0707 (Nota 7) – número médio de trabalhadores; o Quadro 0708 (Nota 8) – custos com o pessoal; 149 Descrição das Tabelas o Quadro 0722 (Nota 22) – inventário de títulos e participações financeiras; o Quadro 0723 (Nota 23) – imobilizações incorpóreas e imobilizações corpóreas; • T_ANEXO_C_NOTA24AQ13 - informação do Quadro 0724 (Nota 24 – Movimentos ocorridos na reserva de reavaliação) ao Quadro 0744 (Nota 44 – Indicação dos investimentos segundo a sua afectação) e do Quadro 08 (Outras informações contabilísticas e fiscais) ao Quadro 13 (Comércio electrónico): o Quadro 0724 (Nota 24) - movimentos ocorridos na reserva de reavaliação; o Quadro 0726 (Nota 26) - movimentos ocorridos nas provisões; o Quadro 0728 (Nota 28) - demonstração dos resultados extraordinários; o Quadro 0733 (Nota 33) - provisões técnicas; o Quadro 0734 (Nota 34) – desenvolvimento da provisão relativa a sinistros ocorridos em exercícios anteriores e dos seus reajustamentos/discriminação dos custos com os sinistros; o Quadro 0737 (Nota 37) - continuação da Nota 34; o Quadro 0740 (Nota 40) – discriminação de valores relativos ao seguro não vida; o Quadro 0742 (Nota 42) – prémios brutos emitidos relativos ao seguro de vida; o Quadro 0744 (Nota 44) – indicação dos investimentos segundo a sua afectação; o Quadro 08 – outras informações contabilísticas e fiscais; o Quadro 09 – deliberação de aprovação de contas; o Quadro 10 – relatório de gestão/parecer do órgão fiscalização/certificação legal das contas; o Quadro 11 - mais-valias: reinvestimento dos valores de realização; o Quadro 13 – comércio electrónico; 150 de Anexo D • T_ANEXO_C_COMENTA - contém todos os campos que são comentários e o campo C0950 (transcrição das reservas e ênfases constantes da CLC) do Quadro 10 (Relatório de gestão / parecer do órgão de fiscalização / certificação legal de contas) que é do mesmo tipo (CLOB); • T_ANEXO_C_INDICA – para cada campo do tipo comentário existe um campo do tipo indicador. O indicador é do tipo Char (1 byte). 9.1. LISTAS DO ANEXO C • T_ANEXO_C_NOTA4L - cotações utilizadas (Nota 4 - campos Moeda e Cotação); • T_ANEXO_C_NOTA6L – informação da Nota 6 (Empresas do grupo e associadas); • T_ANEXO_C_NOTA12L – campos da Nota 12 (Operações com entidades relacionadas (Território Nacional)). 10. ANEXO CPCES2008 – ANEXO C, PARA DECLARAÇÕES DE 2008 E ANOS POSTERIORES Este anexo é utilizado para declarações do ano 2008 e posteriores, sendo composto pelas seguintes tabelas: • T_ANEXO_C_Q05A - informação do Quadro 05 (Conta de ganhos e perdas); • T_ANEXO_C_Q06A - informação do Quadro 06A (Balanço); • T_ANEXO_C_Q06B - informação do Quadro 06B (Demonstração de variações do capital próprio); • T_ANEXO_C_Q07A – informação do Quadro 07A (Anexo ao balanço e à conta de ganhos e perdas); • T_ANEXO_C_Q0701_A – informação do Quadro 0701A [Anexo ao balanço e à conta de ganhos e perdas (formato pdf)]; • T_ANEXO_C_Q08A – informação do Quadro 08 (Outras informações contabilísticas e fiscais: 151 Descrição das Tabelas o Quadro 083 – investimento e outros activos financeiros, tangíveis e intangíveis; o Quadro 084 - investimento e outros activos financeiros, tangíveis e intangíveis – terrenos e edifícios; o Quadro 085 – investimentos e outros activos financeiros, tangíveis e intangíveis; o Quadro 086 – contratos de investimento e contratos de prestação de serviços; • T_ANEXO_C08_Q081AQ13 – contém a seguinte informação: o Quadro 081 – desdobramento de custos e proveitos; o Quadro 09 – deliberação de aprovação de contas e aplicação dos resultados conforme deliberação que aprovou as contas do exercício; o Quadro 10 – relatório de gestão/parecer do órgão de fiscalização/certificação legal de contas; o Quadro 11 – mais-valias: reinvestimento dos valores de realização; o Quadro 13 – comércio electrónico; • T_ANEXO_C2008_COMENTA - contém o campo Q10-C0950 (Transcrição das reservas e ênfases constantes da CLC) do tipo CLOB. 11. ANEXO C1 – EMPRESAS DO SECTOR SEGURADOR - CONTAS CONSOLIDADAS A tabela T_ANEXO_C1 contém a estrutura semelhante à tabela T_ANEXO_A1 do Anexo A1. 12. ANEXO D - ENTIDADES RESIDENTES QUE NÃO EXERCEM, A TÍTULO PRINCIPAL, ACTIVIDADE COMERCIAL, INDUSTRIAL OU AGRÍCOLA O Anexo D contém as seguintes tabelas: • T_ANEXO_D - contém a informação dos seguintes quadros: o Quadro 03 - rendimentos comerciais, industriais ou agrícolas – Demonstração dos resultados – Exercícios de 2009 e anteriores; 152 Anexo D o Quadro 04 - rendimentos de capitais; o Quadro 05 - rendimentos prediais; o Quadro 07 - apuramento da matéria colectável; • T_ANEXO_D_SNC_Q031A - contém apenas o Quadro 031A (Demonstração dos resultados – Período de 2010 e seguintes). 12.1. • 13. LISTA DO ANEXO D T_ANEXO_D_Q06_L – tem a informação do Quadro 06 (Mais-valias). ANEXO I - SUJEITOS PASSIVOS COM CONTABILIDADE ORGANIZADA Este anexo contém as seguintes tabelas: • T_ANEXO_ I – contém a informação dos seguintes quadros: o Quadro 04 – identificação do(s) sujeito(s) passivo(s); o Quadro 05 – demonstração dos resultados – ano 2009 e anteriores; o Quadro 06 – custo das mercadorias, matérias e activos biológicos vendidos e consumidos; o Quadro 07 – variação nos inventários da produção e em activos biológicos; o Quadro 08 – balanço - ano de 2009 e anteriores; o Quadro 09 – operações com entidades relacionadas e/ou entidades sujeitas a regime fiscal privilegiado; o Quadro 10 – rendimentos auferidos no exercício de uma actividade de prestação de serviços, por conta própria; o Quadro 11 – discriminação por actividades; o Quadro 12 – outras informações contabilísticas; o Quadro 13 – comércio electrónico; o Quadro 14 – mais-valias: reinvestimento dos valores de realização – ano de 2009 e anteriores; o Quadro 15 – parecer do ROC; o Quadro 16 – aplicações dos resultados; 153 Descrição das Tabelas • T_ANEXO_I_SNC – informação do Quadro 05A (Demonstração dos resultados por natureza) e do Quadro 08A (Balanço) para o ano de 2010 e posteriores. 13.1. LISTAS DO ANEXO I • T_ANEXO_I_Q09_L1 - informação do Quadro 09 (Operações com entidades relacionadas e/ou entidades sujeitas a regime fiscal privilegiado) excepto a pergunta dois; • T_ANEXO_I_Q09_L2 – contém apenas um campo, a pergunta dois (Se realizou operações com “Entidades sujeitas a regime fiscal privilegiado” indique os territórios onde as mesmas têm residência) do Quadro 09 (Operações com entidades relacionadas e/ou entidades sujeitas a regime fiscal privilegiado). 14. ANEXO R - ENTIDADES RESIDENTES QUE EXERCEM, A TÍTULO PRINCIPAL, ACTIVIDADE COMERCIAL, INDUSTRIAL OU AGRÍCOLA, ENTIDADES NÃO RESIDENTES COM ESTABELECIMENTO ESTÁVEL E EIRL (ESTABELECIMENTOS INDIVIDUAIS DE RESPONSABILIDADE LIMITADA) O Anexo R contém apenas uma tabela (T_ANEXO_R) e uma lista (T_ANEXO_R_Q04_EST). • T_ANEXO_R - informação do Quadro 03 (Número de estabelecimentos da empresa) e do Quadro 05 (Estabelecimentos localizados fora do território nacional – Exercícios 2009 e anteriores). 14.1. • LISTA DO ANEXO R T_ANEXO_R_Q04_EST - informação do Quadro 04 (Estabelecimentos localizados no território nacional – Exercícios 2009 e anteriores). 15. ANEXO RSNC – ANEXO R, DE ACORDO COM O SNC, PARA DECLARAÇÕES DE 2010 E ANOS POSTERIORES Este anexo é composto pelas seguintes tabelas: 154 Anexo D • T_ANEXO_R_SNC - informação do Quadro 03 (Número de estabelecimentos da empresa) com o campo Q03_1 (em território nacional) e o Q03_2 (fora do território nacional) do tipo Number (4); • T_ANEXO_R_SNC_Q04A_COMENTA - contém apenas um campo, Q04A_OUTRAS_INFORMACOES, do tipo CLOB. 15.1. • LISTA DO ANEXO RSNC T_ANEXO_R_Q04_EST - informação do Quadro 04-A (Estabelecimentos da empresa) com a caracterização e a informação económica dos estabelecimentos da empresa. Esta lista contém mais informação (total de 31 campos) do que a lista do AnexoR (T_ANEXO_R_Q04_Est) com um total de 23 campos. 16. ANEXO S - EMPRESAS DO SECTOR FINANCEIRO • T_ANEXO_S – contém apenas um campo do tipo Char (1 –NCA e 2- PCSB), que identifica a forma como está organizada a contabilidade. 16.1. • LISTAS DO ANEXO S T_ANEXO_S_BALC_1 - informação do Quadro 04 (Balcões da instituição financeira) de acordo com a NCA; • T_ANEXO_S_BALC_2 - informação do Quadro 04 (Balcões da instituição financeira) de acordo com o PCSB. 17. ANEXO T - EMPRESAS DO SECTOR SEGURADOR Este anexo é composto apenas por uma lista que corresponde à tabela T_ANEXO_T_ESTAB, que contém a informação do Quadro 03 (Estabelecimentos da empresa seguradora) e do Quadro 04 (Contas PCES – Plano de Contas para as Empresas de Seguros). 155 Descrição das Tabelas Existem ainda as seguintes tabelas: 18. T_DCL_ERR_FILES Na tabela T_Dcl_Err_Files são registados os motivos, identificados através de um código de erro, pelos quais as declarações não foram inseridas. Alguns códigos possíveis para a coluna ERRO_COD são os seguintes: • FILE_002 – erros relacionados com o ficheiro; • XSD_002 – erros de validação dos dados (XML); • SAX_002 – erros de sintaxe do XML; • IO_002 – erro de ficheiro corrompido; • SQL_002 – erros de base de dados; • UPD_002 - update às colunas (Anexo_A, Anexo_R, ....) na tabela T_ROSTO; • ZIP_001 – o ficheiro zip já existe; • ZIP_002 – O n.º de declarações do nome do ficheiro zip não corresponde ao n.º de ficheiros dentro do ficheiro zip; • ZIP_003 – erro ao descompactar o ficheiro zip ou ficheiro zip corrompido. Estes códigos são criados consoante as necessidades. Ao criar um código de erro deverá ser feito o registo na tabela T_Erro_Msg com uma descrição, de forma a identificar mais facilmente o tipo de erro. 19. T_ERRO_MSG Esta tabela contém a descrição dos códigos de erros, não só do carregamento como das regras de validação (por exemplo: RGR_D0010: 4 - Total das retenções (= D201+D202). 156