A
- AccessControlEntry.ConditionToIdentities
- Access.Database
- ActiveDirectory.Domains
- AdobeAnalytics.Cubes
- AdoDotNet.DataSource
- AdoDotNet.Query
- AnalysisServices.Database
- AnalysisServices.Databases
- AzureStorage.BlobContents
- AzureStorage.Blobs
- AzureStorage.DataLake
- AzureStorage.DataLakeContents
- AzureStorage.Tables
B
- BinaryFormat.Binary
- BinaryFormat.Byte
- BinaryFormat.ByteOrder
- BinaryFormat.Choice
- BinaryFormat.Decimal
- BinaryFormat.Double
- BinaryFormat.Group
- BinaryFormat.Length
- BinaryFormat.List
- BinaryFormat.Null
- BinaryFormat.Record
- BinaryFormat.SignedInteger16
- BinaryFormat.SignedInteger32
- BinaryFormat.SignedInteger64
- BinaryFormat.Single
- BinaryFormat.Text
- BinaryFormat.Transform
- BinaryFormat.UnsignedInteger16
- BinaryFormat.UnsignedInteger32
- BinaryFormat.UnsignedInteger64
- BinaryFormat.7BitEncodedSignedInteger
- BinaryFormat.7BitEncodedUnsignedInteger
- Binary data
- Binary.ApproximateLength
- Binary.Buffer
- Binary.Combine
- Binary.Compress
- Binary.Decompress
- Binary.From
- Binary.FromList
- Binary.FromText
- Binary.InferContentType
- Binary.Length
- Binary.Range
- Binary.Split
- Binary.ToList
- Binary.ToText
- Binary.View
- Binary.ViewError
- Binary.ViewFunction
- Byte.From
C
- Cdm.Contents
- Character.FromNumber
- Character.ToNumber
- Combiner.CombineTextByDelimiter
- Combiner.CombineTextByEachDelimiter
- Combiner.CombineTextByLengths
- Combiner.CombineTextByPositions
- Combiner.CombineTextByRanges
- Comparer.FromCulture
- Comparer.Ordinal
- Comparer.OrdinalIgnoreCase
- Controlling byte order
- Csv.Document
- Cube.AddAndExpandDimensionColumn
- Cube.AddMeasureColumn
- Cube.ApplyParameter
- Cube.AttributeMemberId
- Cube.AttributeMemberProperty
- Cube.CollapseAndRemoveColumns
- Cube.Dimensions
- Cube.DisplayFolders
- Cube.MeasureProperties
- Cube.MeasureProperty
- Cube.Measures
- Cube.Parameters
- Cube.Properties
- Cube.PropertyKey
- Cube.ReplaceDimensions
- Cube.Transform
- Currency.From
D
- DateTime.AddZone
- DateTime.Date
- DateTime.FixedLocalNow
- DateTime.From
- DateTime.FromFileTime
- DateTime.FromText
- DateTime.IsInCurrentHour
- DateTime.IsInCurrentMinute
- DateTime.IsInCurrentSecond
- DateTime.IsInNextHour
- DateTime.IsInNextMinute
- DateTime.IsInNextNHours
- DateTime.IsInNextNMinutes
- DateTime.IsInNextNSeconds
- DateTime.IsInNextSecond
- DateTime.IsInPreviousHour
- DateTime.IsInPreviousMinute
- DateTime.IsInPreviousNHours
- DateTime.IsInPreviousNMinutes
- DateTime.IsInPreviousNSeconds
- DateTime.IsInPreviousSecond
- DateTime.LocalNow
- DateTime.Time
- DateTime.ToRecord
- DateTime.ToText
- Date.AddDays
- Date.AddMonths
- Date.AddQuarters
- Date.AddWeeks
- Date.AddYears
- Date.Day
- Date.DayOfWeek
- Date.DayOfWeekName
- Date.DayOfYear
- Date.DaysInMonth
- Date.EndOfDay
- Date.EndOfMonth
- Date.EndOfQuarter
- Date.EndOfWeek
- Date.EndOfYear
- Date.From
- Date.FromText
- Date.IsInCurrentDay
- Date.IsInCurrentMonth
- Date.IsInCurrentQuarter
- Date.IsInCurrentWeek
- Date.IsInCurrentYear
- Date.IsInNextDay
- Date.IsInNextMonth
- Date.IsInNextNDays
- Date.IsInNextNMonths
- Date.IsInNextNQuarters
- Date.IsInNextNWeeks
- Date.IsInNextNYears
- Date.IsInNextQuarter
- Date.IsInNextWeek
- Date.IsInNextYear
- Date.IsInPreviousDay
- Date.IsInPreviousMonth
- Date.IsInPreviousNDays
- Date.IsInPreviousNMonths
- Date.IsInPreviousNQuarters
- Date.IsInPreviousNWeeks
- Date.IsInPreviousNYears
- Date.IsInPreviousQuarter
- Date.IsInPreviousWeek
- Date.IsInPreviousYear
- Date.IsInYearToDate
- Date.IsLeapYear
- Date.Month
- Date.MonthName
- Date.QuarterOfYear
- Date.StartOfDay
- Date.StartOfMonth
- Date.StartOfQuarter
- Date.StartOfWeek
- Date.StartOfYear
- Date.ToRecord
- Date.ToText
- Date.WeekOfMonth
- Date.WeekOfYear
- Date.Year
- DB2.Database
- Decimal.From
- Diagnostics.ActivityId
- Diagnostics.Trace
- DirectQueryCapabilities.From
- Double.From
- Duration.Days
- Duration.From
- Duration.FromText
- Duration.Hours
- Duration.Minutes
- Duration.Seconds
- Duration.ToRecord
- Duration.TotalDays
- Duration.TotalHours
- Duration.TotalMinutes
- Duration.TotalSeconds
- Duration.ToText
E
F
G
H
I
L
- Lines.FromBinary
- Lines.FromText
- Lines.ToBinary
- Lines.ToText
- List.Accumulate
- List.AllTrue
- List.Alternate
- List.AnyTrue
- List.Average
- List.Buffer
- List.Combine
- List.ConformToPageReader
- List.Contains
- List.ContainsAll
- List.ContainsAny
- List.Count
- List.Covariance
- List.Dates
- List.DateTimes
- List.DateTimeZones
- List.Difference
- List.Distinct
- List.Durations
- List.FindText
- List.First
- List.FirstN
- List.Generate
- List.InsertRange
- List.Intersect
- List.IsDistinct
- List.IsEmpty
- List.Last
- List.LastN
- List.MatchesAll
- List.MatchesAny
- List.Max
- List.MaxN
- List.Median
- List.Min
- List.MinN
- List.Mode
- List.Modes
- List.NonNullCount
- List.Numbers
- List.Percentile
- List.PositionOf
- List.PositionOfAny
- List.Positions
- List.Product
- List.Random
- List.Range
- List.RemoveFirstN
- List.RemoveItems
- List.RemoveLastN
- List.RemoveMatchingItems
- List.RemoveNulls
- List.RemoveRange
- List.Repeat
- List.ReplaceMatchingItems
- List.ReplaceRange
- List.ReplaceValue
- List.Reverse
- List.Select
- List.Single
- List.SingleOrDefault
- List.Skip
- List.Sort
- List.Split
- List.StandardDeviation
- List.Sum
- List.Times
- List.Transform
- List.TransformMany
- List.Union
- List.Zip
- Logical.From
- Logical.FromText
Understanding the Date.IsInNextQuarter Function
The Date.IsInNextQuarter function is a useful function in Power Query that allows you to check whether a given date falls in the next quarter. The function returns a Boolean value, which is either True or False. If the date falls in the next quarter, the function will return True, otherwise, it will return False.
The Syntax for the Date.IsInNextQuarter Function
The syntax for the Date.IsInNextQuarter function is as follows:
Date.IsInNextQuarter(date as any) as logical
The function takes a single argument, which is a date as any data type. The function returns a logical data type, which is either True or False.
The M Code Behind the Date.IsInNextQuarter Function
The M code behind the Date.IsInNextQuarter function is as follows:
let
IsInNextQuarter = (date as any) as logical =>
let
CurrentQuarter = Number.RoundUp(Date.Month(date) / 3),
CurrentQuarterEndDate = Date.EndOfQuarter(date),
NextQuarterStartDate = Date.AddDays(CurrentQuarterEndDate, 1),
NextQuarterEndDate = Date.EndOfQuarter(Date.AddQuarters(date, 1)),
IsInNextQuarter = if date >= NextQuarterStartDate and date <= NextQuarterEndDate then true else false
in
IsInNextQuarter
in
IsInNextQuarter
The M code behind the Date.IsInNextQuarter function is a bit complex, but it is not difficult to understand. The function takes a date as its input and returns a Boolean value indicating whether the date falls in the next quarter.
Breaking Down the M Code
Let's break down the M code behind the Date.IsInNextQuarter function.
1. CurrentQuarter
The first step in the M code is to determine the current quarter. This is done using the following code:
CurrentQuarter = Number.RoundUp(Date.Month(date) / 3)
The Date.Month function returns the month number of a given date. Number.RoundUp function is used to round up the result of the division of the month number by 3 to the next integer. This gives us the current quarter.
2. CurrentQuarterEndDate
The next step is to determine the end date of the current quarter. This is done using the following code:
CurrentQuarterEndDate = Date.EndOfQuarter(date)
The Date.EndOfQuarter function returns the last day of the quarter in which the given date falls.
3. NextQuarterStartDate
The third step is to determine the start date of the next quarter. This is done using the following code:
NextQuarterStartDate = Date.AddDays(CurrentQuarterEndDate, 1)
The Date.AddDays function is used to add a single day to the end date of the current quarter. This gives us the start date of the next quarter.
4. NextQuarterEndDate
The fourth step is to determine the end date of the next quarter. This is done using the following code:
NextQuarterEndDate = Date.EndOfQuarter(Date.AddQuarters(date, 1))
The Date.AddQuarters function is used to add one quarter to the given date. The Date.EndOfQuarter function is then used to determine the last day of the quarter in which the new date falls. This gives us the end date of the next quarter.
5. IsInNextQuarter
The final step is to determine whether the given date falls in the next quarter. This is done using the following code:
IsInNextQuarter = if date >= NextQuarterStartDate and date <= NextQuarterEndDate then true else false
If the given date falls between the start date and end date of the next quarter, the function will return True. Otherwise, it will return False.
The Date.IsInNextQuarter function is a powerful function in Power Query that allows you to check whether a given date falls in the next quarter. The M code behind the function may be complex, but it is not difficult to understand. By breaking down the M code, you can gain a better understanding of how the function works and how it can be used to shape data the way you want it.