Has anyone else experienced problems with the Transferfields function in NAV 2013?
In NAV 2013, the Transferfields function does not seem to be working properly when transferring multiple records between two instances of the same table. In this case, Integer and Boolean fields are sometimes not transferred correctly but the error only occurs in tables with many fields and not for the first x fields in the table. See example code that creates this error when executed in Cronus International 7.00 W1 version, build 7.0.34082.
The three new items created by the code (1100X, 1110X and 1120X) should have "Low-Level Code" 1100,110,1120 respectively.
When the code is runned, all 3 items get "Low-Level Code" = 1100. So the Integer field "Low-Level Code" is copied from the first record for all 3 records generated by the Transferfields command.
//Example code that demonstrates a failure in the Transferfields function.
//Item1 and Item2 Global Variables of type Rec = Item
Item1.GET('1100');
Item1."Low-Level Code" := 1100;
Item1.MODIFY;
Item1.GET('1110');
Item1."Low-Level Code" := 1110;
Item1.MODIFY;
Item1.GET('1120');
Item1."Low-Level Code" := 1120;
Item1.MODIFY;
COMMIT;
Item1.SETFILTER("No.",'1100|1110|1120');
Item1.FINDSET;
REPEAT
Item2.TRANSFERFIELDS(Item1);
Item2."No." := Item2."No." + 'x';
Item2.INSERT;
UNTIL Item1.NEXT = 0;
0
Comments
Also, why not use Item2:=Item1 rather than TRANSFERFIELDS?
http://mibuso.com/blogs/davidmachanick/
There are workarounds for this like Item2 := Item1, but in some cases that does not work because the timestamp of the record is copied as well. Another workaround seems to be clearing the variable before doing Transferfields.
There is a lot of old code out there using transferfields, thererfore these workarounds are not always practical. I have reported this to the Microsoft support site for partners.
https://mbs.microsoft.com/knowledgebase ... US;2761649
Peter
Hi
The example provided with NAV2013 build 33781 works fine.
Bye
Matteo Montanari
PS: blob transferfields bug was reported by me to Microsoft support
Thanks for letting us know.
Please update us when you get the hotfix that corrects it.
http://mibuso.com/blogs/davidmachanick/