Refresh build 14523 — NOW, NOWUTC, DATE, TIME and DATETIME as built-in procedures, TopSpeedW keys in your locale’s order, and a Dictionary Editor that keeps every description in your language
A date-time value comes from one clock read: NOW(dt) fills a DATETIME,
NOW(d, t) a date and a time that can never straddle midnight, and
DATE(dt) / TIME(dt) take it apart again. TopSpeedW USTRING keys
sort the way your QUEUE sorts, by the Windows locale stored in the file. The Dictionary
Editor keeps table, key and version descriptions and every comment in your language and
shows the tables flat or grouped by category, the Applications pad sorts from a list and
shows when each procedure last changed, and a report blob prints from SQL tables too.
Already testing? Everything below is new since build 14487.
NOW · NOWUTC · DATE(dt) · TIME(dt) · DATETIME(dt, d, t) built in
TopSpeedW USTRING keys in the Windows locale order · /COLLATE=OFF · COLLATELOCALE
Dictionary Editor descriptions and comments in any script · Group by Category on or off
AppGen Applications pad sort list · last-modified stamp per procedure · Defaults-tab font
Report to PDF Image 2 PDF keeps your output name · auto-sized TRN fields print whole
SQL report blobs from SQL tables · exact BLOB size after ADD · three new how-do-I topics
First the two changes every Clarion developer meets in the first minute — the Applications pad and the Dictionary Editor — then the Unicode and language highlights of this drop, then the full tester guide, whose “What’s new” section lists everything that changed since you last read it.
For every developer: one-click sort in the Applications pad, and when each procedure last changed
The Applications pad’s sort button is now a split button: the face still cycles Name, Generation order and Modification date, and the arrow opens the three orders with the current one checked, so one click takes you straight to the order you want; the pad’s bottom line names the order in force and your choice carries over. Two check marks on Tools › Options › Clarion › Applications (AppGen) put the date and time of the last edit where you work: Always show modification date and time in the Applications pad keeps the stamp beside every application, and Show last modified date and time after each procedure in the Application Tree adds it after every procedure row in the Procedure, Module, Template, Name and Category views, with Procedure Properties showing the same stamp as a read-only Last modified line. The names still lead, so the order and the locator are as before. A procedure made from the Defaults tab now starts with your default font too. From beta requests and a beta report.
Dictionary Editor: the whole dictionary flat, or grouped by category — one check mark
Below the nine sort orders, Sort Tables has a Group by Category check mark. Checked, the DCT Explorer and the Tables pad show one folder per category as before. Clear it and every table lists flat under Tables, so the order you picked runs across the whole dictionary: Driver, for example, puts all the MSSQL tables together whatever category they sit in. Your categories are untouched and come back the moment you check it again. The same switch is on the Dictionary menu under Sort Tables and in Tools › Options › Clarion › Dictionary Editor › Table Options. From a beta report.
Date and time: the conversions are built-in procedures
NOW(dt) fills a DATETIME from one clock read (100 ns where Windows gives it); NOW(d, t) returns today’s date and the time of the same instant, so the pair can never straddle midnight the way TODAY() followed by CLOCK() can. NOWUTC gives the same instant in UTC with the local offset, DATE(dt) and TIME(dt) return the two parts of a DATETIME, TIME(h, m, s) builds a time the way DATE(m, d, y) builds a date, and DATETIME(dt, date, time) puts them together. Every result is exact and the same as the DateTimeUtil class gives; the class stays. A prototype of your own that clashes with a built-in now names it. From a beta request.
TopSpeedW: USTRING keys sort by the Windows locale
A TopSpeedW file created from this build on sorts a USTRING key the way a keyed QUEUE or SORT() sorts the same values: Ćup sits between Cena and Dan on a Croatian file, é sorts with e, and NOCASE is the locale’s case-insensitive order. The locale in force at CREATE is stored in the file, so the order travels with it to any machine; SEND(File,'COLLATELOCALE') answers it, and DRIVER('TopSpeedW','/COLLATE=OFF') keeps the code-unit order of earlier builds. Files created by earlier builds keep their order; re-create a file to move it. From a beta report.
Dictionary Editor: every description and comment in your language
The Description of a table, an alias, a key, a table category and a dictionary version, and every Comment, round-trip Unicode text exactly through save and reopen, the same as the column properties do; a key description the templates quote reaches the running application as the exact text. From a beta report.
Report to PDF: your output name, and every auto-sized field whole
With PDF Library to Use = Image 2 PDF, a report whose Output Name Type is Fixed or Variable, or whose code sets the name with SetFileName, writes that file when you choose Save As in the previewer, the same as the Clarion PDF library does; the Save dialog appears only when no name is set. A report STRING with the TRN attribute and no width or height in its AT() now prints whole on a Unicode page in the PDF, matching the Clarion 11 output of the same application. The page reader compiles into the application, so rebuild it after installing. From beta reports.
Reports and SQL: a blob per detail from SQL tables, exact sizes after ADD
A report TEXT,USE(blob) or IMAGE,USE(blob) fed from a VIEW over a SQL Server, PostgreSQL, ODBC or SQLite table prints each detail’s own blob, as it has on TopSpeed since build 14487, and SIZE(blob) after NEXT(view) answers on a SQL file too. On the MSSQL and ODBC drivers the size a blob carries after the ADD that streamed it is the length of the data you stored, so a second ADD from the same record buffer lands its row on ODBC Driver 18 for SQL Server as well. From a beta report.
Designers and templates: @K escapes everywhere, locators typed from the key
ENTRY(@K(###)@@@-##\@##K), the Key-in picture from the help, now opens in the Window and Report Designers and generates and evaluates the way it compiles: inside a @K picture a \ makes the next character a display character. The Clarion-chain browse locator value takes its type from the key component it locates on: a USTRING key gets a USTRING(31) value, any other key keeps the CSTRING(31) or STRING(30) the templates always wrote, so an application without wide fields generates the same locator code as before. From beta reports.
Help: three SQL how-do-I topics, and the manuals from the same source
How do I spell a PostgreSQL table name in the dictionary (an unquoted name folds to lower case; the one quoted spelling that opens), how do I define an ODBC data source (DSN) for a Clarion application (the 32-bit odbcad32, User vs System DSN, how OWNER and the import wizard use it), and how do I fill in Owner Name and Full Path Name for a SQL table. The seven manuals now print from the help project, so a topic reads the same in F1, in the PDF and in the new Markdown edition of each book made for AI tools; the current set is posted on the beta forum.
Full tester guide — mental model, conversion rules, DCT import table, screen controls, reports, blobs, SQL / SQLite / text drivers / TopSpeedW / Memory / IP, recipes, the new-language-surface quick reference, and what to focus on when testing. The guide’s “What’s new” section lists everything in this drop, and every section has its task topic in the F1 help’s “How do I …” chapter.
Open the full Unicode Tester Guide
Report tool authors —
the wide generator surface (IReportGeneratorW), format detection, the
EMF record set, transition paths per integration style, and the
PageTextIndexClass text index the previewer searches with:
Standalone pages (best full-width). Everything described there is implemented unless marked as a known limitation — if you see something different, the beta forum is the place.