Help get this topic noticed by sharing it on Twitter, Facebook, or email.

Charts Everywhere

Next update includes new view style called Charts. The feature will be available in Touch UI. Learn about it at http://codeontime.com/learn/touch-ui/....
Reply
  • When this will be available for Desktop? Don't forget about Desktop style of application, I believe many of us are using desktop style for business apps more than TouchUI.
    Maybe you shoud make a poll to see percentage of use of certain style of application.
    • I agree completely. In our business use of COT the desktop model is the most important aspect and is the main justification for the use of COT. The Touch UI is fine for certain types of applications but Mainstream Business applications are around the Desktop version.
    • Roger, we are positioning Touch UI as the next generation of Desktop UI.

      Touch UI has been created by the same people who have built the Desktop UI. They have re-imagined the desktop application presentation to be suitable for both Touch and Desktop devices.

      Starting with release 8.5.0.0 there are numerous usability enhancements. For example, we have turned off transitions for Desktop users by default. You can right-click data cells to immediately filter the entire data set by the cell content. End users will be able to take advantage of Smart Charts - http://codeontime.com/learn/touch-ui/....

      We will continue making enhancements to Desktop UI. The next release brings a brand new page model for apps called SPA (Single Page Applications). This is really nothing new for you. Every page in a CoT app is fundamentally a Single Page Application. Multiple data views refresh without reloading the page. It has been this way for many years from the inception of the product.

      The new SPA page implementation uses HTML only implementation. If you generate an app then you will see an extremely compact set of files - a few HTML pages, scripts, stylesheets, and some code files.

      The reason for the change are below:

      1) Trim down and simplify application design to make it understandable to new and experienced developers.

      2) Pretty URLs. Right now you may have /Pages/OrderDetails.aspx. You will be able to access the same page as /pages/order-details or my-own-pretty-url/client-xyz/order-details

      3) Integrated Content Management System. The new page implementation model will make possible built-in CMS. If you create a table called SiteContent with a few fields than all of a sudden your application is capable of serving dynamic content on the fly. You can create any kind of resources - data and content pages, images, scripts, static documentation files. You decide, which users will see the content.

      4) New page implementation will also make possible OFFLINE applications. Most of the life-of-business applications today require a workforce that does not have a permanent connection with the backoffice servers. The new page model will let us force the browsers to download page definitions and data to the disconnected devices. Client-side framework of apps will download data from the server app and keep track of changes (update, insert, delete) on the client while simulating data updates for the end user. Global Commit and Rollback commands will be available to the user. "Commit" will send the recorded updates to the server and process them in a single database transaction.

      Release 8.5.0.0. will also introduce super lightweight Dynamic Access Control List. If you enable CMS in an app then you can literally change data visibility at runtime since the rules are stored in the application database.

      The bottom line - if you prefer Desktop presentation style then keep using it. If you do have a spare moment than take a look at Touch UI - this is just a new makeup on the same face. You will see your data like never before. We hope you will fall in love some day!
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • uremovic, we are absolutely not forgetting Desktop UI. Every release includes new enhancements to the core code shared by both user interface models.

    The pivot feature is the foundation of the new charting capabilities in Touch UI. Server-side pivoting is available in both user interface models.

    Charts are available in Desktop UI. The feature is described at http://codeontime.com/learn/getting-s....

    We are considering replacing server-side charts of Desktop UI with the client-side equivalent based on the same technology shown at http://codeontime.com/learn/touch-ui/... in the near future.

    The next release will include a major enhancement that will affect both Desktop and Touch UI. We are introducing two alternative page implementation models.

    Presently all pages are implemented as Active Server Pages (*.aspx) files. Each page is hosting multiple data controllers that present views without reloading the page from the server.

    The new model will allow pages to be implemented as simple HTML files. This model will be called Single Page Apps (.html).

    Old projects will continue with the *.aspx model unless switched to *.html. This is the screen shot of the switch in the project wizard.



    Here is an actual page equivalent to http://demo.codeontime.com/northwind/....

    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Categories</title>
    <meta name="description" content="This page allows categories management." />
    </head>
    <body>
    <div data-flow="NewRow">
    <div id="view1" data-controller="Categories" data-view="grid1" data-show-in-summary="true"></div>
    </div>
    <div data-flow="NewRow" style="padding-top:8px">
    <div data-activator="Tab|Products">
    <div id="view2" data-controller="Products" data-view="grid1" data-filter-source="view1"
    data-filter-fields="CategoryID" data-page-size="5"
    data-auto-hide="container" data-show-modal-forms="true"></div>
    </div>
    </div>
    </body>
    </html>


    Page URLs in the new model will look like this:

    ~/pages/categories




    It will be possible to indicate if the page needs to be generated "First Time Only" starting with the new release for both page implementation models. The default generation mode is "Always". Developers will be able to change the page without loosing the contents after subsequent code generation if the page generation mode is "First Time Only". Previously pages can only be extended with user controls as explained at http://codeontime.com/learn/user-cont....

    Developers will be able to specify custom scripts in the head element of the page if custom JavaScript is required for implementation.

    The new SPA page implementation model will allow implementing a Content Management System in any app.

    Basically if you create a data controller called SiteContent (the name may change at the time of the release and will be configurable) with fields Title, Content Type, Length, Data, and URL then your website will be able to serve the content with "pretty" URLs. Application framework will use your controller to locate resources if a standard resource does not exist.

    The security system is based on standard Dynamic Access Control Rules (http://codeontime.com/learn/security/...). If the site content record is not available then the resource is not served.

    Dynamic content will integrate into application menu.

    End users can create new "data" pages (similar to the markup shown above), free-form HTML, or Bootstrap content (see sample at http://demo.codeontime.com/northwind/...).

    Binary resources will also be supported.

    We expect this feature to be in the next release. This new feature will be available in both UI models. Standard and Free edition will display a watermark on the dynamic content pages. Premium and Unlimited edition users will have no watermark.

    The feature is the foundation of the upcoming Workflow Register. Our implementation will include integrated community pages, support ticket pages, blogs, and standard site content. Workflow Register will be included in Unlimited edition only. Built-in Dynamic Access Control List is the foundation of the dynamic security system in Workflow Register.

    We have been working on the Workflow Register for quite awhile already. CMS integration signifies the first elements of the Workflow Register and upcoming http://cloudontime.com making it to all application generator users.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • hi

    When is this update release ?

    Shenoy
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • Are all of the views going to be included in the next release "charts, calendar, shopping cart"? I noticed they are all shown in the pictures and am really hoping to finally have the calendar view and am curious about how the shopping cart view will work.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • View style "Charts" will be included in the next release.

    Here is the screen shot from the pre-release "almost final" version of the charts that are produced automatically for Orders in Northwind sample.



    You don't need to lift a finger to have up to nine charts automatically produced for any data set. Almost any data set will have the "Charts" view. Developers will be able to specify any number of charts at design time.

    "Calendar" view style uses the same exact data pivoting technology that is in the foundation of charts. This presentation view style will be enabled if at least one DateTime field is detected in the dataset. "Calendar" view style will be available within a month or so after the upcoming release.

    Shopping Cart is an experimental view, which may become available in the future.

    We are planning to release at least one more built-in view style that will be called either Infographics or KPIs. The view will be enabled if at least one DateTime field is detected. The view will display several gauges, diff-charts, and pivot tables providing insight into the dataset.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • I’m excited
    What is expected date of release?
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • The release 8.5.0.0 will go out on March 2.

    It will include the following major features:

    1) "Single Page Applications" page model based on HTML for Desktop and Touch
    2) Integrated Content Management System (CMS) in Desktop and Touch UI
    3) Dynamic Access Control List in Desktop and Touch UI
    4) "Charts" view style in Touch UI
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • DACL is primarily intended to work with the integrated CMS but can be also defined in apps without CMS.

    Applications with the new page implementation model "SPA" (html-based pages) will support integrated Content Management System.

    If there is a database table called SiteContent with the predefined fields (ContentID, Data File Name, Data Length, Data Content Type, Data, Path, CacheProfile, Roles, Users, Text, RoleExceptions, UserExceptions), then the integrated CMS is automatically activated.

    Site Content will store:
    1) pages with pretty URLs
    2) text-based sitemaps
    3) html-based user controls
    4) data controller XML files
    5) dynamic access control rules (XML files)
    6) Any other content (images, CSS, JavaScript files, etc.) with pretty urls

    The name of the "SiteContent" table and field names can be application-defined with a little bit of code. Integrated CMS will work with all supported database engines (SQL Server, MySQL, Oracle, etc.)

    If a stored page has its roles/users/exceptions match the user identity then the user will see the stored page.

    If a stored sitemap is matched to the user then the user will see the menu configuration defined by the sitemap. Any number of sitemaps can be developed. Menu items may have their own users/roles/exceptions if needed.

    If a stored data controller XML file is matched to the user then that particular configuration of data controller is used to process data requests.

    Dynamic Access Control List is a collection of XML files either stored as CMS files with "dacl" path or stored directly in the application file system in "~/dacl" folder.

    The framework of apps created with Premium or Unlimited editions will read all "dacl" files and enumerate rules defined in them.

    Here is a sample of a DACL file:


    <accessControl>
    <if field="CustomerID" roles="Users" roleExceptions="Administrators">
    <allow>
    [CustomerID] in ('ANTON', 'ANATR')
    </allow>
    </if>
    <if field="CustomerID" controller="Customers" users="user">
    <allow>
    [Country]='USA' and [ContactTitle]='Owner'
    </allow>
    </if>
    <if field="CustomerID" roleExceptions="Administrators">
    <allow>
    select CustomerID from Customers
    where Country='UK' and City='London'
    </allow>
    </if>
    </accessControl>


    A rule is triggered if the data controller view has the field specified in the "field" attribute of the rule. Application also checks "controller", roles/users/exceptions attributes.

    Snippets of SQL defined in the user-matched rules are embedded into SELECT statements composed by application framework. References to properties of Business Rules class can be specified as @BusinessRules_PropertyName. For example, @BusinessRules_UseId will be bound to the user ID.

    If a field name is specified in square brackets (for example, [CustomerID]) then the reference will be replaced with the actual expression that matches the rule in a data controller.

    For example, the same exact rule may trigger for any view that has CustomerID field. If a rule is triggered for Customers.grid1 then [CustomerID] is replaced with "Customers"."CustomerID". If a rule is triggered for Orders.grid1 then [CustomerID] is replaced with "Orders"."CustomerID".

    The advantage of the rules stored in CMS is that you can change them without redeploying your app. A single rule can apply to any number of data controllers.

    The follow up release will include another enhancement available to Unlimited edition users only. Element will support child node that provides a custom schedule for the rule activation. Details will be available soon.

    Here is a sample of a sitemap:


    + Home <root>
    ~/pages/home
    Description: Application home page.

    + Site
    ~/pages/site-content

    + Products
    ~/pages/products
    description: Current product catalog.

    ++ Categories
    ~/pages/categories
    description: Manage product categories.

    ++ Suppliers
    ~/pages/suppliers
    description: Manage product suppliers.

    +++ Customers
    ~/pages/customers

    ++++ Order Headers
    ~/pages/orders
    roles: Administrators

    ++++ Order Details
    ~/pages/order-details

    + Shippers
    ~/pages/shippers

    ++ Employees
    ~/pages/employees

    ++ Territories of Employees
    ~/pages/employee-territories

    + Microsoft.com
    _blank:http://microsoft.com
    description: Visit Microsoft.com to buy Surface 3.
    roles: Administrators

    + Code On Time
    http://codeontime.com


    The initial release of integrated CMS will allow creating content using GUI of SiteContent data controller.

    The follow up release will include live editing of pages. Any static page of an app stored in "~/pages" folder can be used as a template for a new page. Content pages will support definition of "editable" content that can changed by users with "Content Editors" role.

    Note that developers can create complex SiteContent data controller implementations that reference master lookup tables and have many-to-many fields for "Roles" and "Users".
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • I was wondering if there's any update (release estimation time) on this one?
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • The release 8.5.0.0 has been released to production yesterday.The prompt to download update will begin to show up on Monday.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • Thanks, This is a great news.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated

  • Please supply the default table columns for SiteContent table so that we do not have to guess what needs to be minimally included for this feature to work properly.
  • (some HTML allowed)
    How does this make you feel?
    Add Image
    I'm

    e.g. indifferent, undecided, unconcerned happy, confident, thankful, excited kidding, amused, unsure, silly sad, anxious, confused, frustrated