View Raw SPL
/* is series date and time */
isdatetime(s = refwindow(w0))
{
        local status = FALSE;

        if (isarray(s))
        {
                if (numcols(s) >= 2)
                {
                        t = s[.., 2..2..end];
                        d = s[.., 1..2..end];

                        /* check units */
                        status = isdatetime_iterate(d, t);
                        status = transpose(status);
                        status = all(status);
                }
        }

        return(status);
}


/* iterate through columns */
ITERATE isdatetime_iterate(d, t)
{
        local vunits, status;

        /* use Z units to get date for each column */        
        vunits = tolower(getzunits(d));
        status = (vunits == "date");

        vunits = tolower(getzunits(t));
        status = status && ((vunits == "time" || vunits == "real time"));

        return({status});
}