Bỏ qua để tới nội dung chính
Đăng nhập với Microsoft
Đăng nhập hoặc tạo một tài khoản.
Xin chào,
Chọn một tài khoản khác.
Bạn có nhiều tài khoản
Chọn tài khoản bạn muốn đăng nhập.

Bài viết này mô tả sự cố khi bạn gửi tệp danh sách bán hàng nhà chức trách liên minh châu Âu (EU). Nếu tên công ty bao gồm các ký tự đặc biệt, bạn sẽ nhận được lỗi sau:

Kết hợp các ký tự không phải tất cả các tệp đã chọn trang phát hiện mã ISO-8859: vị trí tệp: 19 giá trị: 0xE9.

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 của Microsoft Dynamics NAV 2009 R2

  • Phiên bản tiếng Đức của Microsoft Dynamics NAV 2009 Service Pack 1 (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ể được 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:

  1. Thay đổi mã trong hàm FillCompanyInfo VAT báo cáo tiêu đề bảng (740) như sau:
    Hiện có mã 1

    ...PROCEDURE FillCompanyInfo@1140002();
    VAR
    CompanyInfo@1140000 : Record 79;
    CountryRegion@1140001 : Record 9;

    // Delete the following lines.
    BEGIN
    CompanyInfo.GET;
    // End of the deleted lines.

    CompanyInfo.TESTFIELD("Country/Region Code");

    CountryRegion.GET(CompanyInfo."Country/Region Code");
    ...

    Thay thế mã 1

    ...PROCEDURE FillCompanyInfo@1140002();
    VAR
    CompanyInfo@1140000 : Record 79;
    CountryRegion@1140001 : Record 9;

    // Adding the following lines.
    VATReportSetup@1140002 : Record 743;
    BEGIN
    CompanyInfo.GET;
    VATReportSetup.GET;
    // End of the added lines.

    CompanyInfo.TESTFIELD("Country/Region Code");

    CountryRegion.GET(CompanyInfo."Country/Region Code");
    ...

    Hiện có mã 2

    ...CountryRegion.GET(CompanyInfo."Country/Region Code");

    VALIDATE("VAT Registration No.",CompanyInfo."VAT Registration No.");

    // Deleting the following lines.
    VALIDATE("Company Name",CompanyInfo.Name);
    VALIDATE("Company Address",CompanyInfo.Address);
    VALIDATE("Country/Region Name",CountryRegion.Name);
    VALIDATE(City,CompanyInfo.City);
    // End of the deleted lines.

    VALIDATE("Post Code",CompanyInfo."Post Code");
    VALIDATE("Tax Office ID",CompanyInfo."Tax Office Number");
    END;
    ...

    Thay thế mã 2

    ...CountryRegion.GET(CompanyInfo."Country/Region Code");

    VALIDATE("VAT Registration No.",CompanyInfo."VAT Registration No.");

    // Adding the following lines.
    VALIDATE("Company Name",GetCompanyName(CompanyInfo,VATReportSetup));
    VALIDATE("Company Address",GetCompanyAddress(CompanyInfo,VATReportSetup));
    VALIDATE("Country/Region Name",CountryRegion.Name);
    VALIDATE(City,GetCompanyCity(CompanyInfo,VATReportSetup));
    // End of the added lines.

    VALIDATE("Post Code",CompanyInfo."Post Code");
    VALIDATE("Tax Office ID",CompanyInfo."Tax Office Number");
    END;
    ...
  2. Thay đổi mã trong hàm GetCompanyName VAT báo cáo tiêu đề bảng (740) như sau:
    Mã hiện tại

    ...TESTFIELD(Status,Status::Submitted);
    END;
    END;

    BEGIN
    END.
    }
    }
    ...

    Thay thế mã

    ...TESTFIELD(Status,Status::Submitted);
    END;
    END;

    // Adding the following lines.
    LOCAL PROCEDURE GetCompanyName@1140004(CompanyInformation@1140001 : Record 79;VATReportSetup@1140000 : Record 743) : Text[100];
    BEGIN
    IF VATReportSetup."Company Name" <> '' THEN
    EXIT(VATReportSetup."Company Name");

    EXIT(CompanyInformation.Name);
    END;

    LOCAL PROCEDURE GetCompanyAddress@1140005(CompanyInformation@1140001 : Record 79;VATReportSetup@1140000 : Record 743) : Text[30];
    BEGIN
    IF VATReportSetup."Company Address" <> '' THEN
    EXIT(VATReportSetup."Company Address");

    EXIT(CompanyInformation.Address);
    END;

    LOCAL PROCEDURE GetCompanyCity@1140006(CompanyInformation@1140001 : Record 79;VATReportSetup@1140000 : Record 743) : Text[30];
    BEGIN
    IF VATReportSetup."Company City" <> '' THEN
    EXIT(VATReportSetup."Company City");

    EXIT(CompanyInformation.City);
    END;
    // End of the adding lines.

    BEGIN
    END.
    }
    }
    ...
  3. Thay đổi mã trong lĩnh vực trong bảng thiết lập báo cáo thuế VAT (743) như sau:
    Mã hiện tại

    ...{ 11004;  ;Registration ID     ;Text6         ;CaptionML=[DEU=Registrierungs-ID;
    ENU=Registration ID] }
    { 11005; ;Export Cancellation Lines;Boolean ;CaptionML=[DEU=Stornozeilen exportieren;
    ENU=Export Cancellation Lines] }
    }
    KEYS
    {
    { ;Primary key ;Clustered=Yes }
    ...

    Thay thế mã

    ...{ 11004;  ;Registration ID     ;Text6         ;CaptionML=[DEU=Registrierungs-ID;
    ENU=Registration ID] }
    { 11005; ;Export Cancellation Lines;Boolean ;CaptionML=[DEU=Stornozeilen exportieren;
    ENU=Export Cancellation Lines] }

    // Adding the following lines.
    { 11006; ;Company Name ;Text100 }
    { 11007; ;Company Address ;Text30 }
    { 11008; ;Company City ;Text30 }
    // End of the added lines.

    }
    KEYS
    {
    { ;Primary key ;Clustered=Yes }
    ...
  4. Thay đổi mã trong thuộc tính thành thiết lập báo cáo thuế VAT (743) như sau:
    Mã hiện tại

    ...}
    PROPERTIES
    {
    Width=11990;

    // Delete the following line.
    Height=6490;
    // End of the deleted line.

    CaptionML=[DEU=MwSt.-Berichtseinrichtung;
    ENU=VAT Report Setup];
    InsertAllowed=No;
    DeleteAllowed=No;
    ...

    Thay thế mã

    ...}
    PROPERTIES
    {
    Width=11990;

    // Add the following line.
    Height=8690;
    // End of the added line.

    CaptionML=[DEU=MwSt.-Berichtseinrichtung;
    ENU=VAT Report Setup];
    InsertAllowed=No;
    DeleteAllowed=No;
    ...
  5. Thay đổi mã trong điều khiển thành thiết lập báo cáo thuế VAT (743) như sau:
    Hiện có mã 1

    ...}
    CONTROLS
    {

    // Deleting the following line.
    { 1 ;TabControl ;220 ;220 ;11550;5280 ;HorzGlue=Both;
    // End of the deleted line.

    VertGlue=Both;
    PageNamesML=[DEU=Allgemein,Nummerierung;
    ENU=General,Numbering] }
    { 4 ;CheckBox ;3850 ;990 ;440 ;440 ;ParentControl=1;
    ...

    Thay thế mã 1

    ...}
    CONTROLS
    {

    // Adding the following line.
    { 1 ;TabControl ;220 ;220 ;11550;7480 ;HorzGlue=Both;
    // End of the added line.

    VertGlue=Both;
    PageNamesML=[DEU=Allgemein,Nummerierung;
    ENU=General,Numbering] }
    { 4 ;CheckBox ;3850 ;990 ;440 ;440 ;ParentControl=1;
    ...

    Hiện có mã 2

    ...InPage=0;
    ShowCaption=No;
    SourceExpr="Export Cancellation Lines" }
    { 1140013;Label ;440 ;4840 ;3300 ;440 ;ParentControl=1140012 }
    { 7 ;TextBox ;3850 ;990 ;2750 ;440 ;ParentControl=1;
    InPage=1;
    SourceExpr="No. Series" }
    { 8 ;Label ;440 ;990 ;3300 ;440 ;ParentControl=7 }
    ...

    Thay thế mã 2

    ...InPage=0;
    ShowCaption=No;
    SourceExpr="Export Cancellation Lines" }
    { 1140013;Label ;440 ;4840 ;3300 ;440 ;ParentControl=1140012 }

    // Adding the following lines.
    { 1140015;TextBox ;3850 ;5390 ;2750 ;440 ;Name=Company Name;
    ParentControl=1;
    InPage=0;
    SourceExpr="Company Name" }
    { 1140014;Label ;440 ;5390 ;3300 ;440 ;ParentControl=1140015 }
    { 1140017;TextBox ;3850 ;5940 ;2750 ;440 ;ParentControl=1;
    InPage=0;
    SourceExpr="Company Address" }
    { 1140016;Label ;440 ;5940 ;3300 ;440 ;ParentControl=1140017 }
    { 1140019;TextBox ;3850 ;6490 ;2750 ;440 ;ParentControl=1;
    InPage=0;
    SourceExpr="Company City" }
    { 1140018;Label ;440 ;6490 ;3300 ;440 ;ParentControl=1140019 }
    // End of the added lines.

    { 7 ;TextBox ;3850 ;990 ;2750 ;440 ;ParentControl=1;
    InPage=1;
    SourceExpr="No. Series" }
    { 8 ;Label ;440 ;990 ;3300 ;440 ;ParentControl=7 }
    ...

    Mã hiện 3

    ...{ 7   ;TextBox      ;3850 ;990  ;2750 ;440  ;ParentControl=1;
    InPage=1;
    SourceExpr="No. Series" }
    { 8 ;Label ;440 ;990 ;3300 ;440 ;ParentControl=7 }

    // Deleting the following line.
    { 6 ;CommandButton;9570 ;5720 ;2200 ;550 ;HorzGlue=Right;
    // End of the deleted line.

    VertGlue=Bottom;
    PushAction=FormHelp }
    }
    CODE
    ...

    Thay thế mã 3

    ...{ 7   ;TextBox      ;3850 ;990  ;2750 ;440  ;ParentControl=1;
    InPage=1;
    SourceExpr="No. Series" }
    { 8 ;Label ;440 ;990 ;3300 ;440 ;ParentControl=7 }

    // Adding the following line.
    { 6 ;CommandButton;9570 ;7920 ;2200 ;550 ;HorzGlue=Right;
    // End of the added line.

    VertGlue=Bottom;
    PushAction=FormHelp }
    }
    CODE
    ...
  6. Thay đổi mã trong hàm MakeLineRecord báo cáo báo cáo xuất VIES (11008) như sau:
    Hiện có mã 1

    ...END;

    PROCEDURE MakeLineRecord@1140004(VATReportHeader@1140001 : Record 740;VATReportLine@1140000 : Record 741);
    BEGIN
    TempDataExportBuffer."Entry No." := NextLineNo;
    TempDataExportBuffer."Field Value" :=
    GetRecordType('1') +
    PADSTR(VATReportHeader."VAT Registration No.",11) +
    ...

    Thay thế mã 1

    ...END;

    PROCEDURE MakeLineRecord@1140004(VATReportHeader@1140001 : Record 740;VATReportLine@1140000 : Record 741);
    BEGIN

    // Adding the following lines.
    IF (VATReportLine.Base = 0) AND (VATReportLine."Line Type" <> VATReportLine."Line Type"::Correction) THEN
    EXIT;
    // End of the added lines.

    TempDataExportBuffer."Entry No." := NextLineNo;
    TempDataExportBuffer."Field Value" :=
    GetRecordType('1') +
    PADSTR(VATReportHeader."VAT Registration No.",11) +
    ...

    Hiện có mã 2

    ...TempDataExportBuffer."Entry No." := NextLineNo;
    TempDataExportBuffer."Field Value" :=
    GetRecordType('1') +
    PADSTR(VATReportHeader."VAT Registration No.",11) +

    // Deleting the following line.
    GetReportType(VATReportLine) +
    // End of the deleted line.

    GetReportPeriod(VATReportHeader) +
    PADSTR(VATReportLine.GetVATRegNo,14) +
    FormatBaseForExport(VATReportLine,12) +
    GetTurnoverType(VATReportLine) +
    ...

    Thay thế mã 2

    ...TempDataExportBuffer."Entry No." := NextLineNo;
    TempDataExportBuffer."Field Value" :=
    GetRecordType('1') +
    PADSTR(VATReportHeader."VAT Registration No.",11) +

    // Adding the following line.
    GetReportType(VATReportLine,VATReportHeader) +
    // End of the added line.

    GetReportPeriod(VATReportHeader) +
    PADSTR(VATReportLine.GetVATRegNo,14) +
    FormatBaseForExport(VATReportLine,12) +
    GetTurnoverType(VATReportLine) +
    ...
  7. Thay đổi mã trong hàm MakeTotalRecord báo cáo báo cáo xuất VIES (11008) như sau:
    Mã hiện tại

    ...GetRecordType('2') +
    PADSTR(VATReportHeader."VAT Registration No.",11) +
    GetReportPeriod(VATReportHeader) +
    FormatAmountForExport(VATReportHeader."Total Base",14) +

    // Deleting the following line.
    FormatAmountForExport(VATReportHeader."Total Number of Lines",5) +
    // End of the deleted line.

    PADSTR('',85);
    TempDataExportBuffer.INSERT;
    NextLineNo := NextLineNo + 1;
    END;
    ...

    Thay thế mã

    ...GetRecordType('2') +
    PADSTR(VATReportHeader."VAT Registration No.",11) +
    GetReportPeriod(VATReportHeader) +
    FormatAmountForExport(VATReportHeader."Total Base",14) +

    // Adding the following lines.
    FormatAmountForExport(
    VATReportHeader."Total Number of Lines" -
    GetZeroBaseNewLineCount(VATReportHeader."No.") +
    GetExportCancellationLineCount(VATReportHeader."No."),5) +
    // End of the added lines.

    PADSTR('',85);
    TempDataExportBuffer.INSERT;
    NextLineNo := NextLineNo + 1;
    END;
    ...
  8. Thay đổi mã trong hàm GetReportType báo cáo báo cáo xuất VIES (11008) như sau:
    Mã hiện tại

    ...BEGIN
    EXIT(RecordType);
    END;

    // Deleting the following lines.
    PROCEDURE GetReportType@1140007(VATReportLine@1140000 : Record 741) : Text[2];
    BEGIN
    // End of the deleted lines.

    CASE VATReportLine."Line Type" OF
    VATReportLine."Line Type"::New:
    EXIT('10');
    VATReportLine."Line Type"::Cancellation,
    ...

    Thay thế mã

    ...BEGIN
    EXIT(RecordType);
    END;

    // Adding the following lines.
    PROCEDURE GetReportType@1140007(VATReportLine@1140000 : Record 741;VATReportHeader@1140001 : Record 740) : Text[2];
    BEGIN
    IF VATReportHeader."VAT Report Type" = VATReportHeader."VAT Report Type"::Corrective THEN
    EXIT('11');
    // End of the added lines.

    CASE VATReportLine."Line Type" OF
    VATReportLine."Line Type"::New:
    EXIT('10');
    VATReportLine."Line Type"::Cancellation,
    ...
  9. Thay đổi mã trong hàm GetZeroBaseNewLineCount báo cáo báo cáo xuất VIES (11008) như sau:
    Mã hiện tại

    ...EXIT('p');
    END;

    PROCEDURE FormatDate@1140002(Date@1140000 : Date) : Text[8];
    BEGIN
    EXIT(FORMAT(Date,8,'<Year4><Month,2><Day,2>'));
    END;
    ...

    Thay thế mã

    ...EXIT('p');
    END;

    // Adding the following lines.
    LOCAL PROCEDURE GetZeroBaseNewLineCount@1140020(ReportNo@1140001 : Code[20]) : Integer;
    VAR
    VATReportLine@1140000 : Record 741;
    BEGIN
    WITH VATReportLine DO BEGIN
    SETRANGE("VAT Report No.",ReportNo);
    SETRANGE(Base,0);
    SETFILTER("Line Type",'<>%1',"Line Type"::Correction);
    EXIT(COUNT);
    END;
    END;

    LOCAL PROCEDURE GetExportCancellationLineCount@1140021(ReportNo@1140001 : Code[20]) : Integer;
    VAR
    VATReportLine@1140000 : Record 741;
    BEGIN
    IF NOT VATReportSetup."Export Cancellation Lines" THEN
    EXIT(0);

    WITH VATReportLine DO BEGIN
    SETRANGE("VAT Report No.",ReportNo);
    SETRANGE("Line Type","Line Type"::Cancellation);
    EXIT(COUNT);
    END;
    END;
    // End of the added lines.

    PROCEDURE FormatDate@1140002(Date@1140000 : Date) : Text[8];
    BEGIN
    EXIT(FORMAT(Date,8,'<Year4><Month,2><Day,2>'));
    END;
    ...


Điều kiện tiên quyết

Bạn phải có phiên bản tiếng Đức của Microsoft Dynamics NAV 2009 R2 hoặc SP1 cài đặt để áp dụng hotfix này.

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.

Bạn cần thêm trợ giúp?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.

Cộng đồng giúp bạn đặt và trả lời các câu hỏi, cung cấp phản hồi và lắng nghe ý kiến từ các chuyên gia có kiến thức phong phú.

Thông tin này có hữu ích không?

Bạn hài lòng đến đâu với chất lượng dịch thuật?
Điều gì ảnh hưởng đến trải nghiệm của bạn?
Khi nhấn gửi, phản hồi của bạn sẽ được sử dụng để cải thiện các sản phẩm và dịch vụ của Microsoft. Người quản trị CNTT của bạn sẽ có thể thu thập dữ liệu này. Điều khoản về quyền riêng tư.

Cảm ơn phản hồi của bạn!

×