Conforme apresentado nas funções de manutenção do InternalId, o código desta vem por uma String com os valores de chave primária do aplicativo externo concatenados. Após separá-los, é necessário verificar se os campos trafegados na mensagem são compatíveis com os campos do Helper. Para isso, criaram-se as funções de verificação de compatibilidade.
Verifica se o valor “value” é compatível com um INTEGER com “size” posições.
Parâmetros:
Parâmetro | Tipo | Descrição |
---|---|---|
size | Integer | A quantidade máxima de casas de números inteiros que o valor deverá ter. |
value | String | O valor a ser testado |
Retorno:
Valor | Descrição |
---|---|
TRUE | Quando o valor é suportado por uma variável INTEIRA e possui o tamanho igual ou inferior à variável “size”. |
FALSE | Não é um valor do tipo INTEIRO ou possui um tamanho superior à variável “size”. |
Exemplo de utilização em Progress:
/* "# Verifica se o número '12345' é compativel com o campo de espaço 5." */IF oMapper:isIntegerCompatible(5,"12345") = TRUE THEN DO: MESSAGE "ok!" VIEW-AS ALERT-BOX. END. /* "# Verifica se o número '123456' é compativel com o campo de espaço 5." */ IF oMapper:isIntegerCompatible(5,"123456") = FALSE THEN DO: MESSAGE "tamanho não compatível." VIEW-AS ALERT-BOX. END. /* "# Verifica se o número '123' é compativel com o campo de espaço 5." */ IF oMapper:isIntegerCompatible(5,"123") = TRUE THEN DO: MESSAGE "tamanho compatível." VIEW-AS ALERT-BOX. END. /* "# Verifica se a String que não possui somente números pode ser aceita por um Integer." */ IF oMapper:isIntegerCompatible(5,"12AB") = FALSE THEN DO: MESSAGE "possui caractere." VIEW-AS ALERT-BOX. END. /* "# Verifica se a String que não possui somente números pode ser aceita por um Integer." */ IF oMapper:isIntegerCompatible(5,"12AB56") = FALSE THEN DO: MESSAGE "possui caractere no meio e tamanho não compatível." VIEW-AS ALERT-BOX. END. /* "# Verifica se o número null é compativel com o campo de espaço 5." */ IF oMapper:isIntegerCompatible(5,?) = FALSE THEN DO: MESSAGE "invalida se o valor for NULO." VIEW-AS ALERT-BOX. END. /* "# Verifica se o número '' é compativel com o campo de espaço 5." */ IF oMapper:isIntegerCompatible(5,"") = FALSE THEN DO: MESSAGE "invalida se o valor for branco." VIEW-AS ALERT-BOX. END. |
Exemplo de utilização em Java:
if(internalIdMapperImpl.isIntegerCompatible(5,"12345") == true) { System.out.println("ok!"); } if(internalIdMapperImpl.isIntegerCompatible(5,"123456") == false) { System.out.println("tamanho não compatível."); } if(internalIdMapperImpl.isIntegerCompatible(5,"123") == true) { System.out.println("tamanho compatível."); } if(internalIdMapperImpl.isIntegerCompatible(5,"123AB") == false) { System.out.println("possui caractere."); } if(internalIdMapperImpl.isIntegerCompatible(5,"12AB56") == false) { System.out.println("possui caractere no meio e tamanho não compatível"); } if(internalIdMapperImpl.isIntegerCompatible(5,null) == false) { System.out.println("invalida se o valor for NULO."); } if(internalIdMapperImpl.isIntegerCompatible(5,"") == false) { System.out.println("invalida se o valor for branco."); } |
Verifica se o valor “value” é compatível com um DECIMAL de tamanho “size”, sendo “fraction” a quantidade de casas decimais.
Parâmetros:
Parâmetro | Tipo | Descrição |
---|---|---|
size | Integer | Quantidade máxima de casas de números inteiros e decimais que o valor deverá ter. |
fraction | Integer | Quantidade máxima de números decimais que o valor deverá ter. |
value | String | O valor a ser testado. |
Retorno:
Valor | Descrição |
---|---|
TRUE | Quando o valor é suportado por uma variável DECIMAL, possui o tamanho igual ou inferior à variável “size” e possui a quantidade de casas decimais igual ou inferior à variável “fraction”. |
FALSE | Não é um valor do tipo DECIMAL, possui um tamanho superior à variável “size” ou a quantidade de casas decimais superior à variável “fraction”. |
Exemplo de utilização em Progress:
/* "# Verifica se o Decimal '123456.1234' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"123456.1234") = TRUE THEN DO: MESSAGE "ok!" VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '1234567.1234' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"1234567.1234") = FALSE THEN DO: MESSAGE "tamanho dos números naturais ultrapassou o valor máximo permitido." VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '123456.12345' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"123456.12345") = FALSE THEN DO: MESSAGE "tamanho dos números decimais ultrapassou o valor máximo permitido." VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '123.123' é compativel com o campo de espaço 10,4. " */ IF oMapper:isDecimalCompatible(10,4,"123.123") = TRUE THEN DO: MESSAGE "ok!" VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '12AB.123' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"12AB.123") = FALSE THEN DO: MESSAGE "possui caracter nas casas naturais" VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '123.1AB' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"123.1AB") = FALSE THEN DO: MESSAGE "possui caracter nas casas decimais" VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '.123' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,".123") = FALSE THEN DO: MESSAGE "obrigatório o uso de casas naturais. O valor correto é 0.1234" VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '1234' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"1234") = TRUE THEN DO: MESSAGE "ok!" VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '1234.' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"1234.") = TRUE THEN DO: MESSAGE "não necessita de casas decimais para passar" VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '12.234.456' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"12.234.456") = FALSE THEN DO: MESSAGE "existem dois separadores para números decimais." VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal NULL é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,?) = FALSE THEN DO: MESSAGE "invalida se o valor for NULO." VIEW-AS ALERT-BOX. END. /* "# Verifica se o Decimal '' é compativel com o campo de espaço 10,4." */ IF oMapper:isDecimalCompatible(10,4,"") = FALSE THEN DO: MESSAGE "invalida se o valor for branco." VIEW-AS ALERT-BOX. END. |
Exemplo de utilização em Java:
if(internalIdMapperImpl.isDecimalCompatible(10,4,"123456.1234") == true) { System.out.println("ok!"); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"1234567.1234") == false) { System.out.println("tamanho dos números naturais ultrapassou o valor máximo permitido."); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"123456.12345") == false) { System.out.println("tamanho dos números decimais ultrapassou o valor máximo permitido."); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"123.123") == true) { System.out.println("ok!"); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"123AB.123") == false) { System.out.println("possui caracter nas casas naturais"); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"123.1AB") == false) { System.out.println("possui caracter nas casas decimais"); } if(internalIdMapperImpl.isDecimalCompatible(10,4,".1234") == false) { System.out.println("obrigatório o uso de casas naturais. O valor correto é 0.1234"); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"1234") == true) { System.out.println("ok!"); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"1234.") == true) { System.out.println("não necessita de casas decimais para passar"); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"123.123.123") == false) { System.out.println("existem dois separadores para números decimais."); } if(internalIdMapperImpl.isDecimalCompatible(10,4,null) == false) { System.out.println("invalida se o valor for NULO."); } if(internalIdMapperImpl.isDecimalCompatible(10,4,"") == false) { System.out.println("invalida se o valor for branco."); } |
Verifica se o valor ”value” é compatível com uma String de tamanho “size”.
Parâmetros:
Parâmetro | Tipo | Descrição |
---|---|---|
size | Integer | Tamanho máximo que a string valor deverá ter. |
value | String | Valor a ser testado |
Retorno:
Valor | Descrição |
---|---|
TRUE | Quando a string “value” possuir valor menor ou igual à “size”. |
FALSE | Se a string “value” possuir um valor maior que “size” |
Exemplo de utilização em Progress:
/* "# Verifica se a String 'TESTE TESTE' é compativel com o campo de espaço 10.",false, */ IF oMapper:isCharCompatible(10,"TESTE TESTE") = FALSE THEN DO: MESSAGE "tamanho da String maior que o valor suportado." VIEW-AS ALERT-BOX. END. /* "# Verifica se a String 'TESTE TESTE' é compativel com o campo de espaço 11.",true, */ IF oMapper:isCharCompatible(11,"TESTE TESTE") = TRUE THEN DO: MESSAGE "ok!" VIEW-AS ALERT-BOX. END. /* "# Verifica se a Integer '12345' é compativel com o campo de espaço 5.",true, */ IF oMapper:isCharCompatible(5,"12345") = TRUE THEN DO: MESSAGE "ok!" VIEW-AS ALERT-BOX. END. /* "# Verifica se a Integer '123456' é compativel com o campo de espaço 5.",false, */ IF oMapper:isCharCompatible(5,"123456") = FALSE THEN DO: MESSAGE "tamanho da String maior que o valor suportado." VIEW-AS ALERT-BOX. END. /* "# Verifica se a Integer NULL é compativel com o campo de espaço 5.",true, */ IF oMapper:isCharCompatible(5,?) = TRUE THEN DO: MESSAGE "Suporta valor nulo." VIEW-AS ALERT-BOX. END. /* "# Verifica se a Integer '' é compativel com o campo de espaço 5.",true, */ IF oMapper:isCharCompatible(5,"") = TRUE THEN DO: MESSAGE "Suporta valor branco." VIEW-AS ALERT-BOX. END. |
Exemplo de utilização em Java:
if(internalIdMapperImpl.isCharCompatible(11,"TESTE TESTE") == true) { System.out.println("ok!"); } if(internalIdMapperImpl.isCharCompatible(10,"TESTE TESTE") == false) { System.out.println("tamanho da String maior que o valor suportado."); } if(internalIdMapperImpl.isCharCompatible(5,"12345") == true) { System.out.println("ok!"); } if(internalIdMapperImpl.isCharCompatible(5,"123456") == false) { System.out.println("tamanho da String maior que o valor suportado."); } if(internalIdMapperImpl.isCharCompatible(5,null) == true) { System.out.println("Suporta valor nulo."); } if(internalIdMapperImpl.isCharCompatible(5,"") == true) { System.out.println("Suporta valor branco."); } |