Friday, August 16, 2019

Add Multiple Field in Page by Selecting

Insert all missing/available filed in a page by selecting them. AL Feature by Visual Studio Code extension AZ AL Dev Tools/AL Code Outline (many thanks Andrzej Zwierzchowski making developer life ease).




Using this feature we can insert all or selected field in a page. So, how it is woking, see below images which will guide you through:

Point / click on any place, a bulb will appear in the beginning of line or even in blank page body (see image):


Click on the Bulb & then on Add Multiple Field



Chose or select all & Click on OK


If there are nothing left to add, below message will appear in right bottom corner:



Again, many thanks to Andrzej Zwierzchowski. Keep adding such a nice feature.











Wednesday, August 14, 2019

AL File Wizard in Business Central

Visual Studio Code is now equipped having feature AL File Wizard (Thanks to Andrzej Zwierzchowski for the Visual Studio Code Extension) which provide developer to create objects like they were creating in C/AL through wizard. It is giving same feel as C/AL and ease to create below objects:



1. Page: Allows to select page type, fast tabs, source table & fields.
2. XmlPort: Allows to select source table and fields
3. Report: Allows to select source table and fileds.
4. Query: Allows to select query type, source table and fileds.
5. Enum: Allows to select list of enum values and captions.
6. Enum Extension: Allows to add list of enum values and captions to existing enum.

Below I am attaching steps to create a page using AL File Wizard:

Step 1: Right Click and Select New AL File Wizard



Step 2: Select the Page



Step 3: New Page Wizard will open



Step 4: Enter respective details



Step 5: Click on Next and move fields to Respective tab



Step 6: Click Finish to get the new Page in AL



Bingo! Check the file name, auto created based on the design pattern of Business Central. Cool, lots of feature are being added. Will never miss the development environment of  C/AL. Stay connected...

Friday, March 1, 2019

Dynamics 365 Business Central April 2019 Release Plan


Below are link which will give details of planned release of Business Central between April and September 2019.


·        Powerful new features for business users

·        Performance, reliability, and scalability enhancements

·        Accessibility

·        Base application as an app

·        Data and AI

 


What's new and planned for Dynamics 365 Business Central

 

Productivity enhancements for business users

Feature
Release type
Online vs on-premises
Date
General Availability
Both
April 2019
General Availability
Both
After April 2019
General Availability
Both
After April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019
General Availability
Both
After April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019
General Availability
Both
After April 2019
General Availability
Both
April 2019

 

Self-help and support

Feature
Release type
Online vs on-premises
Date
General Availability
Both
April 2019
General Availability
Both
April 2019

 

Productivity enhancements for administrators

Feature
Release type
Online vs on-premises
Date
General Availability
Both
April 2019
General Availability
Cloud
April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019

 

Powerful features for developers

Feature
Release type
Online vs on-premises
Date
General Availability
Both
April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019
General Availability
Both
April 2019

Sunday, January 13, 2019

How to Use app.json & launch.json in Business Central

How to configuring app.json & launch.json?

Both lauch.json & app.json in Business Central is backbone / foundation / manifest / core of extension / etc. Both are very important and by default created with minimum & mandatory values when we create a new project .

launch.json file contains information about the server that the extension launches on:

launch.json is automatically created when we create a new project in AL. Below are the example / sample of default file key & values:

{
   "version": "0.2.0",
   "configurations": [
      {
         "type": "al",
         "request": "launch",
         "name": "Your own server",
         "server": "http://localhost",
         "serverInstance": "BC130",
         "authentication": "UserPassword",
         "startupObjectId": 22,
         "startupObjectType": "Page",
         "breakOnError": true
      }
   ]
}

There are other keys & values (nodes / token) provided to configure as per requirement and for the other purposes.

Below are setting details from Microsoft Docs which is describing, how we will publish our extension on local server (on premise) and on cloud:

Publishing Extension to Local Server (On Premise Deployment):


Setting
Mandatory
Value
Example
name
Yes
"Publish to your own server"
MyBCServer
type
Yes
Must be set to ".al". Required by Visual Studio Code.
al
request
Yes
Request type of the configuration. Must be set to "launch". Required by Visual Studio Code.
launch
server
Yes
The HTTP URL of your server, for example: "http://localhost|serverInstance"
http://localhost
port
No
The port assigned to the development service.
7049
serverInstance
Yes
The instance name of your server, for example: "US"
BC130
authentication
Yes
Specifies the server authentication method. Currently, AAD authentication is supported only for Dynamics 365 Business Central sandboxes. AAD authentication cannot be used for on-premise servers.
Windows
startupObjectType
No
Specifies whether the object to open after publishing is a Page type ("Page") or Table type ("Table") object. The default is "Page".
Page
startupObjectId
No
Specifies the ID of the object to open after publishing. Only objects of type Page and Table are currently supported.
22
schemaUpdateMode
No
Specifies the data synchronization mode when you publish an extension to the development server, for example: "schemaUpdateMode": "Synchronize Recreate"
The default value is Synchronize. For more information, see Retaining table data after publishing. This feature is not supported in Dynamics NAV.
Usually we leave as default.
breakOnError
No
Specifies whether to break on errors when debugging. The default value is true.
ture (default value)
breakOnRecordWrite
No
Specifies if the debugger breaks on record changes. The default value is false.
Usually we leave as default.
launchBrowser
No
Specifies whether to open a new tab page in the browser when publishing the AL extension (Ctrl+F5). The default value is false. If the value is not specified or set to true, the session is started. If the value is explicitly set to false, the session is not started unless you launch your extension in debugging mode.
Usually we leave as default.

Publishing Extension to Cloud:


Setting
Mandatory
Value
Example
name
Yes
"Publish to Microsoft cloud sandbox"
SandBoxName
type
Yes
Must be set to ".al". Required by Visual Studio Code.
al
request
Yes
Request type of the configuration. Must be set to "launch". Required by Visual Studio Code.
launch
startupObjectType
No
Specifies whether the object to open after publishing is a Page type ("Page") or Table type ("Table") object. The default is "Page".
Page
startupObjectId
No
Specifies the ID of the object to open after publishing. Only objects of type Page and Table are currently supported.
22
tenant
No
Specifies the tenant to which the package is deployed. If you specify multiple configurations, a drop-down of options will be available when you deploy.
Tenant-Name

app.json files contains information about the extension:

app.json is automatically created when we create a new project in AL. Below are the example / sample default key & values:

{
   "id": "c8d3c095-f92b-4ca8-b426-2d5c3e7da96d",
   "name": "ProjectD365BC",
   "publisher": "Default publisher",
   "brief": "",
   "description": "",
   "version": "1.0.0.0",
   "privacyStatement": "",
   "EULA": "",
   "help": "",
   "url": "",
   "logo": "",
   "capabilities": [],
   "dependencies": [],
   "screenshots": [],
   "platform": "13.0.0.0",
   "application": "13.0.0.0",
   "idRange": {
      "from": 50100,
      "to": 50149
   },
   "runtime": "2.2"
}

There are other keys & values (nodes / token) provided to configure as per requirement and for the other purposes.

Below are setting details from Microsoft Docs which is describing, the app.json file contains information about extension that you are building, such as publisher information and specifies the minimum version of base application objects that the extension is built on. Often the app.json file is referred to as the manifest.

Below are detailed settings for app.json:

Setting
Mandatory
Value
Example
id
Yes
The unique ID of the extension. When app.json file is automatically created, the ID is set to a new GUID value.
"e2785bd8-1452-48bc-ade7-33c2ddb2b3d5"
name
Yes
The unique extension name.
ProjectD365BC
publisher
Yes
The name of your publisher, for example: NAV Partner, LLC
MyExtension
brief
No
Short description of the extension. (Mandatory, if required for AppSource submission)
My Extension
description
No
Longer description of the extension.
For testing internal
version
Yes
The version of the app package. (Mandatory, if required for AppSource submission)
1.0.0.0
privacyStatement
No
URL to the privacy statement for the extension. (Mandatory, if required for AppSource submission)
Usually left undefined.
EULA
No
URL to the license terms for the extension. (Mandatory, if required for AppSource submission)
Usually left undefined.
help
No
URL to the help for the extension. (Mandatory, if required for AppSource submission)
Usually left undefined.
url
No
URL of the extension package.
Usually left undefined.
logo
No
Relative path to the app package logo from the root of the package. (Mandatory, if required for AppSource submission)
Usually left undefined.
dependencies
No
List of dependencies for the extension package. For example: "dependencies": [ { "appId": "4805fd15-75a5-46a2-952f-39c1c4eab821", "name": "WeatherLibrary", "publisher": "Microsoft", "version": "1.0.0.0"}],
Usually left undefined. But must define if using any dependency (controll addins, etc.)
screenshots
No
Relative paths to any screenshots that should be in the extension package.
Usually left undefined.
platform
Yes
The minimum supported version of the platform symbol package file, for example: "11.0.0.0". See the Symbols for the list of object symbols contained in the platform symbol package file.
13.0.0.0 for Business Central
application
Yes
The minimum supported version, for example: "application": "11.0.0.0" (Note: Mandatory, if base application objects are extended or referenced. The AL package will be compiled against the application that is present on the server that you connect to. This allows you to write a single AL Language extension for multiple country versions as long as you do not depend on country-specific code. If you do depend on country-specific code you should only try to compile your app against a server set up for that country.)
13.0.0.0 for Business Central
features
No
To enable generation of the translation file, you must add a setting in the manifest.
"TranslationFile"
idRange
Yes
For example: "idRange": {"from": 50100,"to": 50149}. A range for application object IDs. For all objects outside the range, a compilation error will be raised. When you create new objects, an ID is automatically suggested.
As per extension series. For testing, usually leave with default.
idRanges
Yes
For example: "idRanges": [{"from": 50100,"to": 50200},{"from": 50202,"to": 50300}]. A list of ranges for application object IDs. For all objects outside the ranges, a compilation error will be raised. When you create new objects, an ID is automatically suggested. You must use either the idRange or the idRanges setting. Overlapping ranges are not allowed and will result in a compilation error.
Define in case of using different - different range. Basically for multiple reanges of object IDs.
showMyCode
No
This is by default set to false and not visible in the manifest. To enable viewing the source code when debugging into an extension, add the following setting: "showMyCode": true
TRUE
target
No
By default this is Extension. For Dynamics NAV, you can set this to Internal to get access to otherwise restricted APIs and .NET Interop. The Dynamics NAV Server setting must then also be set to Internal.
Internal
helpBaseUrl
No
The URL for the website that displays help for the current extension. The default URL is https://docs.microsoft.com/{0}/dynamics365/business-central.
Usually left undefined. Default value.
supportedLocales
No
The list of locales that are supported for looking up help. The value on the list is inserted into the URL defined in the helpBaseUrl property. The first locale on the list is default. An example is "supportedLocales": ["da-DK", "en-US"].
Usually left undefined. Default value.


For detailed explanation please read complete details on Microsoft Docs (Click Here)