Funções dos serviços de relatório do SunSystems

Você pode usar várias funções internas do SunSystems Reporting Services como expressões:

  • Saldo

    Retorna o valor agregado da expressão para todas as linhas que são menores que ou iguais ao valor especificado como o parâmetro da sequência:

    BALANCE(Expression, Sequence, Calculation Type, Scope)
  • OpeningBalance

    Retorna o valor agregado da expressão para todas as linhas que são menores que o valor especificado como o parâmetro da sequência: Geralmente, a sequência é definida para um parâmetro de período. A sintaxe para essa função é:

    OPENINGBALANCE(Expression, Sequence, Calculation Type, Scope)
  • SSLanguageToLocale

    Converte o código de idioma do SunsSystems5 no código de idioma local do usuário. A sintaxe para essa função é:

    SSLANGUAGETOLOCALE(Expression)

    Exemplo:

    SSLANGUAGETOLOCALE("2") = en-GB
  • SSRound

    O método mais comum em que os valores são arredondados, para cima ou para baixo, para o número de casas mais próximo antes ou depois do decimal.

    Nota: Isso não é equivalente ao método de arredondamento do Visual Basic, que arredonda 5 para um número par mais próximo.

    Por exemplo ROUND(0,025) = 0,02, enquanto SSROUND(0,025) = 0,03

    A sintaxe para essa função é:

    SSROUND(numeric_expression, digit, reverse_negatives)

    Onde

    • numeric expression é qualquer expressão numérica
    • digit especifica o número de dígitos para o qual você deseja arredondar o número derivado de uma expressão numérica.

      Ao especificar o número de dígitos:

      • Se o dígito for maior do que 0 (zero), então o número será arredondado para o número de casas decimais especificado.
      • Se o dígito for 0, o número será arredondado para o inteiro mais próximo.
      • Se o dígito for menor do que 0, o número será arredondado para a esquerda da vírgula decimal.

      Você também pode usar um valor de c para dígito, que utiliza o número de decimais da moeda para o campo.

      Para obter mais informações, inclusive exemplos, consulte a seção Número de dígitos do tópico Arredondar campos de número.

    • reverse_negatives é um booleano. Isso afeta somente o arredondamento de números negativos. Quando FALSE, então, o arredondamento para cima afasta-se de zero e o arredondamento para baixo aproxima-se de zero. Quando TRUE, então, o arredondamento para cima de um número negativo aproxima-se de zero e o arredondamento para baixo de um número negativo afasta-se de zero.

      Exemplo:

      SSROUND(2767.345, 2, FALSE) = 2767.35
      SSROUND(2767.345, -2, FALSE) = 2800.00
      Expressões de arredondamento negativo SSRound SSRoundUp SSRoundDown
      (2767,345; -2; FALSE) 2767,35 2767,35 2767,34
      (-2767,345; -2; FALSE) -2767,35 -2767,35 -2767,34
      (2767,344; -2; FALSE) 2767,34 2767,35 2767,34
      (2767,344; -2; FALSE) -2767,34 -2767,35 -2767,34
      (2767,345; -2; TRUE) 2767,35 2767,35 2767,34
      (2767,345; -2; TRUE) -2767,35 -2767,35 -2767,34
      (2767,344; -2; TRUE) 2767,34 2767,35 2767,34
      (2767,344; -2; TRUE) -2767,34 -2767,34 -2767,35
  • SSRoundUp

    Os números são arredondados para cima afastando-se de zero quando reverse_negatives for FALSE, e para um número maior quando reverse_negatives for TRUE. A sintaxe para essa função é:

    SSROUNDUP(numeric_expression, digit, reverse_negatives)

    Exemplo:

    SSROUNDUP(2767.344, 2, FALSE) = 2767.35
  • SSRoundDown

    Os números são arredondados para baixo afastando-se de zero quando reverse_negatives é FALSE, e para um número menor quando reverse_negatives é TRUE. A sintaxe para essa função é:

    SSROUNDUP(numeric_expression, digit, reverse_negatives)

    Exemplo:

    SSROUNDUP(2767.345, 2, FALSE) = 2767.34
  • SSMRound

    Os valores são arredondados para cima ou para baixo para o múltiplo mais próximo da unidade especificada. A sintaxe para essa função é:

    SSMROUND(numeric_expression, multiple_unit, reverse_negatives)

    Onde

    • numeric expression é qualquer expressão numérica
    • multiple_unit é sempre um número positivo.
    • reverse_negatives é um booleano. Quando FALSE, então, qualquer arredondamento para cima ou para baixo afasta-se ou aproxima-se de zero. Quando TRUE, então, o arredondamento para cima resulta um número maior e o arredondamento para baixo resulta um número menor.

    Exemplo:

    SSMROUND(2767.345, 2, FALSE) = 2768
    SSROUND(10, 3, FALSE) = 9 
  • SSMRoundUp

    Os valores são arredondados para cima para o múltiplo mais próximo da unidade especificada.

  • SSMRoundDown

    Os valores são arredondados para baixo para o múltiplo mais próximo da unidade especificada.