I want to get last working day(Weekday) of previous quarter like 2019.03.31 was Sunday, so my requirement is to get output as 2019.03.29.
I have written below code which works perfectly but seems untidy and to me it looks like kdb is eligible of providing much elegant solution than this.
{$[1<mod[dt:("d"$3 xbar "m"$.z.d)-x;7];dt;.z.s x+1]}[1]
Edit - Similarly for first week day of previous quarter, How can below code be improved:
{$[1<mod[dt:x+"d"$ -3+3 xbar "m"$.z.d;7];dt;.z.s x+1]}[0]
OR
{d:"d"$ -3+3 xbar "m"$x;$[2>r:d mod 7;d+$[0=r;2;1];d]}.z.d / Based on solution below