{"id":1872,"date":"2022-02-25T20:50:24","date_gmt":"2022-02-25T20:50:24","guid":{"rendered":"https:\/\/clarionsharp.com\/blog\/?p=1872"},"modified":"2022-02-25T20:50:24","modified_gmt":"2022-02-25T20:50:24","slug":"clarion-11-1-updated-and-anyscreen-2-0-released","status":"publish","type":"post","link":"https:\/\/clarionsharp.com\/blog\/clarion-11-1-updated-and-anyscreen-2-0-released\/","title":{"rendered":"Clarion 11.1 updated and AnyScreen 2.0 released"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">We have an update for Clarion 11.1 and a new version of AnyScreen (v2.0).  This build fixes an elusive bug in the MS Sql driver, and well as other fixes. A new feature introduced in this build is a new Pragma &#8220;eol_is_space&#8221;, here&#8217;s an excerpt from the Help file that describes it:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">PRAGMA (&#8216;option(eol_is_space => on | off)&#8217;) W<br><br>If the pragma is ON, end-of-line characters inside a string literal are treated as whitespaces allowing string literals to be multi-line. This option is useful for embedding non-Clarion code, such as Javascript, HTML, and SQL scripts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There are three requirements, (1) the last line of the assignment statement (the closing single quote) must be terminated with a semi-colon, and (2) you cannot have a WINDOW,REPORT,FILE or VIEW defined within the source code where the pragma is ON, (3) the embedded string literal has a maximum length of 64K.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Compiler Error: if the string literal is longer than 64K the compiler posts the error:<br>&#8220;Invalid string (misused &lt;\u2026&gt; or {\u2026}, or literal is too long)&#8221;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>     example: \nV CSTRING(1024),AUTO\r\n\r\n  CODE\r\n  \r\n  PRAGMA ('option(eol_is_space => on)')\r\n  \r\n  V = '\r\n        &lt;div ng-controller=\"ExampleController\" class=\"expressions\">\r\n          Expression:\r\n          &lt;input type=\"text\" ng-model=\"expr\" size=\"80\"\/>\r\n          &lt;button ng-click=\"addExp(expr)\">Evaluate&lt;\/button>\r\n          &lt;ul>\r\n           &lt;li ng-repeat=\"expr in exprs track by $index\">\r\n             &#91; &lt;a href=\"\" ng-click=\"removeExp($index)\">X&lt;\/a> ]\r\n             &lt;code>{{expr}}&lt;\/code> => &lt;span ng-bind=\"$parent.$eval(expr)\">&lt;\/span>\r\n            &lt;\/li>\r\n          &lt;\/ul>\r\n       &lt;\/div>\r\n\r\n       ';  !terminate with semi-colon\r\n  PRAGMA ('option(eol_is_space => off)')\r\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The use of this new pragma allows for some very useful functionality in AnyScreen 2.0. Essentially you can now embed blocks of HTML and Javascript using copy\/paste with no restrictions on special characters used with the pragma block.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The install includes a new example that shows how to embed an HTML editor, Code editor, Video player, Google Maps, Signature capture and the Canvas object. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Load up the example app from Clarion\\accessory\\examples\\AnyScreenDemo\\AnyScreenDemo.app and you can see it in action. Here&#8217;s a screen shot:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/clarionsharp.com\/blog\/wp-content\/uploads\/2022\/02\/AS-demo.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"491\" src=\"https:\/\/clarionsharp.com\/blog\/wp-content\/uploads\/2022\/02\/AS-demo-1024x491.png\" alt=\"\" class=\"wp-image-1874\" srcset=\"https:\/\/clarionsharp.com\/blog\/wp-content\/uploads\/2022\/02\/AS-demo-1024x491.png 1024w, https:\/\/clarionsharp.com\/blog\/wp-content\/uploads\/2022\/02\/AS-demo-300x144.png 300w, https:\/\/clarionsharp.com\/blog\/wp-content\/uploads\/2022\/02\/AS-demo-768x368.png 768w, https:\/\/clarionsharp.com\/blog\/wp-content\/uploads\/2022\/02\/AS-demo.png 1152w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can review the complete list of changes for <a href=\"http:\/\/softvelocity.cachefly.net\/Clarion-11\/readme_11.1.13788.txt\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Clarion11.1 here<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can review the complete list of changes for <a href=\"http:\/\/softvelocity.cachefly.net\/Clarion-11\/Readme_AnyScreen-2.0.txt\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">AnyScreen 2.0 here<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We have an update for Clarion 11.1 and a new version of AnyScreen (v2.0). This build fixes an elusive bug in the MS Sql driver, and well as other fixes. A new feature introduced in this build is a new Pragma &#8220;eol_is_space&#8221;, here&#8217;s an excerpt from the Help file that describes it: PRAGMA (&#8216;option(eol_is_space => &hellip; <a href=\"https:\/\/clarionsharp.com\/blog\/clarion-11-1-updated-and-anyscreen-2-0-released\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Clarion 11.1 updated and AnyScreen 2.0 released<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36,5],"tags":[],"class_list":["post-1872","post","type-post","status-publish","format-standard","hentry","category-clarion-11","category-clarionnews"],"_links":{"self":[{"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/posts\/1872","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/comments?post=1872"}],"version-history":[{"count":1,"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/posts\/1872\/revisions"}],"predecessor-version":[{"id":1875,"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/posts\/1872\/revisions\/1875"}],"wp:attachment":[{"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/media?parent=1872"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/categories?post=1872"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/clarionsharp.com\/blog\/wp-json\/wp\/v2\/tags?post=1872"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}