# Guia de migração

Este apêndice serve para ajudar utilizadores de outros programas de gestão financeira na sua migração para o &app;. Abordamos as diferenças conceptuais entre a disposição das contas do &app; versus outros programas.

## Contas vs. Categorias

Se está familiarizado com outros programas de finanças pessoais, já está habituado a controlar as suas receitas e despesas como categorias. Dado que o &app; é um sistema de dupla entrada (veja a secção basics-accounting1), as receitas e despesas são controladas em contas. O conceito básico é o mesmo, mas a estrutura de contas permite maior consistência com práticas empresariais comuns. Assim, se é um utilizador empresarial assim como privado, o &app; torna fácil o controlo dos seus negócios e das sua contas privadas.

Contas de receita e despesa dão-lhe a mesma informação que obteria com categorias, mas também lhe dão mais flexibilidade na introdução de transações. No &app;, tem a opção de inserir transações diretamente nas contas de receita e despesa através dos seus próprios diários. Outros programas que usam categorias, não oferecem esta opção, porque não existem diários de conta para uma categoria.

No &app; também tem a opção de tratar contas de receita e despesa tal como trataria as categorias, se se sentir mais confortável com esse método. No Quicken e programas semelhantes, as transações requerem uma conta e uma categoria. No &app;, use um nome de conta de receita ou despesa onde normalmente usaria uma categoria noutros programas e o resultado deve ser o mesmo. Discute-se a introdução de transações com maior detalhe no capítulo chapter_txns .

## Organização de ficheiros QIF (em discussão)

## Problemas comuns de duplicação (em discussão)

## Verificar dados QIF (em discussão)

## Converter ficheiro XML do &app;

O ficheiro de dados XML do &app; pode ser transformado em praticamente qualquer formato (por exemplo, QIF, CSV...) com bastante facilidade se se estiver familiarizado com XSLT. O ficheiro de dados do &app; é um XML bem formado e pode ser lido por um processador XSLT com uma folha de estilos associada. Isto permite transformar o ficheiro em qualquer formato que possa ser desenhado, dispondo da folha de estilo apropriada.

Têm de se seguir alguns passos. Escrever uma folha de estilos é tarefa para outra altura, mas se conseguir obter uma, eis o que tem de fazer:

1. Copie o ficheiro XML do &app; para um ficheiro de trabalho.

   Se o ficheiro foi modificado pela última vez com uma versão do &app; anterior à 2.0, antes de continuar para o próximo passo tem de modificar a etiqueta <gnc-v2> do ficheiro de trabalho para algo como isto:

       <gnc-v2 xmlns:cd="http://www.gnucash.org/XML/cd"
               xmlns:book="http://www.gnucash.org/XML/book"
               xmlns:gnc="http://www.gnucash.org/XML/gnc"
               xmlns:cmdty="http://www.gnucash.org/XML/cmdty"
               xmlns:trn="http://www.gnucash.org/XML/trn"
               xmlns:split="http://www.gnucash.org/XML/split"
               xmlns:act="http://www.gnucash.org/XML/act"
               xmlns:price="http://www.gnucash.org/XML/price"
               xmlns:ts="http://www.gnucash.org/XML/ts"
               xmlns:slot="http://www.gnucash.org/XML/kvpslot"
               xmlns:cust="http://www.gnucash.org/XML/cust"
               xmlns:entry="http://www.gnucash.org/XML/entry"
               xmlns:lot="http://www.gnucash.org/XML/lot"
               xmlns:invoice="http://www.gnucash.org/XML/invoice"
               xmlns:owner="http://www.gnucash.org/XML/owner"
               xmlns:job="http://www.gnucash.org/XML/job"
               xmlns:billterm="http://www.gnucash.org/XML/billterm"
               xmlns:bt-days="http://www.gnucash.org/XML/bt-days"
               xmlns:sx="http://www.gnucash.org/XML/sx"
               xmlns:fs="http://www.gnucash.org/XML/fs"
               xmlns:addr="http://www.gnucash.org/XML/custaddr">

   Pode pôr praticamente tudo o que quiser dentro dos sinais de igual, mas um URL é o que costuma ser usado.

2. Crie uma folha de estilo XSLT contendo a transformação desejada, ou obtenha uma já escrita (tanto quanto sabemos, não há nenhuma, mas estamos a trabalhar numa para CSV).

3. Instale um processador XSLT tal como o Saxon ou o Xalan-J. Qualquer processador normalizado serve, realmente...

4. Passe o ficheiro de trabalho e a folha de estilo pelo processador, seguindo as suas instruções específicas.

5. Terá agora um ficheiro no formato de saída desejado. Uma pessoa empreendedora pode mesmo chegar a escrever uma folha de estilo para transformar o ficheiro de dados do &app; numa folha de cálculo do OpenOffice (ou vice-versa, já agora). Coisas como QIF deviam dar um bocadinho menos de trabalho.

Os benefícios são não ter de escrever um módulo Scheme ou uma nova rotina em C para fazer esta transformação. Qualquer pessoa que saiba ou possa aprender XML e XSLT pode realizar esta tarefa. Não é muito mais difícil do que escrever uma página web...

De qualquer forma, isto é só para deixar esta informação gravada em qualquer lado. O processo funciona em ficheiros de dados &vers-stable; e também deve funcionar em versões anteriores.