Is there a way to change the DatePicker to support 12 hour AM/PM? Right now it's 24 hour and it gets converted into Z when it goes into the SharePoint list.
Thank you!
Solved! Go to Solution.
If you're talking about the data card created for a DateTime sharepoint field, then you can edit the card (after unlocking it) and add an AM/PM option. Here are some properties that you'll need to update (besides the X/Y/Width/Height to position the controls appropriately). I'll call the new dropdown with AM/PM "AmPmValue1":
AmPmValue1.Items: ["AM", "PM"] AmPmValue1.Default: If(Hour(Parent.Default) < 12, "AM", "PM") HourValue1.Items: ["12","01","02","03","04","05","06","07","08","09","10","11"] HourValue1.Default: Text(If(Mod(Hour(Parent.Default), 12) = 0, 12, Mod(Hour(Parent.Default), 12)),"00") DataCard1.Update: DateValue1.SelectedDate + Time(If(AmPmValue1.Selected.Value = "PM", 12, 0) + Mod(Value(HourValue1.Selected.Value), 12), Value(MinuteValue1.Selected.Value), 0)
The first two lines set the default value for the AM/PM dropdown control. The third one updates the hour to use a 12h-based measurements instead of the 24h-based that is default.
The fourth line is used to set the value of the hour for existing items. Since the hour "0" is represented as "12" in a 12h-based clock, we need to have a special case instead of simply using the Mod function to trim the value.
Finally, you'll need to take the AM/PM value into account in the Update property of the card itself, and also taking the modulo of the hour (to convert "12:00AM" to 0 hours).
Hope this helps!
Hi @er,
The date picker control does not have a setting of how to display dates/times.
You could post this idea in the PowerApps Ideas forum, so it might be considered for future releases.
https://powerusers.microsoft.com/t5/PowerApps-Ideas/idb-p/PowerAppsIdeas
Regards,
Mona Li
Yes it does, it was added in v640 as I recall. The Format property controls how the date is shown in the control.
However the DatePicker does nothing with Time, which I think is what the OP was asking about. (It is a Date Picker after all, not a Time Picker).
Hi Andy,
I might be using the wrong terminology. I have inserted a screen grab of the feature I'm talking about.
I need users to be able to say THIS DATE from THIS TIME to THIS TIME so that I can add the inputs to a calendar from the SharePoint list the form is hosted in. Do you have a better configuration of this? Is it possible to choose AM/PM in a 12 hour form instead of the 24 hour?
This isnt any DatePicker control that I recognize, it looks like a group containing a DatePIcker and two combo boxes. Is this from a sample app or template, or did you code this yourself?
None of the above. It's a SharePoint List I brought in to an EditForm in an App I built myself from what was already available. This is what showed up when I clicked the little checkmark next to the card to get that column from SharePoint to show up.
Ah I see now, this is a DataCard built for SharePoint datetime items. It has no option for 12-hour clocks that I can see, suggest creating a request in the "PowerApps Ideas" section.
In the meantime you will could edit the data card to add an AM/PM combo box and wire that into the Update function, and change the Default property to pick up the initial value.
If you're talking about the data card created for a DateTime sharepoint field, then you can edit the card (after unlocking it) and add an AM/PM option. Here are some properties that you'll need to update (besides the X/Y/Width/Height to position the controls appropriately). I'll call the new dropdown with AM/PM "AmPmValue1":
AmPmValue1.Items: ["AM", "PM"] AmPmValue1.Default: If(Hour(Parent.Default) < 12, "AM", "PM") HourValue1.Items: ["12","01","02","03","04","05","06","07","08","09","10","11"] HourValue1.Default: Text(If(Mod(Hour(Parent.Default), 12) = 0, 12, Mod(Hour(Parent.Default), 12)),"00") DataCard1.Update: DateValue1.SelectedDate + Time(If(AmPmValue1.Selected.Value = "PM", 12, 0) + Mod(Value(HourValue1.Selected.Value), 12), Value(MinuteValue1.Selected.Value), 0)
The first two lines set the default value for the AM/PM dropdown control. The third one updates the hour to use a 12h-based measurements instead of the 24h-based that is default.
The fourth line is used to set the value of the hour for existing items. Since the hour "0" is represented as "12" in a 12h-based clock, we need to have a special case instead of simply using the Mod function to trim the value.
Finally, you'll need to take the AM/PM value into account in the Update property of the card itself, and also taking the modulo of the hour (to convert "12:00AM" to 0 hours).
Hope this helps!
Hi @CarlosFigueira,
Have the same issue, and used your formula which actually works. However, when patched/updated in the sharepoint list it automatically adds 7 hours to the list but has the same input time in powerapps, at the same time ignoring the AM - PM function. Need help 😞
Hi @johng,
Is your SharePoint Site set to the correct Time Zone?
I don't believe this is inherited by the Main Site, or atleast I can't find where it can be inherited, maybe at the SP admin center. Wherever your SharePoint List is located is the Site Settings you will need to be in to change that particular sites Time Zone.
Site Settings (Site where your List is located) -> Regional Settings (Nested under "Site Administration")
User | Count |
---|---|
139 | |
129 | |
76 | |
72 | |
70 |
User | Count |
---|---|
212 | |
200 | |
64 | |
63 | |
54 |