Develop Notifications-NAV 2017

Previously I wrote about new feature Notifications in following blog Notifications.Today will explain how to write/develop notifications.

Notifications provide a programmatic way to send non-intrusive information to the user interface (UI) in the Dynamics NAV Web client. Notifications differ from messages initiated by the MESSAGE function. Messages are modal, which means users are typically required to address the message and take some  corrective action before they continue working. On the other hand, notifications are non-modal. Their purpose is to notify users  about a current situation, but do not require any immediate action or block users from continuing with their current task. For example, you could have a notification that a inventory balance is low or customer have overdue balance etc.

Notifications are not stopping the users from going ahead as it will display the notifications in notification bar i.e on top of the page (just like validation errors).User can dismiss the notification and continue working.

  • Multiple notification will appear chronological order from top to bottom
  • Notification remain available until page instance or until user dismiss it.
  • Sub page notification will also display on top of page.
  • Validation will be shown before notification

By using the Notification and NotificationScope data types and functions in C/AL, you can add code to send notifications to users. The following table provides an overview of the available functions. The sections that follow provide additional information about how to create notifications.

Function Description
MESSAGE Specifies the content of the notification that appears in the UI.
SCOPE Specifies the scope in which the notification appears.
SEND Sends the notification to be displayed by the client.
ADDACTION Adds an action on the notification.
SETDATA Sets a data property value for the notification
GETDATA Gets a data property value from the notification.

How to develop Notification

1) Create and send notification

2) Defining notification scope

There are two different scopes: LocalScope and GlobalScope.

  • A LocalScope notification appears in context of the user’s current task, that is, on the page the user is currently working on. LocalScope is the default.
  • A GlobalScope notification is not directly related to the current task. Note: Global Scope is currently not supported, so do not use it. This will be implemented in a future release.

3) Adding action to notification

4) Sending data with a notification

EXAMPLE

Suppose user want to get notification for Inventory zero then one can write

Define ItemInventoryNotification as Notification Datatype

Item.Get(“No.”);

Item.CALCFIELDS(Item.Inventory);

If Item.Inventory<=0 THEN BEGIN

ItemInventoryNotification.MESSAGE(‘Inventory zero for this item’);

ItemInventoryNotification.SCOPE:=NOTIFICATION::LocalScope;

ItemInventoryNotification.SEND;

END;

Window Client:-

Web Client:-

Stay Tuned for more updates and keep testing….

Cheers…..

Advertisements

NAV 2017 Web Client Limitations

NAV 2017 web client is more improved than previous version web client and supporting most of the same features as Windows client and of course with some small differences. Lot of limitations has been removed but still some limitations are there and may be these limitations will be improved in upcoming CU’s and versions. The way Microsoft promoting Web client ,definitely web client will be option in upcoming years.

Following are some of the limitations of Web Client

General Features

The following table lists general features that are not fully supported by Microsoft Dynamics NAV Web client.

Feature Level of support Remarks
COM and Automation Not supported. If a Dynamics NAV object implements Automation (objects and servers), then an error occurs when the object is run in Microsoft Dynamics NAV Web client.
Departments and MenuSuite Not supported. The Departments button does not appear in the navigation pane of Role Center in the Microsoft Dynamics NAV Web client. Instead Page Search is available from an action in the navigation pane of the Role Center and on the top right corner of a page. MenuSuite is used to build the Departments page in Microsoft Dynamics NAV Windows client.
System Indicator Not supported. The Microsoft Dynamics NAV Web client always shows the name of the company that it connects to.
Microsoft .NET Framework Interoperability Partially supported. Microsoft .NET Framework interoperability objects that are configured to run on the client are not supported; objects that run on Microsoft Dynamics NAV Server are supported. For more information, see How to: Set .NET Framework Types to Run on the Microsoft Dynamics NAV Windows Client or Microsoft Dynamics NAV Server Computers.
Configuring the user interface for a profile Partially supported. You cannot perform configuration using the Microsoft Dynamics NAV Web client. Instead, you use the Microsoft Dynamics NAV Windows client. For more information, see Configuring and Personalizing the Microsoft Dynamics Web Client.

 

Objects

The following object types are not supported by Microsoft Dynamics NAV Web client.

Feature Level of support Remarks
XMLport Partially supported. Request pages are not supported. If you try to run an XMLport with a request page from the Microsoft Dynamics NAV Web client, then you receive an error that the XMLport page type is not supported.

To run an XMLport without using a request page, you can set the UseRequestPage Propertyof the XMLport in XML Designer to No. Or, if the XMLport is run from C/AL code by calling the RUN Function (XMLport), then you can set the ReqWindow parameter to false.

Pages Features

This section includes page features that are not fully supported by Microsoft Dynamics NAV Web client.

General Page Features

The following page features are not fully supported by Microsoft Dynamics NAV Web client.

Feature Level of support Remarks
GridLayout control for arranging page fields Partially supported. The RowSpan and ColumnSpan properties on fields in the grid layout are not supported.

Page Properties

The following page properties are not supported or are partially supported by Microsoft Dynamics NAV Web client.

Note

Properties that are not supported are ignored by Microsoft Dynamics NAV Web client.

Control Property Level of support Remarks
Group ShowAsTree Partially supported. Columns will be indented but they will not be expandable or collapsible.
IndentationControls Partially supported. Only supports indentation on one column. If you specify more than one column in the IndentationControls property, only the first column is used.
Field ColumnSpan Not supported.
RowSpan Not supported.
AssistEdit Partially supported. The AssistEdit button never appears on a field that has the data type Option.
Part ChartPartID Not supported. If a page contains a Chart part, then the part is ignored and nothing appears for the part in the Microsoft Dynamics NAV Web client.
SystemPartID Partially supported. Microsoft Dynamics NAV Web client supports Notes and RecordLinks system parts, but not Outlook and MyNotes.
PartType Partially supported. The Chart option is not supported. If a page contains a Chart part or an unsupported System part, then the part is ignored and nothing appears for the part in the Microsoft Dynamics NAV Web client.

Report Features

The following table includes reports features that are not supported or are partially supported by Microsoft Dynamics NAV Web client.

Feature Level of support Remarks
Printing a report without using a request page by calling the Report.Run function Partially supported. If a report is run by calling the REPORT.RUN Function and the function call does not use a request page, then you must set up reports to print from Microsoft Dynamics NAV Server, otherwise you will get an error at runtime. Client-side printing is not supported in this scenario. For more information, see the following topics.

– How to: Specify Printer Selection for Reports
– STARTSESSION Function (Sessions)
– Printing Reports from a Background Session

Filtering on request page of a report Partially supported. The only filters that are shown are filter fields that are set by the ReqFilterFieldsproperty or the SETRECFILTER function in C/AL code.

If you rerun a report, any filter values must be reentered. Filter values are not saved when a report has been run in the Microsoft Dynamics NAV Web client. There is a limit on the number of filters a user can set. The user can only specify one filter in addition to the number of filter fields that are set by the ReqFilterFields property.

Filter strings in a report URL Not supported. Unlike pages, you cannot filter a report by adding filter strings to the Internet address.
Document map in the report preview Partially supported. You can experience differences in the behavior between the Microsoft Dynamics NAV Windows client and Microsoft Dynamics NAV Web client.

C/AL Triggers

This section lists the C/AL triggers that are not fully supported by Microsoft Dynamics NAV Web client. Triggers that are not supported are not invoked on an object at runtime.

Page Triggers

The following page triggers are not fully supported by Microsoft Dynamics NAV Web client.

Triggers Level of support Remarks
OnClosePage Partially supported. The OnClosePage trigger is invoked only when the Dynamics NAV page is hosted in a modal popup dialog (MPO).
OnQueryClosePage Partially supported. The OnQueryClosePage trigger is invoked only when the Dynamics NAV page is hosted in a modal popup dialog (MPO).

C/AL Functions

This section lists the C/AL functions that are not supported by Microsoft Dynamics NAV Web client. Except when indicated otherwise, if you use a function that is not supported, you will receive an error at runtime.

Data type Function Level of support Remarks
Debugger ACTIVATE Not supported. An error occurs at runtime.
Dialog UPDATE Not supported. The function is ignored.
Report REPORT.RUN and REPORT.RUNMODAL Partially supported. If the ReqWindow parameter of the function is set to false, then you must set up reports to print from Microsoft Dynamics NAV Server, otherwise you will get an error at runtime. Client-side printing is not supported in this scenario. For more information, see How to: Specify Printer Selection for Reports and STARTSESSION Function (Sessions).
File DOWNLOAD and DOWNLOADFROMSTREAM Partially supported. – The DialogTitleToFolder, and ToFilter parameters are not supported.
UPLOAD and UPLOADINTOSTREAM Partially supported. – The DialogTitleFromFolder, and FromFile parameters are not supported.
– Not supported on devices that run on Apple iOS, such as iPad. When you try upload a file, the dialog box for uploading a file appears in the Microsoft Dynamics NAV Web client, but it is disabled and you cannot select a file.

User Interface Features

The following end-user interface features are not supported by Microsoft Dynamics NAV Web client.

Feature Level of support Remarks
Buffering of keyboard input for heads-down data entry Not supported.
System actions are default actions in the Applicationmenu and ribbon on pages and reports. System actions include the following:

– Copy Link to Page
– Recipient as Attachment
– Microsoft Word
– Print Page
– Show as List
– OneNote

Not supported. The actions are not available in the user interface. Note: You can use the action Open in Excel on list places and transfer all data in the list to an Excel spreadsheet. You can use Internet Explorer functions to print a page and to create links on a page.
Actions related to a subpage in a part when the subpage is dynamically shown or hidden based on a user interaction Partially supported. The actions related to the subpage will always be present and active in the ribbon, even when the page is not shown. For an example, see page 5855.
FlowFilters on pages Not supported. Using Limit totals to is not supported. Use Filter on column instead.
Vertical resizing of controls Not supported. Vertical resizing of controls is not supported on the Microsoft Dynamics NAV Web client. A multiline textbox, for example, will not increase in vertical size when the user drags to increase the size of the page. This applies to all controls that can take advantage of vertical or horizontal resizing, such as charts, grids, multiline, textboxes, and control add-ins.

Partially supported means that the feature does not have all the capabilities as it does in Microsoft Dynamics NAV Windows client or it works differently than in Microsoft Dynamics NAV Windows client.

Properties which are not supported are ignored by Web Client.

Still I am testing for web client and will come up with more updates. Stay tuned.

Source:- MSDN

Cheers!!!

NAV 2017 available for Download

Officially NAV2017 available for download and you can download it from following link

https://mbs.microsoft.com/partnersource/northamerica/deployment/downloads/product-releases/msdnav2017download

Now MS released it for 22 localized country and for other countries we have to wait. No product release for India yet and it may be due to localization. we have to wait…..

Lets explore and keep blogging with new features. I will also do the same.

Cheers…

Extension and Eventing

Extension and event is just buzzing like a hot model now days everywhere and everybody talking about. Lot of contents has been written with Mix reactions.

At the moment I am not going in all these as I just started doing extensions and thriving to learn extension.

To learn extension and event you can look at the attached file which will give you more insight about developing extensions and event.

I will share my experience with extension in upcoming blog post.

Invoice Discount

In NAV 2017 we can provide Invoice discount in percentage also which will calculates the Invoice discount amount automatically .Prior to NAV 2017 one can give only Invoice discount amount.

Now Invoice discount % field is editable and you can provide discount percentage to calculate discounts

Cheers…

First Look -Dynamics NAV 365

Yesterday Microsoft revealed first look of Dynamics 365 Following are some of the key points showcased

Microsoft Dynamics 365

Enable your organization to grow, adapt, and evolve to meet the needs of your customers with Dynamics 365 – the next generation of intelligent business applications

Dynamics 365 to empower your business where you can

1) Better engage customers

2) Empower employees

3) Optimize operations

4) Reinvent products and business models

You can find more details on

https://www.microsoft.com/en-us/dynamics/dynamics-365-first-look

This will be released on 1st November 2016 i.e after general availability of NAV 2017 and at the moment it will be for US and Canada.

All about Microsoft Dynamics NAV