Blog

Labels
AJAX(112) App Studio(7) Apple(1) Application Builder(245) Application Factory(207) ASP.NET(95) ASP.NET 3.5(45) ASP.NET Code Generator(72) ASP.NET Membership(28) Azure(18) Barcode(2) Barcodes(3) BLOB(18) Business Rules(1) Business Rules/Logic(140) BYOD(13) Caching(2) Calendar(5) Charts(29) Cloud(14) Cloud On Time(2) Cloud On Time for Windows 7(2) Code Generator(54) Collaboration(11) command line(1) Conflict Detection(1) Content Management System(12) COT Tools for Excel(26) CRUD(1) Custom Actions(1) Data Aquarium Framework(122) Data Sheet(9) Data Sources(22) Database Lookups(50) Deployment(22) Designer(177) Device(1) DotNetNuke(12) EASE(20) Email(6) Features(101) Firebird(1) Form Builder(14) Globalization and Localization(6) How To(1) Hypermedia(2) Inline Editing(1) Installation(5) JavaScript(20) Kiosk(1) Low Code(3) Mac(1) Many-To-Many(4) Maps(6) Master/Detail(36) Microservices(4) Mobile(63) Mode Builder(3) Model Builder(3) MySQL(10) Native Apps(5) News(18) OAuth(9) OAuth Scopes(1) OAuth2(13) Offline(20) Offline Apps(4) Offline Sync(5) Oracle(11) PKCE(2) Postgre SQL(1) PostgreSQL(2) PWA(2) QR codes(2) Rapid Application Development(5) Reading Pane(2) Release Notes(183) Reports(48) REST(29) RESTful(29) RESTful Workshop(15) RFID tags(1) SaaS(7) Security(81) SharePoint(12) SPA(6) SQL Anywhere(3) SQL Server(26) SSO(1) Stored Procedure(4) Teamwork(15) Tips and Tricks(87) Tools for Excel(2) Touch UI(93) Transactions(5) Tutorials(183) Universal Windows Platform(3) User Interface(338) Video Tutorial(37) Web 2.0(100) Web App Generator(101) Web Application Generator(607) Web Form Builder(40) Web.Config(9) Workflow(28)
Archive
Blog
Saturday, November 24, 2018PrintSubscribe
Blank Pages in VB + ASPX Projects

It appears that something has changed in ASP.NET configuration in the latest versions of Microsoft.NET.

Visual Basic compiler used to perform automatic binding of *.aspx.vb methods to events of the lifecycle of the *.aspx page.

It does not happen anymore. The custom code of the pages is not generated and only HTML markup is served to the clients.

The code generator uses a setting in configuration file [Documents]\Code On Time\Library\_Config\CodeOnTime.CodeDom.xml to set up AutoEventWireup attribute in aspx pages.

If you do experience a blank page issue in VB+ASPX projects, then open the file and change attribute autoEventWireup for VB provider as follows:

VB_AutoEventWireup

Save the file and re-generate your project. This will restore its normal operation.

We are still investigating this issue.

Labels: Tips and Tricks
Tuesday, November 13, 2018PrintSubscribe
Release 8.7.6.0 Hot Fix 1

The following features and bug fixes are included in release 8.7.6.0:

  • It is now possible to manually connect  1-to-1 entities in the model builder even when the foreign keys are not defined in the database.
  • Legacy ASPX page implementation does not reveal static content in Touch UI.
  • Unlimited Edition Trial  now supports cultures other than en-US.
  • Method BusinessRules.PreventDefault now accepts optional "cancelSelectedValues" argument. If set to "true" then processing of multiple values is immediately interrupted. This may be useful to avoid iteration over each selected row when the business rule has performed processing of Arguments.SelectedValues array on the first selected value
  • (Classic UI) Bootstrap pages are correctly "sized" for "lg" screen with the expected container width of 970 pixels.
  • (Classic UI) Fixed "match not defined" in _registerSpecialAction method of DataView.
  • "Left join" to "inner join" optimization is now disabled when selecting data if “Quick Find” or “Is Null” filters are detected.
  • (Touch UI) If a new lookup item is created in a from then the parent form in "edit" mode will not lose its selected key value.
  • Fixed incorrect exception reporting from forms. Exceptions were not delivered to the client if there was no transaction on the server.
  • Distinct requests to get values will override the model-defined Order By statement when creating a Group By expression.
  • (Touch UI) Import process correctly starts after the mapping of fields has been completed.
  • Fixed the error with view-level sort expression being ignored.
  • Fixed compilation issue in Standard edition apps caused by new Business Rule Builder available in Site Content.

Model Builder has been enhanced in this release with additional support for 1-to-1 entities. Borrowed/inherited required columns are displayed as bold. The legend in the Spec displays both “W” and “B” letters signifying that the field is writeable and borrowed. If a developer is manually connecting primary key of one entity to another then the 1-to-1 relationship is established.

This is a simplified model of HumanResources.Employee2 table from Adventure Works sample database. The table inherits columns from Person.Person2 and Person.BusinessEntity.

1-to-1 entity in the Model Builder of Code On Time.

The form of Employee will display writable columns from all tables of the 1-to-1 relationship and persist them in a context of a transaction.

Entering a 1-to-1 entity in the app created with Code On Time app builder.

Please note that “rowguid” and “ModifiedDate” columns were also marked as hidden in this sample.

Monday, November 5, 2018PrintSubscribe
Native Apps, 1-to-1 Entities, Unlimited Edition Trial

It is our pleasure to announce release 8.7.5.0. The highlight of this release is the ability to create Native Apps for iOS, Mac OS, and Windows 10. Any app created with the new release will work on mobile devices.

For the first time we are also introducing framework support for 1-to-1 database entities. Model Builder automatically recognizes one-to-one relationships in your database and creates a singles editable entity with full transactional support when updating, inserting, and deleting records. See examples from Adventure Works database below:

Person 1-to-1 Entity Model

image

Employee 1-to-1 Entity Model

image

Model Builder configures the new lookup style “1-to-1” on the primary keys of entities. Borrowed fields are configured as virtual to enable data input. The framework treats all fields as if they belong to a single record. Saving data will distribute information to the right tables in the context of a transaction.

Transactional support has been extended to “Many-To-Many” fields. For example, if the master with a many-to-many field fails to delete due to database constraints then the linked delete many-to-many items will be rolled back.

Linked-In OAuth provider is now available to allow authentication and single sign-on.

New robust implemention of GEO location detection is available in mobile and web apps.

App generator now uses “var” keyword whenever possible for a cleaner code.

Also for the first time we make the full power of Unlimited Edition available at no charge on the trial basis. The code framework of Unlimited Edition apps is incorporated in the single FreeTrial.dll included in the apps. Unlimited Edition Trial makes possible testing of the full featured applications.