Differences Between Magic xpa 4.6 and Magic xpa 4.7
Here are some prominent points by which Magic xpa 4.7 is different from Magic xpa 4.6. The following functionality is provided in 4.7:
Enhanced GIT Connectivity and Support
-
Magic xpa deprecates the use of PushOk Git plugin and supports TortoiseGit plugin as a default for connecting to Git.
-
Magic xpa Identifies if a project is under Git version control or not while opening it. Irrespective of whether a project is under Git or not, the three flags VCActive, WorkOffline, and VCUseGitPlugin are set to ‘N’ by default in the <project_name>.edp file.
-
Magic xpa Identifies when the working branch changes from outside and loads the contents of the project repositories.
-
Magic xpa checks the prerequisites for using Git with xpa. You will find a new option named ‘Git Connectivity’ under the menu File > Version Control. On selecting this option Magic xpa will check if:
1. TortoiseGit is installed
2. Compare and Merge is installed and configured
3. Developer eMail ID is configured
4. Developer ID is allocated
5. A Branch ID is allocated for the current branch
If anything from the above was not done then Magic xpa informs you.
-
Magic xpa supports unique version control ID. Magic xpa now guarantees the uniqueness of the ISNs being used among the developers. When you create a project in GIT for the first time, Magic xpa adds your following information into devids.txt file:
-
-
Developer's ID
-
Developer's Name
-
Developer's eMail
-
Magic xpa identifies a branch uniquely. Similar to devids.txt file, Magic xpa maintains a branch ID file named branchids_x.txt to store the active branch names and numbers to be able to identify a branch uniquely. You can create at the most 64 branches (0-63) of a project in Version Control.
-
Source Control Plugin setting is removed.
-
You can use the special flag SpecialDisableGITFunctionality to treat a Git project as a non-Git and work on it offline.
-
Git Flow Commands (git init, git feature start, and git feature finish) are provided under Version Control > Git Flow menu.
-
-
Git Flow Init - Initialize a directory as a Git flow repository.
-
Git Feature Start - Start a Git flow feature
-
Git Feature Finish - Finish a Git flow feature
-
When developing with Git, Magic’s Compare and Merge tool is mandatory. It is available at Downloads Area (downloads.magicsoftware.com).
-
Enhanced APG: The existing APG utility is enhanced to create Browse programs quickly when Data Source has relationships defined for Table linking. The programs are created with the following:
-
-
Multiple and multi-level Subforms (for 1:N relationships)
-
Linked Tables (for 1:1 and N:1 multiple and multi-level relationships)
-
The programs are created based on the selected relationship(s) from the APG Relationship Tree.
-
For creating the Browse programs, you need to set a Relationship Criteria to link the Tables. The relationship between two tables is displayed in the form of a tree.
-
If you have linked two tables in 1:1 relationship, then with the enhanced APG, a program is created with a Link Query in it.
-
While overwriting a Data Source, Magic xpa issues a confirmation message for deleting the Data Source from the SQL-type and ISAM-type databases.
-
In addition to Plain Text format, Magic xpa enables sending and receiving mails in HTML format using a function named MailFormatSet(mode). The support for HTML format is applicable only on Java mail framework.
-
Magic xpa introduces two functions named FileOpenDlg() and FileSaveDlg(), to enable you to upload and download the selected file(s) respectively. The functions are available in Online tasks only.
-
Magic xpa now supports scaling of Forms, Frames, and Controls in RIA executing on desktops.
-
Magic xpa supports expanding (+) and collapsing (-) the Block operations in Program Logic. In case of nested Block operations, expand/collapse state for the inner blocks is retained.
-
Magic xpa enables you to customize the foreground (FG) and background (BG) colors of Columns in Link operations.
-
Microsoft® Visual Studio Code now identifies the binding and shows the drop down box of IntelliSense in Magic xpa environment.
-
Magic xpa enables you to find a desired program from the entire repository when you enter the program’s source file name in Find Text dialog box. Magic xpa optimizes search by providing a check box named Search source file name only, which on clicking only searches the program associated with the source file name.
Thick => 2D
Thin => Windows
No Border => No Border
-
While migrating an application from uniPaaS, Magic xpa enables you to convert an Edit control with Data set as an Expression and located outside the container control to a Label control with the same Expression as its Text. A new Command Line Option UpEditWithExpToLabel is introduced, which upon setting to ‘Yes’ enables this conversion.
-
Magic xpa automatically installs Visual Studio 2015.
-
An Editing event named Create Line Above is introduced, which creates a record above the current record during Runtime. This event is supported in Online, Rich Client, and Web Client applications.
-
Magic xpa now enables you to define One-to-One (1:1), One-to-Many (1:N), and Many-to-One (N:1) relationships among the tables created in Magic Data Repository. Defining relations is not supported on XML table.
-
You can now use the binding (~) for the statements that do not return a result set.
-
Magic xpa was tested and is compatible to work with Microsoft SQL Server 2019.
-
Magic xpa introduces an Environment setting to handle re-initialization of the context when sessions terminate abnormally. The setting named Reinitialize Web Client sessions on abnormal terminations offers three options:
-
-
You can use the keyword named WebClientReInitSession, which upon setting to 'A' in magic.ini issues the same Alert message. The setting is effective on restarting Magic xpa Studio.
-
Magic xpa introduces an Environment Setting named Context Inactivity Warning Time, which enables you to set how much time before terminating the session you want Magic xpa to issue a warning message about termination of the session.
-
You can use the keyword named ContextInactivityWarningTime to set the time in magic.ini.
-
The Directive for Numeric Pictures is supported with blank ‘Zero fill’ characters. With this directive, Magic xpa fills the variable value with blanks if the variable value was zero. The characters other than blanks are not permitted in Directive of numeric pictures.
-
When Date or Time is zero, Date Picker or Time Picker will display it blank respectively.
-
You can change Date and Time formats to be different than that defined on Magic xpa’s Form.
-
Magic xpa supports CallJS() function in Web Client tasks to call a JavaScript method of Magic Angular component.
-
Magic xpa supports to define the level of binding between Edit control and variables. A property named Binding Level is introduced which lets you define binding option either as Control (where a variable receives a control’s value on leaving the control), or as Character (where a variable receives a control’s value on each character typed).
-
You can call Overlay programs from Load on Demand folder without Route.
-
A log level named RequestInfo is introduced, which upon setting in Web Client Application Execution Properties, the requests sent to server and their corresponding responses received from the server are logged on the console.
-
A method named PropertyChanged() is introduced, which on writing in the .ts file of the component notifies you about change in the value of Custom Properties property in Magic xpa. The method is invoked whenever value of any custom property changes.
-
When you change the contents of a Web page and attempt to close it without saving the changed contents, i.e. when the transaction cache is not empty, Magic xpa raises a warning about the pending changes. On all browsers except Chrome the context is terminated after the context-inactivity timeout.
-
Magic xpa does not issue Confirmation update dialog box on using Record Flush event.
-
Magic xpa now provides Enum for Custom Properties so that you can access them easily.
-
Earlier on generating an application containing Table control(s), the array displayedColumns[] used to be entered into <component_name>.component.ts file. The array is entered into mg.controls.g.ts file to avoid updating the <component_name>.component.ts file each time a new column is added into the array.
-
A function named IsContextReInitializing() is introduced to indicate whether the context has been reinitialized after abnormal termination of application. The function when called from Main Program/Task Prefix returns ‘TRUE’ when the context is reinitialized after crash.
-
Web Client tasks are set to behave in an interactive manner by default.
-
Magic xpa enables you to identify the runtime path of the error message that might appear in Client-side browser console while debugging Web Client applications.
Android
-
ZBar SDK is no longer supported in Android. Barcode is not supported via Zbar and sample project has been modified to use Pic2Shop on Android.
-
Magic xpa was tested and is compatible to work with Android 10.
-
Update the project target SDK and compatibility libraries to API 29 so that your custom applications developed for higher versions will work smoothly on your latest Android devices.
iOS
-
Replaced deprecated UIWebview with WKWebview: Sample projects and previously missed-out references are updated as per WKWebview implementation.
-
ZBar SDK is no longer supported in iOS. Barcode is not supported via Zbar and sample project has been modified to use Pic2Shop on iOS.
Magic xpa 4.6.3
The following functionality is provided in 4.6.3:
Magic xpa 4.6.2
The following functionality is provided in 4.6.2:
-
Magic xpa supports the use of RC5 Encryption method in Cipher() and DeCipher() functions.
-
A special flag named SpecialComponentLogging is provided in order to customize the behavior of component logging while loading a Magic component (ECF) at the time of opening a host application.
-
A special flag named SpecialAnsiBlobCheckNull is introduced to customize the display of the warning message about presence of a NULL in an ANSI Blob.
Magic xpa 4.6.1
The following functionality is provided in 4.6.1:
The following general enhancements are added in Magic xpa.
-
A function named UserRightGet() is introduced to retrieve the rights of the logged-in user.
-
A new INI parameter named MailFramework is introduced, which specifies the underlying framework used for mail functions.
-
TLS and SSL mail functionality is supported only over Java framework. To choose among SSL, TLS, or Plain, a new argument named ‘protocol’ is introduced in MailConnect() function, which is regarded when MailFramework=J.
-
The special flag SpecialRIAEncryptAES is removed from Magic xpa Help.
-
A Combo box on Studio's Status Line is provided to scale the active form during Runtime presents enhanced scaling options such as 110%, 120%, 130%, 140%, 150%, 175%, and 200%.
-
Allow Scaling property which was previously present in GUI Display forms is also added for GUI Frames forms.
32-bit Gateway Users: