<html><head></head><body><div class="ydp6c609205yahoo-style-wrap" style="font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 13px;"><div><div dir="ltr" data-setdir="false">Hi there <br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">    The following function works for me, I call it every time I need it from the main script, ie <br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">'set t 'whatever</div><div dir="ltr" data-setdir="false">dow()</div><div dir="ltr" data-setdir="false">say _nday</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">    The alternative is to use the linux date function to return dow from date but that is a messy solution.</div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false">    Cheers</div><div dir="ltr" data-setdir="false">        JP <br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false"><br></div><div dir="ltr" data-setdir="false"><div>***************************************************<br>function dow(args)<br><br> 'q Time'<br> say result<br> mm = substr(result,13,3)<br> dy = substr(result,11,2)<br> yr = substr(result,16,4)<br><br>if mm = JAN ; mn = 01 ; endif<br>if mm = FEB ; mn = 02 ; endif<br>if mm = MAR ; mn = 03 ; endif<br>if mm = APR ; mn = 04 ; endif<br>if mm = MAY ; mn = 05 ; endif<br>if mm = JUN ; mn = 06 ; endif<br>if mm = JUL ; mn = 07 ; endif<br>if mm = AUG ; mn = 08 ; endif<br>if mm = SEP ; mn = 09 ; endif<br>if mm = OCT ; mn = 10 ; endif<br>if mm = NOV ; mn = 11 ; endif<br>if mm = DEC ; mn = 12 ; endif<br><br>D.0=Sat<br>D.1=Sun<br>D.2=Mon<br>D.3=Tue<br>D.4=Wed<br>D.5=Thu<br>D.6=Fri<br><br>if (mn < 3)<br>  mn = mn + 12<br>  yr = yr - 1<br>endif<br>dofweek = math_mod(dy + math_int((13*(mn+1))/5) + yr + math_int(yr/4) - math_int(yr/100) + math_int(yr/400),7)<br>nday = D.dofweek<br>_nday = nday<br><br><br></div><div><br></div></div><div dir="ltr" data-setdir="false"><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div class="ydp6c609205signature">-- Jean Pierre Arabonis arabonis@yahoo.com<br></div></div><div><br></div>
        
        </div><div id="ydpc4a414f7yahoo_quoted_0263114879" class="ydpc4a414f7yahoo_quoted">
            <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                
                <div>
                    On Wednesday, 30 December 2020, 11:24:59 SAST, CW Weather <weatherstu@chorleyweather.com> wrote:
                </div>
                <div><br></div>
                <div><br></div>
                <div><div id="ydpc4a414f7yiv6950658955"><div>
<p>Hi William, </p>
<p><br clear="none"></p>
<p>I've tried your solution plus the code below but im getting an issue somewhere. Im running the script in batch mode and it will use the control file for the dates but id fail to see that being the issue. It could be the sum code throwing the error but i dont even get an error code up, it just runs one image and cuts off, much like it would for a missing apostrophe. Headache of all headaches this one he he. </p>
<p>day=substr(fdate,4,2)<br clear="none">mon=substr(fdate,6,3)<br clear="none">yy=substr(fdate,9,4)<br clear="none">year=yy-2000<br clear="none">j=year/100</p>
<p>if (mon = 'DEC') ; mm = 12 ; endif</p>
<p>if (mon = 'JAN')<br clear="none">mm = 13<br clear="none">year=yy-2000-1<br clear="none">j=year/100<br clear="none">endif</p>
<p>if (mon = 'FEB')<br clear="none">mm = 14<br clear="none">year=yy-2000-1<br clear="none">j=year/100<br clear="none">endif</p>
<p>if (mon = 'MAR') ; mm = 3 ; endif<br clear="none">if (mon = 'APR') ; mm = 4 ; endif<br clear="none">if (mon = 'MAY') ; mm = 5 ; endif<br clear="none">if (mon = 'JUN') ; mm = 6 ; endif<br clear="none">if (mon = 'JUL') ; mm = 7 ; endif<br clear="none">if (mon = 'AUG') ; mm = 8 ; endif<br clear="none">if (mon = 'SEP') ; mm = 9 ; endif<br clear="none">if (mon = 'OCT') ; mm = 10 ; endif<br clear="none">if (mon = 'NOV') ; mm = 11 ; endif</p>
<p>h = day + (13*(mm+1))/5 + year + year/4 + j/4 - 2*j<br clear="none">hmod = math_mod(h,7)<br clear="none">hint = math_int(hmod)</p>
<p>if (hint = 0) ; weekday = 'Sat' ; endif<br clear="none">if (hint = 1) ; weekday = 'Sun' ; endif<br clear="none">if (hint = 2) ; weekday = 'Mon' ; endif<br clear="none">if (hint = 3) ; weekday = 'Tue' ; endif<br clear="none">if (hint = 4) ; weekday = 'Wed' ; endif<br clear="none">if (hint = 5) ; weekday = 'Thu' ; endif<br clear="none">if (hint = 6) ; weekday = 'Fri' ; endif</p>
<p>say day' 'mm' 'h' 'hmod' 'hint<br clear="none">say weekday' 'fdate</p>
<p>'set strsiz 0.12'<br clear="none">'set string 1 r 5 0' ; 'draw string 2.64 8.2 ECMWF Sea Level Pressure'<br clear="none">'draw string 2.00 7.8 Run: 'huh <br clear="none">'draw string 5.18 7.8 - - Valid: weekday' 'fdate</p>
<p><br clear="none"></p>
<p><br clear="none"></p>
<p><br clear="none"></p>
<p><br clear="none"></p>
<div class="ydpc4a414f7yiv6950658955yqt0434173963" id="ydpc4a414f7yiv6950658955yqt47523"><p>On 22-12-2020 17:41, L.B. wrote:</p>
<blockquote type="cite" style="padding:0 0.4em;border-left:#1010ff 2px solid;margin:0;">
<div dir="ltr">Stuart,
<div> </div>
<div>After breaking down the month into a numerical value as you did, use that along with the day and current year into a function as such:</div>
<div> </div>
<div>if (month < 3)<br clear="none">  month = month + 12<br clear="none">  year = year -1<br clear="none">endif<br clear="none"><br clear="none">dow = math_mod(day + math_int((13*(month+1))/5) + year + math_int(year/4) - math_int(year/100) + math_int(year/400),7)</div>
<div> </div>
<div>from here, the value 0 is Saturday, 1 is Sunday...6 is Friday<br clear="none"><br clear="all">
<div>
<div class="ydpc4a414f7yiv6950658955gmail_signature" dir="ltr">
<div dir="ltr">
<div>
<div dir="ltr">
<div dir="ltr">
<div dir="ltr">
<div><strong>-------</strong></div>
William (L.B.) LaForce IV<br clear="none">Meteorologist</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<br clear="none">
<div class="ydpc4a414f7yiv6950658955gmail_quote">
<div class="ydpc4a414f7yiv6950658955gmail_attr" dir="ltr">On Tue, Dec 22, 2020 at 11:28 AM CW Weather <<a shape="rect" href="mailto:weatherstu@chorleyweather.com" rel="nofollow" target="_blank">weatherstu@chorleyweather.com</a>> wrote:</div>
<blockquote class="ydpc4a414f7yiv6950658955gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid #cccccc;padding-left:1ex;">
<div style="font-size:10pt;font-family:Tahoma, Arial, Helvetica, sans-serif;">
<p><span>Hi Miquel,</span></p>
<p><br clear="none"></p>
<p><span>Using similar with substring but how would I integrate that with this code. I've tried Ryan's function but it is throwing an error up somewhere and i've yet to find it. Thanks in advance. And thanks to Ryan as well. </span></p>
<p><span>regards,</span></p>
<p><span>Stuart. </span></p>
<p><br clear="none"></p>
<p>'query time'<br clear="none">time = subwrd(result,3)<br clear="none">day = subwrd(result,6)<br clear="none">datestr = subwrd (result, 3)<br clear="none">if (substr (datestr, 3, 1) = 'Z') ; zptr = 3 ; ;else ; zptr = 6 ; endif ;<br clear="none">timestr = substr (datestr, 1, 2)<br clear="none">date = substr (datestr, zptr+1, 99)<br clear="none">dd = substr (date, 1, 2)<br clear="none">mmm = substr (date, 3, 3)<br clear="none">yyyy = substr (date, 6, 4)</p>
<p>if (mmm = 'JAN') ; mm = 01 ; endif<br clear="none">if (mmm = 'FEB') ; mm = 02 ; endif<br clear="none">if (mmm = 'MAR') ; mm = 03 ; endif<br clear="none">if (mmm = 'APR') ; mm = 04 ; endif<br clear="none">if (mmm = 'MAY') ; mm = 05 ; endif<br clear="none">if (mmm = 'JUN') ; mm = 06 ; endif<br clear="none">if (mmm = 'JUL') ; mm = 07 ; endif<br clear="none">if (mmm = 'AUG') ; mm = 08 ; endif<br clear="none">if (mmm = 'SEP') ; mm = 09 ; endif<br clear="none">if (mmm = 'OCT') ; mm = 10 ; endif<br clear="none">if (mmm = 'NOV') ; mm = 11 ; endif<br clear="none">if (mmm = 'DEC') ; mm = 12 ; endif</p>
<p>date = day' 'dd'/'mm' 'timestr':00'</p>
<p><br clear="none"></p>
<p><br clear="none"></p>
<p><br clear="none"></p>
<p><br clear="none"></p>
<p>On 22-12-2020 16:01, Miquel Bernis wrote:</p>
<blockquote style="padding:0px 0.4em;border-left:2px solid #1010ff;margin:0px;">
<div dir="ltr">
<div>I'm dealing with the same problem. Using substr() you can split day (d), month (m), and year (y), and after that this algorithm looks like works for me. Returns 0 for a Sunday and up to 6 for a Saturday.</div>
<div> </div>
<div>arrayDOW.0=0<br clear="none">arrayDOW.1=3<br clear="none">arrayDOW.2=2<br clear="none">arrayDOW.3=5 <br clear="none">arrayDOW.4=0<br clear="none">arrayDOW.5=3<br clear="none">arrayDOW.6=5<br clear="none">arrayDOW.7=1<br clear="none">arrayDOW.8=4<br clear="none">arrayDOW.9=6 <br clear="none">arrayDOW.10=2<br clear="none">arrayDOW.11=4</div>
<div> </div>
if (m<3)<br clear="none">y=y-1<br clear="none">endif<br clear="none"><br clear="none">parm=m-1<br clear="none">dofweek = math_mod((y + math_int(y/4) - math_int(y/100) + math_int(y/400) + arrayDOW.parm + d),7)</div>
<br clear="none">
<div class="ydpc4a414f7yiv6950658955gmail_quote">
<div class="ydpc4a414f7yiv6950658955gmail_attr" dir="ltr">Missatge de CW Weather <<a shape="rect" href="mailto:weatherstu@chorleyweather.com" rel="nofollow" target="_blank">weatherstu@chorleyweather.com</a>> del dia dt., 22 de des. 2020 a les 8:07:</div>
<blockquote class="ydpc4a414f7yiv6950658955gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid #cccccc;padding-left:1ex;">
<div style="font-size:10pt;font-family:Tahoma, Arial, Helvetica, sans-serif;">
<p>Hello Users, </p>
<p><br clear="none"></p>
<p>I know this subject has been covered recently with an issue with the date for 2021, with the DAY returning '???'. Is there a suitable work around on this for both grads and opengrads users? I know there is a work around with some of you <span>implementing Zeller's congruence but alas I have no idea how to code or where to code it to. </span></p>
<p><br clear="none"></p>
<p><span>Any help on the matter would be greatly apricated. </span></p>
<div>-- <br clear="none">
<p>Kind regards,</p>
<p><strong>Stuart Markham</strong></p>
<p><em><img data-inlineimagemanipulating="true" width="78" height="51"></em></p>
<p><em>Founder of CW Weather</em></p>
<p><em>Website: <a shape="rect" href="https://www.chorleyweather.com/" rel="nofollow" target="_blank">chorleyweather.com</a></em></p>
</div>
</div>
_______________________________________________<br clear="none"> gradsusr mailing list<br clear="none"><a shape="rect" href="mailto:gradsusr@gradsusr.org" rel="nofollow" target="_blank">gradsusr@gradsusr.org</a><br clear="none"><a shape="rect" href="http://gradsusr.org/mailman/listinfo/gradsusr" rel="nofollow" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a></blockquote>
</div>
<br clear="none">
<div style="margin:0px;padding:0px;font-family:monospace;">_______________________________________________<br clear="none"> gradsusr mailing list<br clear="none"><a shape="rect" href="mailto:gradsusr@gradsusr.org" rel="nofollow" target="_blank">gradsusr@gradsusr.org</a><br clear="none"><a shape="rect" href="http://gradsusr.org/mailman/listinfo/gradsusr" rel="nofollow" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a></div>
</blockquote>
<p><br clear="none"></p>
<div>-- <br clear="none">
<p>Kind regards,</p>
<p><strong>Stuart Markham</strong></p>
<p><em><img src="cid:ocviFhs6B8IPsVEcZj30" data-inlineimagemanipulating="true" width="78" height="51"></em></p>
<p><em>Founder of CW Weather</em></p>
<p><em>Website: <a shape="rect" href="https://www.chorleyweather.com/" rel="nofollow" target="_blank">chorleyweather.com</a></em></p>
</div>
</div>
_______________________________________________<br clear="none"> gradsusr mailing list<br clear="none"><a shape="rect" href="mailto:gradsusr@gradsusr.org" rel="nofollow" target="_blank">gradsusr@gradsusr.org</a><br clear="none"><a shape="rect" href="http://gradsusr.org/mailman/listinfo/gradsusr" rel="nofollow" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a></blockquote>
</div>
<br clear="none">
<div class="ydpc4a414f7yiv6950658955pre" style="margin:0;padding:0;font-family:monospace;">_______________________________________________<br clear="none"> gradsusr mailing list<br clear="none"><a shape="rect" href="mailto:gradsusr@gradsusr.org" rel="nofollow" target="_blank">gradsusr@gradsusr.org</a><br clear="none"><a shape="rect" href="http://gradsusr.org/mailman/listinfo/gradsusr" rel="nofollow" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a></div>
</blockquote></div>
<p><br clear="none"></p>
<div>-- <br clear="none">
<p>Kind regards,</p>
<p><strong>Stuart Markham</strong></p>
<p><em><img src="cid:RHAjvabKiq8fo4gHCLzy" data-inlineimagemanipulating="true" width="78" height="51"></em></p>
<p><em>Founder of CW Weather</em></p>
<p><em>Website: <a shape="rect" href="https://www.chorleyweather.com/" rel="nofollow" target="_blank">chorleyweather.com</a></em></p>
</div>
</div></div><div class="ydpc4a414f7yqt0434173963" id="ydpc4a414f7yqt75908">_______________________________________________<br clear="none">gradsusr mailing list<br clear="none"><a shape="rect" href="mailto:gradsusr@gradsusr.org" rel="nofollow" target="_blank">gradsusr@gradsusr.org</a><br clear="none"><a shape="rect" href="http://gradsusr.org/mailman/listinfo/gradsusr" rel="nofollow" target="_blank">http://gradsusr.org/mailman/listinfo/gradsusr</a><br clear="none"></div></div>
            </div>
        </div></body></html>