---
id: object/page/977
type: object
title: Page 977 "Time Sheet Setup Wizard"
summary: Page 977 "Time Sheet Setup Wizard" in Base Application (Microsoft.Projects.TimeSheet). Present since at least BC23, still in BC30.
tier: official
language: en
tags:
  - page
  - base application
versions:
  introduced: null
  last_changed: null
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: 3cf5d4de8c85757fa95794d9e241d4b70af749613a4532b3ee4be5091fc5258a
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Projects/TimeSheet/TimeSheetSetupWizard.Page.al
    title: src/Layers/W1/BaseApp/Projects/TimeSheet/TimeSheetSetupWizard.Page.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
  - kind: learn
    url: https://learn.microsoft.com/dynamics365/business-central/projects-how-setup-time-sheets
    title: Set up time sheets and their approval
    date: null
    commit: null
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/projects-how-setup-time-sheets
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/set-up-business-central/set-up-project-management
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: page
object_id: 977
name: Time Sheet Setup Wizard
caption: Set Up Time Sheets
namespace: Microsoft.Projects.TimeSheet
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in: []
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids:
  - docs/learn-smb-docs/business-central/projects-how-setup-time-sheets.md
counts:
  fields: 0
  procedures: 12
  events: 0
  subscribers: 0
  controls: 19
  actions: 3
relations:
  out: 0
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 0
  calls: 1
  called_by: 0
  implements: 0
---

# Page 977 "Time Sheet Setup Wizard"

> Page 977 "Time Sheet Setup Wizard" in Base Application (Microsoft.Projects.TimeSheet). Present since at least BC23, still in BC30.

Base Application · Microsoft.Projects.TimeSheet · captioned "Set Up Time Sheets" · BC23-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Projects/TimeSheet/TimeSheetSetupWizard.Page.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Caption | Set Up Time Sheets |
| PageType | NavigatePage |

## Fields on this page

Layout controls in source order, grouped by the container they sit in. Shows: the table field a control is bound to (or its expression as written); ToolTip: the control's own, else the bound field's (marked).

| Group | Control | Shows | ToolTip |
|---|---|---|---|
| Control17 | MediaResourcesStandardMediaReference | `MediaResourcesStandard."Media Reference"` | — |
| Control19 | MediaResourcesDoneMediaReference | `MediaResourcesDone."Media Reference"` | — |
| Welcome to Time Sheet Setup | Track the time used on projects or create simple time registrations for resources. | label | — |
|  | This guide will help you set up time sheets and specify the participants in the process. Participants include the time sheet administrator, the employees or resources who register time, and the approvers. | label | — |
| Required: | UserSetupStatus | `UserSetupStatus` | — |
|  | ResourcesStatus | `ResourcesStatus` | — |
| Optional: | EmployeesStatus | `EmployeesStatus` | — |
|  | CauseOfAbsenceStatus | `CauseOfAbsenceStatus` | — |
| Para2.1.1 | If there is no data for the participants above, you can migrate or import data from other finance systems. | label | — |
|  | LearnMoreHeader | `LearnMoreTok` | View information about migrating business data from other finance systems. |
| Choose the first day of the workweek | Time Sheet First Weekday | `FirstWeekday` | Specifies the first weekday to use on a time sheet. The default is Monday. |
| Choose a time sheet administrator | Time Sheet Administrator | `TimeSheetAdminUserId` | Specifies the user who will administrate time sheets. |
| TimeSheetAdminAddInfoGroup | NOTE: You can add additional time sheet administrators on the User Setup page. | label | — |
| TimeSheetByJobApprovalGroup | For projects, the person responsible is the approver | `TimeSheetByJobApproval` | Specifies whether time sheets must be approved on a per-project basis by the user specified for the project. |
|  | Resources | part [Page 978 "Time Sheet Setup Resources"](../page/978.md) | — |
| TimeSheetEmployeesGroup | NOTE: The links between employees and resources in the list below are suggested because their company email addresses match. If needed, you can change the suggested links. | label | — |
|  | Employees | part [Page 979 "Time Sheet Setup Employees"](../page/979.md) | — |
| Are you ready to create time sheets now? | Create Time Sheets | `RunCreateTimeSheets` | Specifies whether to create time sheets when you choose Finish. |
| FinishGroup | Choose Finish to apply the setup and complete the guide. | label | — |

## Actions

| Group | Action | ToolTip | Runs |
|---|---|---|---|
| Processing | Back | — |  |
|  | Next | — |  |
|  | Finish | — |  |

## Procedures

12 local procedures, no public ones.

## Triggers

OnInit

## Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an `Object::"Name"` argument. Interface dispatch and calls through events are not counted, so the list is not complete.

- [Codeunit 4030 "Client Type Management"](../codeunit/4030.md) (1 call: `LoadTopBanners → GetCurrentClientType`)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: none

## Documented on Microsoft Learn

- [Set up time sheets and their approval](https://learn.microsoft.com/dynamics365/business-central/projects-how-setup-time-sheets)

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: `bcatlas_resolve_node(object_type: "page", object_name: "Time Sheet Setup Wizard")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
