Our current month names come from the Roman calendar. The original Roman calendar had ten months: Martius, Aprilis, Maius, Junius, Quintillis, Sextilis, September, October, November and December. The first four months were named after gods: Mars, Venus (Aphrodite in Greek and Apre in Etruscan), Maia and Juno. The origin of Aprilis is debated, but we know that the month was sacred to Venus because the Festum Veneris et Fortunae Virilis was held on its first day. The last six months are based on the latin words for five, six, seven, etc.
Each year started in March and ended in December, 304 days later. It was then followed by a period of festival between the years.
But the calendar was soon changed by the king Numa Pompilius around 700 BC, who added Januarius (after the god Janus) and Februarius (after the purification festival Februa). He also moved the beginning of the year to Januarius.
However, the year was still too short - only 355 days - so the Pontifices occasionally had to add an extra month to keep the calendar in sync with the seasons. This decision was political and was sometimes done just to extend the term of a particular public official. Or it wasn’t done at all, if the official was an opponent.
By the 1st century BC, the calendar had become hopelessly confused, so in 46 BC, Julius Caesar initiated a reform that resulted in the establishment of a new calendar, the Julian, which was a vast improvement: Leap years were introduced and the year in the Julian calendar was on the average 365.25 days, so no extra intercalary month was needed. After Julius’ death, the month of Quintilis was renamed Julius in his honor, hence July.
Julius Caesar was succeeded by Augustus, and after his death the senate renamed Sextilis after him. At the same time, the senate also suggested that September be renamed after the reigning Caesar Tiberius. But Tiberius refused with the words: “And what will you do if there be thirteen Caesars?”
Today most countries use the Gregorian calendar, which is based on the Julian and still has the Roman month names from 2000 years ago.
In QlikView and in Qlik Sense, the abbreviated month names are defined in the environment variable MonthNames.
Set MonthNames = 'Jan;Feb;Mar;Apr;May;Jun;Jul;Aug;Sep;Oct;Nov;Dec';
This variable is used by several functions, e.g. Month() and Date(). The format code ‘MMM’ is always mapped against the content of this variable.
You can also create an environment variable for the long month names, corresponding to the format code ‘MMMM’:
Set LongMonthNames = 'January;February;March;April;May;June;July;August;September;October;November;December';
If you have these variables, you can use the long format codes not only for formatting of date fields, but also for interpretation of fields, e.g.
Date(MonthStart(Date),'MMMM YYYY') as YearMonth, // Creates and formats YearMonth Date#(Date,'MMMM DD, YYYY') as Date, // Interprets the Date='October 9, 2012' as a date Dual(MonthTxt, Month(Date#(MonthTxt,'MMM'))) as Month, // Interprets the MonthTxt='Oct' as a month
Bottom line: You should define fields for months in your master calendar and add an environment variable for long month names.