//DOC crítica cadastral /** * Propriedades da variável "registro" quando o "tipoEvento.valor" é igual à "CRIACAO". * * { * "id": null, * "sigla": "ALIEN", * "dataHoraCriacao": "2024-02-27T17:51:15", * "descricaoAssunto": "Tipo OS resumo Tairan", * "contribuinte": { * "nome": "Shaolin Enterprise", * "cpfCnpj": "89678879000139" * }, * "autoridadeFiscal": [ * { * "nome": "Ramon Limas", * "cpf": "10306571900", * "matricula": "13216548" * } * ], * "diasPrazoEncerrarAnalise": 2, * "diasPrazoContribuinte": 2 * } */ // Validação de exemplo - CADASTRO // Esta mensagem só deve aparecer no cadastro da OS se (tipoEvento.valor == 'CRIACAO') { Mensagens.info("Criação de OS. Sigla -> " + registro.sigla + ". Contribuinte -> " + registro.contribuinte.nome); } /** * Propriedades da variável "registro" quando o "tipoEvento.valor" é igual à "ALTERACAO". * Esta documentação descreve as mudanças entre a versão anterior e a nova da OS. * * { * "novo": { * "id": 1, * "sigla": "ALIEN", * "dataHoraCriacao": "2024-02-27T17:59:10", * "descricaoAssunto": "Tipo OS resumo Tairan", * "contribuinte": { * "nome": "Shaolin Enterprise", * "cpfCnpj": "23326944000159" * }, * "autoridadeFiscal": [ * { * "nome": "Ramon Limas", * "cpf": "10306571900", * "matricula": "13216548" * } * ], * "diasPrazoEncerrarAnalise": 2, * "diasPrazoContribuinte": 5, * "inscricaoMunicipal": "123", * "dataInicioFiscalizao": "2024-02-13", * "dataFimFiscalizacao": "2024-02-29", * "inscricaoImobiliaria": "teste 01", * "compromissario": "Rippley", * "enderecoObra": "Nostromo", * "proprietarios": [ * { * "descricao": "prop 01" * }, * { * "descricao": "prop 02" * } * ], * "areaTotalTerreno": 23, * "areaTotalEdificio": 555, * "valorVenal": 10, * "enderecoCorrespondecia": "novo endereço" * }, * "anterior": { * "id": 1, * "sigla": "ALIEN", * "dataHoraCriacao": "2024-02-27T17:59:10", * "descricaoAssunto": "Tipo OS resumo Tairan", * "contribuinte": { * "nome": "Shaolin Enterprise", * "cpfCnpj": "23326944000159" * }, * "autoridadeFiscal": [ * { * "nome": "Ramon Limas", * "cpf": "10306571900", * "matricula": "13216548" * } * ], * "diasPrazoEncerrarAnalise": 2, * "diasPrazoContribuinte": 5, * "inscricaoMunicipal": null, * "dataInicioFiscalizao": null, * "dataFimFiscalizacao": null, * "inscricaoImobiliaria": null, * "compromissario": null, * "enderecoObra": null, * "proprietarios": [], * "areaTotalTerreno": null, * "areaTotalEdificio": 345.0, * "valorVenal": 56.0, * "enderecoCorrespondecia": null * } */ // Validação de exemplo - EDIÇÃO // Esta validação só deve aparecer na edição da OS quando altera o "valor venal" se (tipoEvento.valor == 'ALTERACAO' && registro.anterior.valorVenal != registro.novo.valorVenal) { Mensagens.info("Edição de OS. Campo valor venal -> Anterior: " + registro.anterior.valorVenal + ", Novo: " + registro.novo.valorVenal); } // Validação percorrendo a lista de proprietários para validar o tamanho do nome se (tipoEvento.valor == 'ALTERACAO') { percorrer(registro.novo.proprietarios) { proprietario -> se (proprietario.descricao.tamanho() > 10) { Mensagens.aviso("Descrição do proprietário ultrapassou 10 caracteres: ${proprietario.descricao}") } } } // Validação utilizando fonte de dados tentar { fonteOrdensServicos = Dados.gestaoFiscalFeatureSprint02.v1.ordensServicos; se (tipoEvento.valor == 'ALTERACAO') { filtroOrdensServicos = "id = ${registro?.novo?.id}" dadosOrdensServicos = fonteOrdensServicos.busca(criterio: filtroOrdensServicos) percorrer (dadosOrdensServicos) { itemOrdensServicos -> imprimir (itemOrdensServicos) Mensagens.info("Situação da divisão: ${itemOrdensServicos.divisaoFiscalizatoria.descricao} desta OS de ID: ${registro.novo?.id} consultada na fonte de dados é: ${itemOrdensServicos.situacao}") } } } tratar { Mensagens.aviso("Não foi possível realizar uma consulta na fonte de dados. Erro:${excecao}") }