Permitir que o usuário crie documentos personalizados e inclua nesses documentos os dados existentes no sistema.
Para que o usuário possa emitir documentos personalizados de acordo com sua necessidade, o sistema deve dar a ele a opção de importar modelos de documentos. Isso será feito através de documentos personalizados definidos nas configurações do sistema.
Ao importar um novo modelo de documento, o usuário deve informar a qual módulo ele pertence e um nome único para esse documento. O nome será usado para identificar o documento no momento da sua emissão.
Em cada módulo que suporte a geração de documentos personalizados, o usuário deverá ver somente a lista de documentos pertencentes àquele modulo.
Esses documentos devem ser personalizáveis, tanto na aparência quanto no conteúdo. Por isso serão usados arquivo HTML como modelos. O usuário pode incluir neles dados do sistema inserindo tags predefinidas no texto. Cada tag será substituída pelo valor do respectivo campo no momento de gerar a notificação.
Os arquivos HTML devem ser salvos com a codificação ANSI ou Windows-1252.
Na tela de cadastro de documentos personalizados o usuário terá uma lista com os documentos criados e a opção de importar um novo documento, editar e excluir os documentos existentes.
Ao criar ou editar um documento, o sistema deverá mostrar um campo para definir o nome do documento e a opção de importar o modelo de um arquivo.
Para os documentos já incluídos no sistema, deve ser possível exportar o modelo para um arquivo.
| Campo | Descrição | Tipo | Tabela | Tamanho | Valor padrão |
|---|---|---|---|---|---|
| Código | Código do documento | Compartilhado | TABDOCUMENTOSPERSONALIZADOS | – | nulo |
| Nome | Nome do documento | Compartilhado | TABDOCUMENTOSPERSONALIZADOS | 50 | nulo |
| Módulo | Módulo a que pertence o documento | Compartilhado | TABDOCUMENTOSPERSONALIZADOS | 50 | nulo |
| Documento | Conteúdo do documento | Compartilhado | TABDOCUMENTOSPERSONALIZADOS | máximo suportado pelo banco de dados | nulo |
O conteúdo dos documentos poderá ser personalizado inserindo tags que serão substituídas por dados gerados pelo sistema. Maiúsculas e minúsculas não fazem diferença na definição das tags.
Estas tags tem a forma ${nome da tag} ou ${nome da tag|tipo}. Assim, evita-se conflitos com estilos CSS que são definidos entre chaves.
Tags predefinidas
As tags predefinidas tem conteúdo dinâmico gerado pelo sistema.
As tags predefinidas são:
Tags de dados
Estas tags são definidas em cada módulo e são substituídas pelos campos correspondentes em cada cadastro. Elas tem a forma ${nome do campo}. A documentação específica de cada módulo deve listar as tags permitidas.
Tags personalizadas
Estas tags são definidas pelo usuário e serão substituídas pelo conteúdo que o usuário informar no momento de gerar o documento. Por isso os nomes destas tags não devem conflitar com as tags predefinidas nem com as tags do módulo a que pertence o documento. Elas devem ter, além do nome, o tipo de dado que ela deve conter: “texto”, “numero” ou “data”.
Exemplos:
Município ${Município|texto}
Data: ${Data do documento|data}
Número: ${Número da notificação|numero}
Quando o usuário selecionar um documento que contenha tags personalizadas, o sistema deve mostrar uma tela com campos de edição para cada tag encontrada de acordo com o tipo da tag.
Tags do tipo TEXTO podem ser preenchidas com no máximo 200 caracteres.
Tags do tipo NÚMERO podem ser preenchidas com no máximo 10 caracteres.