Page contains several Actions with the same ID

Microsoft Dynamics NAV
—————————
Page {PageNo} {PageName} contains several Actions with the same ID {ActionID}. Redesign the page to remove duplicate Action IDs.
—————————
OK
—————————

contains several Actions with the same ID

Solution:
Delete lines for page in the errror in the 2000000074 Profile Metadata system table.

Did my solution solve your problem? Leave a comment.

Adobe Flash Player has stopped potentially unsafe operation

Recently I did a training with materials offline using Adobe Flash.

Sources are usually in a compressed file or a CD/DVD drive, and when I ran the starting web page using Microsoft Internet Explorer I’ve received the following error message:

Adobe Flash Player Security

Adobe Flash Player has stopped a potentially unsafe operation.

The following local application on your computer or network:
{PATH}
is trying to communicate with this Internet-enabled location:
{PATH}

To let this application communicate with the Internet, click Settings.
You must restart the application after changing your settings.
OK Settings…

Adobe Flash Player has stopped potentially unsafe operation

Note:

  1. This error message appeared only using Microsoft Internet Explorer and NOT with Google Chrome.
  2. Unfortunately clicking the button Settings the error message disappears without show any configuration screen and to receive again the error I have to close the browser and re-open it.

Cause:
As the error message itself is saying, Adobe Flash player stopped the operation because a local file wants to communicate with an “Internet-enabled location” that in our case is local but it could be on internet and for this reason dangerous (“unsafe operation”).

Adobe Flash Player has stopped potentially unsafe operation

Solution:

  1. Access to the local Flash Player Settings Manager (click Start > Settings > Control Panel > Flash Player)
    Adobe Flash Player Settings Manager
  2. click the Advanced tab then on Trusted Location Settings
    Adobe Flash Player Settings Manager - Advanced
  3. click Add…
    Trusted Location Settings
  4. click Add File… to select the .sfw file or Add Folder… to select the folder or CD/DVD drive then Confirm
    Add Site
  5. Close the browser

Did my solution solve your problem? Leave a comment.

You do not have the following permissions on TableData

When we develop in Microsoft Dynamics NAV, we use a Developer License that has permissions to the standard objects different of the license of the final customer.

Using the customer’s license you may encounter error messages as follows:

You do not have the following permissions on TableData {TableName}: {Read/Insert/Modify/Delete}

An example could be running a Codeunit that modify a record in the standard table 6550 Whse. Item Tracking Line.
You do not have the following permissions on TableData

Considerations:
I’m pretty sure that most of you after will receive an error like this, first will search the table number of the one in the error message. Then you will realize that is in the range of the standard objects (e.g. 6550) and you will start thinking why this error didn’t happen during your tests.

Well, the answer is obvious if you think that probably you tested using the Developer license and that the Customer’s license has different permission to access to the standard objects.

Causes:
Create a new Page using the wizard of type List to show all the fields of the system table Permission Range.
Then run it with the Customer’s license and filter for the object in the error message (i.e. TableData 6550)
Permission Ranges
As you can see, this TableData in the Customer’s license has Insert/Modify/Delete permission as Indirect. This means that you CANNOT do those action directly in that table.

Note: Remind that if you are saving the license in the database or you upload a new license you must restart the instance service.

In the meantime you realized (maybe debugging) that the code that caused this error is in a Codeunit. Bingo!!!

You do not have the following permissions on TableData

Solution:
Open the Codeunit in design and assign in the Properties the correct Permissions to the tables
Permissions

Did my solution solve your problem? Leave a comment.

SQL Server upgrade from Express

To upgrade SQL Server from Express edition to a different edition of the same version follow the steps:

  1. Insert the SQL Server installation media of the new edition you want upgrade to. From the root folder, double-click Setup.exe.
  2. SQL Server Installation Center click Maintenance, and then select Edition Upgrade.

Did my HOW TO help you? Leave a reply.

HOW TO gain access to local drives in RDP

Often when you are connected to a computer in a Remote Desktop Connection (RDP) you need to have access to your local drives or local files.

HOW TO gain access to local drives in RDP?

  1. Click Start, point to All Programs (or Programs), point to Accessories, point to Communications, and then click Remote Desktop Connection.
    Remote Desktop Connection
  2. Click Show Options and then click the Local Resources tab.
  3. Click More under Local devices and resources.
    Remote Desktop Connection - Local Resources
  4. Select the check box next to Drives (you could select some drives clicking the plus sign to show detail data) then click OK.
    Remote Desktop Connection - Choose local devices and resources
  5. Click the General tab, Type the name of the Computer and the Username (with format Domain\Username) and then click Connect.
  6. Type your Password and then click OK.

Did my HOW TO help you? Leave a reply.

Error fetching plugins in WordPress.com

Accessing to your site on WordPress.com, it appears a warning
Warning on WordPress.com
and clicking to the warning will appear the following message:
This site cannot be accessed.
Disconnect Site

This site cannot be accessed. Disconnect Site
If you click on the menu Plugins the error message will be:
Error fetching plugins on YourSiteName
Error fetching plugins

If otherwise when you saw the warning you decided click on Disconnect Site then the error will move to the Plugin in your site that will not be able to connect to WordPress.com and when you will click the button Connect Jetpack a warning will be showed as follows:
Your website needs to be publicly accessible to use Jetpack: site_inaccessible
Error Details: The Jetpack server was unable to communicate with your site [HTTP 403]. Ask your web host if they allow connections from WordPress.com. If you need further assistance, contact Jetpack Support: http://jetpack.me/support/

site_inaccessible

Cause:
Jetpack WordPress plugin is being blocked from accessing the XML-RPC file into your site. You can test the access using a URL like

http://www.yourwebsite.com/xmlrpc.php

Information:
If you contact Jetpack support in their answer will be written

"Unfortunately, blocking XML-RPC is not a great solution for fighting security risks.  It's akin to selling your car because you don't want it to be stolen.

Your site's XML-RPC file is kind of like a communication gateway to your site.  Jetpack, the WordPress Mobile Apps, and other plugins and services will use this file to communicate to your site.  If this is blocked, you will have other issues pop-up down the road for the same reasons.

I would suggest contacting your hosting provider and asking them again to unblock your site's XML-RPC.  The most popular hosting providers out there have managed to find other ways to protect their servers without having to hinder your site and your ability to use services with your WordPress.

If they refuse to make any changes, and if you want to use apps and plugins like Jetpack, I'd suggest looking for a new host."

Considerations:
As suggested by Jetpack support you could ask to your provider to fix this issue but I prefer fix it by myself 🙂

Solution:
Add the following lines in your .htaccess file

# BEGIN Unblock XML-RPC
<FilesMatch "xmlrpc.php$">
order deny,allow
allow from all
</FilesMatch>

# END Unblock XML-RPC

to allow access the XML-RPC file to everyone and install a plugin like Disable XML-RPC Pingback to block pingback requests as recommended by Jetpack’s author too (source: https://wordpress.org/support/topic/allow-xmlrpcphp-for-jetpack-only).

Did my solution solve your problem? Leave a comment.

Working with dates in NAV

To work following the standards avoids future issues.

In this post I’d like to suggest a way to convert dates in NAV.

Working with dates in NAV

A date in your system can have different formats depending on the preferences of your country and language.

You can come across different errors, for example Server and Client with different settings or ambiguous date because valid between two different formats (e.g. 05/04/2015 that could be DD/MM/YYYY or MM/DD/YYYY)

To avoid this confusion there is an International Standard that is the standard XML format that returns the date in the following format

YYYY-MM-DD

In NAV you can use the FORMAT Function (Code, Text) with the following declaration:

String := FORMAT(Value[, Length][, FormatStr/FormatNumber])

and using the FormatStr = 9 to return a string in XML format

FORMAT(varDate,0,9);

Note: Leaving the Length = 0 then the entire value is returned.

This example requires that you create the following variables:

Name DataType Subtype
varDate Date

Example:

varDate := DMY2DATE(5,4,2015);
MESSAGE(FORMAT(varDate,0,9));

It will return
Working with dates in NAV

How to convert from a string in XML format back to a field or variable of type Date?

To convert a string in a date in NAV we need to call the EVALUATE Function with the following declaration:

[Ok :=] EVALUATE(Variable, String[, Number])

It’s interesting that also in this function we can use Number = 9 to set that the string expected will be in XML format.

Using the standard XML format you will work in accordance to the standards and the configuration of your Server or Client, language or preference in your system will not affect your work and each date will be converted always in the same manner.

Remind that you can use the same functions and logic working with DateTime.

Did my post help you? Leave a reply.