Skip to main content

AML Dashboard

Knowledge Checkpoint

A grasp of these concepts will help you understand this documentation better:

info

Please note that dashboard files have the extension .page.aml. Its full name is dashboard_name.page.aml.

Dashboard Components

There are five components that form a dashboard:

  • Metadata
  • Collection of blocks
  • Block interactions
  • Settings
  • Views

Parameter Definition

Tips: Hover over any text to see supported parameters in the tooltip.

hover-to-see-supported-paramters

Parameter nameDescription
dashboardSpecify the dashboard's unique name in the workspace
titleSpecify the dashboard’s display name in the Reporting layer
descriptionSpecify dashboard description
blockDefine blocks in the dashboard
interactionsDefine how blocks interact with each other in the dashboard
viewDefine dashboard layout - how blocks are positioned in the dashboard
settingsDefine dashboard settings

Dashboard syntax example

my_dashboard.page.aml
Dashboard myDashboard {

// metadata
title: 'My Dashboard'
description: ''''''

// collection of blocks
block t1: TextBlock {
content: @md # Hello World!;;
}
block v1: VizBlock {
label: 'GMV Over Time'
viz: CombinationChart {
dataset: demo_ecommerce
...
settings {
row_limit: 5000
legend_label: 'top'
}
}
}
block v2: VizBlock {
label: 'Order Details'
viz: DataTable {
dataset: demo_ecommerce
fields: [
...
]
settings {
row_limit: 5000
}
}
}
block f1: FilterBlock {
label: 'Order Created At'
type: 'field'
source: FieldFilterSource {
dataset: demo_ecommerce
field: ref('order_master', 'order_created_at')
}
default {
operator: 'matches'
value: 'last 2 years'
}
}
block d1: DateDrillBlock {
label: 'Drill by'
default: 'month'
}

// interactions
interactions: [
DateDrillInteraction {
from: 'd1'
to: [
CustomMapping {
block: 'v1'
field: ref('order_master', 'order_created_at')
}
]
}
]

// settings
settings {
timezone: 'America/Los_Angeles'
cache_duration: 360
}

// view
view: CanvasLayout {
label: 'View 1'
width: 1080
height: 620
block t1 {
position: pos(30, 30, 250, 60)
}
block v1 {
position: pos(300, 30, 760, 250)
}
block v2 {
position: pos(300, 300, 760, 300)
}
block f1 {
position: pos(30, 190, 250, 80)
}
block d1 {
position: pos(30, 100, 250, 80)
}
}
}

Output:

aml-dashboard


Let us know what you think about this document :)