Error in KB 981000 NAV 2009 Sp1
Tim_Struebel
Member Posts: 19
Hello,
in the 1st step of the hotfix instructions the ID 1002 will allocate twice.
Which ID is correct for ServiceContractLine?
Thanks und Regards
Tim
in the 1st step of the hotfix instructions the ID 1002 will allocate twice.
... // Add the following line. ServiceContractLine@1002 : Record 5964; InvFrom@1001 : Date; InvTo@1000 : Date; NoOfMonths@1002 : Integer; NoOfDays@1003 : Integer; ...
Which ID is correct for ServiceContractLine?
Thanks und Regards
Tim
0
Comments
-
The Application Hotfix exists under:
https://mbs2.microsoft.com/Knowledgebase/KBDisplay.aspx?scid=kb$EN-US$981000&wa=wsignin1.0
The Application Hotfix does not exists in the Knowledge Base Partner-Portal:
https://mbs2.microsoft.com/Knowledgebase/search.aspx?wa=wsignin1.0
A syntax error is in the first step in the Replacement code 2. But where?IF DaysInFullInvPeriod = DaysInThisInvPeriod THEN "Amount per Period" := ROUND("Annual Amount" / ReturnNoOfPer("Invoice Period"),Currency."Amount Rounding Precision") ELSE IF Prepaid THEN BEGIN IF (DATE2DMY(InvFrom,2) = DATE2DMY(InvTo,2)) AND (DATE2DMY(InvFrom,3) = DATE2DMY(InvTo,3)) THEN BEGIN ServiceContractLine.RESET; ServiceContractLine.SETRANGE("Contract Type","Contract Type"); ServiceContractLine.SETRANGE("Contract No.","Contract No."); IF ServiceContractLine.FINDSET THEN REPEAT "Amount per Period" := ServContractMgt.CalcContractAmount(Rec,InvFrom,InvTo, ServiceContractLine."Line No."); UNTIL ServiceContractLine.NEXT=0; END ELSE BEGIN "Amount per Period" := 0; ServContractMgt.NoOfMonthsAndDaysInPeriod(InvFrom,InvTo,NoOfMonths,NoOfDays); "Amount per Period" := ("Annual Amount" / 12 * NoOfMonths) + ("Annual Amount" / ServContractMgt.NoOfDayInYear(InvFrom) * NoOfDays); END; END ELSE "Amount per Period" := ROUND( ("Annual Amount" / ServContractMgt.NoOfDayInYear(InvTo)) * DaysInThisInvPeriod, Currency."Amount Rounding Precision");0 -
Nobody has an answer? Who has implemented the hotfix till now?0
-
Why not check the Same code in 2009 r2 since it is supposed to include all role up fixes.0
-
R2 does not contain any application hotfixes ](*,). R2 contains only the platform hotfixes.
The objects of 2009 R2 are identical to 2009 SP1. Who would like to use R2 must implement all application hotfixes afterwards in R2 :thumbsdown: .0 -
1. The correct ID is: 1004
I hope this answered the question, and I apologize for the inconvenience it may have caused You.This posting is provided "AS IS" with no warranties, and confers no rights0 -
Tim Struebel wrote:R2 does not contain any application hotfixes ](*,). R2 contains only the platform hotfixes.
The objects of 2009 R2 are identical to 2009 SP1. Who would like to use R2 must implement all application hotfixes afterwards in R2 :thumbsdown: .
Is tere a link to an update hotfix or do you need to import all possible hotfixes. And is there a list of these?0 -
https://mbs.microsoft.com/Cms/Templates/document/General.aspx?NRMODE=Published&NRNODEGUID={35196C23-95C8-4245-8F18-19A08BFA6D99}&NRORIGINALURL=/partnersource/support/selfsupport/hottopics/NAV2009SP1PlatformHotfixOverview.htm&NRCACHEHINT=Guest&wa=wsignin1.0
http://blogs.technet.com/b/gediminb/archive/2011/03/18/microsoft-dynamics-nav-2009-r2-fixes.aspx
http://dynamicsuser.net/blogs/waldo/archive/tags/Platform+Updates/default.aspx0 -
Concerning the Syntaks error, this is what the code should look like:
IF DaysInFullInvPeriod = DaysInThisInvPeriod THEN "Amount per Period" := ROUND("Annual Amount" / ReturnNoOfPer("Invoice Period"),Currency."Amount Rounding Precision") ELSE IF Prepaid THEN BEGIN IF (DATE2DMY(InvFrom,2) = DATE2DMY(InvTo,2)) AND (DATE2DMY(InvFrom,3) = DATE2DMY(InvTo,3)) THEN BEGIN ServiceContractLine.RESET; ServiceContractLine.SETRANGE("Contract Type","Contract Type"); ServiceContractLine.SETRANGE("Contract No.","Contract No."); IF ServiceContractLine.FINDSET THEN REPEAT "Amount per Period" := ServContractMgt.CalcContractAmount(Rec,InvFrom,InvTo, ServiceContractLine."Line No."); UNTIL ServiceContractLine.NEXT = 0; END ELSE BEGIN "Amount per Period" := 0; ServContractMgt.NoOfMonthsAndDaysInPeriod(InvFrom,InvTo,NoOfMonths,NoOfDays); "Amount per Period" := ("Annual Amount" / 12 * NoOfMonths) + ("Annual Amount" / ServContractMgt.NoOfDayInYear(InvFrom) * NoOfDays); END; END ELSE "Amount per Period" := ROUND( ("Annual Amount" / ServContractMgt.NoOfDayInYear(InvTo)) * DaysInThisInvPeriod, Currency."Amount Rounding Precision"); END;This posting is provided "AS IS" with no warranties, and confers no rights0
Categories
- All Categories
- 73 General
- 73 Announcements
- 66.6K Microsoft Dynamics NAV
- 18.7K NAV Three Tier
- 38.4K NAV/Navision Classic Client
- 3.6K Navision Attain
- 2.4K Navision Financials
- 116 Navision DOS
- 851 Navision e-Commerce
- 1K NAV Tips & Tricks
- 772 NAV Dutch speaking only
- 617 NAV Courses, Exams & Certification
- 2K Microsoft Dynamics-Other
- 1.5K Dynamics AX
- 323 Dynamics CRM
- 111 Dynamics GP
- 10 Dynamics SL
- 1.5K Other
- 990 SQL General
- 383 SQL Performance
- 34 SQL Tips & Tricks
- 35 Design Patterns (General & Best Practices)
- 1 Architectural Patterns
- 10 Design Patterns
- 5 Implementation Patterns
- 53 3rd Party Products, Services & Events
- 1.6K General
- 1.1K General Chat
- 1.6K Website
- 83 Testing
- 1.2K Download section
- 23 How Tos section
- 252 Feedback
- 12 NAV TechDays 2013 Sessions
- 13 NAV TechDays 2012 Sessions
