Bài viết này áp dụng cho Microsoft Dynamics NAV dành cho ngôn ngữ tiếng Bồ Đào Nha (pt).
Triệu chứng
Giả sử bạn cài đặt bản cập nhật Chứng nhận Pháp lý ERP trong phiên bản tiếng Bồ Đào Nha của Microsoft Dynamics NAV. Khi bạn chạy hàm Copy Document trên bản ghi nhớ tín dụng bán hàng, bạn nhận được thông báo lỗi sau:
Lưu ý
Nội dung của trường Hàm băm không thể được sao chép vào trường mã dòng tiền mặt vì kích cỡ của trường mã dòng tiền mặt là quá nhỏ.
Sự cố này xảy ra trong các sản phẩm sau:
- Phiên bản tiếng Bồ Đào Nha của Microsoft Dynamics NAV 2009 R2
- Phiên bản tiếng Bồ Đào Nha của Microsoft Dynamics NAV 2009 Gói Dịch vụ 1 (SP1)
- Phiên bản tiếng Bồ Đào Nha của Microsoft Dynamics NAV 5.0 Gói Dịch vụ 1 (SP1)
Giải pháp
Thông tin cập nhật nóng
Hotfix được hỗ trợ hiện có sẵn từ Microsoft. Tuy nhiên, nó chỉ là nhằm sửa chữa vấn đề được mô tả trong bài viết này. Áp dụng nó chỉ cho hệ thống đang gặp này cụ thể vấn đề. Hotfix này có thể nhận được thử nghiệm bổ sung. Do đó, nếu bạn không bị ảnh hưởng nghiêm trọng bởi sự cố này, chúng tôi khuyên bạn nên đợi gói dịch vụ Microsoft Dynamics NAV tiếp theo 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, các khoản phí thường phát sinh đối với các cuộc gọi hỗ trợ có thể bị hủy nếu Chuyên gia Hỗ trợ Kỹ thuật dành cho Microsoft Dynamics và các sản phẩm liên quan xác định rằng một bản cập nhật cụ thể sẽ giải quyết sự cố của bạn. Chi phí hỗ trợ thông thường sẽ áp dụng cho các câu hỏi và sự cố hỗ trợ bổ sung không đủ điều kiện cho bản cập nhật cụ thể được đề cập.
Thông tin cài đặt
Microsoft chỉ cung cấp các ví dụ lập trình để minh họa mà không cần bảo hành dù là rõ ràng hay ngụ ý. Điều này bao gồm, nhưng không giới hạn ở, bảo hành ngụ ý về khả năng bán được hoặc sự thích hợp cho một mục đích cụ thể. Bài viết này giả định rằng bạn đã quen thuộc với ngôn ngữ lập trình đang được chứng minh và với các công cụ được sử dụng để tạo và gỡ lỗi thủ tục. Các kỹ sư hỗ trợ của Microsoft có thể giúp giải thích chức năng của một quy trình cụ thể, nhưng họ sẽ không sửa đổi các ví dụ này để cung cấp chức năng bổ sung hoặc quy trình xây dựng để đáp ứng các yêu cầu cụ thể của bạn.
Lưu ý Trước khi bạn cài đặt hotfix này, hãy xác minh rằng tất cả người dùng máy khách Microsoft Navision đã được đăng xuất khỏi hệ thống. Điều này bao gồm người dùng máy khách Dịch vụ Ứng dụng Microsoft Navision (NAS). Bạn nên là người dùng khách duy nhất đăng nhập khi bạn thực hiện hotfix này.
Để thực hiện 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 gán tài khoản người dùng trong cửa sổ Đăng nhập Windows hoặc trong cửa sổ Đăng nhập Cơ sở dữ liệu. Nếu tài khoản người dùng không thể được gán ID vai trò "SIÊU", bạn phải xác minh rằng tài khoản người dùng có các quyền sau đây:
- Quyền Sửa đổi đối với đối tượng mà bạn sẽ thay đổi.
- Quyền Thực thi đối với đối tượng ID Đối tượng Hệ thống 5210 và đối với đối tượng ID Đối tượng Hệ thống 9015.
Lưu ý Bạn không phải có quyền đối với các kho dữ liệu trừ khi bạn phải thực hiện sửa chữa dữ liệu.
Thay đổi mã
Lưu ý Luôn kiểm tra các bản sửa lỗi mã trong môi trường được kiểm soát trước khi bạn áp dụng các bản sửa lỗi cho máy tính sản xuất của bạn.
Để giải quyết vấn đề này, hãy làm theo các bước sau:
Thay đổi mã trong hàm Request Form trong báo cáo Sao chép Tài liệu Bán hàng (292) như sau:
Mã hiện có... FromSalesHeader.TRANSFERFIELDS(FromReturnRcptHeader); DocType::"Posted Credit Memo": IF FromSalesCrMemoHeader.GET(DocNo) THEN // Delete the following line. FromSalesHeader.TRANSFERFIELDS(FromSalesCrMemoHeader); END; IF FromSalesHeader."No." = '' THEN DocNo := ''; ...Mã thay thế
... FromSalesHeader.TRANSFERFIELDS(FromReturnRcptHeader); DocType::"Posted Credit Memo": IF FromSalesCrMemoHeader.GET(DocNo) THEN // Add the following line. CopyDocMgt.CopySalesCrMemoHeader(FromSalesHeader,FromSalesCrMemoHeader); // PT0001 END; IF FromSalesHeader."No." = '' THEN DocNo := ''; ...Thay đổi mã trong hàm ValidateDocNo trong báo cáo Sao chép Tài liệu Doanh số (292) như sau:
Mã hiện có... DocType::"Posted Credit Memo": BEGIN FromSalesCrMemoHeader.GET(DocNo); // Delete the following line. FromSalesHeader.TRANSFERFIELDS(FromSalesCrMemoHeader); END; END; END; ...Mã thay thế
... DocType::"Posted Credit Memo": BEGIN FromSalesCrMemoHeader.GET(DocNo); // Add the following line. CopyDocMgt.CopySalesCrMemoHeader(FromSalesHeader,FromSalesCrMemoHeader); // PT0001 END; END; END; ...Thay đổi mã trong hàm CopySalesDoc trong copy document Mgt. codeunit (6620) như sau:
Mã hiện có 1... SalesDocType::"Posted Credit Memo": BEGIN ToSalesHeader.VALIDATE("Sell-to Customer No.",FromSalesCrMemoHeader."Sell-to Customer No."); // Delete the following line. TRANSFERFIELDS(FromSalesCrMemoHeader,FALSE); CopyFromPstdSalesDocDimToHdr( ToSalesHeader,FromDocType,FromSalesShptHeader,FromSalesInvHeader, FromReturnRcptHeader,FromSalesCrMemoHeader); ...Mã thay thế 1
... SalesDocType::"Posted Credit Memo": BEGIN ToSalesHeader.VALIDATE("Sell-to Customer No.",FromSalesCrMemoHeader."Sell-to Customer No."); // Add the following line. CopySalesCrMemoHeader(ToSalesHeader,FromSalesCrMemoHeader); // PT0001 CopyFromPstdSalesDocDimToHdr( ToSalesHeader,FromDocType,FromSalesShptHeader,FromSalesInvHeader, FromReturnRcptHeader,FromSalesCrMemoHeader); ...Mã hiện có 2
... END; SalesDocType::"Posted Credit Memo": BEGIN // Delete the following line. FromSalesHeader.TRANSFERFIELDS(FromSalesCrMemoHeader); FromSalesCrMemoLine.RESET; FromSalesCrMemoLine.SETRANGE("Document No.",FromSalesCrMemoHeader."No."); IF MoveNegLines THEN ...Mã thay thế 2
... END; SalesDocType::"Posted Credit Memo": BEGIN // Add the following line. CopySalesCrMemoHeader(FromSalesHeader,FromSalesCrMemoHeader); // PT0001 FromSalesCrMemoLine.RESET; FromSalesCrMemoLine.SETRANGE("Document No.",FromSalesCrMemoHeader."No."); IF MoveNegLines THEN ...Thay đổi mã trong hàm CopySalesCrMemoLinesToDoc trong đơn vị mã Copy Document Mgt. (6620) như sau:
Mã hiện có... FromSalesCrMemoHeader.GET("Document No."); TransferOldExtLines.ClearLineNumbers; END; // Delete the following line. FromSalesHeader.TRANSFERFIELDS(FromSalesCrMemoHeader); FillExactCostRevLink := IsSalesFillExactCostRevLink(ToSalesHeader,3,FromSalesHeader."Currency Code"); FromSalesLine.TRANSFERFIELDS(FromSalesCrMemoLine); ...Mã thay thế
... FromSalesCrMemoHeader.GET("Document No."); TransferOldExtLines.ClearLineNumbers; END; // Add the following line. CopySalesCrMemoHeader(FromSalesHeader,FromSalesCrMemoHeader); // PT0001 FillExactCostRevLink := IsSalesFillExactCostRevLink(ToSalesHeader,3,FromSalesHeader."Currency Code"); FromSalesLine.TRANSFERFIELDS(FromSalesCrMemoLine); ...Thay đổi mã trong Tài liệu trong sao chép tài liệu Mgt. codeunit (6620) như sau:
Mã hiện có... FORMAT(ToSalesHeader."No.")); END; BEGIN END. } } ...Mã thay thế
... FORMAT(ToSalesHeader."No.")); END; // Add the following lines. PROCEDURE CopySalesCrMemoHeader@1110018(VAR SalesHeader@1110001 : Record 36;SalesCrMemoHeader@1110002 : Record 114); BEGIN WITH SalesHeader DO BEGIN "No." := SalesCrMemoHeader."No."; "Sell-to Customer No." := SalesCrMemoHeader."Sell-to Customer No."; "Bill-to Customer No." := SalesCrMemoHeader."Bill-to Customer No."; "Bill-to Name" := SalesCrMemoHeader."Bill-to Name"; "Bill-to Name 2" := SalesCrMemoHeader."Bill-to Name 2"; "Bill-to Address" := SalesCrMemoHeader."Bill-to Address"; "Bill-to Address 2" := SalesCrMemoHeader."Bill-to Address 2"; "Bill-to City" := SalesCrMemoHeader."Bill-to City"; "Bill-to Contact" := SalesCrMemoHeader."Bill-to Contact"; "Your Reference" := SalesCrMemoHeader."Your Reference"; "Ship-to Code" := SalesCrMemoHeader."Ship-to Code"; "Ship-to Name" := SalesCrMemoHeader."Ship-to Name"; "Ship-to Name 2" := SalesCrMemoHeader."Ship-to Name 2"; "Ship-to Address" := SalesCrMemoHeader."Ship-to Address"; "Ship-to Address 2" := SalesCrMemoHeader."Ship-to Address 2"; "Ship-to City" := SalesCrMemoHeader."Ship-to City"; "Ship-to Contact" := SalesCrMemoHeader."Ship-to Contact"; "Posting Date" := SalesCrMemoHeader."Posting Date"; "Shipment Date" := SalesCrMemoHeader."Shipment Date"; "Posting Description" := SalesCrMemoHeader."Posting Description"; "Payment Terms Code" := SalesCrMemoHeader."Payment Terms Code"; "Due Date" := SalesCrMemoHeader."Due Date"; "Payment Discount %" := SalesCrMemoHeader."Payment Discount %"; "Pmt. Discount Date" := SalesCrMemoHeader."Pmt. Discount Date"; "Shipment Method Code" := SalesCrMemoHeader."Shipment Method Code"; "Location Code" := SalesCrMemoHeader."Location Code"; "Shortcut Dimension 1 Code" := SalesCrMemoHeader."Shortcut Dimension 1 Code"; "Shortcut Dimension 2 Code" := SalesCrMemoHeader."Shortcut Dimension 2 Code"; "Customer Posting Group" := SalesCrMemoHeader."Customer Posting Group"; "Currency Code" := SalesCrMemoHeader."Currency Code"; "Currency Factor" := SalesCrMemoHeader."Currency Factor"; "Customer Price Group" := SalesCrMemoHeader."Customer Price Group"; "Prices Including VAT" := SalesCrMemoHeader."Prices Including VAT"; "Invoice Disc. Code" := SalesCrMemoHeader."Invoice Disc. Code"; "Customer Disc. Group" := SalesCrMemoHeader."Customer Disc. Group"; "Language Code" := SalesCrMemoHeader."Language Code"; "Salesperson Code" := SalesCrMemoHeader."Salesperson Code"; Comment := SalesCrMemoHeader.Comment; "No. Printed" := SalesCrMemoHeader."No. Printed"; "On Hold" := SalesCrMemoHeader."On Hold"; "Applies-to Doc. Type" := SalesCrMemoHeader."Applies-to Doc. Type"; "Applies-to Doc. No." := SalesCrMemoHeader."Applies-to Doc. No."; "Bal. Account No." := SalesCrMemoHeader."Bal. Account No."; Amount := SalesCrMemoHeader.Amount; "Amount Including VAT" := SalesCrMemoHeader."Amount Including VAT"; "VAT Registration No." := SalesCrMemoHeader."VAT Registration No."; "Reason Code" := SalesCrMemoHeader."Reason Code"; "Gen. Bus. Posting Group" := SalesCrMemoHeader."Gen. Bus. Posting Group"; "EU 3-Party Trade" := SalesCrMemoHeader."EU 3-Party Trade"; "Transaction Type" := SalesCrMemoHeader."Transaction Type"; "Transport Method" := SalesCrMemoHeader."Transport Method"; "VAT Country/Region Code" := SalesCrMemoHeader."VAT Country/Region Code"; "Sell-to Customer Name" := SalesCrMemoHeader."Sell-to Customer Name"; "Sell-to Customer Name 2" := SalesCrMemoHeader."Sell-to Customer Name 2"; "Sell-to Address" := SalesCrMemoHeader."Sell-to Address"; "Sell-to Address 2" := SalesCrMemoHeader."Sell-to Address 2"; "Sell-to City" := SalesCrMemoHeader."Sell-to City"; "Sell-to Contact" := SalesCrMemoHeader."Sell-to Contact"; "Bill-to Post Code" := SalesCrMemoHeader."Bill-to Post Code"; "Bill-to County" := SalesCrMemoHeader."Bill-to County"; "Bill-to Country/Region Code" := SalesCrMemoHeader."Bill-to Country/Region Code"; "Sell-to Post Code" := SalesCrMemoHeader."Sell-to Post Code"; "Sell-to County" := SalesCrMemoHeader."Sell-to County"; "Sell-to Country/Region Code" := SalesCrMemoHeader."Sell-to Country/Region Code"; "Ship-to Post Code" := SalesCrMemoHeader."Sell-to Post Code"; "Ship-to County" := SalesCrMemoHeader."Ship-to County"; "Ship-to Country/Region Code" := SalesCrMemoHeader."Ship-to Country/Region Code"; "Exit Point" := SalesCrMemoHeader."Exit Point"; Correction := SalesCrMemoHeader.Correction; "Document Date" := SalesCrMemoHeader."Document Date"; "External Document No." := SalesCrMemoHeader."External Document No."; Area := SalesCrMemoHeader.Area; "Transaction Specification" := SalesCrMemoHeader."Transaction Specification"; "Payment Method Code" := SalesCrMemoHeader."Payment Method Code"; "No. Series" := SalesCrMemoHeader."Pre-Assigned No. Series"; "Posting No. Series" := SalesCrMemoHeader."No. Series"; "Tax Area Code" := SalesCrMemoHeader."Tax Area Code"; "Tax Liable" := SalesCrMemoHeader."Tax Liable"; "VAT Bus. Posting Group" := SalesCrMemoHeader."VAT Bus. Posting Group"; "VAT Base Discount %" := SalesCrMemoHeader."VAT Base Discount %"; "Prepmt. Cr. Memo No. Series" := SalesCrMemoHeader."Prepmt. Cr. Memo No. Series"; "Campaign No." := SalesCrMemoHeader."Campaign No."; "Sell-to Contact No." := SalesCrMemoHeader."Sell-to Contact No."; "Bill-to Contact No." := SalesCrMemoHeader."Bill-to Contact No."; "Responsibility Center" := SalesCrMemoHeader."Responsibility Center"; "Allow Line Disc." := SalesCrMemoHeader."Allow Line Disc."; "Get Shipment Used" := SalesCrMemoHeader."Get Return Receipt Used"; "Amount in VAT Report" := SalesCrMemoHeader."Amount in VAT Report"; "Applies-to Bill No." := SalesCrMemoHeader."Applies-to Bill No."; "Cust. Bank Acc. Code" := SalesCrMemoHeader."Cust. Bank Acc. Code"; "Pay-at Code" := SalesCrMemoHeader."Pay-at Code"; "Date Sent" := SalesCrMemoHeader."Date Sent"; "Time Sent" := SalesCrMemoHeader."Time Sent"; "BizTalk Document Sent" := SalesCrMemoHeader."BizTalk Document Sent"; END; END; // End of the lines. BEGIN END. } } ...
Điều kiện tiên quyết
Bạn phải cài đặt một trong các sản phẩm sau để áp dụng bản cập nhật nóng này:
- Phiên bản tiếng Bồ Đào Nha của Microsoft Dynamics NAV 2009 R2
- Phiên bản tiếng Bồ Đào Nha của Microsoft Dynamics NAV 2009 Gói Dịch vụ 1 (SP1)
- Phiên bản tiếng Bồ Đào Nha của Microsoft Dynamics NAV 5.0 Gói Dịch vụ 1 (SP1)
Loại bỏ thông tin
Bạn không thể loại bỏ hotfix này.
Trạng thái
Microsoft đã xác nhận rằng đây là sự cố trong các sản phẩm của Microsoft được liệt kê trong mục "áp dụng cho".
Lưu ý Đây là bài viết "PHÁT HÀNH NHANH" được tạo trực tiếp từ trong tổ chức hỗ trợ của Microsoft. Thông tin có trong tài liệu này được cung cấp tương tự để đáp ứng các vấn đề mới xuất hiện. Do tốc độ làm cho nó có sẵn, các tài liệu có thể bao gồm lỗi đánh máy và có thể được sửa đổi bất cứ lúc nào mà không cần thông báo. Hãy xem Điều khoản Sử dụng để biết những điều cần cân nhắc khác.