Ionic 3 date time picker not showing days - ionic2

I am using the following code to show a date time picker with the weekly days only. But the picker is only showing numbers from 1 to 31.
<ion-list>
<ion-item>
<ion-label>Date</ion-label>
<ion-datetime displayFormat="DDDD" pickerFormat="DDDD">
</ion-datetime>
</ion-item>
</ion-list>
The documentation of ionic date picker says "DDDD" will show the full name of days. But it's not working. Can somebody explain where I am wrong?
I want to have the name of days, like- sunday, monday, tuesday in the list of date time picker.

The name of days are displayed only when the date is selected and the date picker is closed, not in the date picker interface that is open and shown in the bottom of the screen, as you show in your picture.
You may want to try this plugin as an alternative to ion-datetime:
https://ionicframework.com/docs/native/date-picker/
or
https://www.npmjs.com/package/cordova-plugin-datetimepicker

I had this problem too and honestly because this is not available inside the ion-datetime picker I just decided to use my own select just for the days then user the picker for the time.
<ion-item>
<ion-select [(ngModel)]="selectedDay">
<ion-option [value]="day" *ngFor="let day of daysOfWeek">{{ day }}</ion-option>
</ion-select>
</ion-item>
<ion-item>
<ion-datetime displayFormat="h:00 a" pickerFormat="h a" [(ngModel)]="selectedHour"></ion-datetime>
</ion-item>
And daysOfWeek is just an array:
daysOfWeek = ['Sunday', 'Monday', 'Tuesday', 'Wednsday', 'Thursday', 'Friday', 'Saturday']
Then with the selectedDay and the selectedHour I can create my timestamp however.

So Ionic replaces the DDD and DDDD in the pickerFormat. I have no idea why.
This code is in the ion-datetime template:
template.replace('DDDD', '{~}').replace('DDD', '{~}');
If you must display the day in the picker, best will be to use an external module, like Angular Material or make your own select with array of the days.

Hey here you can get DAY MONTH YEAR and HOUR MINUTE, if you want , you can remove HOUR and MINUTE
<ion-datetime displayFormat="DD MMM, YYYY HH:mm" [min]="minDate" [max]="maxDate" cancelText="Annuler" doneText="Valider" #datePicker"></iondatetime>

Related

Default Date on Slicer & custom selection

I have a date slicer which should show last 12 days as selected when report opens. Further, user should have flexibility to select any other date range.
enter image description here
Can you try Relative Date option for the date slicer as shown below image-
In this case, you can select last 12 Days in the slicer while publish. User can then switch to any other date range as per necessity. But while initial loading, report will always show last 12 days in the selection.

Show or Preview default 30 days of data until user select date range from slicer

How to show default last 30 days of data until user do not choose a date range from a date slicer ?
I have a column "DateRange" for slicer.
Thanks in advance !
Thanks & Regards,
Ravi Kumar
You can't set a default and switch slicers, what you can do is use Bookmarks. So you create one bookmark with the Default filter, then the other without it. You can then add the bookmarks to a button that you can click on and switch between the two. You can also set visuals to show and hide in a bookmark, so for example hide the data slicer in the 'default' view and when you click on the 'date range' the slicer will appear.
Hope that helps point you in the right direction

How to MTD, YTD in Apache Superset?

I would like to create a dashboard with month to date (MTD) and year to date (YTD) charts. However, I do not want to update my date range each month. A fixed date range would do this. Choosing 1 months ago give the last 30days. Using last month gives me last month and everything from this month. Yet, this month is not supported. MTD doesn't work either. I am using Superset version 0.24.0
I figured it out! Use 1st for MTD and Jan 1st for YTD.
For newer versions of Superset, this quarter is supported for quarter to date (QTD) charts.
I think it can be set on the custom tab of the time range in the chart explorer. There you can use 1st and Jan 1st as strings that are parsed.
TO get MTD put 1st in the 'Start' field and put this month in the 'end' field
Select Range Type as "Advanced", then enter "1st" for Start Date and leave End Date blank. Image has today's date as End Date but leave it blank to get YTD
TIME RANGE dialog showing YTD entries

day formula in a if statement

I am using the formula below to check to see if January first is on Saturday. The calendar I've created will flip years using a macro in place, so January first may not always lay on a Saturday. The reason I need to use DAY is because the cell it is refering to is in a DAY format.
=IF(DAY(H5)=1,"Winter","") Formula
January 1st Days of the week
2018- Monday Calendar
2019- Tuesday
2023- Saturday etc...
So H5 is the place of the first Saturday in January,
if H5 = January 1st it should show "Winter" if not it should return blank. The issue is the formula is getting caught on the DAY(H5)=1. It returns #Value instead of a blank. Is there a work around I can use to show blanks instead?
I have conditional formatting in place so the cell is grayed out (Font colour and Fill). It looks good when it's in the spreadsheet but once it it is printed it will still show #VALUE.
Thanks in advance,
Wrap the formula in a IFERROR():
=IFERROR(IF(DAY(H5)=1,"Winter",""),"")
Or you can test to ensure the H5 has a value:
=IF(H5<>"",IF(DAY(H5)=1,"Winter",""),"")

Datepicker should display dates from the next month only..Restrict current month dates to be unselectable

I have a following requirement: the datepicker should display dates starting from next month.
For example if current month is january, then it should display dates from first day of February and if it is February it should display dates from 1st of March. In all conditions the current month dates should be unselectable or hidden.
Plz help me how can i acheive this functionality?
The jQuery date picker supports this functionality out of the box.
http://jqueryui.com/datepicker/#min-max
Here is what you need to do:
$(document).ready(function() {
$("#dateThis").datepicker({minDate: "+1M"});
});
Working fiddle.