When working with Power Apps and SharePoint, patching values into different column types requires specific data formats and record structures. Below is a comprehensive reference guide for patching each field type into your 'Employee Database' list.

1. Single Line of Text (Title)

Single line text fields accept a simple string literal or text property.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Title: "Mayuresh Joshi"
    }
)

2. Multiple Lines of Text (Address)

Multiple lines of text fields also accept plain text or rich text strings.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Address: "123 Business Park Road, Suite 400, New York, NY 10001"
    }
)

3. Number (Age)

Number columns require integer or decimal values, wrapped with the Value() function if pulled from a text input control.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Age: 29
    }
)

4. Yes/No / Boolean (Allow WFH)

Yes/No columns require a standard Boolean (true or false) value.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        'Allow WFH': true
    }
)

5. Person or Group - Single Select (Employee)

A single-select Person column requires a record containing specific schema properties: @odata.type, Claims, Department, DisplayName, Email, JobTitle, and Picture.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Employee: {
            '@odata.type': "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
            Claims: "i:0#.f|membership|" & User().Email,
            Department: "",
            DisplayName: User().FullName,
            Email: User().Email,
            JobTitle: "",
            Picture: ""
        }
    }
)

6. Person or Group - Multi Select (Team Members)

Multi-select Person columns require a table of user records. If pulling directly from a combo box control named cmbTeamMembers:

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        'Team Members': ForAll(
            cmbTeamMembers.SelectedItems,
            {
                '@odata.type': "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
                Claims: Claims,
                Department: Department,
                DisplayName: DisplayName,
                Email: Email,
                JobTitle: JobTitle,
                Picture: Picture
            }
        )
    }
)

7. Date Only (Date of Birth)

Date fields accept a standard Date() or DatePicker.SelectedDate value.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        'Date of Birth': Date(1995, 8, 24)
    }
)

8. Date and Time (Date of Birth with Time)

Date & Time columns accept a DateTimeValue() or combine a date picker with time dropdowns.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        'Date of Birth with Time': DateTimeValue("1995-08-24 14:30:00")
    }
)

9. Choice - Single Select (Gender)

Single-select choice columns require a record with a Value property.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Gender: {
            Value: "Male"
        }
    }
)

10. Choice - Multi Select (Skills)

Multi-select choice columns require a table of records, where each record has a Value key. If pulling from a combo box named cmbSkills:

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Skills: ForAll(
            cmbSkills.SelectedItems,
            {
                Value: Value
            }
        )
    }
)

11. Lookup - Single Select (Department)

Single-select Lookup columns require a record containing both @odata.type, the target item Id, and the Value (display text).

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Department: {
            Id: 1,
            Value: "Information Technology"
        }
    }
)

12. Lookup - Multi Select (Working Days)

Multi-select Lookup columns require a table of records containing the Id and Value for each selected item.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        'Working Days': ForAll(
            cmbWorkingDays.SelectedItems,
            {
                Id: Id,
                Value: Value
            }
        )
    }
)

13. Hyperlink or Picture (Linkedin Profile Link)

Hyperlink columns in SharePoint accept a record with Url and Description properties.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        'Linkedin Profile Link': "https://www.linkedin.com/in/mayure5h"
} )

14. Currency (Salary)

Currency fields are treated numerically in Power Apps and accept numeric values.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Salary: 85000
    }
)

15. Image / Thumbnail (Profile Pic)

For image columns, you can patch images captured from an Add Media Button / Camera control or uploaded as base64/binary content.

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        'Profile Pic': UploadedImage1.Image
    }
)

All-in-One Complete Patch Statement

To create an entire record in a single transaction, combine all the field mappings into one Patch() call:

Patch(
    'Employee Database',
    Defaults('Employee Database'),
    {
        Title: "Mayuresh Joshi",
        Address: "123 Business Park Road, Suite 400",
        Age: 29,
        'Allow WFH': true,
        Employee: {
            '@odata.type': "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
            Claims: "i:0#.f|membership|" & User().Email,
            Department: "",
            DisplayName: User().FullName,
            Email: User().Email,
            JobTitle: "",
            Picture: ""
        },
        'Team Members': ForAll(
            cmbTeamMembers.SelectedItems,
            {
                '@odata.type': "#Microsoft.Azure.Connectors.SharePoint.SPListExpandedUser",
                Claims: Claims,
                Department: Department,
                DisplayName: DisplayName,
                Email: Email,
                JobTitle: JobTitle,
                Picture: Picture
            }
        ),
        'Date of Birth': Date(1995, 8, 24),
        'Date of Birth with Time': DateTimeValue("1995-08-24 14:30:00"),
        Gender: { Value: "Male" },
        Skills: ForAll(cmbSkills.SelectedItems, { Value: Value }),
        Department: {
            Id: 1,
            Value: "Information Technology"
        },
        'Working Days': ForAll(
            cmbWorkingDays.SelectedItems,
            {
                Id: Id,
                Value: Value
            }
        ),
        'Linkedin Profile Link': "https://www.linkedin.com/in/mayure5h",
Salary: 85000, 'Profile Pic': UploadedImage1.Image } )