Salesforce

Differences Between Magic xpa 3.0 and Magic xpa 3.1x (Magic xpa 3.x)

« Go Back

Information

 
Created ByKnowledge Migration User
Approval Process StatusPublished
Objective
Description

Differences Between Magic xpa 3.0 and Magic xpa 3.1x (Magic xpa 3.x)

New Functionality
  • Frames forms now work with the new Form Designer. There is a new Frames Layout property where you define the frame layout of the form.

  • The Quick Expression Editor is now supported in the Properties pane.

  • The Expression Editor now has a Validate button that lets you easily see the error.

  • The Expression Editor's Wide mode now displays the client/server indicator.

  • You can view the ancestor form by selecting the form from the drop-down list in the toolbar.

  • You can now create, modify and delete fonts and colors directly from the font and color picker by using the buttons at the bottom of the repository.

  • The Runtime Form Designer lets the end user make changes to the form during Runtime mode.

  • Non-TrueType fonts are now supported for forms in order to have the same form size as in previous versions.

  • Access to WCF services using .NET integration.

  • Support for WCF message contracts (Since version: 3.1a)

  • Windows 10 support

  • Pervasive 12 support

  • The Pervasive database now supports the Unicode data type.

  • Microsoft® SQL Server 2016 support (Since version: 3.1a)

  • Upgrade to Android Support Library v23

  • The Cancel (Ctrl+F2) option was added to the Edit menu.

  • The application execution file now has an optional setting, ClientCachePath, where you can set the location on the client where the cache files will be created.

  • The MgxpaSettings utility now lets you create a cabinet file (ECF) from the project sources without using the Studio.

  • It is now possible to show static controls on the MDI form. Unlike previous versions, there is no need for a separate form; you can place the controls directly on the MDI form defined in the Main Program.

  • In the Document Outline, you can now search for a control by its name.

  • The Local database supports encryption also on the Windows desktop client.

  • You can now use the Call by Expression operation to call a program from within a host application.

  • In Runtime, if you have a large amount of menus that do not fit in the menu bar, an arrow button will now be seen at the end of the menu bar. The rest of the menus will be seen after clicking on the arrow button.

  • You can now stop and start servers from the monitor, as well as terminate contexts and requests.

  • You can now filter the information displayed in the monitor by parking on specific servers or contexts.

  • Single Sign-on for RIA clients is now supported.

  • The Go to Object and Return from Object options are supported for subforms and frames.

  • In the Model selection list only the applicable models are displayed instead of all of the models.

  • When parking on a field in the property pane, you can now move between properties using the keyboard.

  • You can now expand a property and see the expression by pressing Alt+Enter.

  • The Invoke UDP operation has a new property. The UDP Type property determines whether the UDP will run on the Runtime engine's GUI thread (main thread) or background thread. Up until Magic xpa 3.1a, the UDP was always executed on the main thread. (Since version: 3.1a)

New Functions
  • ControlItemsRefresh – Refreshes the Items list of a specific control. This function is useful when you have controls that get their Items List from a data source and the end user adds entries to the data. You can then use this function to see the new entries in the control.

  • ControlsPersistencyClear – Clears the persistency of the controls.

  • VarDisplayName – Returns the descriptive name of a variable.

  • RangeExpAdd – Adds filtering criteria to the range, such as 'A>5 or A<2', so that the next time the view is refreshed, the new criteria will be used (in addition to the range defined in the task).

  • Three functions for the End User Functionality enhancement. For more information, see the End User Functionality section below.

  • FormUnitsToPixels – Converts a value in the current form units to a value in pixels.

  • PixelsToFormUnits – Converts a value in pixels to be based on the form’s units.

  • ControlSelectProgram – Returns the Select Program property value defined in the control.

  • SQLExecute – Executes an SQL statement.

  • ClientSQLExecute – Executes an SQL statement on a local database.

  • ColorSet – Dynamically updates the color table loaded into memory with a new color value.

  • FontSet – Dynamically updates the font table loaded into the memory with a new color value.

Properties and Settings
  • Action Bar Menu form property – You can define a menu entry that will be seen on the right side of the Action or Navigation bar (mobile devices only).

  • Display Name variable property – You can enter a descriptive name for the variable. This name will be used as the control name in the Range/Locate screens and the control caption when placing the control on the form. As of Magic xpa 3.2a, this can also be used as the name in the Print Data Wizard.

  • Top Border Margin property (for Groups controls) – Defines if the top border will be seen with a margin when the group has no text.

  • Border Style (for Radio controls) – Defines the style of the control's border.

  • Swipe Refresh (for Table controls) – Defines whether the view is refreshed when swiping down from the top of the table.

  • Fill Width (for Table controls) – Defines whether the columns will be spread over the width of the entire table. This lets you automatically resize the other columns if a column gets hidden or visible or if a vertical scroll bar appears.

  • Title BG Color – This property now has support for Windows in addition to Android and iOS devices. This property defines the background color of the Table control’s title. Since version: 3.1 (Android and iOS support – Since version: 3.0)

  • Divider Color (for Table controls) – You can now define the color of the column dividers and line dividers.

  • Multi Column Display (for Table controls) – Controls placed on a table can now be shown on multiple columns. This property provides backward compatibility for uniPaaS 1.9 applications. (Since version: 3.1a)

  • You can now define the color for the last column. When the Set Table Color property is set to Column, the value set in the Color property of the table will be used for the remaining area after the last column.

  • It is now possible to filter columns during Runtime. This is done by using the Allow filtering column property. Once defined, a filtering screen from the End User Functionality component will be shown to the end user.

  • Title Color (for Tab controls) – The color for the tab's title is taken from this new property and not from the Color property.

  • Hot Track Color (for Tab colors) – Defines the color for the tab title items when the mouse cursor hovers over them.

  • The Tabs Width property now has a Fixed in Line option. When you select it, each tab is evenly spread across the entire width of the Tab control.

  • Title Padding (for Tab appearance) – You can now define the amount of space around each tab's caption in a Tab control.

  • Left and right tabs are now supported.

  • Style (for Combo Box controls) – The 2-D style was added to the Combo Box control to provide the same appearance as in previous uniPaaS versions.

  • You can now inherit and assign expressions to multiple controls.

  • Default Focus Color environment setting – You can define the focus color of all the Edit controls and not only per control. From Magic xpa 2.x, the focus color was the same as the control color, making it difficult to see which control was in focus.

  • The Range/Locate Box Popup Seconds and Sort/Temp Box Popup Seconds environment settings are now supported as in version 1.9.

  • The new Version Control ID environment setting adds a prefix to the current ISN number of objects in the source files.

  • The VCProjectID setting in the .edp file adds a prefix to the current ISN number of objects in the source files. The purpose of this setting is to provide a distinguished ID for the representation of internal objects in the source files. This provides the proper infrastructure for third party apps, such as compare and merge tools. (Since version: 3.1a)

Upgrade Process Improvements

The following improvements were done to the upgrade process in order to minimize and reduce the manual work required:

  • The Upgrade Manager utility is provided to make the upgrade process easier.

  • The upgrade wizard is opened when opening or importing applications.

  • Creating new fonts and assigning them to controls to easily change non-TrueType fonts to other fonts.

  • Creating new colors and assigning them to controls to replicate the uniPaaS 1.9 appearance.

  • Labels are converted to column titles even if they start a few pixels before the column starts.

  • Controls placed on a Table control’s column or a Group control, but not attached to it or attached to another column or a Group control, are now attached to the proper control.

  • Additional information was added to the upgrade log file.

Space Middleware
  • The deployment of the space and the startup of Magic xpa servers in a cluster are now automatically handled by one GSA in the grid.

  • The Magic xpa servers are only started after the space is successfully deployed by the current GSA.

  • You can now stop a specific instance of a project from the command line.

  • You can use the DefaultApplicationAndProgramName system property to define the default application and program names whenever the APPNAME or PRGNAME is missing in the URL.

  • You can define customized error templates for errors returned to Web requesters using the system property: the
    -Dcom.magicsoftware.xpa.DefaultErrorFormatFileNames= setting in the setenv.bat file and Magic.ini file’s [JVM_ARGS] section.

  • The Install_GSA_service.bat file and other files are installed in the GigaSpaces-xpa\OS_service folder allowing you start the grid as a service.

  • Worker Request Polling Interval environment setting – This setting controls the interval, in milliseconds, in which a server checks for unhandled requests in the Space.

  • Maximum Number of Contexts environment setting – This setting specifies the maximum number of contexts that are handled by a single Magic xpa server.

  • The Space middleware, like the broker, is now able to automatically load a new Magic xpa server when receiving a request and there are no available servers to serve that request.

  • When Magic xpa servers are started from the grid (projectsStartup.xml), the Server Address property in the Magic.ini file is ignored and the LOOKUPLOCATORS= set in the GigaSpaces-xpa\bin\setenv.bat file is used instead. Note: As of version 3.2, LOOKUPLOCATORS was renamed to XAP_LOOKUP_LOCATORS.

  • The Tomcat Web Requester can be used instead of or in addition to the ASP.NET Web requester.

  • A server entry in the Magic xpa GigaSpaces Monitor now has a new status: Waiting for GS Agent. This status means that the GSA will keep retrying, every 60 seconds, to restart the Magic xpa server

  • A new Space Monitor application log based on the log4net infrastructure is now available in the MgGSMonitor.exe.config configuration.

Space Databases
  • Direct SQL can now be used for execution commands (commands that do not retrieve records).

  • The Part of Datetime column property is now supported.

  • Additional database functions are now supported.

End User Functionality Enhancement

The End User Functionality now includes the following enhancements:

  • You can now do a range on partial text in your data using the new Contains option added to the range.

  • Advanced/dynamic range expression – You can now define complex ranges by using the Advanced tab in the Range screen.

  • Range/Locate according to the original control choice values

  • Range/Locate – You can now zoom from a control in the Range/Locate screen and select values from a selection table defined on the original control.

  • Range filter screen for column filtering

For the purpose of this feature, new functions were added:

  • VarControlID – Returns the index of the control attached to the variable.

  • ControlItemsList – Returns the Items List property value defined in the control.

  • ControlDisplayList – Returns the Display List property value defined in the control.

  • ControlSelectProgram – Returns the Select Program property value defined in the control.

Table Controls
  • You can select all of the controls on a table without the table itself by doing one of the following:

  • Press Shift+Click on the table.

  • Click on the table, then click on the action arrow on the top right side of the Table control and choose the Select attached controls option.

  • Click on the table, then click the Select attached controls link at the bottom of the property sheet.

  • It is now possible to have controls on the title area of a Table. This is the same functionality that was available in uniPaaS 1.9 for 2D Table controls.

Mobile Changes
  • Magic xpa now supports the Android Studio and uses the Gradle tool for compiling the APK file. To compile the client, you need to install the Android Support Repository and Android Support Library component from the Extras folder in the Android SDK Manager. When compiling the client, you must have internet access (at least on the first build) in order to download all of the Gradle components.

  • You can now use a generic RIA client (without server connection details) and provide the application URL as an argument to it. This enhancement allows you to open the same client with different application URLs.

  • For iOS devices, the caret only appears on the focused Edit control when the keyboard is present. In previous versions, the caret always appeared on focused Edit controls. The new behavior is similar to the native iOS behavior.

  • The Android folder structure was changed:

    The source files are now located at: RIAModules\Android\Source\app\src\main\java\com\magicsoftware\magicdev

    The manifest file is now located at: RIAModules\Android\Source\app\src\main

  • When the Execution on Android button is pressed in and you run a project or program, if the mobile application is not installed on the device, the Magic xpa Studio will install it.

  • In the Title BG Color table property and Title Color tab property, you can now use expressions for iOS and Android devices.

  • The Check Box control's Appearance property now has a Switch option for use on Android devices.

  • The Sortable column property is now supported for Android and iOS devices.

  • The size of the icons for Tab controls was changed to 25 points, which is compliant with the iOS Human Interface Guidelines.

Special Settings
Miscellaneous
  • -117 RQGNRC ERR MISMATCHED REQIDS – A requester sent a request to a Magic xpa server and received a response that was directed to another request. Since version: 3.1 (In previous versions, error RQ_ERR_UNEXPECTED (-200) was returned in this scenario.)

  • It is now possible to encode the entire URL string sent using the HTTPCall function by defining @ as the first character in the URL string.

  • Form Designer – The expanded properties' state is kept when moving between controls.

  • As of Magic xpa 3.1, the Print Preview dialog box is once again closed using the Escape button.

  • The Print Preview dialog box no longer loses focus if there is logic defined that changes the focus to another control.

  • The Open Application event now uses the previous application location.

  • Source files were changed to better support external merge and compare tools.

  • The mapping between a large Numeric field and the database was by default Binary. Now the default is CHAR. If you have existing data in binary fields, you must specify Binary as the SQL Type for this specific field in order to keep the previous mapping.

  • Note that when selecting to install the GS middleware as a service, the service's Startup Type is now set by default to Manual (Since version: 3.1a). Therefore, if you use this machine for deployment, you should change the Startup Type to Automatic.

Reference
Attachment 
Attachment