Sistema de administração de contratos

Como configurar um modelo de documento para contrato?

CONTRATO.FAQ-81333
As interfaces CAD_CONTRATOS_SERVICOS e CAD_CONTRATOS_SERVICOS_02 dispõe da ação [b:Gerar contrato]. O modelo de documento é gerado através da interface Cadastro de modelos de documentos e definida no tipo de contrato (interface Tipos de contratos).

Caso os modelos precisem de informações que o contrato dispõe, pode-se utilizar macros de substituição.

Em documentos ODT (LibreOffice Writer):
[img:Captura de tela de 2017-11-22 14-38-48]
[img:Captura de tela de 2017-11-23 08-47-44]

As propriedades/macros que podem ser utilizadas são:

PropriedadeMacroDescrição
Contrato${contrato}Utilizado para adquirir qualquer campo e função dos contratos de serviços.
ContratanteBairro${contrato.findContratante().findEnderecoPrincipal().valueOfBairro()}Bairro do contratante.
ContratanteCNPJ${contrato.findContratante().getDocumento("CNPJ")}CNPJ do contratante.
ContratanteCPF${contrato.findContratante().getDocumento("CPF")}CPF do contratante.
ContratanteCidadeUF${contrato.findContratante().findEnderecoPrincipal().findCidade().valueOfCidade()}Cidade e estado do contratante.
ContratanteEndereco${contrato.findContratante().findEnderecoPrincipal().valueOfEndereco()}Endereço do contratante.
ContratanteEnderecoNumero${contrato.findContratante().findEnderecoPrincipal().valueOfNumero()}Número do endereço do contratante.
ContratanteIE${contrato.findContratante().getDocumento("IE")}Inscrição estadual do contratante.
ContratanteNomeCompleto${contratante_nome_completo}Nome completo do contratante.
ContratoBairro${contrato.findEnderecoContrato().valueOfBairro()}Indica qual bairro foi informado no contrato.
ContratoCidadeUF${contrato.findEnderecoContrato().findCidade().valueOfCidade}Indica qual cidade e estado foi informada no contrato.
ContratoDataAprovacao${contrato_data_aprovacao}Data de aprovação do contrato.
ContratoEndereco${contrato.findEnderecoContrato().valueOfEndereco()}Indica qual endereço foi informado no contrato.
ContratoEnderecoEntrega${contrato_entrega_endereco}Indica qual endereço foi informado no contrato (é o mesmo do acima por questão de legado).
ContratoEnderecoNumero${contrato.findEnderecoContrato().valueOfNumero()}Indica qual número para o endereço foi informado no contrato.
ContratoCidadeEntrega${contrato_entrega_cidade}Indica qual cidade foi informado no contrato.
ContratoFrequencia${contrato_frequencia}Frequência contratada.
ContratoTecnico${contrato_tecnico}Técnico responsável informado no contrato.
ContratoTipoContratocontrato_tipo_contratoTipo de contrato informado no contrato.
ContratoTipoServico${contrato_tipo_servico}Tipo de serviço informado no contrato.
ContratoValor${contrato_valor}Valor total do contrato.
ContratoVendedor${contrato_vendedor}Vendedor informado no contrato.
ContratoVigencia${contrato.getVigencia().toText()}Vigência informada no contrato (P.ex: 3)
ContratoVigenciaExtenso${nspt.toString(Long.parseLong(contrato.getVigencia().toText()))}Vigência informada para o contrato, em extenso (P.ex: três).
DataGeracao${data_geracao}Data de geração do documento para o contrato no formato "DIA de MES de ANO".
EstabelecimentoBairro${contrato.findEstabelecimento().findEstabelecimento().findEnderecoPrincipal().valueOfBairro()}Bairro do estabelecimento informado no contrato.
EstabelecimentoCidade${cidade_estabelecimento}Cidade do estabelecimento informada no contrato.
EstabelecimentoCidadeUF${contrato.findEstabelecimento().findEstabelecimento().findEnderecoPrincipal().findCidade().valueOfCidade()}Cidade e estado do estabelecimento informado no contrato.
EstabelecimentoEndereco${contrato.findEstabelecimento().findEstabelecimento().findEnderecoPrincipal().valueOfEndereco()}Endereço do estabelecimento informado no contrato.
EstabelecimentoEnderecoNumero${contrato.findEstabelecimento().findEstabelecimento().findEnderecoPrincipal().valueOfNumero()}Número do endereço do estabelecimento informado no contrato.
EstabelecimentoNome${contrato.findEstabelecimento().findEstabelecimento().valueOfNomeCompleto()}Nome do estabelecimento informado no contrato.
EstabelecimentoCNPJ${contrato.findEstabelecimento().findEstabelecimento().getDocumento("CNPJ")}CNPJ do estabelecimento informado no contrato.
Frota${frota}Frota que é vinculada ao contrato (quando aplicável).
InicioFaturamentoExtenso${contrato.getDataInicioFaturamento().toText()}Data de início de faturamento em extenso, no formato "XX/XX/XXXX".
NumContrato${numero}Número do contrato.
Pedido${pedido}Pedido que é vinculado ao contrato (quando aplicável).
ValorExtenso${valor_extenso}Valor total do contrato, por extenso.
lista_veiculos${lista_veiculos}Listagem com os veículos adicionados ao contrato. A lista irá ser em uma linha, com espaçamento suficiente para ser apresentada em forma de tabela. Para isto, a macro deve estar com fonte "Courier 10 Pitch", no tamanho 9 e com recuo depois do texto de 1,70 cm.
ContratanteDoc#if (${contrato.findTipoPessoa().valueOfTipoPessoa().startsWith("F")}) "CPF" #else CNPJ #endApresenta o nome do documento que pessoa utiliza: CPF para contratante pessoa física e CNPJ para contratante pessoa jurídica.

Ou se preferir, pode-se utilizar o modelo abaixo e informar as macros/propriedades que precisar:
http://192.168.1.180:8080/ADS2/file/2017/11/22/44e9875a-d70b-40e7-b681-e3687057d774/modelo%20de%20contrato.docx