{
    "ObjectFields": [
        {
            "Name": "PeriodName",
            "Type": "string",
            "Label": "BudgetMaster.Period",
            "Required": true,
            "ValidRegEx": "",
            "PostData": true,
            "DefaultValue": "",
            "LinkId": "PeriodId",
            "PicklistJSON": "period",
            "Multiple": false,
            "PicklistTitle": "Name",
            "PlaceHolder": "Select Period",
            "LabelWidth": 150,
            "Width": 295,
            "AddNew": false,
            "MaxLength": 35,
            "isKeyField": false,
            "ExpandedView": true,
            "FieldDescription": "The budget/financial period this pay period belongs to.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodCode",
            "Type": "string",
            "Label": "PayPeriod.PayPeriodCode",
            "Required": true,
            "ValidRegEx": "",
            "PostData": true,
            "DefaultValue": "",
            "LinkId": "PayPeriodId",
            "PicklistJSON": "PayperiodCode",
            "Multiple": false,
            "PicklistTitle": "Code",
            "PicklistCriteria": "PayPeriod",
            "PlaceHolder": "Enter Pay Period Code",
            "LabelWidth": 150,
            "Width": 295,
            "AddNew": true,
            "MaxLength": 25,
            "isKeyField": true,
            "ExpandedView": true,
            "FieldDescription": "A unique identifier used to reference this pay period throughout the system, including payroll processing and reports.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodName",
            "Type": "string",
            "Label": "PayPeriod.PayPeriodName",
            "Required": true,
            "ValidRegEx": "",
            "PostData": true,
            "DefaultValue": "",
            "LinkId": "PayPeriodId",
            "PicklistCriteria": "PayPeriod",
            "PicklistJSON": "PayperiodName",
            "Multiple": false,
            "PicklistTitle": "Name",
            "PlaceHolder": "Enter Pay Period Name",
            "LabelWidth": 150,
            "Width": 295,
            "AddNew": true,
            "MaxLength": 50,
            "isKeyField": true,
            "ExpandedView": true,
            "FieldDescription": "A readable name for the pay period, shown in dropdowns and payroll selections.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodApplicablePayConfigNames",
            "Type": "string",
            "Label": "EmployeeShiftPattern.PayConfiguration",
            "Required": false,
            "ValidRegEx": "",
            "PostData": false,
            "DefaultValue": "",
            "LinkId": "PayPeriodApplicablePayConfigIds",
            "PicklistJSON": "Employeepayconfiguration",
            "PicklistCriteria": "PayPeriodConfiguartion",
            "Multiple": false,
            "PicklistTitle": "Name",
            "PlaceHolder": "Select Pay Configuration",
            "LabelWidth": 150,
            "Width": 295,
            "AddNew": false,
            "MaxLength": 50,
            "isKeyField": false,
            "ExpandedView": true,
            "FieldDescription": "The pay configuration(s) this pay period applies to.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodApplicableOuNames",
            "Type": "string",
            "Label": "PayPeriod.WorkOrganizationUnit",
            "Required": false,
            "ValidRegEx": "",
            "PostData": false,
            "DefaultValue": "",
            "LinkId": "PayPeriodApplicableOuIds",
            "PicklistJSON": "ouname",
            "Multiple": true,
            "PicklistTitle": "Name",
            "PlaceHolder": "Select Work Organization Units",
            "LabelWidth": 150,
            "Width": 295,
            "AddNew": false,
            "MaxLength": 50,
            "isKeyField": false,
            "ExpandedView": true,
            "FieldDescription": "The work organization unit(s) this pay period applies to.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodId",
            "Type": "number",
            "Required": true,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "width": "400px"
        },
        {
            "Name": "PeriodId",
            "Type": "number",
            "Required": false,
            "PostData": true,
            "ValidRegEx": "",
            "DefaultValue": -1,
            "width": "400px"
        },
        {
            "Name": "PayPeriodWorkingDays",
            "Type": "number",
            "Required": true,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "MaxLength": 3,
            "LabelWidth": 150,
            "Width": 210,
            "Label": "PayPeriod.WorkingDays",
            "Placeholder": "Enter Working Days",
            "ExpandedView": true,
            "FieldDescription": "Total number of working days in this pay period, used for pro-rata and attendance calculations.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodDisplayName",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "",
            "PostData": true,
            "MaxLength": 50,
            "LabelWidth": 150,
            "Width": 210,
            "Label": "OrganizationUnit.DisplayName",
            "Placeholder": "Enter Display Name",
            "ExpandedView": true,
            "FieldDescription": "An alternate display name shown for this pay period wherever a shorter or friendlier label is needed.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodFromDate",
            "Type": "string",
            "Required": true,
            "LabelWidth": 150,
            "ValidRegEx": "",
            "DefaultValue": "",
            "PostData": true,
            "Width": 120,
            "Label": "CopyNameType.FromDate",
            "Placeholder": "dd/mm/yy",
            "ExpandedView": true,
            "FieldDescription": "Start date of this pay period.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodToDate",
            "Type": "string",
            "LabelWidth": 150,
            "Required": true,
            "ValidRegEx": "",
            "DefaultValue": "",
            "PostData": true,
            "Width": 120,
            "Label": "CopyNameType.ToDate",
            "Placeholder": "31/Dec/9999",
            "ExpandedView": true,
            "FieldDescription": "End date of this pay period.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodPayDate",
            "Type": "string",
            "Required": true,
            "ValidRegEx": "",
            "DefaultValue": "",
            "PostData": true,
            "Width": 120,
            "LabelWidth": 220,
            "Label": "PayPeriod.PayDate",
            "Placeholder": "31/Dec/9999",
            "ExpandedView": true,
            "FieldDescription": "Date on which employees are paid for this pay period.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodLockDate",
            "Type": "string",
            "Required": true,
            "ValidRegEx": "",
            "DefaultValue": "",
            "PostData": true,
            "LabelWidth": 220,
            "Width": 120,
            "Label": "PayPeriod.LockDate",
            "Placeholder": "31/Dec/9999",
            "ExpandedView": true,
            "FieldDescription": "Date after which this pay period is locked and can no longer be edited or reprocessed.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodArrearPeriodFrom",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "/Date(-2240524800000)/",
            "PostData": true,
            "Width": 120,
            "LabelWidth": 150,
            "Label": "PayPeriod.ArrearPeriodFrom",
            "Placeholder": "01/Jan/1990",
            "ExpandedView": true,
            "FieldDescription": "Start date of the arrear period considered when processing arrears for this pay period.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodArrearPeriodTo",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "/Date(253402214400000)/",
            "PostData": true,
            "Width": 120,
            "LabelWidth": 230,
            "Label": "PayPeriod.ArrearPeriodTo",
            "Placeholder": "01/Jan/1990",
            "ExpandedView": true,
            "FieldDescription": "End date of the arrear period considered when processing arrears for this pay period.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodAccountDate",
            "Type": "string",
            "Required": true,
            "ValidRegEx": "",
            "DefaultValue": "",
            "PostData": true,
            "Width": 120,
            "LabelWidth": 328,
            "Label": "PayPeriod.AccountDate",
            "Placeholder": "01/Jan/1990",
            "ExpandedView": true,
            "FieldDescription": "The accounting date this pay period is posted against for financial reporting.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodApplicableOuIds",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "",
            "PostData": true,
            "width": "400px"
        },
        {
            "Name": "PayPeriodApplicablePayConfigIds",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "width": "400px"
        },
        {
            "Name": "PayPeriodPayForDays",
            "Type": "number",
            "Required": true,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "MaxLength": 3,
            "LabelWidth": 150,
            "Width": 210,
            "Label": "PayPeriod.PayForDays",
            "Placeholder": "Enter Pay For Days",
            "ExpandedView": true,
            "FieldDescription": "Number of days employees are paid for in this pay period.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodIsRegister",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 1,
            "LabelWidth": 17,
            "PostData": true,
            "Width": 200,
            "Label": "PayPeriod.RegisterCreation",
            "ExpandedView": true,
            "FieldDescription": "Enable to create a payroll register for this pay period.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodIsWithoutAttendance",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "LabelWidth": 360,
            "DefaultValue": 1,
            "PostData": true,
            "Width": 200,
            "Label": "PayPeriod.ProcessforEmployeeswithoutAttendancedataalso",
            "ExpandedView": true,
            "FieldDescription": "Enable to process payroll for employees who have no attendance data for this pay period.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodIsVisible",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 1,
            "PostData": true,
            "LabelWidth": 360,
            "Width": 200,
            "Label": "PayPeriod.IsVisible",
            "ExpandedView": true,
            "FieldDescription": "Controls whether this pay period is visible for selection in payroll screens.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodSourceType",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 5,
            "width": "400px"
        },
        {
            "Name": "PayPeriodCreatedOn",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "/Date(1710181140000)/",
            "PostData": true,
            "width": "400px"
        },
        {
            "Name": "PayPeriodModifiedByName",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "ADMIN",
            "PostData": true,
            "width": "400px"
        },
        {
            "Name": "PayPeriodModifiedOn",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "/Date(1710181140000)/",
            "PostData": true,
            "width": "400px"
        },
        {
            "Name": "PayPeriodCreatedByName",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "ADMIN",
            "PostData": true,
            "width": "400px"
        },
        {
            "Name": "PayPeriodVersion",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 1,
            "PostData": true,
            "width": "400px"
        },
        {
            "Name": "PayPeriodIsTax2PayrollPost",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "LabelWidth": 360,
            "Width": 210,
            "Label": "PayPeriod.PostfromTDScalculationtoPayroll",
            "ExpandedView": true,
            "FieldDescription": "Determines whether TDS calculation results are posted from tax processing into payroll for this pay period.",
            "FieldDescriptionWidth": 360,
            "PickLists": [
                {
                    "key": 0,
                    "value": "Yes"
                },
                {
                    "key": 1,
                    "value": "No"
                }
            ]
        },
        {
            "Name": "PayPeriodIsPayroll2TaxPost",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 1,
            "PostData": true,
            "Width": 200,
            "LabelWidth": 360,
            "Label": "PayPeriod.PostfromPayrolltoTDS",
            "ExpandedView": true,
            "FieldDescription": "Determines whether payroll results are posted from payroll into TDS processing for this pay period.",
            "FieldDescriptionWidth": 360,
            "PickLists": [
                {
                    "key": 0,
                    "value": "Yes"
                },
                {
                    "key": 1,
                    "value": "No"
                }
            ]
        },
        {
            "Name": "PayPeriodStatus",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 1,
            "PostData": true,
            "width": "400px"
        },
        {
            "Name": "PayPeriodSortOrder",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 9999,
            "PostData": true,
            "Width": 210,
            "Label": "EmployeeMaster.SortOrder",
            "LabelWidth": 150,
            "ExpandedView": true,
            "FieldDescription": "Controls the display position of this pay period in selection lists. Lower numbers appear first.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodRemarks",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": "",
            "LabelWidth": 360,
            "PostData": true,
            "MaxLength": 200,
            "Width": 368,
            "Label": "Common.Remark",
            "Placeholder": "Enter Remarks",
            "ExpandedView": true,
            "FieldDescription": "Optional free-text notes about this pay period — exceptions, applicability, or internal reference for HR/Admin.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodTotalDays",
            "Type": "number",
            "Required": true,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "Width": 210,
            "LabelWidth": 150,
            "Label": "PayPeriod.TotalDays",
            "ReadOnly": true,
            "Addnew": false,
            "Placeholder": "Total Days",
            "ExpandedView": true,
            "FieldDescription": "Total calendar days in this pay period, calculated automatically from the from and to dates.",
            "FieldDescriptionWidth": 360
        },
        {
            "Name": "PayPeriodOvertimeType",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "LabelWidth": 150,
            "Width": 200,
            "Label": "PayPeriod.OverTimeType",
            "ExpandedView": true,
            "FieldDescription": "Determines how overtime is calculated for employees in this pay period.",
            "FieldDescriptionWidth": 360,
            "PickLists": [
                {
                    "key": 0,
                    "value": "Daily(Overtime)"
                },
                {
                    "key": 1,
                    "value": " Monthly"
                },
                {
                    "key": 2,
                    "value": "Daily(Daily Attendance) "
                },
                {
                    "key": 3,
                    "value": "Not Applicable"
                }
            ]
        },
        {
            "Name": "PayPeriodTypeStatus",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 1,
            "PostData": true,
            "LabelWidth": 100,
            "Width": 200,
            "Label": "PayPeriod.PayperiodStatus",
            "ExpandedView": true,
            "FieldDescription": "Current processing status of this pay period.",
            "FieldDescriptionWidth": 360,
            "PickLists": [
                {
                    "key": 0,
                    "value": "Pending"
                },
                {
                    "key": 1,
                    "value": "Active"
                },
                {
                    "key": 2,
                    "value": "Locked"
                },
                {
                    "key": 3,
                    "value": "Closed"
                }
            ]
        },
        {
            "Name": "PayPeriodAddendanceType",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "LabelWidth": 150,
            "Width": 200,
            "Label": "PayPeriod.AttendanceType",
            "ExpandedView": true,
            "FieldDescription": "Determines how attendance is captured and evaluated for this pay period.",
            "FieldDescriptionWidth": 360,
            "PickLists": [
                {
                    "key": 0,
                    "value": "Daily"
                },
                {
                    "key": 1,
                    "value": " Monthly"
                },
                {
                    "key": 2,
                    "value": "Service "
                },
                {
                    "key": 3,
                    "value": "Not Applicable "
                }
            ]
        },
        {
            "Name": "PayPeriodPeriodType",
            "Type": "string",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "Width": 200,
            "LabelWidth": 150,
            "Label": "PayPeriod.PeriodType",
            "ExpandedView": true,
            "FieldDescription": "Classifies this pay period as regular, arrears, bonus, or costing for processing purposes.",
            "FieldDescriptionWidth": 360,
            "PickLists": [
                {
                    "key": 0,
                    "value": "Regular"
                },
                {
                    "key": 1,
                    "value": " Arrears"
                },
                {
                    "key": 2,
                    "value": "Bonus "
                },
                {
                    "key": 3,
                    "value": "Costing"
                }
            ]
        },
        {
            "Name": "PayPeriodAdvancePostType",
            "Type": "number",
            "Required": false,
            "ValidRegEx": "",
            "DefaultValue": 0,
            "PostData": true,
            "LabelWidth": 150,
            "Width": 200,
            "Label": "PayPeriod.AdvancePostType",
            "ExpandedView": true,
            "FieldDescription": "Determines whether advance amounts are posted for this pay period.",
            "FieldDescriptionWidth": 360,
            "PickLists": [
                {
                    "key": 0,
                    "value": "Yes"
                },
                {
                    "key": 1,
                    "value": "No"
                }
            ]
        }
    ]
}