View Raw SPL
/* show first few lines of translated ASCII Table */

#include 

extern _rtpvnuml;

#define NUMRTLINES 50

_prert(fname, nrows, offset, startcol, hex, collist, delim, skip_delim, numcols, nanstr, infstr, commadec, wspstr)
{
        local s, dl, rtnaninfstr, wp;

        if (strlen(fname) > 0)
        {
                /* add -1 to collist if necessary */
                if (strlen(strfind("-1", collist)) == 0)
                {
                        collist = strcat(collist, ",-1");
                }

                /* check if double quote a delimiter */
                if (strlen(strfind('"', delim)) > 0)
                {
                        dl = sprintf("'%s'", delim);
                }
                else
                {
                        dl = sprintf('"%s"', _readt_delimiters);
                }

                rtnaninfstr = sprintf('"%s", "%s"', nanstr, infstr);

                if (commadec)
                {
                        rtnaninfstr = sprintf('%s, ","', rtnaninfstr);
                }
                else
                {
                        rtnaninfstr = sprintf('%s, ""', rtnaninfstr);
                }

                /* check if double quote a delimiter */
                if (strlen(strfind('"', wspstr)) > 0)
                {
                        wp = sprintf("'%s'", wspstr);
                }
                else
                {
                        wp = sprintf('"%s"', wspstr);
                }


                defvar("_rtpvnuml", NUMRTLINES);

                if (nrows < 0)
                {
                        nrows = _rtpvnuml;
                }
                else
                {
                        nrows = min(nrows, _rtpvnuml);
                }

                /* read RTNUMLINES worth */
                s = (sprintf("readt('%s', %d, %d, %s, %d, %d, %s, %s, %s, %s, %d)", fname, offset, startcol, collist, nrows, hex, dl, rtnaninfstr, wp, skip_delim, numcols));

                beginwait();
                s = eval(s);
                endwait();

                if (length(s) > 0)
                {
                        /* display */
                        disp(s, _previewstr);
                }
        }
}

_prert_error(errnum, errmes)
{
        endwait();
        message(errmes);
}