Factboxes are more then ever a powerfull way for presenting related information. Normally you link your Factbox through properties, but now and then you need to do this from code.
This works fine if your page has at least one record, because the filtering is set on the “OnAfterCurrRecord” trigger of the page. So when there is no records, no filter is set on you factbox and then all related records are shown.
It seems that I have missed the publication of my “How Do I” video in April.
Normally when Plataan and Microsoft publishes a video on youtube it appears on the Dynamics NAV blog (https://community.dynamics.com/nav/b/navvideos). But for some reason this one not. But no worries it was already on youtube.
In this video I have covered the new way of connecting to External Database from CAL.
Codeunit 700 Page Management is a Codeunit that I use once in a while. It has functions to get the Default Lookup Page or the Card Page of a certain table.
It also contains functions to open a Page by only passing a Table ID or a Record. You can run it default or modal and even open a page with an autofocus on a certain table field if you like.
All these functions are very handy, but I only miss one.
In my solution I need to get the table of a certain Page ID. So the opposite way of the existing functions.
By looking to the existing functions you will see that there’s a way. Most of the functions are using a system table called “Table Metadata”, were you can easy find the “Lookup Page”.
But the function “GetDefaultCardPageID” also uses the table “Page Metadata”.
So lets take a closer look to this table.
When upgrading a old NAV database you sometimes need to transfer data to new tables. With the Upgrade codeunits you can manage this easily.
First you make a TableSyncSetup function where you configure your transfer.
And then you make an UpgradePerCompany or UpgradePerDatabase function where you will do the actual transfer.
But recently I got the following strange error when deleting a table.
The system tells me that there doesn’t exists a new table????
This week I started to transform some OnAfter and OnBefore Hooks on tables to Events.
When performing these manuel steps I first though about Upgradeability. Every modification must be upgraded smoothly without any manual handling afterwards.
So what will the result be if I upgrade a customer with the Hook triggers? I tested with a simple example.