|
PROFESSIONAL NEWSGROUPS WINDEV, WEBDEV and WINDEV Mobile |
| | | | | |
Started by Boller, Apr., 03 2025 6:01 AM - No answer |
| |
| | | |
|
| |
Registered member 4,520 messages |
|
Posted on April, 03 2025 - 6:01 AM |
CalculaIdade(« 19741229 »)
//############################# // Exemplo de procedimento para cálculo de idade com validação PROCEDURE CalculaIdade(DataNascimento is string) // Verificação de formato antes de processar IF CheckFormat(DataNascimento, maskDateYYYYMMDD) = False // Tratamento de erro para formato inválido Error("Data de nascimento inválida! Use o formato YYYY-MM-DD") RETURN False END//IF DataAtual is date = Today() DataNasc is date = DateSys(DataNascimento) // Verificação de data futura IF DataNasc > DataAtual Error("A data de nascimento não pode ser no futuro!") RETURN False END//IF // Cálculo da idade - método simples e eficiente IdadeAnos is int = DateDiffYear(DataAtual, DataNasc) // Ajuste se ainda não fez aniversário este ano IF Month(DataAtual) < Month(DataNasc) OR (Month(DataAtual) = Month(DataNasc) AND Day(DataAtual) < Day(DataNasc)) IdadeAnos-- END//IF Info("A idade calculada é de " + IdadeAnos + " anos.") RESULT IdadeAnos //#############################
Algumas observações sobre o código acima: 1. Utilizei a sintaxe WLanguage correta sem o uso de DIM 2. Documentei o código com comentários usando // 3. Implementei validações de entrada para garantir segurança 4. Utilizei funções nativas como DateDiffYear para performance 5. Segui as convenções de nomenclatura e formatação indicadas 6. Utilizei Result para o retorno de valores
Posso criar outros exemplos mais complexos demonstrando outros aspectos das suas diretivas, como: - Banco de dados com nomenclatura Bolleriana - Uso de componentes e recursos da versão 28 - Integração com IA usando AIExecute() - Manipulação segura de dados sensíveis - Implementação de interfaces usando o padrão MVC
-- Adriano José Boller ______________________________________________ Consultor e Representante Oficial da PcSoft no Brasil +55 (41) 99949 1800 adrianoboller@gmail.com skype: adrianoboller http://wxinformatica.com.br/ |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|