Entri Layanan Intrastat EU tidak dikelompokkan seperti yang diharapkan di dalam laporan bulanan triwulanan dan berkas scambi.cee diekspor dalam versi bahasa Italia Microsoft Dynamics NAV


Artikel ini berlaku untuk Microsoft Dynamics NAV untuk lokal bahasa Italia (TI)

Gejala


Ketika Anda mencetak dan mengekspor entri perbaikan atau tidak perbaikan entri dalam versi bahasa Italia Microsoft Dynamics NAV, laporan dan berkas tidak dikelompokkan seperti yang diharapkan di laporan bulanan atau triwulanan laporan atau berkas yang diekspor scambi.cee. Anda mengharapkan pengelompokan harus dipertimbangkan jika entri menggunakan pendaftaran PPN yang sama tidak. atau sama layanan tarif tidak. atau kondisi pengelompokan lainnya seperti pengelompokan barang.
Masalah ini terjadi di dalam produk berikut ini:
  • Bahasa Italia versi Microsoft Dynamics NAV 2009 Paket Layanan 1 (SP1)
  • Bahasa Italia versi Microsoft Dynamics NAV 2009 R2
  • Bahasa Italia versi Microsoft Dynamics NAV 5.0 Paket Layanan 1 (SP1)

Pemecahan masalah


Informasi Hotfix

Sekarang tersedia hotfix yang didukung dari Microsoft. Namun, hanya ditujukan untuk memperbaiki masalah yang dijelaskan di artikel ini. Terapkan hanya ke sistem yang mengalami masalah khusus ini. Perbaikan terbaru ini dapat menerima pengujian tambahan. Oleh karena itu, jika Anda tidak terlalu dipengaruhi oleh masalah ini, kami sarankan Anda menunggu paket layanan Microsoft Dynamics NAV 2009 atau versi Microsoft Dynamics NAV berikutnya yang berisi perbaikan terbaru ini.

Catatan Dalam kasus tertentu, biaya yang biasanya diadakan untuk panggilan mungkin dibatalkan apabila profesional dukungan teknis untuk Microsoft Dynamics dan produk-produk terkait dukungan menentukan bahwa pembaruan khusus akan memecahkan masalah Anda. Biaya dukungan biasa akan berlaku untuk pertanyaan dan masalah yang tidak termasuk pada pembaruan tertentu yang dimaksud dukungan tambahan.



Informasi penginstalan

Microsoft menyediakan contoh pemrogaman hanya untuk ilustrasi, tanpa garansi baik tersurat maupun tersirat. Ini mencakup, namun tidak terbatas pada, garansi yang tersirat dapat diperjualbelikan atau kesesuaian untuk tujuan tertentu. Artikel ini menganggap bahwa Anda sudah terbiasa dengan bahasa pemrograman yang ditunjukkan dan terbiasa dengan alat-alat yang digunakan untuk membuat dan prosedur debug. Teknisi dukungan Microsoft dapat membantu menjelaskan fungsionalitas prosedur tertentu, namun mereka tidak akan mengubah contoh tersebut untuk memberikan fungsionalitas tambahan atau menyusun prosedur untuk memenuhi persyaratan khusus Anda.

Catatan Sebelum Anda menginstal perbaikan terbaru ini, verifikasi bahwa semua pengguna klien Microsoft Navision log off sistem. Ini termasuk Microsoft Navision aplikasi Layanan (NAS) klien pengguna. Anda harus klien hanya pengguna yang masuk saat Anda menerapkan perbaikan terbaru ini.

Untuk menerapkan hotfix ini, Anda harus memiliki lisensi pengembang.

Kami menyarankan bahwa akun pengguna di jendela login Windows atau jendela login Database ditetapkan id peran "SUPER" Jika account pengguna tidak dapat menetapkan ID peran "SUPER", Anda harus memverifikasi bahwa account pengguna yang memiliki izin berikut ini:
  • Ubah izin untuk objek yang Anda akan berubah.
  • Izin eksekusi untuk objek sistem objek ID 5210 dan sistem objek ID 9015 objek.


Catatan Anda tidak harus memiliki hak untuk penyimpanan data kecuali jika Anda harus melakukan perbaikan data.

Perubahan kode

Catatan Selalu menguji kode perbaikan di lingkungan yang dikontrol sebelum menerapkan perbaikan untuk komputer produksi.
Untuk mengatasi masalah ini, ikuti langkah-langkah berikut:
  1. Temukan tabel (12118), dan kemudian klik desain.
  2. Pada menu tampilan , klik tombol. Kemudian, perubahan kunci berikut ini:
    • Nilai lama: PPN nomor registrasi, jenis transaksi, tarif tidak, kode grup, metode transportasi, transaksi spesifikasi, dari asal kode negara Area, entri perbaikan, nomor
    • Nilai baru: PPN nomor registrasi, jenis transaksi, tarif tidak, kode grup, metode transportasi, transaksi spesifikasi, negara asal kode Area, koreksi entri No, Layanan TARIF tidak
  3. Tambahkan variabel berikut ini dalam laporan (501):
    • Nama: IntraJnlLine
    • DataType: catatan
    • Subtipe: Intrastat Jnl. baris
  4. Ubah kode di memicu Intrastat Jnl. baris - OnAfterGetRecord dalam laporan (501) sebagai berikut:
    Kode yang ada
    ...    TESTFIELD("Service Tariff No.");

    // Delete the following lines.
    NoOfRecords := NoOfRecords + 1;
    RoundAmount := ROUND(Amount,1);
    GroupIntraJnlLineIntoBuffer;
    // End of the deleted lines.

    GetPaymentMethod;
    END ELSE BEGIN
    ...
    Penggantian kode
    ...      TESTFIELD("Service Tariff No.");

    // Add the following line.
    GroupIntraJnlLineIntoBuffer;
    // End of the added line.

    GetPaymentMethod;

    // Add the following lines.
    IF GetEUIntraJnlLineFromBuffer THEN BEGIN
    NoOfRecords := NoOfRecords + 1;
    RoundAmount := ROUND("Intra - form Buffer".Amount,1)
    END ELSE
    CurrReport.SKIP;
    // End of the added lines.

    END ELSE BEGIN
    ...

  5. Dalam C/AL global, tambahkan fungsi berikut ini: GetEUIntraJnlLineFromBuffer
  6. Kemudian, klik lokal, di tab Mengembalikan nilai , tambahkan berikut ini mengembalikan type: Ketik kembali = Boolean
  7. Tambahkan kode berikut dalam fungsi GetEUIntraJnlLineFromBuffer dibuat:
    "Intra - form Buffer".RESET;IntraJnlLine.RESET;
    "Intra - form Buffer".SETRANGE("VAT Registration No.","Intrastat Jnl. Line"."VAT Registration No.");
    "Intra - form Buffer".SETRANGE("Service Tariff No.","Intrastat Jnl. Line"."Service Tariff No.");
    "Intra - form Buffer".SETRANGE("Corrective entry","Intrastat Jnl. Line"."Corrective entry");
    IF "Intra - form Buffer".FINDFIRST THEN
    IntraJnlLine.SETRANGE("VAT Registration No.","Intra - form Buffer"."VAT Registration No.");
    IntraJnlLine.SETRANGE("Service Tariff No.","Intra - form Buffer"."Service Tariff No.");
    IntraJnlLine.SETRANGE("Corrective entry","Intra - form Buffer"."Corrective entry");
    IF IntraJnlLine.FINDLAST THEN
    IF "Intrastat Jnl. Line"."Line No." = IntraJnlLine."Line No." THEN
    EXIT(TRUE);
    EXIT(FALSE);

  8. Ubah kode di memicu Intrastat Jnl. baris - OnAfterGetRecord dalam laporan (502) sebagai berikut:
    Kode yang ada 1
    ...   TESTFIELD("Service Tariff No.");

    // Delete the following lines.
    NoOfRecords := NoOfRecords + 1;
    RoundAmount := ROUND(Amount,1);
    GroupIntraJnlLineIntoBuffer;
    // End of the deleted lines.
    GetPaymentMethod;
    END ELSE BEGIN
    ...
    Penggantian kode 1
    ...  TESTFIELD("Service Tariff No.");

    // Add the following lines.
    GroupIntraJnlLineIntoBuffer;
    GetPaymentMethod;
    IF GetEUIntraJnlLineFromBuffer THEN BEGIN
    NoOfRecords := NoOfRecords + 1;
    RoundAmount := ROUND("Intra - form Buffer".Amount,1)
    END ELSE
    CurrReport.SKIP;
    // End of the added lines.

    END ELSE BEGIN
    ...
    Kode yang ada 2
    ...  IF "Supplementary Units" THEN
    TESTFIELD(Quantity);

    // Delete the following lines.
    {"Intra - form Buffer".RESET;
    IF "Intra - form Buffer".GET(
    "Intrastat Jnl. Line"."VAT Registration No.","Intrastat Jnl. Line"."Transaction Type",
    "Intrastat Jnl. Line"."Tariff No.",'','','','','',"Intrastat Jnl. Line"."Corrective entry")
    THEN BEGIN
    "Intra - form Buffer".Amount := "Intra - form Buffer".Amount + "Intrastat Jnl. Line".Amount;
    "Intra - form Buffer"."Source Currency Amount" := "Intra - form Buffer"."Source Currency Amount" +
    "Intrastat Jnl. Line"."Source Currency Amount";
    "Intra - form Buffer".MODIFY;
    END ELSE BEGIN
    "Intra - form Buffer".TRANSFERFIELDS("Intrastat Jnl. Line");
    "Intra - form Buffer"."User ID" := USERID;
    "Intra - form Buffer"."Group Code":= '';
    "Intra - form Buffer"."Transport Method" := '';
    "Intra - form Buffer"."Transaction Specification" := '';
    "Intra - form Buffer"."Country of Origin Code" := '';
    "Intra - form Buffer".Area := '';
    "Intra - form Buffer"."No." := 0;
    "Intra - form Buffer".INSERT;
    END;}
    // End of the deleted lines.
    END;
    ...
    Penggantian kode 2
    ...   IF "Supplementary Units" THEN
    TESTFIELD(Quantity);

    // Add the following line.
    GroupIntraJnlLineIntoBuffer;
    END;
    ...
  9. Tambahkan variabel global berikut ini dalam laporan (502):
    • Nama: IntraJnlLine
    • DataType: catatan
    • Subtipe: Intrastat Jnl. baris
  10. Tambahkan fungsi GroupIntraJnlLineIntoBuffer dan kemudian tambahkan kode berikut untuk fungsi ini dalam laporan (502):
           "Intra - form Buffer".RESET;
    IF "Intra - form Buffer".GET(
    "Intrastat Jnl. Line"."VAT Registration No.","Intrastat Jnl. Line"."Transaction Type",
    "Intrastat Jnl. Line"."Tariff No.",'','','','','',"Intrastat Jnl. Line"."Corrective entry",0,
    "Intrastat Jnl. Line"."Service Tariff No.")
    THEN BEGIN
    "Intra - form Buffer".Amount := "Intra - form Buffer".Amount + "Intrastat Jnl. Line".Amount;
    "Intra - form Buffer"."Source Currency Amount" := "Intra - form Buffer"."Source Currency Amount" +
    "Intrastat Jnl. Line"."Source Currency Amount";
    "Intra - form Buffer".MODIFY;
    END ELSE BEGIN
    "Intra - form Buffer".TRANSFERFIELDS("Intrastat Jnl. Line");
    "Intra - form Buffer"."User ID" := USERID;
    "Intra - form Buffer"."Group Code":= '';
    "Intra - form Buffer"."Transport Method" := '';
    "Intra - form Buffer"."Transaction Specification" := '';
    "Intra - form Buffer"."Country of Origin Code" := '';
    "Intra - form Buffer".Area := '';
    "Intra - form Buffer"."No." := 0;
    "Intra - form Buffer".INSERT;
    END;

  11. Dalam C/AL global dalam laporan (502), tambahkan fungsi berikut ini: GetEUIntraJnlLineFromBuffer
  12. Kemudian, klik lokal, di tab Mengembalikan nilai , tambahkan berikut ini mengembalikan type: Ketik kembali = Boolean
  13. Tambahkan kode berikut dalam fungsi GetEUIntraJnlLineFromBuffer dibuat dalam laporan (502):
            "Intra - form Buffer".RESET;        IntraJnlLine.RESET;
    "Intra - form Buffer".SETRANGE("VAT Registration No.","Intrastat Jnl. Line"."VAT Registration No.");
    "Intra - form Buffer".SETRANGE("Service Tariff No.","Intrastat Jnl. Line"."Service Tariff No.");
    "Intra - form Buffer".SETRANGE("Corrective entry","Intrastat Jnl. Line"."Corrective entry");
    IF "Intra - form Buffer".FINDFIRST THEN
    IntraJnlLine.SETRANGE("VAT Registration No.","Intra - form Buffer"."VAT Registration No.");
    IntraJnlLine.SETRANGE("Service Tariff No.","Intra - form Buffer"."Service Tariff No.");
    IntraJnlLine.SETRANGE("Corrective entry","Intra - form Buffer"."Corrective entry");
    IF IntraJnlLine.FINDLAST THEN
    IF "Intrastat Jnl. Line"."Line No." = IntraJnlLine."Line No." THEN
    EXIT(TRUE);
    EXIT(FALSE);


Prasyarat

Anda harus memiliki salah satu produk berikut ini diinstal untuk menerapkan perbaikan terbaru ini:
  • Bahasa Italia versi Microsoft Dynamics NAV 2009 Paket Layanan 1 (SP1)
  • Bahasa Italia versi Microsoft Dynamics NAV 2009 R2
  • Bahasa Italia versi Microsoft Dynamics NAV 5.0 Paket Layanan 1 (SP1)


Informasi penghapusan

Anda tidak dapat menghapus hotfix ini.

Status


Microsoft telah memastikan bahwa ini merupakan masalah di dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".

Referensi


VSTF DynamicsNAV SE: 237990; 237991
Catatan Ini adalah artikel "Penerbitan cepat" dibuat langsung dari dalam organisasi dukungan Microsoft. Informasi yang terkandung di dalamnya disediakan sebagai tanggapan masalah yang muncul. Sebagai akibat dari kecepatan untuk menjadikannya tersedia, materi dapat mengandung kesalahan ketik dan dapat direvisi setiap saat tanpa pemberitahuan. Lihat Ketentuan untuk pertimbangan lainnya.