I managed to setup NAV 2018 to import our banks CSV statement files via a Data Exchange Definition. I am now trying to do the same and create a Data Exchange Definition of type Payment Export. This however is proving much more difficult than the bank statement import.
I’ve narrowed down the minimum Codeunit entries that need to be selected to the following:
Mapping Codeunit
Reading/Writing Codeunit
Ext. Data Handling Codeunit
Can I choose these codeunits from excisting ones that are part of NAV 2018 or is this custom code that needs to be written?
It depends on what you need. If it’s a “simple” csv file, then yes. If you need more advanced formatting or file handling, then you would need custom codeunits. So if you have the default codeunits for handling CSV text exports then yes. I’m just afraid they are not in the W1 version.
I just checked the DK version. In NAV 2018 its no longer there, as this is now moved to an Extension.
But it was still there in NAV 2017. It was “only” a export validation codeunit, used together with the Payment Export Gen. Jrnl. Check codeunit to CheckFormatSpecificPaymentRules etc.
The DK version has ootb banking integration to most Danish banks, but all this functionality is now moved to an Extension. The easiest way to get a look at them would be to setup a #Docker container with the Danish version. If you already have a machine with Docker, then it doesn’t take you more than 10-30 minutes (depending if you have an existing NAV image or not), to get it up and running. [emoticon:c4563cd7d5574777a71c318021cbbcc8]
Exporting CSV files does NOT require the Data exchange framework. You would use DEF if you have something you export again and again, like payments. But also something where you might have the same data you export in different formats. Then the format description is not done in code, but in the DEF.
If you just need to export a simple CSV file, then you can also use a plain XML file hardcodet for your purpose.
My requirement is actually a generate the bank payment file and that happens again and again. My concern is what are the default code units can be used for this.