Nos últimos anos, o tópico de planejamento e análise econômica tornou-se cada vez mais relevante. Mas, ao mesmo tempo, a ineficiência da implementação dessas funções em sistemas ERP de grande porte e caros, nos quais sua presença é inicialmente assumida, se torna ainda mais óbvia (a letra P “Planejamento” na abreviação de tais sistemas ainda indica isso). Apesar dos enormes orçamentos e dos esforços titânicos para introduzir sistemas ERP, os departamentos econômicos de médias e grandes empresas trabalharam e continuam trabalhando em planilhas, principalmente o MS Excel.
Qual é a razão para esse estado de coisas? É realmente tudo sobre a inércia dos economistas? Ou a Microsoft conseguiu criar um produto verdadeiramente único em termos de conveniência e eficácia de sua aplicação em um ambiente de negócios real? Bem, a pergunta tímida no final, feita no título do artigo - existe uma alternativa ao Excel?
Para responder a essas perguntas, primeiro você precisa descobrir quais são as especificidades do planejamento e análise econômicos, cuja excelência o Monopólio mantém. Resumidamente, a resposta a esta pergunta está em uma palavra - TEMPO. É o tempo que os chefes de empresas de qualquer nível precisam tomar uma decisão gerencial que, dependendo da escala do problema, leva de alguns minutos a vários dias.
A maneira mais fácil de demonstrar esta tese é o exemplo do processo de desenvolvimento e aprovação do plano anual (orçamento) para o próximo exercício financeiro. Esse processo é implementado em qualquer empresa moderna e não visa adivinhar seu futuro (equívoco generalizado), mas controlar a alta gerência sobre o processo de alocação de recursos delimitados (investimentos, níveis de pessoal, limites de crédito etc.) entre as unidades de linha e funcionais empresas dentro do orçamento para o próximo ano fiscal.
Diferentemente dos procedimentos regulares, como tributação, folha de pagamento, relatórios financeiros e estatísticos, o processo de elaboração do orçamento é realizado uma vez por ano e é estritamente limitado pelo prazo. O início do processo orçamentário geralmente começa em outubro, quando já há informações (pelo menos preliminares) disponíveis sobre os resultados reais do trabalho nos nove meses do ano atual. Um gráfico típico de qualquer tabela de orçamento geralmente contém informações sobre os resultados esperados para o ano atual (de acordo com o esquema, fato 9 meses + 4 trimestres esperados), resultados planejados para o próximo ano e desvios (absolutos e relativos) para controlar a dinâmica das mudanças nos indicadores. Durante o período de outubro a novembro, as divisões da empresa desenvolvem seus próprios orçamentos e, em dezembro, são revisadas e aprovadas pela gerência da empresa ou organização controladora.
No processo de elaboração de orçamentos, várias opções podem ser desenvolvidas para vários cenários do ambiente externo, levando em consideração as metas e objetivos internos da empresa. No entanto, no final, o cenário principal (básico) é selecionado, segundo o qual os orçamentos de todos os departamentos são calculados. O resultado final desse processo é o orçamento consolidado para toda a empresa (grupo de empresas), de forma simplificada sendo a soma dos orçamentos de todas as divisões da empresa.
Na prática, ao elaborar um orçamento, cada unidade é guiada pelo princípio: "Peça mais, você receberá da maneira certa". A conseqüência desse princípio é o déficit do orçamento consolidado, quando as receitas planejadas não são suficientes para cobrir os custos planejados. Portanto, em qualquer processo orçamentário, na fase final, o orçamento é sempre equilibrado, que consiste em estabelecer planos de receita mais intensos e cortar certos tipos de despesas por uma ou outra unidade e artigos. Naturalmente, com recontagens subsequentes de todos os planos e a formação de um orçamento consolidado. E pode haver quantas recontagens com consolidação subsequente forem necessárias para zerar receitas e despesas.
Mas isso não é tudo. A tarefa demorada, mas tecnicamente solucionável, de recálculo múltiplo e consolidação de dados é sobreposta a uma tarefa muito mais complexa associada à alteração do modelo de dados, segundo a qual o recálculo e a consolidação dos indicadores planejados ocorrem. Por exemplo, uma decisão pode ser tomada para centralizar no próximo ano as vendas dos principais tipos de produtos e terceirizar certos processos de produção com a criação de novas entidades legais. E essas decisões não devem apenas ser descritas na forma de texto ou diagramas, mas devem ser feitas alterações em todos os documentos de liquidação relacionados à formação de custos e resultados financeiros. Além disso, essas decisões podem surgir tanto no estágio de elaboração de orçamentos preliminares quanto no equilíbrio do orçamento consolidado.
Do ponto de vista do software que implementa o suporte ao processo orçamentário, o TIME é o principal recurso do processo acima, durante o qual as alterações podem ser feitas no modelo de negócios da empresa e os cálculos já são realizados nesse novo modelo. É óbvio que, nessas condições, o Excel está fora de competição, pois permite que você forneça o tempo mínimo possível, desde a definição da tarefa para alterar o modelo de negócios até a emissão dos valores recalculados. Os sistemas ERP só podem prometer levar a decisão em consideração ao preparar demonstrações financeiras para o 1º trimestre do próximo exercício financeiro.
O que permite que o Excel forneça tanta eficiência no gerenciamento de tempo no processo de suporte à tomada de decisões de gerenciamento? A resposta a essa pergunta também é bastante simples - ao usar o Excel em face de cada um de seus usuários, o gerente de tarefas, o analista de negócios, o testador e o usuário final são combinados ao mesmo tempo, cujas funções nos sistemas ERP são distribuídas não apenas entre pessoas diferentes, mas também com departamentos diferentes. E o mais importante, se os usuários do Excel, mesmo executando funções diferentes, falam o mesmo idioma que é compreensível para cada um, os usuários dos sistemas ERP (no sentido amplo) falam muitos idiomas que exigem "tradutores" talentosos (que são poucos) ou formalização rigorosa do processo de comunicação, que muitas vezes é adiado indefinidamente.
Portanto, apesar de todas as limitações do Excel na velocidade do processamento de dados, além da presença inevitável de processos implementados parcialmente no modo manual, o mais difícil dos quais é o processo de orçamento, o Excel sempre permanecerá fora da concorrência em comparação com os sistemas ERP.
Tendo identificado a principal vantagem do Excel relacionada à eficácia de seu tratamento de um recurso temporário, consideraremos seus pontos fracos que devem ser implementados em software alternativo para competir com ele.
Uma fraqueza óbvia do Excel ao trabalhar com modelos grandes e complexos é o modelo de armazenamento de dados de arquivo, que:
Requer interação em bancos de dados relacionais externos para processar grandes quantidades de dados para vários atributos;
É repleto de erros lógicos sutis ao alterar um modelo de dados que consiste em vários arquivos ou planilhas relacionados.
Esses problemas podem ser facilmente resolvidos através do desenvolvimento de módulos de software na linguagem de programação interna ou da integração com soluções de software externas. Mas, nesse caso, o Excel perde sua vantagem estratégica - a presença de um usuário combinando ao mesmo tempo as funções de um gerente de tarefas, analista de negócios, testador e usuário final. Em vez disso, pelo menos duas pessoas aparecem - um economista e um programador, falando seus próprios idiomas, cada um com um superior. Como resultado, qualquer tarefa simples geralmente resolvida na cabeça de uma pessoa se transforma em um longo procedimento burocrático.
Portanto, qualquer sistema de software alternativo pode competir com o Excel somente se puder expandir a lista de tarefas que o Excel pode resolver com fórmulas padrão sem programação adicional.
Nos sistemas recentes de inteligência de negócios, apesar das declarações barulhentas, além de um sistema de relatório mais flexível, baseado no modelo de dados da tabela dinâmica do Excel, geralmente não há nada (a tabela dinâmica do Excel simplifica a seleção de uma única solicitação fixa uma tabela com uma varredura de atributos e agregação de dados em vários campos na horizontal e na vertical). O elemento central de qualquer processo orçamentário é o cálculo dos custos de produção e a formação de resultados financeiros para os quais o modelo de dados das tabelas de resumo praticamente não é aplicável.
Atualmente, a única alternativa ao Excel é a plataforma de modelagem de código aberto JetCalc para sistemas econômicos complexos, cujo código fonte está disponível no GitHub . Ele também contém links para documentação, uma versão demo funcional e outros recursos adicionais. O sistema é distribuído sob a licença do MIT e está aberto a todas as ofertas para participar de seu desenvolvimento para todas as partes interessadas.
Antes de passar para as especificidades da arquitetura JetCalc, deve-se dizer que o JetCalc é uma versão gratuita do sistema implementado no ecossistema JavaScript, com base na arquitetura de sistema fechado, implementada nas tecnologias Microsoft, que desde 2012 fornece orçamento, análise econômica e consolidação de relatórios gerenciais e financeiros , inclusive para a preparação de demonstrações financeiras consolidadas de acordo com as IFRS, em uma grande holding metalúrgica com um volume de negócios anual de mais de US $ 10 bilhões.
No JetCalc, como no Excel, todos os cálculos são baseados em fórmulas desenvolvidas e testadas pelo usuário final. Ao mesmo tempo, o sistema de cálculo JetCalc possui várias propriedades exclusivas que facilitam a modificação dos modelos de dados usados e a geração de relatórios consolidados complexos em tempo real.
Um recurso importante do modelo de dados JetCalc é o caminho para criar fórmulas de células. Se no Excel as fórmulas são gravadas para cada célula, no JetCalc as fórmulas são gravadas para uma linha ou coluna e, no nível da célula, as fórmulas são geradas pelo sistema dinamicamente no contexto de um documento aberto. Essa abordagem reduz drasticamente o tempo para alterar fórmulas e elimina completamente a aparência de erros aritméticos. Além disso, colunas individuais são combinadas em títulos (maiúsculas) para certos tipos de documentos, o que permite alterar as fórmulas das colunas para vários documentos em um único local.
Outro recurso do JetCalc é a presença de um mecanismo especializado para somar valores de células nas linhas do documento, que se baseia em uma árvore de linhas, na qual a soma é realizada nas linhas filhas de cada linha pai. Portanto, em vez de listar as células no Excel, que devem ser incluídas como argumentos na fórmula SUM (A1; A2; ...), no JetCalc, basta marcar uma marca de seleção na linha de soma desejada na interface da web. Além disso, qualquer linha pode ser marcada como não incluída na quantia, bem como somada com o sinal oposto (isto é, subtraído). Ao adicionar novas linhas, diferente do Excel, o JetCalc não precisa alterar nenhuma configuração, pois no contexto de uma célula de documento aberta as fórmulas são reformadas automaticamente.
O terceiro recurso importante do JetCalc é a coleta de informações no contexto de objetos de contabilidade organizados na forma de uma árvore com vários atributos que permitem realizar cálculos complexos sobre agregação e filtragem, escrevendo fórmulas simples e compreensíveis.
Por exemplo, para a divisão “Empresas Metalúrgicas” (código MET), que inclui a Fábrica Metalúrgica Ural JSC (código 201) e a Fábrica de Laminação Ural JSC (código 202), para calcular o total da divisão, a fórmula de qualquer célula principal no contexto do documento será convertido para:
$@#201? + $@#202?
A mesma expressão pode ser representada como uma fórmula com uma função de consolidação, que será expandida automaticamente quando uma ou mais empresas forem adicionadas ao grupo MET:
$@<<<(D:MET)?
O núcleo do sistema JetCalc também possui um mecanismo interno para bombear valores automaticamente na forma de entrada de dados, o que pode reduzir significativamente a carga no sistema de cálculo, salvando uma vez que os valores calculados pela fórmula no banco de dados sejam valores primários no banco de dados. Posteriormente, esses valores armazenados podem ser reutilizados pelo sistema de cálculo na formação de vários cálculos analíticos. As mesmas fórmulas são usadas para configurar valores bombeados automaticamente e para definir valores calculados dinamicamente.
A escolha entre usar fórmulas dinâmicas e valores de bombeamento automático é completamente determinada pelo usuário que configura o modelo de domínio e consiste em escolher entre facilidade de administração e velocidade de cálculo dos indicadores de documentos:
fórmulas dinâmicas são suficientes para configurar uma vez, mas à medida que o modelo se torna mais complexo e a quantidade de dados aumenta, a velocidade dos relatórios diminui gradualmente;
as fórmulas de bombeamento automático permitem substituir os valores calculados pelos primários, o que aumenta drasticamente o desempenho do sistema de relatórios, mas requer mais disciplina ao modificar a estrutura do documento, pois os valores bombeados anteriormente podem exigir o reabastecimento após fazer alterações nas configurações do documento.
Mais informações sobre o sistema de liquidação JetCalc podem ser encontradas em .
Outro mecanismo interessante para aumentar a produtividade dos economistas no JetCalc é o mecanismo de ponto de verificação, que é uma classe especial de fórmulas também configuráveis pelo usuário, que deve produzir um valor zero quando os dados primários forem inseridos corretamente. Se houver valores diferentes de zero nos pontos de controle, o documento não poderá ser impedido de inserir dados, o que significa que não pode ser oficialmente considerado oportunamente enviado a uma organização superior. Essa abordagem permite paralelizar o trabalho de identificação de erros lógicos em centenas de funcionários de organizações relatoras, em vez de funcionários únicos de uma organização superior.
E, é claro, o JetCalc implementa recursos padrão, como impressão de documentos ou salvamento de relatórios em arquivos PDF, saída de documentos individuais como gráficos, criação de documentação de assunto para cada documento e muito mais.
Das coisas promissoras que se mostraram práticas na prática, pode-se destacar a possibilidade de distribuir modelos criados uma vez para um número ilimitado de assinantes via GitHub. Esse recurso baseia-se no armazenamento dos modelos de domínio criados no banco de dados MongoDB e nos valores no PostgreSQL. Portanto, o modelo de domínio é um arquivo JSON que é fácil de carregar no banco de dados MongoDB de qualquer origem.
Concluindo, gostaria de dizer que atualmente o projeto está sendo desenvolvido como parte da iniciativa pessoal de seus participantes e está pronto para uso em condições reais de "combate" em cerca de 90%. Mas esses 10% restantes exigem um refinamento cuidadoso do sistema para um nível comercial em todas as áreas - desde testes de scripts de implantação, finalização da funcionalidade do sistema de liquidação, aprimorando a ergonomia da interface da web até a redação de documentação, criação de modelos de demonstração, desenvolvimento de formatos para salvar modelos e protocolos de troca de dados com dados externos. sistemas e muito mais.
Portanto, todos os interessados no desenvolvimento do projeto são convidados a participar da equipe de desenvolvimento, hoje composta por duas pessoas, trabalhando nas quais será possível encontrar pessoas afins, adquirir conhecimento exclusivo sobre um produto que não tem análogos no mercado e realizar suas idéias mais fantásticas.