Como: |
Linguagens Disponíveis: Reporting, Maintain
A função BAR produz um gráfico de barras horizontais utilizando caracteres repetidos para formar cada barra. Opcionalmente, você pode criar uma escala para clarificar o significado de uma gráfico de barras através da substituição do título da coluna contendo a barra com uma escala.
BAR(barlength, infield, maxvalue, 'char', output)
onde:
Numérico
É o comprimento máximo da barra em caracteres. Se este valor for inferior ou igual a 0, a função não retornará uma barra.
Numérico
É o campo de dados diagramado como um gráfico de barras.
Numérico
É o valor máximo de uma barra. Este valor deve ser maior do que o valor máximo armazenado no infield. Se o infield for maior do que o maxvalue, a função usará maxvalue e retornará uma barra de comprimento máximo.
Alfanumérico
É o caractere repetitivo que cria as barras colocadas entre aspas simples. Se especificar mais de um caractere, somente o primeiro caractere é usado.
Alfanumérico
É o nome do campo que contém o resultado ou o formato do valor de saída posto entre aspas simples. O campo de resultado deve ser grande o suficiente para conter uma barra de comprimento máximo, tal como definido pelo barlength.
BAR cria um gráfico de barras para o campo CURR_SAL e armazena a saída em SAL_BAR. A barra criada pode conter até 30 caracteres e o valor que ela representa pode ser de até 30.000.
TABLE FILE EMPLOYEE
PRINT CURR_SAL AND COMPUTE
SAL_BAR/A30 = BAR(30, CURR_SAL, 30000, '=', SAL_BAR);BY LAST_NAME BY FIRST_NAME
WHERE DEPARTMENT EQ 'PRODUCTION';
END
A saída é:
LAST_NAME FIRST_NAME CURR_SAL SAL_BAR --------- ---------- -------- ------- BANNING JOHN $29,700.00 =========================== IRVING JOAN $26,862.00 ========================== MCKNIGHT ROGER $16,100.00 ================ ROMANS ANTHONY $21,120.00 ===================== SMITH RICHARD $9,500.00 ========== STEVENS ALFRED $11,000.00 ===========
BAR cria um gráfico de barras para o campo CURR_SAL. A solicitação, em seguida, substitui o nome do campo SAL_BAR por uma escala utilizando a frase AS.
Para executar esta solicitação em uma plataforma para a qual a fonte padrão é proporcional, utilize uma fonte não proporcional ou emita SET STYLE=OFF.
SET STYLE=OFF
TABLE FILE EMPLOYEE HEADING "CURRENT SALARIES OF EMPLOYEES IN PRODUCTION DEPARTMENT" "GRAPHED IN THOUSANDS OF DOLLARS" " " PRINT CURR_SAL AS 'CURRENT SALARY' AND COMPUTE SAL_BAR/A30 = BAR(30, CURR_SAL, 30000, '=', SAL_BAR); AS ' 5 10 15 20 25 30,----+----+----+----+----+----+' BY LAST_NAME AS 'LAST NAME' BY FIRST_NAME AS 'FIRST NAME' WHERE DEPARTMENT EQ 'PRODUCTION'; ON TABLE SET PAGE-NUM OFFON TABLE SET STYLE * GRID=OFF, $END
A saída é:
CURRENT SALARIES OF EMPLOYEES IN PRODUCTION DEPARTMENT GRAPHED IN THOUSANDS OF DOLLARS 5 10 15 20 25 30 LAST NAME FIRST NAME CURRENT SALARY ----+----+----+----+----+----+ --------- ---------- -------------- ------------------------------ BANNING JOHN $29,700.00 ============================= IRVING JOAN $26,862.00 =========================== MCKNIGHT ROGER $16,100.00 ================ ROMANS ANTHONY $21,120.00 ===================== SMITH RICHARD $9,500.00 ========== STEVENS ALFRED $11,000.00 ===========
Information Builders |