Notes are not carried forward when copying forms

Contents of the Notes field on transaction forms are not carried forward when using the Copy to function. Of course, this is not possible in every case, because not all sales- and purchase-related forms include a Notes field. But where the field exists on both forms, it should be copied. This is important when using the Copy to function in a progressive workflow, such as sales quote to sales order to sales invoice.

I’m in the process of converting non-essential fields into custom fields. So this would include all Notes or Additional information fields at the bottom of many forms.

When it comes to Copy to... function, this “bug” will be solved by a feature request to make custom fields copy across different types of documents if the name of custom field is the same.

1 Like

looking forward to this feature.
most custom fields used for Sales are common across all the sales tabs like Transporter details, GR number, Number of Packages, Gross weight, Nett weight, etc.
so this feature would solve issues for many users.

We are part way to resolution of this issue. Contents of custom fields labelled Notes are copied to other forms with an identically labelled field. But contents of legacy, built-in Notes field do not yet copy. Probably the solution is to convert those legacy fields to custom fields, as was done on bank and cash transactions.

Resolved in the latest version (17.12.43)

Testing this out, I copied a sales quote to a sales invoice and got this error:

Internal Error
17.12.43 (Desktop)
System.ArgumentException: An item with the same key has already been added.
  at System.ThrowHelper.ThrowArgumentException (System.ExceptionResource resource) [0x0000b] in <4fbd3dde245b44dca2ad330af7c17ed0>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].Insert (TKey key, TValue value, System.Boolean add) [0x0008e] in <4fbd3dde245b44dca2ad330af7c17ed0>:0 
  at System.Collections.Generic.Dictionary`2[TKey,TValue].Add (TKey key, TValue value) [0x00000] in <4fbd3dde245b44dca2ad330af7c17ed0>:0 
  at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement] (System.Collections.Generic.IEnumerable`1[T] source, System.Func`2[T,TResult] keySelector, System.Func`2[T,TResult] elementSelector, System.Collections.Generic.IEqualityComparer`1[T] comparer) [0x0005c] in <63992662b765477a898ef49cdcc99ee2>:0 
  at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement] (System.Collections.Generic.IEnumerable`1[T] source, System.Func`2[T,TResult] keySelector, System.Func`2[T,TResult] elementSelector) [0x00000] in <63992662b765477a898ef49cdcc99ee2>:0 
  at Manager.Query.CustomFields.CopyCustomFields (Manager.ApplicationData objects, System.Guid entityId, System.Guid type, System.Collections.Generic.Dictionary`2[TKey,TValue] source) [0x0003f] in <4c2bfb53e57e430198f22fbbcbb5671b>:0 
  at ManagerServer.HttpHandlers.Businesses.Business.SalesInvoices.SalesInvoiceForm.PreGet (Manager.Model.SalesInvoice o) [0x0029e] in :0 
  at ManagerServer.HttpHandlers.Form`1[T].Get () [0x00142] in :0 
  at HttpFramework.HttpApplication.ProcessRequest (HttpFramework.HttpRequest request, HttpFramework.HttpResponse response) [0x0040d] in :0 
  at ManagerServer.HttpApplication.ProcessRequest (HttpFramework.HttpRequest request, HttpFramework.HttpResponse response) [0x00566] in :0

I discovered the reason why the error occurred. In the update process, I ended up with two fields named Notes for sales invoices. One I had created for earlier tests. The other was apparently created automatically by the update process. I deleted my self-created field and I can now copy sales quotes to sales invoices without encountering the error.