Triệu chứng
Sau khi cài đặt phiên bản mới nhất của báo cáo danh sách nhà cung cấp tài khoản hóa đơn, nếu bạn áp dụng hóa đơn cho các giao dịch liên quan đến thanh toán và gửi nó trong phiên bản tiếng ý của Microsoft Dynamics NAV 2009, báo cáo danh sách nhà cung cấp tài khoản hóa đơn không hiển thị các khoản thanh toán. Chỉ hiển thị các đơn khi đóng. Làm theo các bước trong phần thay đổi mã để giải quyết vấn đề này. Sự cố này xảy ra trong các sản phẩm sau:
-
Phiên bản tiếng ý của Microsoft Dynamics NAV 2009 R2
-
Phiên bản tiếng ý của Microsoft Dynamics NAV 2009 SP1
Giải pháp
Thông tin về cập nhật nóng
Microsoft hiện đã cung cấp bản cập nhật nóng được hỗ trợ. Tuy nhiên, nó chỉ được dùng để khắc phục sự cố được mô tả trong bài viết này. Áp dụng cho các hệ thống đang gặp sự cố cụ thể này. Hotfix này có thể được kiểm tra thêm. Vì vậy, nếu bạn không bị ảnh hưởng bởi sự cố này, chúng tôi khuyến nghị bạn đợi cho gói dịch vụ tiếp theo của Microsoft Dynamics NAV 2009 hoặc phiên bản Microsoft Dynamics NAV tiếp theo có chứa hotfix này.
Lưu ý Trong trường hợp đặc biệt, chi phí thường phát sinh để hỗ trợ cuộc gọi có thể bị hủy bỏ nếu chuyên viên hỗ trợ kỹ thuật cho Microsoft Dynamics và sản phẩm liên quan xác định rằng một Cập Nhật cụ thể sẽ giải quyết vấn đề của bạn. Chi phí hỗ trợ thông thường sẽ áp dụng cho các vấn đề không phù hợp với bản Cập Nhật cụ thể trong câu hỏi và câu hỏi hỗ trợ bổ sung.Thông tin cài đặt
Microsoft cung cấp mô hình lập trình để minh hoạ, không bảo hành hoặc rõ ràng hay ngụ ý. Điều này bao gồm, nhưng không giới hạn ở các bảo đảm cho một mục đích cụ thể hoặc sự. Bài viết này giả định rằng bạn đã quen với ngôn ngữ lập trình đang được giải thích và các công cụ được sử dụng để tạo và quy trình gỡ lỗi. Các kỹ sư hỗ trợ Microsoft có thể giúp giải thích các chức năng của một quy trình cụ thể. Tuy nhiên, họ sẽ không sửa đổi các ví dụ để cung cấp thêm chức năng hoặc xây dựng quy trình nhằm đáp ứng các yêu cầu cụ thể của bạn.
Lưu ý Trước khi cài đặt hotfix này, xác minh rằng tất cả người dùng máy khách Microsoft Dynamics NAV đã đăng xuất hệ thống. Điều này bao gồm dịch vụ Microsoft Dynamics NAV ứng dụng máy chủ (NAS). Bạn nên khách hàng chỉ người được đăng nhập khi bạn áp dụng hotfix này. Để áp dụng hotfix này, bạn phải có giấy phép nhà phát triển. Chúng tôi khuyên bạn nên tài khoản người dùng trong cửa sổ thông tin đăng nhập Windows hoặc trong cửa sổ thông tin đăng nhập cơ sở dữ liệu được gán vai trò "Siêu" của bạn. Nếu tài khoản người dùng không thể gán vai trò "SUPER" ID, bạn phải xác minh rằng tài khoản người dùng có các quyền sau đây:-
Thay đổi quyền cho các đối tượng mà bạn sẽ thay đổi.
-
Quyền thực thi các đối tượng hệ thống đối tượng ID 5210 và hệ thống đối tượng ID 9015
đối tượng.
Lưu ý Bạn không cần phải có quyền để lưu trữ dữ liệu nếu bạn phải tiến hành sửa chữa dữ liệu.
Thay đổi mã
Lưu ý Luôn kiểm tra mã khắc phục trong một môi trường được kiểm soát trước khi bạn áp dụng bản vá để sản xuất máy tính của bạn.
Để khắc phục sự cố này, hãy làm theo các bước sau:-
Thay đổi mã trong báo cáo danh sách nhà cung cấp tài khoản hóa đơn (12116) như sau:
Hiện có mã 1...DataItemTableView=SORTING(Vendor Ledger Entry No.,Entry Type,Posting Date)
WHERE(Entry Type=CONST(Application)); OnPreDataItem=BEGIN // Delete the following line. VendLedgEntry1.COPYFILTER("Posting Date", "Detailed Vendor Ledg. Entry"."Posting Date"); // End of the deleted line. END; OnAfterGetRecord=BEGIN ...Thay thế mã 1
...DataItemTableView=SORTING(Vendor Ledger Entry No.,Entry Type,Posting Date)
WHERE(Entry Type=CONST(Application)); OnPreDataItem=BEGIN // Add the following line. FindAppliedDtldVendLedgEntry(VendLedgEntry1."Entry No."); // End of the added line. END; OnAfterGetRecord=BEGIN ...Hiện có mã 2
... END;
OnAfterGetRecord=BEGIN // Delete the following lines. VendLedgEntry3.GET("Applied Vend. Ledger Entry No."); VendLedgEntry3.CALCFIELDS("Original Amt. (LCY)"); ClosedByAmountLCY := "Amount (LCY)"; TotalForVendor += "Amount (LCY)"; TotalClosedByAmntLCY += "Amount (LCY)"; END; DataItemLink=Vendor Ledger Entry No.=FIELD(Entry No.); // End of the deleted lines. } SECTIONS { ...Thay thế mã 2
... END;
OnAfterGetRecord=BEGIN // Add the following lines. IF NOT TempDetailedVendorLedgEntryApplied.GET("Entry No.") THEN CurrReport.SKIP; VendLedgEntry3.GET("Vendor Ledger Entry No."); VendLedgEntry3.CALCFIELDS("Original Amt. (LCY)"); AppliedDocumentTypeText := FORMAT(VendLedgEntry3."Document Type"); ClosedByAmountLCY := "Amount (LCY)"; TotalForVendor -= "Amount (LCY)"; TotalClosedByAmntLCY -= "Amount (LCY)"; END; // End of the added lines. } SECTIONS { ...Mã hiện 3
...SectionWidth=27750;
SectionHeight=846; OnPreSection=BEGIN IF (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::Payment) OR (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::" ") THEN CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); IF ("Unapplied by Entry No." <> 0) THEN CurrReport.SHOWOUTPUT(FALSE); END; ...Thay thế mã 3
...SectionWidth=27750;
SectionHeight=846; OnPreSection=BEGIN // Delete the following lines. IF (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::Payment) OR (VendLedgEntry1."Document Type" = VendLedgEntry1."Document Type"::" ") THEN CurrReport.SHOWOUTPUT(FALSE) ELSE CurrReport.SHOWOUTPUT(TRUE); // End of the deleted lines. IF ("Unapplied by Entry No." <> 0) THEN CurrReport.SHOWOUTPUT(FALSE); END; ...Mã hiện 4
... { 1130070;TextBox ;19200;0 ;1800 ;423 ;SourceExpr=ClosedByAmountLCY;
DataSetFieldName=ClosedByAmountLCY_Control1130070 } { 1130071;TextBox ;5550 ;0 ;1500 ;423 ;HorzAlign=Right; // Delete the following lines. SourceExpr="Document No."; DataSetFieldName=Detailed_Vendor_Ledg__Entry__Document_No__ } { 1130072;TextBox ;1950 ;0 ;1350 ;423 ;SourceExpr="Document Type"; // End of the deleted lines. DataSetFieldName=Detailed_Vendor_Ledg__Entry__Document_Type_ } { 1130073;TextBox ;0 ;0 ;1800 ;423 ;CaptionML=[ENU=PostingDate; ITA=Data di registrazione]; ...Thay thế mã 4
...{ 1130070;TextBox ;19200;0 ;1800 ;423 ;SourceExpr=ClosedByAmountLCY;
DataSetFieldName=ClosedByAmountLCY_Control1130070 } { 1130071;TextBox ;5550 ;0 ;1500 ;423 ;HorzAlign=Right; // Add the following lines. SourceExpr=VendLedgEntry3."Document No."; DataSetFieldName=Detailed_Vendor_Ledg__Entry__Document_No__ } { 1130072;TextBox ;1950 ;0 ;1350 ;423 ;SourceExpr=AppliedDocumentTypeText; // End of the added lines. DataSetFieldName=Detailed_Vendor_Ledg__Entry__Document_Type_ } { 1130073;TextBox ;0 ;0 ;1800 ;423 ;CaptionML=[ENU=PostingDate; ITA=Data di registrazione]; ...Hiện có mã 5
... DataSetFieldName=Detailed_Vendor_Ledg__Entry__Document_Type_ }
{ 1130073;TextBox ;0 ;0 ;1800 ;423 ;CaptionML=[ENU=PostingDate; ITA=Data di registrazione]; // Delete the following line. SourceExpr=FORMAT("Posting Date"); // End of the deleted line. DataSetFieldName=Detailed_Vendor_Ledg__Entry__Posting_Date_ } { 1130074;TextBox ;7200 ;0 ;1650 ;423 ;SourceExpr=VendLedgEntry3."Document Occurrence"; DataSetFieldName=VendLedgEntry3__Document_Occurrence_ } ...Thay thế mã 5
...DataSetFieldName=Detailed_Vendor_Ledg__Entry__Document_Type_ }
{ 1130073;TextBox ;0 ;0 ;1800 ;423 ;CaptionML=[ENU=PostingDate; ITA=Data di registrazione]; // Add the following line. SourceExpr=FORMAT(VendLedgEntry3."Posting Date"); // End of the added line. DataSetFieldName=Detailed_Vendor_Ledg__Entry__Posting_Date_ } { 1130074;TextBox ;7200 ;0 ;1650 ;423 ;SourceExpr=VendLedgEntry3."Document Occurrence"; DataSetFieldName=VendLedgEntry3__Document_Occurrence_ } ...Mã hiện 6
...ForeColor=65535;
SourceExpr="Unapplied by Entry No."; DataSetFieldName=Detailed_Vendor_Ledg__Entry__Unapplied_by_Entry_No__ } } } { PROPERTIES ...Thay thế mã 6
... ForeColor=65535;
SourceExpr="Unapplied by Entry No."; DataSetFieldName=Detailed_Vendor_Ledg__Entry__Unapplied_by_Entry_No__ } // Add the following lines. { 1130178;TextBox ;21150;0 ;1800 ;423 ;Visible=No; SourceExpr="Vendor Ledger Entry No."; DataSetFieldName=Detailed_Vendor_Ledg__Entry_Vendor_Ledger_Entry_No_ } // End of the added lines. } } { PROPERTIES ... -
Thay đổi mã trong biến toàn cầu trong báo cáo danh sách nhà cung cấp tài khoản hóa đơn (12116) như sau:
Hiện có mã 1...VAR
Text000@1130000 : TextConst 'ENU=Please specify the Ending Date;ITA=Specificare Data fine'; VendorBillLine@1130001 : Record 12182; EndingDate@1130002 : Date; OnlyOpened@1130003 : Boolean; RemainingAmountLCY@1130004 : Decimal; ...Thay thế mã 1
...VAR
Text000@1130000 : TextConst 'ENU=Please specify the Ending Date;ITA=Specificare Data fine'; VendorBillLine@1130001 : Record 12182; // Add the following line. TempDetailedVendorLedgEntryApplied@1130013 : TEMPORARY Record 380; // End of the added line. EndingDate@1130002 : Date; OnlyOpened@1130003 : Boolean; RemainingAmountLCY@1130004 : Decimal; ...Hiện có mã 2
...TotalVendorBillAmnt@1130010 : Decimal;
VendLedgEntry3@1130011 : Record 25; VendorLedgerEmtryTypeINT@1102601000 : Integer; BEGIN END. ...Thay thế mã 2
...TotalVendorBillAmnt@1130010 : Decimal;
VendLedgEntry3@1130011 : Record 25; VendorLedgerEmtryTypeINT@1102601000 : Integer; // Add the following lines. AppliedDocumentTypeText@1170000000 : Text[30]; LOCAL PROCEDURE FindAppliedDtldVendLedgEntry@1130007(VendorLedgerEntryNo@1130000 : Integer); VAR DetailedVendorLedgEntry@1130001 : Record 380; DetailedVendorLedgEntryApplied@1130003 : Record 380; BEGIN TempDetailedVendorLedgEntryApplied.RESET; TempDetailedVendorLedgEntryApplied.DELETEALL; DetailedVendorLedgEntry.SETRANGE("Vendor Ledger Entry No.",VendorLedgerEntryNo); DetailedVendorLedgEntry.SETRANGE("Entry Type",DetailedVendorLedgEntry."Entry Type"::Application); DetailedVendorLedgEntry.SETRANGE(Unapplied,FALSE); DetailedVendorLedgEntryApplied.SETRANGE( "Entry Type",DetailedVendorLedgEntryApplied."Entry Type"::Application); IF DetailedVendorLedgEntry.FINDSET THEN REPEAT DetailedVendorLedgEntryApplied.SETRANGE( "Applied Vend. Ledger Entry No.",DetailedVendorLedgEntry."Applied Vend. Ledger Entry No."); DetailedVendorLedgEntryApplied.SETFILTER( "Vendor Ledger Entry No.",'<>%1',VendorLedgerEntryNo); DetailedVendorLedgEntryApplied.SETRANGE( "Vendor No.",DetailedVendorLedgEntry."Vendor No."); DetailedVendorLedgEntryApplied.SETRANGE( "Transaction No.",DetailedVendorLedgEntry."Transaction No."); IF DetailedVendorLedgEntryApplied.FINDSET THEN REPEAT TempDetailedVendorLedgEntryApplied := DetailedVendorLedgEntryApplied; IF TempDetailedVendorLedgEntryApplied.INSERT THEN; UNTIL DetailedVendorLedgEntryApplied.NEXT = 0; UNTIL DetailedVendorLedgEntry.NEXT = 0; END; // End of the added lines. BEGIN END. ... -
Thay đổi mã trong báo cáo danh sách nhà cung cấp tài khoản hóa đơn (12116) như sau:
Mã hiện tại...</TableCell>
</TableCells> <Visibility> // Delete the following line. <Hidden>=IIF((Count(Fields!Detailed_Vendor_Ledg__Entry_Vendor_Ledger_Entry_No_.Value)=Rownumber("table1_Group3")), // End of the deleted line. FALSE,TRUE)</Hidden> </Visibility> </TableRow> ...Thay thế mã
... </TableCell>
</TableCells> <Visibility> // Add the following line. <Hidden>=IIF((Count(Fields!Detailed_Vendor_Ledg__Entry_Entry_No_.Value)=Rownumber("table1_Group3")), // End of the added line. FALSE,TRUE)</Hidden> </Visibility> </TableRow> ...
Điều kiện tiên quyết
Bạn phải có một trong các sản phẩm được cài đặt để áp dụng hotfix này:
-
Phiên bản tiếng ý của Microsoft Dynamics NAV 2009 R2
-
Phiên bản tiếng ý của Microsoft Dynamics NAV 2009 SP1
Thông tin về việc loại bỏ
Bạn không thể xoá hotfix này.
Trạng thái
Microsoft đã xác nhận rằng đây là sự cố trong sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".
Lưu ý Đây là một bài viết "XUẤT BẢN NHANH" được tạo trực tiếp từ trung tâm hỗ trợ của Microsoft. Thông tin này được cung cấp-trả lời cho các vấn đề mới xuất hiện. Vì nhanh chóng có sẵn, các tài liệu có thể bao gồm lỗi và có thể được sửa đổi bất kỳ lúc nào mà không cần thông báo. Xem Điều khoản sử dụngđể xem xét khác.