Quantcast
Channel: ArcherPoint, Inc. - Developer
Viewing all 388 articles
Browse latest View live

ArcherPoint Dynamics NAV Developer Digest - vol 175

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 175 ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

NAV 2017 Item Sales Statistics Report Issue with Breakdown By Variant Filter

Gwen C: Has anyone ever looked at Report 10135 Item Sales Statistics in NAV 2017? No mods have been made to the report. There is a filter to choose “Breakdown By Variant” when you execute the report. When I click the filter before I execute the report, all detail goes away but I can see through watching in debugger that the Item Variant code is being executed and data exists. If I don't click the filter, I get detail by Item. Any help would be appreciated. Thanks. 

Kyle: That sounds like something a CU might have addressed. Since they are cumulative, you can get the changed-object list for the application update from the latest CU and delta the code. 

Setting Up a Maximum Quantity for Line Item Discounts in Dynamics NAV

Adrian: Is there a way to set up a "Maximum Quantity" for Sales Line Discounts? For example, a line discount would only apply to a sales line with quantity of 12. If the quantity is 13, 12 of them would get discounts while 1 is still charged with the regular price. Thanks for your ideas in advance. 

Trish: I don't think there's a way to do this without a modification. The standard Sales Line Discounts functionality has a Minimum Quantity field that can be used to define 'layers' of discounts based on the document Quantity.

However, the logic simply looks at the Quantity vs. the Minimum Quantity and, if met, populates the Line Discount % field on the sales document line. It's not cumulative, where you can say at 12 calculate a 5% discount and on the 13th unit ordered calculate a zero % discount. There may be an add-on that does this, or perhaps we've already written something similar for another client that I'm not aware of. 

Adrian: Hi Trish, thanks for your ideas. I added a field "Line Disc Increment" to the Item Card to set the number of increment, and a field "Max Line Disc Qty" to the sales line to indicate the Maximum Quantity (calculated based on the increment) to which discounts would be applied. For example, the increment for item is 12. When we put 25 quantity on the sales line, the 5% discount is applied to the quantity of 24, and the total discount amount is $113.4 (24*94.5*5%). The line amount is $2249.1 (24*$94.5*95%+1*$94.5). 

An Odd Positive Pay Request

Gwendolyn: Positive Pay export: does anyone know how to filter out manual checks so they are not included in the Positive Pay export? 

Kyle: I think that may have to be a code change, or just suggest a different payment journal batch for each payment type. But why wouldn't you want manual checks included? The bank will still want the Positive Pay confirmation before processing the payment.

Gwen: I was thinking the same thing. Why wouldn't the bank want those as well? The client says they do not, but it's not sitting well with me. 

Developer Quip of the Day

Kyle: Programming is like writing a book, except if you leave out a semicolon on page 127, the entire story makes no sense.

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 176

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 176 ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Dynamics NAV 2017 Security, Customer and Vendor Updates

Gwen Brit shares:

Here's a little heads-up related to security and functionality. In version NAV 2017 (and only NAV 2017) there is a piece of code that updates the Customer or Vendor address on their Card if the address fields are blank and you enter an address on their Sales or Purchase headers, respectively.

In other words, if you create a Customer Card and intentionally leave the address blank, then create a Sales Order and fill in the address information on the Sales Header, without prompting, NAV will update the Customer Card with the address from the Sales Header. If the order creator does not have permission to modify the Customer Card, they will receive a permissions error.

Here's the code from the Purchase Header Table (38), the OnModify trigger:

OnModify()
UpdateVendorAddress;

LOCAL UpdateVendorAddress()
IF Vendor.GET("Buy-from Vendor No.") THEN
IF NOT Vendor.HasAddress THEN
CopyBuyFromVendorAddressFieldsFromPurchaseDocument(Vendor);

IF "Pay-to Vendor No."<> "Buy-from Vendor No." THEN
IF Vendor.GET("Pay-to Vendor No.") THEN
IF NOT Vendor.HasAddress THEN
CopyPayToVendorAddressFieldsFromPurchaseDocument(Vendor);

Therefore, if the Vendor does not have an address, it tries to update it with what was put in the Purchase Invoice, even if nothing is there. It is important to note that this feature was removed in Dynamics NAV 2018.

Statical Prism

Statical Prism is an easy-to-use productivity tool that offers benefits for just about anyone using Dynamics NAV. Dynamics NAV consultants, developers, QA consultants, supporters, and architects, download Statical Prism today.

Microsoft Dynamics NAV Changes in Service Tier

In Saurav Dhyani’s recent blog, he compares the changes in the Dynamics NAV service tier between NAV 2017 and NAV 2018 and details the changes on each tab within the service tier: General, dDtabase, ODATA, Azure Active Directory, Task Scheduler. He also gives a rundown of what’s in the new Development tab.

Dynamics NAV SQL Server Support Matrix

Kyle notes that Microsoft released their support matrix for SQL Server 2017 versus versions of NAV. Kyle explains, “I upgrade my local server from 2016 to 2017 without any issues at all, running against five different builds of NAV. The summary is that 2015 through 2018 are supported.”

Dynamics NAV 2016 and NAV 2017 CRM Online Connection Failures

This applies only to these two versions of Dynamics NAV. You may need to apply this hotfix due to the security protocol for CRM Online services being updated to TLS 1.2.

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 178

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 178 ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Having Trouble Setting Up SQL Server 2016 on Docker?

We thought others might have the same issue Tim had setting up his server on Docker, so we’re sharing this internal conversation here for your benefit:

Tim: Hey all, I've been looking into Docker myself, but I'm puzzled what I'm missing when building my own Server 2016 to run Docker.

First, for background, I had begun on Azure and was able to load Tenerife and the first release of NAV 2018 with no problem. However, building my own 2016 server (on my VMWare), I'm running into domain problems. Currently I'm looking into gMSA. Does anyone know what Azure has that I'm missing in my own server 2016 build?

Kyle: Without knowing what your actual problem / error message is, not sure how to help. I have 2018 running in my own local Docker container

Windows 10 -> VMware 12 -> Server 2016 -> Docker - Server Core 2016 with NAV 2018

Tim: We'll drill in. I'm getting the following SQL Server error or errors: 18452,"28000",[Microsoft][SQL Server Native Client 11.0][SQL Server]Login failed. The login is from an untrusted domain and cannot be used with Windows authentication.

I am able to ping the container by name and IP. I installed SSMS and am able to access the NAV db using the IP address using the SA account.

Kyle: Inside the container itself, there is a directory c:\run. This has the PowerShell scripts that are executed when you first run an image to create a new container (after a pull).

It looks like navstart.ps1 has all of the specifications for authentication that is used. However, if you are making a stand-alone container that you pulled from Microsoft, it shouldn't be trying to locate a domain controller. Did you take your Azure container and copy it locally and that is what you are trying to run?

Tim: Nope, I didn't copy anything from the Azure container. It was a fresh pull on my local server. I haven't gone through the scripts yet, but wouldn't the authentication be declared in Freddy's new-navcontainer script?

Kyle: It would. My latest pull just worked without any modifications at all. Maybe destroy your container and image, and redo a pull from this:

docker pull microsoft/dynamics-nav:2018-rtm-na

Bill: Do you also have the infrastructure in place to support gMSA? Otherwise, you're looking at win auth hacks or SQL Server auth, NavUserPassword authentication.

Tim: What do I need beside a domain controller? Otherwise, I am in the process of using NavUserPassword authentication to test. No results yet though.

Kyle: If he is just pulling the vanilla NAV 2018 image, it shouldn't need or want anything for authentication. The NST and SQL server are on the same machine, so the only authentication you need is for the NAV clients.

Bill: I didn't see the need for that (a domain controller) for my personal Docker setup. gMSA is going to be useful for a team environment and managing many logins across multiple different Docker instances.

Server 2016 is the best environment for Docker on Windows if you can run it on your machine. However, most people will be stuck with Windows 10, which can be difficult. Managing networks across Hyper-V and Docker can be a nightmare if you try to use both.

Kyle: I have Server 2016 running inside of VMware running on Windows 10. Let me know if you need assistance. There are a couple of particular settings that have to be done in VMware to lie to the guest OS to think it is on real iron.

Tim: Kyle, about the real iron setting, are you talking about the "Virtualize Intel VT-x/EPT or AMD-V/RVI" setting, under Processors setting for VMWare. The one that handles nested vm's?

Kyle: Correct. That has to be turned on for Windows Server 2016 to think it is on real metal.

We hope you find this helpful! Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 179

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 179 ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Microsoft Dynamics NAV 2018’s API (Application Programming Interface)

ArcherPoint’s Saurav Dhyani has written a series of blogs that explores the 44 APIs in Dynamics NAV 2018, and how to add your own APIs.

  1. NAV 2018 API Part 1 shows the new page types available, the APIs that are already available, and uncovers a new field
  2. NAV 2018 API Part 2 shows the steps needed to configure API in NAV 2018
  3. NAV 2018 API Part 3 shows how to consume the APIs using Postman

New PowerShell cmdlets in Dynamics NAV 2018

ArcherPoint’s Suresh Kulla shares the new PowerShell cmdlets that Microsoft introduced in NAV 2018 in his blog.

Extracting NAV 2013 G/L Balances by Dimensions

Jamie asked for help and recommendations to pull NAV 2013 GL balances by DIM out to load into a new version of NAV.

Matt T. suggests doing a consolidation, which would do balance by dimension and then use the import consolidation feature. This assumes accounts are already setup, etc. in the new database.

Kyle says this could also be a basic account schedule without any begin or end totals.

Share your suggestions in the comments below.

Sending Test Emails from a Local Dynamics NAV Test Environment

KC asks, “I would like to send test emails from her local NAV test environment. Does anyone know how to configure database mail on SQL Server?”

Saurav shares his previous post on how to configure database mail in SQL Server.

“Thank you Saurav. This is what I thought I needed. But it turns out I just needed to setup up the SMTP settings in NAV. I had input the incorrect server information in NAV. Kyle provided the correct information, so I am up and running now. But thank you for your information.”

Announcing Integration of Azure Backup into VM Create Experience

Trinadh Kotturu from the Microsoft Azure team recently announced the ability to enable backup of virtual machines. This is an “enterprise-grade” backup solution from the moment of VM creation. It gives customers the ability to setup backup with one click, select or create a vault in-line, and manage the backup policy for the VM.

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 180

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 180 ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Microsoft Dynamics NAV Cumulative Updates

The latest cumulative updates for Microsoft Dynamics NAV are now available:

Importing Symbols in New or Upgraded Databases with Dynamics NAV 2018

Did you know that symbols are not created or imported automatically when you upgrade, or create a new database in Dynamics NAV 2018? It is mandatory to complete the task of importing symbols in your database to develop extensions with Visual Studio Code. This Dynamics NAV Team Blog, Import Symbols in New or Upgrade Databases with Microsoft Dynamics NAV 2018, will give you the information you need to do so.

You can also read this post if you need to generate symbols in Dynamics NAV 2018.

Office 365 Integration in a Dynamics NAV Hosting Environment

There are so many components involved that require proper setup and configuration to be able to take advantage of new functionality in Dynamics NAV like Edit in Excel, Outlook Business Inbox, Single Sign On, and more. You need to understand the requirements and this post goes into great depth to help explain these requirements.

Your Feedback is Invaluable – As Long as You Share in the Right Places

This blog from Waldo is a great resource. I recommend you bookmark it. If you are working with Dynamics products, and would like to share your feedback with the people that can actually effect change with your suggestions, you have many options including GitHub, PartnerSource, MSCollaborate, Yammer, and of course at the many conferences that our community has throughout the year. Read I Have Feedback – What Do I Do? for the details.

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 181

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 181ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Tips for Managing Users on a Dynamics NAV Azure Deployment

Many companies have opted to deploy Dynamics NAV on Azure due to the very attractive subscription-licensing model. With the subscription model you have named users as opposed to concurrent, and with that you may come across some questions on how to manage users, like counting the named subscription users in Dynamics NAV and how to add new users. In Part 2 of Totovic’s Dynamics Blog, he explains how to disable users temporarily, determine the difference between limited and full users, and how to add additional users.

Personalization in Dynamics NAV 2018

In this blog, Enable Personalization in the Dynamics NAV 2018 Web Client, you will learn that the personalization is not enabled by default (and how to enable it), as well as two options for changing the configuration. Thanks, NAV Bits and Bytes!

Upgrade and Reinstall Dynamics NAV Extensions without Data Loss

As things evolve with NAV 2018, you should be aware of how to retain table data after publishing an extension. This blog explains how data synchronization works and the options available, setting up schema update mode to recreate, and more.

Developer Quote of the Day

Kyle is always good for a great quote:

"Luck is the residue of design."
- Branch Rickey

 

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

ArcherPoint Dynamics NAV Developer Digest - vol 182

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 182ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

FedEx and Dynamics NAV

Jamie posts, “Looking for help from anyone that has hooked up FedEx with NAV. FedEx has a link to ODBC or SQL, and scripts to pull the sales order ship-to address, then write back a master tracking number and freight cost. Has anyone done this before?

Tim wants to know if Jamie has their API available from their web site, if it's available. Is this to a FedEx shipping computer that's on the customer site, or something like that?

Kyle points out, “At the risk of calling attention to something you already know, we have ISV options that already do this, such as Lanham and ChargeLogic.

Tim further notes that it sounds like a Master Data error to push addresses to a FedEx machine. And agrees, “True that an ISV solution would likely be a better choice.”

Kyle adds that it already sounds like three interfaces: address verification, rate shopping, and shipment tracking numbers. “It was a long time ago, but I think we went down this road with another client. And they ended up buying a whole lot of development hours and then switching to eShip a couple of years later. Each year that FedEx updates their interfaces (which they do often), you get to develop again. I'm not saying this is a bad idea for this specific customer. I'm just saying there may be more behind this request than it seems.”

Transaction Types for Dynamics NAV Reports

Kyle wants to know if it is a good idea to always set the TransactionType for a report. He thinks it should be set to Snapshot most of the time (read-only and only committed data), unless you need uncommitted data too, in which case, use Browse. He continues with an explanation of each transaction type option for NAV reports.

Browse

This is a read-only transaction. Modifications cannot occur within the transaction. All read operations are performed with READ UNCOMMITTED locking. Therefore, no locks are added and locks that are added by other sessions are not honored. This means that the transaction may read uncommitted data.

For more information about READ UNCOMMITTED locking, see SET TRANSACTION ISOLATION LEVEL (Transact-SQL) in the MSDN Library.

Snapshot

This is a read-only transaction. Modifications cannot occur within the transaction. All read operations are performed with REPEATABLE READ locking. Therefore, shared locks are added on all data and are maintained until the end of the transaction. This prevents other transactions from modifying any rows that have been read by the current transaction.

For more information about REPEATABLE READ locking, see SET TRANSACTION ISOLATION LEVEL (Transact-SQL) in the MSDN Library.

UpdateNoLocks

This is an update transaction. Modifications can occur within the transaction. All read operations are performed with READ UNCOMMITTED locking until the table is either modified by a write operation or locked with the LOCKTABLE Function (Record). From this point until the end of the transaction, all read operations are performed with UPDLOCK locking.

For more information about UPDLOCK locking, see Table Hints (Transact-SQL) in the MSDN Library.

This transaction type improves concurrency for all tables that users access within the transaction by delaying locking as much as it can. However, the disadvantage is that you must know when to lock the tables for the required transaction behavior.

This is the default transaction type if you have not specified a type with the CURRENTTRANSACTIONTYPE Function (Database).

Update

This is an update transaction. Modifications can occur within the transaction. All read operations are performed with REPEATABLE READ locking until the table is either modified by any write operation or locked with the LOCKTABLE function. From this point forward, all read operations are performed with UPDLOCK locking.

This transaction type provides full transaction isolation from the start of the transaction, regardless of the lock status of tables that users access within the transaction.

Matt T agrees that Snapshot probably is to set to Snapshot, but admits that it's one of those properties everyone forgets about. “I know I have never changed it and I don't think I have ever seen anyone else change it. Definitely curious as to what others think.”

Michael states that he wouldn't use the iterative data item to write. “If a write was necessary, I'd retrieve that record by using a second variable to set filters on the primary key values and retrieve with FINDSET(TRUE).”

Tell us about your experience! Do you set the TransactionType on your Dynamics NAV reports? Or is this a “forgotten” setting?

 

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

Compress Item Ledger Entries in Dynamics NAV

$
0
0

Compressing Item Ledger Entries in Dynamics NAVHow To Compress Item Ledger Entries in Dynamics NAV

There are different ways to reduce the size and speed of a Dynamics NAV upgrade. This blog will cover one component, compressing item ledger entries that may prove useful. However, it is important to note that with any major change such as this, it requires thorough testing of the solution and mapping out a blue print for the plan.

To begin, it is important ask yourself:

  1. Is this part of an upgrade plan to a new version of Dynamics NAV, or are is the client trying to do this in an existing database?
  2. Is the client planning to try to keep some of the historical data in the system for historical purposes for reporting and analysis? Alternatively, are they planning to clean the slate and go back to the historical data in a copy of the historical database prior to the process being run if any historical analysis is required?

Summary of Compressing Item Ledger Entries through an Upgrade Scenario

The following is a summary of what I have discussed with partners who have done the process through an upgrade scenario. In particular, this was completed often when moving from 2.X to 3.X Versions due to the significant change in data structure, which was a result of the introduction of the Value Entries in Version 3.X and prior. As a result, the process below requires modifications depending upon what data exists – i.e. Manufacturing, Assembly (2013 and later), Kit Data (2009 and earlier), open Orders – Sales/Purchase/Production/Assembly, Warehouse Entries, Location Setup, etc.

In the Database

Make sure all SO’s and PO’s are invoiced (no received/shipped not invoiced) and run the Adjust Cost Item Entries and Post Inventory Cost to G/L. This may entail having to use the Undo Receipt Shipment or Undo Receipt if the orders cannot be invoiced. This is key so that you do not delete Item Ledger Data that has dependencies on existing outstanding order status as well as any unprocessed adjustments for quantity or value.  NOTE: Further challenges come into play with Manufacturing Production Orders. The best practice is not to have partially processed transactions prior to deleting Item data, which can get to be quite challenging.

  1. Run Inventory calculation to find out what is on hand and export this to a file. (E.g., Dataport or XML Port would be required to export Quantity by Location/Variant/Lot No. /Serial No.)
  2. Make a backup of the base ILE object and Value entry Objects.
  3. Renumber the ILE and Value Entry Table to a table in the 50000 range with a new name if history is going to be retained in the database for reporting.
  4. Import the ILE and VE object again. Do this because there are usually too many records in the ILE to start copying them to another table. This is fast and easy. (It is also easier to write Reports and Forms of these Tables with pre-upgrade data. As a result, the upgrade will take hours instead of days.)
  5. Delete the Item Ledger (T-32), Item Register (T-46), Item Application Entries (T-339), Value Entries (T-5802), Average Cost Adjustment Entry Point (T-5804), Post Value Entry to G/L (T-5811 – should be cleared with Post cost in step 1), G/L - Item Ledger Relation (Table-5823 includes link of T-5802 to T-17- G/L Entries. Other possible Tables include Inventory Adjmt. Entry (Order) (T-5896) if NAV 203 or later, Reservations Entries (T-337), Capacity Ledger Entries (T-5832), Warehouse Entries (T7312).
  6. Complete the upgrade without Inventory, then import the qty. on hand (with serial and lot) and post it. This also makes a great opportunity to cleanup items not used anymore.
  7. Run a Dataport and Import into an Item Journal after the upgrade together with the Quantity on Hand with Unit Cost ($) desired)

The primary goal of this process is to be able to import and export data in the system and generate through Dataports the Item Journals to establish new Inventory data beginning quantity and cost.

The biggest challenge is managing some of the additional details, such as Item Tracking (LN and SN Data), Manufacturing, Assembly (or Kitting depending on Version), and other data linked to the existing ILE and VE data.

I hope this gets to a place to where there is a vision for the processing required. Again, I would test the process extensively because removal of data and identifying all related dependencies is an extremely challenging endeavor. I suggest referring to the Inventory Costing in Microsoft Dynamics NAV white paper. This is a good reference as a beginning point for consideration with the data structure for inventory posting and costing data analysis. While the paper was written for Dynamics NAV 2013, the fundamentals are still the same.

I wish to keep in mind that this is kind of a theoretical discussion. I have never blown away item data and then rebuilt it with the process. Through interactions with partners along the way, this has become kind of a moving document for how to manage the process. We would like to hear your thoughts and ideas. Please comment below.

For more Microsoft Dynamics NAV development related topics, please subscribe to our NAV Developer blog where you will find a plethora of development-related tips, how-to’s, and NAV-related discussions.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 183

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 183ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Creating and Editing Dynamics NAV 2018 RDLC Reports

Kyle wants to know about creating and editing RDLC reports in Dynamics NAV 2018. He shares the NAV 2018 system requirements for creating and editing RDLC report layouts as either Report Builder for SQL Server 2016 or one of the versions of Visual Studio.

He asks, “Have any of you attempted to do reports in Report Builder for SQL Server 2016 rather than VS?”

Matt T. replies, “Yes, all of the time when the customer doesn't have Visual Studio. I haven't found anything I couldn't do yet. Granted I'm not exactly creating a lot of reports day to day.”

Michael H. states, “I’ve used Report Builder quite often over the past few years. There's a couple of things Visual Studio does that make it nicer, but overall Report Builder is very usable.”

Saravanan adds, “We used either in older NAV versions, but in Report Builder there is one thing I don’t like, which is that it will not show the line numbers for the datasets that we keep in Textboxes. For example, in Base Sales Invoice or any document report you will find the hidden textbox as a container to keep all page header stuff behind, and in Report Builder you need to copy those and paste in Word to be able to find it.”

Kyle replies, “I do not like those hidden textbox things and do everything I possibly can to avoid (or remove) them.”

Editing Default Reports for Sales Reports in Dynamics NAV

Bill asks, “In NAV 2017 the default reports for Sales Documents has changed from the old 10074, 10075, etc. reports to new "Standard Sales" reports (1303-1307). The DefaultLayout is set to Word. By default what would you edit? The Word layout? There are now four of them that you can use. It seems like going down the road of editing Word layouts and having to promote them through databases could be a nightmare. What is everyone else doing?”

Len responds, “The nice thing they added is the ability for customers to do their own modifications to reports by using custom report layouts. When it comes to customers, it is usually much easier for them to use Word than to use RDLC. For that reason, I have seen that customers implemented in our cloud are using the Word layouts. There are certain limitations to Word layouts that we've seen, so for some customers we have had to move to RDLC reports. But in any case, it is simple to Export/Import those custom layouts and move to another database. So, it seems they are getting closer to making things easier for customers but like all else, they still have a ways to go. So, for now, we are having customers play with the Word layouts and when they get stuck, we train them. If they want very complex things where Word is getting too difficult, they pay us to create RDLC reports for them or pay for training. Thus far, we have been doing all the RDLC creation.”

Dynamics NAV Development Preview for February 2018

The NAV Development Preview for February 2018 from Microsoft includes synchronize data on F5, adjustable column width in the web client, Intellisense suggestion for the next available object ID, report RDL and Word layout development with AL, integration tables that can be used in extensions, and multi-root support.

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 184

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 184ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Announcing Microsoft Dynamics 365 Business Central

Alysa Taylor, GM, Business Apps & Strategy for Microsoft, announces the upcoming release of Dynamics 365 Business Central. She states that the product will be generally available (GA) on April 2, 2018 in 14 countries.

Business Central continues Microsoft on the stated path to offer business without silos, actionable insights, and solutions that are built to evolve for customers. The value of this release includes the ability to customize or extend for specific industry needs with PowerApps, Microsoft Flow, and Power BI. It also brings the full power and product maturity of Dynamics NAV to the cloud.

Dynamics NAV and General Data Protection Regulation (GDPR)

Totovic shares a slew of resources around the recent EU legislation known as GDPR and Dynamics NAV. Among those resources are whitepapers and FAQ from Microsoft and blogs on classifying data in Dynamics NAV from the Dynamics NAV Team Blog.

Regardless of whether you work or have clients in the EU countries, you need to be aware of the new regulation and the impact and repercussions of not complying with GDPR legislation. If you don’t want to read the entire 261 pages of the legislation, you may want to start with what you should include in your privacy notice.

Partial Shipments Allowed (Or Not) By Customer in Dynamics NAV

Here’s the scenario for one NAV user: some of their customers don’t want items put into back order status if they don’t have the product and others do want unavailable items put on backorder.

Alan asks, “in Dynamics NAV 2017, can this capability be defined by client vs. globally on or off? Maybe we have this capability today but just don’t realize it?”

Darren responds that it is possible by client, “On the Shipping tab of the Customer card, you can specify if the client will accept partial shipments or only complete orders. This does prevent shipping if the order is not complete. You might want to take a look at that see if this fits your needs.” Darren references this documentation on theshipping advice field on the Dynamics NAV customer table.

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 185

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 185ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Dynamics 365 Business Central

With the upcoming release of D365BC, you’ll find an abundance of resources and opinions to stay up to date.

This is the primary Dynamics 365 Business Central product page from Microsoft.

The D365 Roadmap site lets you filter on what’s new, in development, and previously released.

And here’s the latest out of Directions Asia. Everyone seems to be excited about the transformation and the future of Dynamics NAV, including our own Jon Long and Saurav Dhyani.

The next iteration of our beloved Navision, Dynamics 365 Business Central will be generally available on April 2. Stay tuned!

Skype for Business and More Improvements for Microsoft Teams

Microsoft’s Tiffany Wissner recently shared the updated roadmap for bringing Skype for Business to Microsoft Teams. In addition to the Skype improvements, you can now securely collaborate with anyone in Microsoft Teams. This is exciting for us because we can now include anyone in our projects, whether they have an Azure Active Directory account or not. ArcherPoint’s Matt Traxinger notes that if they add this to Visual Studio Team Services, it will be amazing. Suresh notes that in VSTS, the messaging extension for Microsoft Teams allows you to search, find, and discuss specific work items in your channel or private chats. It’s a great way to have a group conversation about your work, without leaving Microsoft Teams.

Common Data Service Now Included in Microsoft Power Apps

In the spring update to Power BI and Power Apps platforms, Microsoft now provides a common data service, enabling companies to build data-based apps from a variety of data sources.

Code Reviews Are Not (Primarily) for Finding Bugs

Peer code reviews are standard practice in software engineering. At least they should be. Here’s why:

  • Multiple perspectives improve the code review
  • Finding bugs
  • Ensuring the code’s long-term maintainability
  • Knowledge sharing

This is a great article on the costs and benefits of peer code reviews and how to make them more efficient.

ForNAV Modern Object Explorer

ForNAV is offering their Modern Object Explorer for free. It provides a way to manage Visual Studio AL code from within NAV. They state that you can use it to get an overview of Extension objects installed, create and manage VSC AI projects, and export and/or run your Extension AI objects.

Share your experience using ForNAV in the comments below.

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 186

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 186ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

March Developer Preview for Dynamics NAV

In Microsoft’s Developer Preview – March Update, you’ll learn about static code analysis, help for new pages, creating role center headlines, an improved experience for event subscribers, choosing the cue layout on role centers, and inspecting contents of tables.

AL Language Extension

The Visual Studio Code Marketplace is offering a CRS AL Language Extension. Definitely a “must-have” for AL developers!

Debugging Dynamics NAV

Adrian reports, “I have multiple versions of NAV (2009 classic-2018) installed on my local machine and was having an issue with opening the session page and debugger for all versions except NAV 2018. I finally find the solution from  the Debugging Dynamics NAV in a side-by-side installation post on Dynamics User Group. Not sure whether there are other solutions, but this one works and I just wanted to share.”

NAVDATA Backup Restore Problem

Kyle asks, “Have any of you had problems restoring a NAVDATA backup where it fills up your disk? I have a single NAV company, exported from a customer that resulted in an uncompressed NAVDATA file that is about one GB. NAV 2017.

When I attempted to restore it on my local system, not only did it make the database explode to 50 GB, it also made the txlog grow to 30 GB, and it was still only 50% complete. It filled up my disk.

Has anybody else had that problem? I've also had the same issue with NAV 2015.”

Bill suggests, “Maybe the file autogrowth settings are causing the issue? Change from a percent to a fixed size. You could also try putting the dB recovery mode to simple during the restore.”

Kyle adds, “I already had it set to simple. And if I turn off autogrowth that just makes the restore die that much sooner (when it hits that wall, as opposed to when it fills up my disk). The problem is that restoring one GB should not need to consume 75 GB of database and log file space.”

He also notes, “I tried the same exact NAVDATA restore against SQL Express 2014, and it does not have the problem. So it must be something related to my SQL 2017. I have also confirmed that it doesn't matter whether I do the restore in RTC or PowerShell. I let it run for 14 hours and it never completed. Nothing useful in the SQL log. It consumed 160GB of database space before it just stopped working.”

Bill quips, “Did you try 15 hours? ;) It'd be interesting to see what's going on with a SQL trace. Have you tried the latest SQL 2017 CU? Maybe try the SQL Docker image to see if it is something environment related. What that might be though…”

If any of you have had a similar issue or know of a solution, please comment below.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 187

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 187ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Dynamics 365 Business Central Buzz

The buzz around D365 BC continues, and why not? It’s a big deal. You’re going to need to get up to speed on the future of NAV, and Waldo’s blog gives us links galore to all the resources we need for Dynamics 365 Business Central.

This Kauffmann post explores the possibilities for ISV solutions and the current understanding of object licensing with D365 BC. Free objects. Yes free, you heard that right. Get your free trial of D365 Business Central here.

Saving Error Messages from the Adjust Cost Item Entries Job Queue

Denise brings up “everyone’s favorite topic: Adjust Cost Item Entries. She asks, “Has anyone written code to save error messages in a custom table when Adjust Cost Item Entries runs in the Job Queue? Or have any other ideas for determining what the error is that caused the job to fail without having to run it manually? Any suggestions would be appreciated!”

Matt T. replies, “I think the easiest way would be to move these three lines out of the report and into a codeunit:

InvtAdjmt.SetProperties(FALSE,PostToGL);

InvtAdjmt.SetFilterItem(Item);

InvtAdjmt.MakeMultiLevelAdjmt;

Then in the report you would do IF NOT <your new codeunit>.RUN THEN Log your error using GETLASTERRORTEXT.”

Time Saver Tip of the Day: Outlook Templates

Matt Cypher shared this tip with our team. “I was talking with Mel yesterday about how we often have emails that we send to folks that require some copying and pasting but the content is almost always the same (minus names, dates, etc.) and the best way to do this. I mentioned that I use Outlook Templates and she hadn't heard of this before, so I figured I'd share it with the rest of the tribe because it's been a HUGE time saver for me!

If you go to draft an email, over on the right hand side you should see something called 'Office Add-ins.' From here, you can save templates of emails that you use often and title them for easy future use. This literally saves me probably 20-30 minutes a week in drafting or copying duplicate emails. Just thought I'd share it for a good time (and hassle) saver.”

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 188

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 188ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Looking for an SMTP Server for Test Output?

Look no more! Bill W. shares that after years of struggling to find an SMTP server to send test output to, SMTP4-dev, the mail server for development is now available on GitHub. GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.

Extending the Ship-To Code to the Sales Line

Michael H. asks, “Has anyone done a mod to extend the Ship-to Code to the Sales Line?”

Bill W. replies, “Yes, file: TAB37.txt ";Ship-to Code ;Code10 

If you add an exact string search for a field it narrows things down a little bit more.

If you see garbled characters just download the object - it opens fine in notepad. Still need to update the encoding on some of these objects.”

Opinions on Microsoft Dynamics NAV and Dynamics 365 Business Central

News and information about Dynamics 365 Business Central (D365 BC) has been coming in a steady stream from a variety of sources. Mark Brummel has written a series of intriguing blogs that we have been reading.

Here are several that may be of interest to our developer colleagues:

We look forward to more of Mark's blog. Please share your thoughts and opinions in the comments section below. We want to hear from you.

Add Upgrade Logic to D365 BC Extensions

Microsoft Dynamics 365 shares this video, explaining the three easy steps to add upgrade logic to an Extension for Dynamics 365 Business Central.

User Groups and Profiles

Amy asks for help with User Groups and Profiles. “I created a User Group called IT Group and assigned a Default Profile of IT MANAGER. I assigned myself to the User Group. My User Personalization, however, is set to BOOKKEEPER. When I login, my Profile is BOOKKEEPER. My expectation is that I would be logged in as IT MANAGER? What am I missing?”

The response is, “Amy, when you add a user member to the group, and that user does not have any Personalization, then it will create one with the default profile ID you have specified on the User Group. If you already have user personalization set up, then it will not modify that. So it will use whatever you have on the user personalization setup.”

Quip of the Day

Gwen B. shares: Am I the only person that correlates boarding an airplane with costing methods?

  • LIFO - Last in, first out.
  • Average - You’re not special, find your own seat.
  • Or my favorite, FILO - First in, last out.

Cindy: I will never board a plane the same again. I love this!

Tom H: Standard Costing - Everyone sits in the exact same seat.

Carrie: FISH - First in, still here.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 189

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 189ArcherPoint's Developer Digest Weekly Blog

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of  sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Bug When AL and C/AL Uses the Same Object ID

Matt T. shares, “I ran into an interesting issue between C/AL and AL over the weekend. NAV 2018 installed. Two service tiers, each pointing to separate databases. 

I had been developing an AL extension in one. No issues there. And I had been developing a traditional C/AL modification in the other. The key is that both were using the same object range. Having never published or installed that AL extension into my second service tier, it still knew about it. I had to restart said service tier and that's when it hit the fan. Two mods with same object id, "co-existing" in the same database. That poor service tier didn't know what hit it.  
 
At no time was there ever an error in the development process. I even executed my C/AL code without issue. But when I restarted the service tier...no bueno. Here's the issue I see: we don't know what AL objects are in the database. I couldn't connect to the database to uninstall the extension. That left me with one choice: delete my C/AL objects, which happened to have some tables with some data in them. Scary ramifications there, and potential to a lot of free work if we mess up. 
 
Would love to hear anyone's thoughts on ways we might keep this from happening.” 

Kyle responded, “I know a customer's NAV license specifies which range of custom C/AL objects they are allowed to access. Is there a similar restriction for AL extensions?” 

Matt: “Yes, but when I saved C/AL Table 50000 it didn't say AL Table 50000 already existed.” 

Kyle: “I wonder if it is possible to have 50000...50099 for C/AL objects, and 60000...60099 for AL extensions.” 

Bill W. chimes in, “Wait until the May 2018 update. This bug has been reported on GitHub.”

Tim L asks, “Relating to Kyle's comment, would we ever want to mix C/AL and AL in a customer environment? It sounds like nothing but confusion.” 

Matt: “No, we ideally would not. But the bigger issue I was pointing out is that this happened between two separate databases and service tiers. A database and service tier that should have had no idea about an AL extension did know about it, and that impacted the C/AL development.” 

Kyle: “That sounds like a code bug. As in the separate NSTs are using some manner of shared directory in ProgramData that should not be shared.” 

How to Alphabetize Excel Workbook Tabs

Tammy asks, “Does anyone know how to alphabetize the tabs in an Excel Workbook or if it is even possible? I have an ever-growing workbook I use to take notes in and the tabs have gotten out of control.”

Crystal T. responds, “Looks like there are a couple of postings on a work-around but 'no built in functionality' is repeated in all of these postings from How-To Geek.” 

Constantine: “Thanks for posting that Crystal, I tried out that Macro myself and it works like a charm.” 

Developer Tips of the Day

Kyle offers sound advice in these tips for Dynamics NAV developers:

Developer Tip of the Day, Part 1: When making changes to a customer MenuSuite, always make sure to modify the Partner object, not the Company object. The Company object was intended for the customer to modify themselves (assuming they have some sort of developer license). We should use MenuSuite 1080. 

Developer Tip of the Day, Part 2: Any time a MenuSuite is changed - any MenuSuite - recompile all of them. 

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read the "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 161

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 161Developer Dude

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Using Microsoft Dynamics NAV on Windows, iOS, and Android

The Dynamics NAV team blog shares added support for Windows 10 updates and hinted at support for “interesting features and devices,” stay tuned.

Additionally, as of October 2017, the Dynamics NAV app will no longer support the Windows Phone 8.1 You’ll need to upgrade to Windows 10, although they are offering a grace period.

Lastly, Dynamics NAV will support iOS 11 and Android 8 at the time of their releases.

Saving Dynamics NAV Report as HTML File Prior to NAV 2017

Saurav shares in his blog how to save time transforming a report from a Word file to HTML using .NET components. This process is specifically for versions NAV 2013, NAV 2013 R2, NAV 2015, and NAV 2016, since the Report.SaveAsHTML function was supported prior to these releases, and was reintroduced in NAV 2017. The .NET variables used are WordApplication, WordDocument, WordHelper, and WordSaveFormat. See Saurav’s blog for the complete post.

How to Test NAV Web Services

Saurav gives an example where a client has requested that their customer list be published via web services. However, they were unable to read it. So how do you go about testing it? He’ll walk you through each step and introduce a cool tool to help you test SOAP web services.

The History of Microsoft Dynamics NAV

If you’re interested in learning about the history of Navision / Microsoft Dynamics NAV, this video posted by Mark Brummel. It’s only an hour long…

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

And, if you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 162

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 162Developer Dude

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Microsoft Dynamics NAV 2018

It has been announced that Microsoft Dynamics NAV 2018 is ready and will be made generally available (GA) on December 1, 2017.

Some things that the ArcherPoint team is excited about with 2018 are:

  • Integration with Microsoft Flow

  • An .exe file that will convert C/AL to AL

  • Microsoft’s Testability Framework

  • Further integration within Microsoft Office – order to cash without leaving Outlook!

Speaking of Navision…

Kyle tries to make everyone jealous with this post:

Please don't hate me even though I get all of the best projects.

Navision Financials Product CD
Figure 1 - Navision Financials Product CD

This inspires a bevy of responses:

Quentin: Frisbee? Coaster?

Tim Lecander: Do computers come with CD players anymore?

Kyle: I have an external USB drive. And one of these:

Microsoft Windows NT Server CD
Figure 2 - Microsoft Windows NT Server CD

Tim Muldoon: Are you sure that's a CD? Looks like you will need a turntable for that.

Kyle: Relevant statistics: Cronus database is 30MB and there are only 1223 objects.

Jon Long: You sir, are a nerd.

Crystal: I think this means you can add ' Archeologist ' to your resume.

Modifying a Field Drop-Down in Dynamics NAV Role Tailored Client

Gwen Cain: I don't know if this is possible but I had a client ask if I could modify the No. field drop down on the Sales Order to include different fields. So normally, if Type = Item, then it shows the Item No., Description, Base Unit of Measure and Unit Price. Can this be modified to include an additional field? Thanks.

Bill W: You're looking for "Field Groups" defined on the table. View -> "Field Groups." Right underneath the keys. By default it will use the one named DropDown. This will be a global change anywhere there is a dropdown for that table.

Gwen: Thanks Bill Warnke! I just found that. So cool! Why have I never known this?

Bill: You'll probably need to update the Item table's "field group" then. Essentially NAV takes the tables List Page and pares down the columns displayed to those defined in the Field Groups. I think that's the case because you can add a flowfield to the Field Groups and then get it to calc properly by adding a CALCFIELDS to the OnAfterGetRecord trigger. 

Thomas Hunt wrote about it is his blog Customizing Drop-Down Lists for Tables in the NAV Role Tailored Client

Tom: The impetus for writing most of my blog entries was that there was something I wanted to do that I didn't know how to do and that wasn't obvious. So when I finally figured out how to do it by reading six different blog entries from other people and pouring through documentation, I wrote a concise guide on doing it, so that next time I needed to do it, I had instructions written out.

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read more "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 163

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 163Developer Dude

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Using NAS to Upload Data Sync Files on Dynamics NAV Version 5

Tom H: I've been working with a customer running NAV 5, and they use the NAS to upload data sync files to their web site. They're having a problem with WinSCP not uploading the files correctly. If you run the job manually, everything works fine, but if you run the job via the NAS, it does not complete and it does not give any messages informing you why. Does anyone have any ideas what might be wrong?

Suresh: I am hoping you have already restarted the services. Another thing you could try is to debug the NAS from the command prompt. I believe there is an article online on how to debug it.

Nitin: If you are using script to run WinSCP, check the log and compare it when it runs manually vs. NAS. I had a similar issue recently. Let me know if you need further help in this area.

Kyle: What account is the NAS running under? That account might not have the same security rights as your account (when you run it manually). Is there anything in the Application event log? Can you tell if the problem is that the script isn't starting at all, or is the script starting but just failing to complete?

Nitin: Login to server as a NAS user and try to run the script manually. If it still has the same issue, type commands one by one to the command prompt where you have WinSCP program. I had trouble with Network Folder path (e.g., c$ vs c: in script, NAV not recognizing network folder when run using NAS), try changing folder path to something local.

Also, during troubleshooting with WinSCP script, I found that if there is any special character in SFTP/FTP password (e.g. '+'), it must be replaced with '%2B' in the script.

Tom: Never mind . . . I just switched them over to using a scheduled task. I feel like that will get them by until they upgrade from NAV 5 to something that will do a better job of integrating. Thanks for the advice, everyone.

AL Formatter

See the VS Code extension for formatting AL files, which features indenting, keyword case style, and variable sorting. This is "In Development" full implementation of the Microsoft C/AL coding guidelines.

Microsoft Redesigning Outlook for Mac and Windows

Outlook has a new design coming in the future as announced at Microsoft Ignite. A release date hasn't been set yet, but the changes are interesting. You can read a brief overview here at the link above, or if you are really interested you can watch the hour+ long presentation from Microsoft Ignite.

 

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read more "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 164

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 164Developer Dude

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Microsoft’s Team Foundation Server (TFS)

TFS gets kudos from ArcherPoint developer Kyle Hardin:

Kyle: TFS is the bomb! I just did a text compare of an object's current version against the previous version to see exactly what changed for the most-recent release, all right in Visual Studio.

Jon: Anyone get 2018 in there yet? I'd like to see the delta with 2017.

Kyle: They just released the October developer preview, but the objects will probably drift a bit before the final release.

Dynamics NAV Developer Preview for October 2017

Suresh notes that there are some nice new features in the October update including add-in support, new dictionary and list types. Additionally ForEach is back and Microsoft has added support for the new Label translation syntax.

How to Schedule Dynamics NAV Services to Restart

In Suresh’s blog, he shares the PowerShell script that he uses to schedule a NAV service tier to restart.

Too Many Decimals to do Fixed Asset Depreciations?

Kyle had to fix a problem with a customer that somehow got Fixed Asset depreciations imported with too many decimals. Enough decimals that you couldn't do disposals or further depreciation.

He wrote a small SQL script to fix the entries.

use [CORNAVSQL]
go
declare @EntryNo int
declare @FALoop cursor
declare @Counter int

set @FALoop = cursor for
select [Entry No_]
from [dbo].[COR - PROD$FA Ledger Entry]
open @FALoop
fetch next from @FALoop into @EntryNo
set @Counter = 1
while @@FETCH_STATUS = 0
begin
update [dbo].[COR - PROD$FA Ledger Entry]
set [Amount] = ROUND([Amount], 2, 1),
[Debit Amount] = ROUND([Debit Amount], 2, 1),
[Amount (LCY)] = ROUND([Amount (LCY)], 2, 1)
from [dbo].[COR - PROD$FA Ledger Entry]
where [Entry No_] = @EntryNo
and [Amount] > 0
update [dbo].[COR - PROD$FA Ledger Entry]
set [Amount] = ROUND([Amount], 2, 1),
[Credit Amount] = ROUND([Credit Amount], 2, 1),
[Amount (LCY)] = ROUND([Amount (LCY)], 2, 1)
from [dbo].[COR - PROD$FA Ledger Entry]
where [Entry No_] = @EntryNo
and [Amount] < 0
fetch next from @FALoop into @EntryNo
set @Counter = @Counter + 1
end
close @FALoop
deallocate @FALoop
select @Counter

Adding Default Dimensions to the Dynamics NAV Location Card

Denise B: Location Default Dimension, has anyone added default dimensions to the Location Card?

Trish: Yes. The scope on this type of modification can be huge, but in this case the client limited it to the Revaluation Journal only. A custom action was added to the Revaluation Journal to update the values for a single Dimension Code from the Location Card default dimensions. The user selects the custom action after running the Calculate Inventory Value function, which establishes the Revaluation Journal records. 

Kyle: You would have to decide on an order that wins (e.g., Customer? Item? Vendor? Or your location?).

Matt: You don't have to decide, that's what Default Dimension Priorities are for. As long as you run it through the appropriate places in Dimension Management you should be fine. But there are a lot of places to change that code.

 

Thanks to the ArcherPoint developers, customer service reps, and consultants that make the Developer Digest blog possible!

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read more "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 

ArcherPoint Dynamics NAV Developer Digest - vol 165

$
0
0

ArcherPoint Dynamics NAV Developer Digest - vol 165Developer Dude

The NAV community, including the ArcherPoint technical staff, is made up of developers, project managers, and consultants who are constantly communicating, with the common goal of sharing helpful information with one another to help customers be more successful.

As they run into issues and questions, find the answers, and make new discoveries, they post them on blogs, forums, social media...so everyone can benefit. We in Marketing watch these interactions and never cease to be amazed by the creativity, dedication, and brainpower we’re so fortunate to have in this community—so we thought, wouldn’t it be great to share this great information with everyone who might not have the time to check out the multitude of resources out there? So, the ArcherPoint Microsoft Dynamics NAV Developer Digest was born. Each week, we present a collection of thoughts and findings from NAV experts and devotees around the world. We hope these insights will benefit you, too.

Microsoft Docker and Dynamics NAV

The buzz in the Microsoft Dynamics NAV developer world is all about Dynamics NAV images now available on Docker. While this is super cool for developers, some of our other readers may be like me, a layperson, looking for a more basic understanding of what this really means. From the ArcherPoint Yammer thread, we get this:

Jim: For the laymen among us, can you provide a short explanation of Docker and what it brings to our party? I went to the Docker website and it is a bit obtuse to say the least.

Matt: Here is my poor man's explanation, which I may not explain well…Imagine our customer. They have a SQL Server, a NAV Service tier, and clients installed in miscellaneous places. Today we remotely connect to their servers to do development. The future looks different for how we develop for and support these customers.

Docker is a container manager (not at all like our containers modification). Each container holds something, like a piece or set of software. When you want to do development, you launch a new Docker instance and configure what you want (or use a preloaded configuration). So maybe you want SQL Server 2012, with NAV 2013 CU12, with a Job Queue, the development tools, and Visual Studio. Each of those things might be a container, and they stack to build an environment in seconds / minutes.

Then we do our development, deploy it to the user's test environment through the service tier, test it in a web client, and release it. All without ever logging into their system.

Kyle: Think of them as miniature virtual machines that are very portable. You can take the same system (in this case, Windows Server 2016 Core with SQL Express and NAV 2018) loaded into a Docker image, publish it on the internet (as Microsoft did with this announcement), and then easily download and run that Docker image. The Docker image can also be put onto several different platforms. It can run locally on Windows/Mac/Linux (with the Docker application), or on AWS, GCP, or Azure without any modification. It's the portability and the publish/subscribe model that make them useful.

Jim: This helps (a little). I am guessing that there is potential time and cost savings for those managing apps that run in and are deployed in different environments. And these apps can be quickly reconfigured for various permutations as well. Correct me if I am wrong here.

Suresh: Docker is a tool to create and work with containers, whereas Container is lightweight alternate to Virtual Machines, containers are kind of a replacement to Virtual Machine whereas Virtual Machine uses its own operating systems and resources, but Container uses the resources of Host Operating System and it is very quick and easy to spin up a new software.

They are used for deployment of our application and to have uniform environment in DEV, TEST, and PROD Systems. For example if the development team used version NAV 2013 R2 with cumulative update 20, and when they deployed into test the user got an error related to a command which was introduced in CU 20 because the TEST system is running NAV 2013 R2 with Cumulative Update 19, to fix the issue we need to change the code or upgrade the TEST System. Whereas if we use Docker to create a container with all the dependencies and the software which are used for the development and distribute it and then the same container can be used in all our environments which will avoid those kind of dependency errors. It will also help us to spin various versions of NAV using container without conflict and the deployment size is very small compare to Virtual Machines.

Jon: The future is here! And it's magical. Referencing It Has Never Been Easier blog by Freddy.

Kyle notes: There are a few tricks if you want to run this in a VM, since you have to convince the guest OS that it is running on actual metal rather than in a VM and references the How to Run Hyper-V Nested in VMware Workstation article.

What is your experience with NAV on Docker? Tell us in the comments below!

Stay abreast of what is new in the Microsoft Dynamics NAV community and at ArcherPoint by subscribing to our monthly newsletter, Better Business, by completing the form in our Resource Center.

If you are interested in NAV development, be sure to see our collection of NAV Development Blogs.

Read more "How To" blogs from ArcherPoint for practical advice on using Microsoft Dynamics NAV.

Blog Tags: 
Viewing all 388 articles
Browse latest View live