Welcome to SAS Viya
Let us help you get started with some demos and hands-on experiences.
{{ bootMsg }}
Let us help you get started with some demos and hands-on experiences.
From data to discovery to deployment, the intelligent automation of SAS Viya supports you through the full analytics life cycle.
For increased security, close your browser.
{{ authTimeoutText }}
{{ splashSparkles }}
| {{ c }} |
|---|
|
|
| Item | Value | Materiality | Owner | Team | Status | Age | |
|---|---|---|---|---|---|---|---|
| {{ x.item }} | {{ x.value }} | {{ x.score }} |
{{ x.owner }} | {{ x.team }} | {{ x.status }} | {{ x.age }} | Investigate → |
{{ alSql }}
{{ tourCurrent.body }}
{{ csmChartLevelLabel }}
{{ dashHighlightsNote }}
| Contract group | Product line | Issue | Severity | Status |
|---|---|---|---|---|
| {{ r.id }} | {{ r.lob }} | {{ r.issue }} | {{ r.sev }} | {{ r.status }} |
| {{ c }} |
|---|
| {{ cell }} |
| {{ c }} |
|---|
| {{ cell }} |
| {{ c }} |
|---|
| {{ cell }} |
{{ selectedNote.calcNote }}
✎ Edited by you — captured in the Governance & Audit Trail log.
No edits since the last draft.
The workbook carries no assumption changes. Each move in ACT_ASSUMPTION_CHANGE is applied to the contract-group cash flows (CALC-020). CSM, OCI and finance expense in MYR K.
| Change | Assumption | Prior | Current | Move | CSM | OCI | Fin. exp. | Study | Approver | Status |
|---|---|---|---|---|---|---|---|---|---|---|
| {{ c.id }} | {{ c.name }} | {{ c.prior }} | {{ c.now }} | {{ c.move }} | {{ c.csm }} | {{ c.oci }} | {{ c.finexp }} | {{ c.study }} | {{ c.approver }} | {{ c.status }} |
| Total assumption impact | {{ actChangeCsmTotal }} | {{ actChangeOciTotal }} | {{ actChangeFinTotal }} | |||||||
| Contract group | Cohort | CSM | Loss component | Risk adjustment | Share |
|---|---|---|---|---|---|
| {{ r.icg }} | {{ r.cohort }} | {{ r.csm }} | {{ r.lc }} | {{ r.ra }} | {{ r.shareLabel }} |
Each line re-measures the scope's cash flows with that factor alone (CALC-020). Amounts in MYR K.
| Factor | Shock | CSM | Loss component | OCI | Service result | Formula | Calibration study |
|---|---|---|---|---|---|---|---|
| {{ f.factor }} | {{ f.delta }} | {{ f.csm }} | {{ f.lc }} | {{ f.oci }} | {{ f.profit }} | {{ f.formula }} | {{ f.study }} |
Published to ACT_SCENARIO_RUN and ACT_SCENARIO_RESULT. Select a row to load its levers.
| Run | Scenario | Scope | CSM impact | Run by | Run at | Posted | Status |
|---|---|---|---|---|---|---|---|
| {{ r.id }} | {{ r.name }} | {{ r.scope }} | {{ r.csm }} | {{ r.by }} | {{ r.at }} | {{ r.posted }} | {{ r.status }} |
{{ actCurveNote }} · {{ actCurveAvgShift }}
| Tenor | Approved | Scenario | Shift |
|---|---|---|---|
| {{ r.tenor }} | {{ r.base }} | {{ r.scen }} | {{ r.shift }} |
Solved live on the workbook cash flows (CALC-020). Achieved movement {{ actSolverAchieved }}.
| Factor | Base | Required shock | Boundary level | Formula |
|---|---|---|---|---|
| {{ r.factor }} | {{ r.base }} | {{ r.shock }} | {{ r.level }} | {{ r.formula }} |
Published to ACT_REVERSE_STRESS and carried into the governance audit trail.
| Test | Target | Boundary | Scope | Solver | Run by | Run at | Status |
|---|---|---|---|---|---|---|---|
| {{ t.id }} | {{ t.target }} | {{ t.boundary }} | {{ t.scope }} | {{ t.solver }} | {{ t.by }} | {{ t.at }} | {{ t.status }} |
| {{ c }} |
|---|
| {{ cell.text }} |
| {{ c }} |
|---|
| {{ cell }} |
{{ reconSelectedInsight.calcNote }}
| {{ c }} |
|---|
| {{ cell }} |
data/formulas.json, data/posting.json, data/formula_registry.json.| ID | Variable | Approach | Area | Order | Deps | Journal |
|---|---|---|---|---|---|---|
| {{ r.id }} | {{ r.variable }} | {{ r.approach }} | {{ r.area }} | {{ r.order }} | {{ r.depCount }} | {{ r.postedLabel }} |
| ID | Name | Category | Status |
|---|---|---|---|
| {{ e.id }} | {{ e.name }} | {{ e.category }} | {{ e.status }} |
The same ACT_ASSUMPTION_CHANGE rows the Assumptions workbench runs on. The CSM column foots to the MYR {{ govChangeCsmTotal }}K assumption bar in the Executive Update CSM bridge.
| Change | Date | Assumption | Prior Value | New Value | CSM | OCI | Study | Changed By | Approved By | Status |
|---|---|---|---|---|---|---|---|---|---|---|
| {{ c.id }} | {{ c.date }} | {{ c.name }} | {{ c.prior }} | {{ c.now }} | {{ c.csm }} | {{ c.oci }} | {{ c.study }} | {{ c.by }} | {{ c.approver }} | {{ c.status }} |
| Total assumption impact | {{ govChangeCsmTotal }} | |||||||||
Ties every insight in this app back to its source system's last successful sync.
| Data Source | Status | As-of Date | Freshness |
|---|---|---|---|
| SAS IFRS17 Results (CAS Tables) | ● Connected | Jun 30, 2026 | Fresh |
| General Ledger / Sub-ledger Feed | ● Connected | Jun 30, 2026 | Fresh |
| Actuarial Cash Flow Engine | ● Connected | Jun 30, 2026 | Fresh |
| Assumption Governance Log | ● Connected | Jun 30, 2026 | Fresh |
| Claims Data Feed | ● Degraded | Jun 28, 2026 | Stale — 2 days |
| Market Data (Discount Curve) | ● Connected | Aug 5, 2026 | Fresh |
| Item | Stage | Owner | Status | Due |
|---|---|---|---|---|
| FY2017 Assumption Package | Actuarial Sign-off | R. Mehta | Approved | Aug 10 |
| FY2017 CSM Roll-forward | Finance Review | S. Tan | Approved | Aug 12 |
| Motor-2023 Experience Variance | Actuarial Sign-off | A. Lim | Pending | Aug 14 |
| Board Pack — FY2017 | Audit Committee Review | Audit Committee | Pending | Aug 18 |
| Disclosure Note 12 Draft | CFO Approval | CFO Office | Not Started | Aug 20 |
| {{ a.item }} | {{ a.stage }} | {{ a.owner }} | {{ a.status }} | {{ a.due }} |
| Source | Transformation | Output |
|---|---|---|
| SAS IFRS17 Results (CAS Tables) | GenAI & Agentic AI Layer | Insights, Narratives & Disclosures |
| General Ledger / Sub-ledger | Reconciliation Engine | Reconciliation Status & Breaks |
| Actuarial Cash Flow Engine | CSM / RA Roll-forward Models | CSM, RA & Loss Component Balances |
| Assumption Governance Log | Assumption Impact Models | Assumption Analysis & Stress Testing |
| {{ l.source }} | {{ l.transform }} | {{ l.output }} |
Every action taken in the Assumptions workbench — saved scenarios, applied curve scenarios and reverse stress tests — with the object it touched. Actions taken in this session are tagged.
| Timestamp | User | Role | Action | Object | Record |
|---|---|---|---|---|---|
| {{ a.at }} | {{ a.user }} | {{ a.role }} | {{ a.action }} | {{ a.ref }} | {{ a.tagLabel }} |
| Narrative | Module | Generated On | Status |
|---|---|---|---|
| Disclosure Note 12 draft | Disclosures | Aug 5, 09:14 | Pending Review |
| Executive KPI Narrative | Use Cases | Aug 5, 08:02 | Reviewed — S. Tan |
| CSM Movement Explanation | Use Cases | Aug 4, 16:40 | Reviewed — R. Mehta |
| Reconciliation Executive Narrative | Reconciliation | Aug 5, 07:55 | Pending Review |
| {{ el }} | Disclosures | Just now | Manually Edited |
| User | Role | Action | Timestamp |
|---|---|---|---|
| R. Mehta | Group Actuarial | Approved FY2017 assumption package | Aug 5, 09:20 |
| S. Tan | Finance | Reviewed CSM roll-forward | Aug 5, 08:45 |
| A. Lim | Actuarial Analyst | Updated morbidity assumption | Jun 14, 14:02 |
| Audit Committee | Auditor | Viewed Board Pack draft | Aug 4, 11:15 |
| CFO Office | Executive | Viewed Executive KPI Dashboard | Aug 5, 07:30 |
| Contract group | Portfolio | CSM Run 04 → rerun | Net effect |
|---|---|---|---|
{{ g.disp }} {{ g.icg }} |
{{ g.pf }} | {{ g.csm }} | {{ g.d }} |
| Contract group | Portfolio | Model | CSM | Loss component | Net effect | |
|---|---|---|---|---|---|---|
|
{{ g.disp }}
{{ g.icg }}
|
{{ g.pf }} | {{ g.appr }} | {{ g.csm }} | {{ g.lc }} | {{ g.d }} |
| Metric | Owner | Validation |
|---|---|---|
{{ r.name }} {{ r.code }} · {{ r.usedIn }} |
{{ r.owner }} | {{ r.validation }} |
| {{ c }} |
|---|
| {{ cell }} |
| {{ c }} | |
|---|---|
| {{ r.key }} | {{ r.value }} |
Which of the 16 posted contract groups can be walked all the way from input measures to a disclosure note.
| Contract group | Measure rows | Events | Journal lines | Balance rows | Chain |
|---|---|---|---|---|---|
| {{ c.measRows }} | {{ c.events }} | {{ c.lines }} | {{ c.balRows }} | {{ c.chainLabel }} |
Name a contract group and ask for its lineage. The answer is composed from the same index the hops above read, so it cannot drift from the data.
| {{ c }} |
|---|
| {{ cell }} |
| # | Name | Data Type | Description |
|---|---|---|---|
| {{ c.n }} | {{ c.name }} | {{ c.type }} | {{ c.desc }} |
| {{ col }} |
|---|
| {{ cell.val }} |
| Collection | Documents | Embedding Model | Destination | Status | Updated |
|---|---|---|---|---|---|
| {{ rc.name }} | {{ rc.docsCount }} | {{ rc.embedModel }} | {{ rc.destination }} | ✓ {{ rc.status }} | {{ rc.updated }} |
| Agent / Workflow | Collection | LLM | Destination | Deployed | Status |
|---|---|---|---|---|---|
| {{ ag.name }} | {{ ag.collection }} | {{ ag.llm }} | {{ ag.destination }} | {{ ag.deployedAt }} | ✓ {{ ag.status }} |
| Entity Name | Type | Query | Response | Start Time | Duration | Cost | Feedback | |
|---|---|---|---|---|---|---|---|---|
| {{ q.entity }} | {{ q.type }} | {{ q.query }} | {{ q.response }} | {{ q.start }} | {{ q.duration }} | {{ q.cost }} | {{ q.feedback }} |
| Embedding Model | Used By | Disk Space | |
|---|---|---|---|
| {{ m.name }} | {{ m.configs }} | {{ m.size }} |
| Source | Files | Disk Space | |
|---|---|---|---|
| {{ m.name }} | {{ m.files }} | {{ m.size }} |
| Configuration | Destination | Embedding Model | Row Count | Embeddings Size | Status |
|---|---|---|---|---|---|
| {{ rc.name }} | {{ rc.destination }} | {{ rc.embedModel }} | {{ rc.rowCount }} | {{ rc.embeddingsSize }} | {{ rc.status }} |
| Name | Type | File Update Schedule | Files | Associated Collections | Last Updated |
|---|---|---|---|---|---|
| {{ src.name }} | {{ src.type }} | {{ src.schedule }} | {{ src.fileCount }} | {{ src.collections }} | {{ src.updated }} |
| Document Name | Size | Tags |
|---|---|---|
| {{ f.name }} | {{ f.size }} |
|
| Timestamp | Trigger | Status | Job Log |
|---|---|---|---|
| {{ j.ts }} | {{ j.trigger }} | {{ j.status }} | {{ j.note }} |
| LLM Alias | Retrieval Settings |
|---|---|
| {{ a.alias }} | {{ a.retrievalSetting }} |
| Name | Description | Value | Secret |
|---|---|---|---|
| {{ e.name }} | {{ e.desc }} | {{ e.value }} | {{ e.secretLabel }} |
| Configuration | Vectorized Status | Last Job | Last Auto Eval | Last User Eval | Configuration Status | |
|---|---|---|---|---|---|---|
{{ cf.name }} {{ cf.embedModel }} · {{ cf.chunks }} chunks · {{ cf.size }} |
{{ cf.vectorized }} | {{ cf.lastJob }} | {{ cf.autoEval }} | {{ cf.userEval }} | {{ cf.statusIcon }} {{ cf.status }} |
|
| # | Model | Retrieval Settings | Visibility in Chat |
|---|---|---|---|
| {{ l.order }} |
{{ l.name }} {{ l.provider }} |
{{ l.retrievalSetting }} | {{ l.visibility }} |
| Question | Context | Ground Truth | Generator LLM | Cost |
|---|---|---|---|---|
| {{ d.q }} | {{ d.ctx }} | {{ d.gt }} | {{ d.gen }} | {{ d.cost }} |
| Timestamp | Configuration | Eval LLM | Critic LLM | Critic Embedding | Status | Ragas Score | Cost | Details |
|---|---|---|---|---|---|---|---|---|
| {{ r.ts }} | {{ r.config }} | {{ r.evalLLM }} | {{ r.critic }} | {{ r.criticEmbed }} | {{ r.status }} | {{ r.ragas }} | {{ r.cost }} |
|
| Timestamp | Test Case | Eval LLM | Configuration | Status | Score | Cost |
|---|---|---|---|---|---|---|
| {{ r.ts }} | {{ r.test }} | {{ r.evalLLM }} | {{ r.config }} | {{ r.status }} | {{ r.score }} | {{ r.cost }} |
| Metric | Reference | Result |
|---|---|---|
| {{ a.metric }} | {{ a.ref }} | {{ a.result }} |
| Question | Ragas | Faithfulness | Answer Relevancy | Context Recall | Context Precision | Cost |
|---|---|---|---|---|---|---|
| {{ d.q }} | {{ d.ragas }} | {{ d.faith }} | {{ d.rel }} | {{ d.recall }} | {{ d.prec }} | {{ d.cost }} |
| Parameter | Value |
|---|---|
| {{ x.key }} | {{ x.value }} |
{{ ramNodeInput }}
{{ ramNodeOutput }}
| Name | Type | Experiments | Status | Last Modified | |
|---|---|---|---|---|---|
{{ a.name }} {{ a.desc }} |
{{ a.kind }} | {{ a.experiments }} | ● {{ a.status }} | {{ a.lastModified }} |
|
| Experiment | Type | LLM | Retrieval Setting | Agentic Retrieval | Footprint | Last User Evaluation | Status | |
|---|---|---|---|---|---|---|---|---|
| {{ e.name }} | {{ e.type }} | {{ e.llm }} | {{ e.retrievalSetting }} | {{ e.agentic }} | {{ e.footprint }} | {{ e.userEval }} | {{ e.statusIcon }} {{ e.status }} |
|
| Experiment | LLM | Last User Evaluation | Cost per run | Status |
|---|---|---|---|---|
| {{ e.name }} | {{ e.llm }} | {{ e.userEval }} | {{ e.cost }} | {{ e.statusIcon }} {{ e.status }} |
| Name | Prompts | Passing Threshold | Updated At |
|---|---|---|---|
| {{ t.name }} | {{ t.promptCount }} | {{ t.threshold }} | {{ t.updated }} |
| Metric | Value |
|---|---|
| {{ a.metric }} | {{ a.value }} |
| Name | Type | Latest Version | State | Used By |
|---|---|---|---|---|
| {{ t.name }} | {{ t.kind }} | {{ t.version }} |
|
{{ t.usedBy }} |
{{ ramSelTplCode }}
exec(). Credentials, endpoints and file paths belong in environment variables, never in the code — a hard-coded key here becomes a key in every source built from the template.| Name | Description | Default Value | Secret |
|---|---|---|---|
| {{ e.name }} | {{ e.desc }} | {{ e.value }} | {{ e.secretLabel }} |
| LLM Alias | Description |
|---|---|
| {{ a.alias }} | {{ a.desc }} |
| Name | Type | URI | Connection | In Use |
|---|---|---|---|---|
| {{ d.name }} | {{ d.type }} | {{ d.uri }} |
|
{{ d.configs }} |
| Name | Provider | Dimension | Max Tokens | State | In Use |
|---|---|---|---|---|---|
{{ m.name }} {{ m.modelId }} |
{{ m.provider }} | {{ m.dim }} | {{ m.maxTokens }} | {{ m.status }} | {{ m.configs }} |
| Name | Provider | Deployment | Connection | Token Cost | Groups with Access |
|---|---|---|---|---|---|
| {{ l.name }} | {{ l.provider }} | {{ l.deployment }} |
|
{{ l.cost }} | {{ l.groups }} |
| Task | Administrator | User |
|---|---|---|
| {{ r.task }} | {{ r.admin }} | {{ r.user }} |
| Name | Code Template | Source | Server Status | Ping Status | Tools | |
|---|---|---|---|---|---|---|
| {{ sv.name }} | {{ sv.template }} | {{ sv.source }} | ● {{ sv.status }} |
|
{{ sv.toolCount }} |
|
| Name | Value | Secret |
|---|---|---|
| {{ e.name }} | {{ e.value }} | {{ e.secretLabel }} |
| Parameter | Field Type | Required | Default |
|---|---|---|---|
| {{ p.name }} | {{ p.type }} | {{ p.requiredLabel }} | {{ p.def }} |
| Configuration | Destination Type | Embedding Model | Row Count | Rows Size | Embeddings Size | Embedding Dim. |
|---|---|---|---|---|---|---|
| {{ r.config }} | {{ r.dest }} | {{ r.embed }} | {{ r.rows }} | {{ r.rowsSize }} | {{ r.embSize }} | {{ r.dim }} |
| Name | Type | Schedule | Associated Collections | Last Updated |
|---|---|---|---|---|
| {{ r.name }} | {{ r.type }} | {{ r.schedule }} | {{ r.collections }} | {{ r.updated }} |
| Name | Size | Last Updated |
|---|---|---|
| {{ f.name }} | {{ f.size }} | {{ f.updated }} |
| Job | Status | Started |
|---|---|---|
| {{ j.name }} | {{ j.status }} | {{ j.started }} |
| Configuration | Vectorization Status | Last Job | Last Auto Eval | Last User Eval | Configuration Status |
|---|---|---|---|---|---|
| {{ r.name }} | ✓ {{ r.status }} | {{ r.lastJob }} |
{{ r.evalPct }}%
|
✓ {{ r.userEval }} |
|
| Name | Template | Server Status | Ping Status |
|---|---|---|---|
| {{ r.name }} | {{ r.template }} | ● {{ r.status }} | {{ r.ping }} |
| Name | Description |
|---|---|
| › {{ f.name }} | {{ f.desc }} |
| Name | Version | Status |
|---|---|---|
| {{ a.name }} | {{ a.version }} | ● {{ a.status }} |