Faktor Pembulatan dalam Tampilan Analisis tidak dipertimbangkan dalam klien RoleTailored (RTC) Microsoft Dynamics NAV

Berlaku Untuk
Dynamics NAV 2009 Service Pack 1 Microsoft Dynamics NAV 2009 R2

Artikel ini berlaku untuk Microsoft Dynamics NAV untuk semua bahasa lokal.

Gejala

Di klien RoleTailored (RTC), Faktor Pembulatan dalam Tampilan Analisis tidak dipertimbangkan. Misalnya, Anda mengatur Faktor Pembulatan menjadi "1000" dalam Tampilan Analisis. Namun, angka tidak ditampilkan dalam ribuan.
Masalah ini terjadi pada produk berikut ini:

  • Microsoft Dynamics NAV 2009 Paket Layanan 1 (SP1)
  • Microsoft Dynamics NAV 2009 R2

Resolusi

Informasi hotfix

Hotfix yang didukung kini tersedia dari Microsoft. Namun, hanya dimaksudkan untuk memperbaiki masalah yang dijelaskan dalam artikel ini. Terapkan hanya ke sistem yang mengalami masalah khusus ini. Hotfix ini mungkin menerima pengujian tambahan. Oleh karena itu, jika Anda tidak terpengaruh oleh masalah ini, kami menyarankan agar Anda menunggu paket layanan Microsoft Dynamics NAV 2009 berikutnya atau versi Microsoft Dynamics NAV berikutnya yang berisi hotfix ini.

Catatan Dalam kasus khusus, biaya yang biasanya ditimbulkan untuk panggilan dukungan mungkin dibatalkan jika Profesional Dukungan Teknis untuk Microsoft Dynamics dan produk terkait menentukan bahwa pembaruan tertentu akan mengatasi masalah Anda. Biaya dukungan biasa akan berlaku untuk pertanyaan dan masalah dukungan tambahan yang tidak memenuhi syarat untuk pembaruan tertentu yang dimaksud.

            
          

Informasi penginstalan

Microsoft menyediakan contoh pemrograman untuk ilustrasi saja, tanpa jaminan baik tersurat maupun tersirat. Ini termasuk, tetapi tidak terbatas pada, jaminan tersirat dari kelayakan jual atau kesesuaian untuk tujuan tertentu. Artikel ini mengasumsikan bahwa Anda sudah terbiasa dengan bahasa pemrograman yang ditunjukkan dan dengan alat yang digunakan untuk membuat dan men-debug prosedur. Teknisi dukungan Microsoft dapat membantu menjelaskan fungsionalitas prosedur tertentu, tetapi mereka tidak akan mengubah contoh ini untuk menyediakan fungsionalitas tambahan atau prosedur konstruksi untuk memenuhi persyaratan tertentu Anda.

Catatan Sebelum Anda menginstal hotfix ini, verifikasi bahwa semua pengguna klien Microsoft Navision telah keluar dari sistem. Ini termasuk pengguna klien Microsoft Navision Application Services (NAS). Anda harus menjadi satu-satunya pengguna klien yang masuk ketika Anda menerapkan hotfix ini.

Untuk menerapkan hotfix ini, Anda harus memiliki lisensi pengembang.

Kami menyarankan agar akun pengguna di jendela Windows Logins atau di jendela Login Database diberi ID peran "SUPER". Jika akun pengguna tidak dapat ditetapkan sebagai ID peran "SUPER", Anda harus memverifikasi bahwa akun pengguna memiliki izin berikut:

  • Izin Ubah untuk objek yang akan Anda ubah.
  • Izin Jalankan untuk objek System Object ID 5210 dan untuk objek System Object ID 9015.

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

Perubahan kode

Catatan Selalu uji perbaikan kode di lingkungan terkontrol sebelum Anda menerapkan perbaikan pada komputer produksi Anda.
Untuk mengatasi masalah ini, ikuti langkah-langkah ini dalam formulir Analisis Penjualan menurut Matriks Dim (9227):
Catatan Perubahan yang sama perlu dilakukan pada Analisis Penjualan menurut Halaman Dim Matrix (9227). Jika nama berbeda, nama tersebut ditentukan untuk Halaman.

  1. Ubah Properti Kosong Nol dari "Tidak" menjadi "Ya" dalam bidang TotalQuantity (6).

  2. Ubah kode dalam pemicu formulir TotalQuantity - OnFormat sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    IF Quantity = 0 THEN
      Text := '';
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    
    CurrForm.TotalQuantity.UPDATEFONTBOLD("Show in Bold");
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  3. Ubah kode di pemicu halaman QuantityOnFormat sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    IF Quantity = 0 THEN
      "+QuantityHideValue" := TRUE;
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    
    TotalQuantityEmphasize := "Show in Bold";
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  4. Ubah Properti Kosong Nol dari "Tidak" menjadi "Ya" dalam bidang TotalInvtValue (8).

  5. Ubah kode dalam pemicu formulir TotalInvtValue - OnFormat sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    IF Amount = 0 THEN
      Text := ''
    ELSE
      Text := FORMAT(Amount,0,NormalFormatString);
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    CurrForm.TotalInvtValue.UPDATEFONTBOLD("Show in Bold");
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  6. Ubah kode di pemicu halaman AmountOnFormat sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    IF Amount = 0 THEN
      Text := ''
    ELSE
      Text := FORMAT(Amount,0,NormalFormatString);
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    TotalInvtValueEmphasize := "Show in Bold";
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  7. Ubah kode di pemicu formulir Bidang1 - OnFormat dan di pemicu halaman MatrixData1OnFormat di bidang Bidang1 (13) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  8. Ubah kode di pemicu formulir Bidang2 - OnFormat dan di pemicu halaman MatrixData2OnFormat di bidang Bidang2 (15) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  9. Ubah kode di pemicu formulir Bidang3 - OnFormat dan di pemicu halaman MatrixData3OnFormat di bidang Bidang3 (17) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  10. Ubah kode di pemicu formulir Bidang4 - OnFormat dan di pemicu halaman MatrixData4OnFormat di bidang Bidang4 (25) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  11. Ubah kode di pemicu formulir Bidang5 - OnFormat dan di pemicu halaman MatrixData5OnFormat di bidang Bidang5 (23) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  12. Ubah kode di pemicu formulir Bidang6 - OnFormat dan di pemicu halaman MatrixData6OnFormat di bidang Bidang6 (21) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  13. Ubah kode di pemicu formulir Bidang7 - OnFormat dan di pemicu halaman MatrixData7OnFormat di bidang Bidang7 (19) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  14. Ubah kode di pemicu formulir Field8 - OnFormat dan di pemicu halaman MatrixData8OnFormat dalam bidang Field8 (31) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  15. Ubah kode di pemicu formulir Bidang9 - OnFormat dan di pemicu halaman MatrixData9OnFormat di bidang Bidang9 (39) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  16. Ubah kode di pemicu formulir Bidang10 - OnFormat dan di pemicu halaman MatrixData10OnFormat dalam bidang Bidang10 (41) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  17. Ubah kode di pemicu formulir Bidang11 - OnFormat dan di pemicu halaman MatrixData11OnFormat di bidang Bidang11 (45) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  18. Ubah kode di pemicu formulir Bidang12 - OnFormat dan di pemicu halaman MatrixData12OnFormat di bidang Bidang12 (27) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  19. Ubah kode di pemicu formulir Bidang13 - OnFormat dan di pemicu halaman MatrixData13OnFormat di bidang Bidang13 (29) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  20. Ubah kode di pemicu formulir Bidang14 - OnFormat dan di pemicu halaman MatrixData14OnFormat di bidang Bidang14 (33) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  21. Ubah kode di pemicu formulir Bidang15 - OnFormat dan di pemicu halaman MatrixData15OnFormat di bidang Bidang15 (35) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  22. Ubah kode di pemicu formulir Bidang16 - OnFormat dan di pemicu halaman MatrixData16OnFormat dalam bidang Bidang16 (37) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  23. Ubah kode di pemicu formulir Bidang17 - OnFormat dan di pemicu halaman MatrixData17OnFormat di bidang Bidang17 (43) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  24. Ubah kode di pemicu formulir Bidang18 - OnFormat dan di pemicu halaman MatrixData18OnFormat dalam bidang Bidang18 (47) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  25. Ubah kode di pemicu formulir Bidang19 - OnFormat dan di pemicu halaman MatrixData19OnFormat di bidang Bidang19 (49) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  26. Ubah kode di pemicu formulir Bidang20 - OnFormat dan di pemicu halaman MatrixData20OnFormat di bidang Bidang20 (51) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  27. Ubah kode di pemicu formulir Bidang21- OnFormat dan di pemicu halaman MatrixData21OnFormat di bidang Bidang21 (53) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  28. Ubah kode di pemicu formulir Bidang22- OnFormat dan di pemicu halaman MatrixData22OnFormat di bidang Bidang22 (55) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  29. Ubah kode dalam pemicu formulir Bidang23- OnFormat dan di pemicu halaman MatrixData23OnFormat di bidang Bidang23 (57) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  30. Ubah kode di pemicu formulir Bidang24- OnFormat dan di pemicu halaman MatrixData24OnFormat di bidang Bidang24 (59) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  31. Ubah kode dalam pemicu formulir Bidang25- OnFormat dan dalam pemicu halaman FormatAt MatriksData25 dalam bidang Bidang25 (61) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  32. Ubah kode dalam pemicu formulir Bidang26- OnFormat dan di pemicu halaman MatrixData26OnFormat di bidang Bidang26 (63) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  33. Ubah kode dalam pemicu formulir Bidang27- OnFormat dan di pemicu halaman MatrixData27OnFormat di bidang Bidang27 (65) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  34. Ubah kode dalam pemicu formulir Bidang28- OnFormat dan dalam pemicu halaman FormatAt MatriksData28On dalam bidang Bidang28 (67) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  35. Ubah kode dalam pemicu formulir Bidang29- OnFormat dan di pemicu halaman MatrixData29OnFormat di bidang Bidang29 (69) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  36. Ubah kode di pemicu formulir OnFormat Bidang30 dan di pemicu halaman MatrixData30OnFormat di bidang Bidang30 (71) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  37. Ubah kode dalam pemicu formulir Field31- OnFormat dan di pemicu halaman MatrixData31OnFormat dalam bidang Bidang31 (73) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  38. Ubah kode dalam pemicu formulir Bidang32- OnFormat dan di pemicu halaman MatrixData32OnFormat di bidang Bidang32 (75) sebagai berikut:
    Kode yang sudah ada

    ...
    // Delete the following lines.
    ItemAnalysisMgt.FormatAmount(Text,RoundingFactor);
    // End of the deleted lines.
    ...
    

    Kode pengganti

    ...
    
    ...
    
  39. Ubah kode dalam fungsi CalcAmt sebagai berikut:
    Kode yang sudah ada

    ...
     END;
    END;
    
    IF ShowOppositeSign THEN
      Amt := -Amt;
    EXIT(Amt);
    ...
    

    Kode pengganti

    ...
       END;
    END;
    
    IF ShowOppositeSign THEN
      Amt := -Amt;
    
    // Add the following lines.
    CASE RoundingFactor OF
      RoundingFactor::"1":
        Amt := ROUND(Amt,1);
      RoundingFactor::"1000":
        Amt := ROUND(Amt / 1000,0.1);
      RoundingFactor::"1000000":
        Amt := ROUND(Amt / 1000000,0.1);
    END;
    // End of the added lines.
    
    EXIT(Amt);
    ...
    

          

Prasyarat

Anda harus memiliki salah satu produk berikut yang terinstal untuk menerapkan hotfix ini:

  • Microsoft Dynamics NAV 2009 Paket Layanan 1 (SP1)
  • Microsoft Dynamics NAV 2009 R2

                
              

Informasi penghapusan

Anda tidak dapat menghapus hotfix ini.

Status

Microsoft telah mengonfirmasi bahwa ini adalah masalah dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".

Referensi

VSTF DynamicsNAV SE: 256081

Catatan Ini adalah artikel "FAST PUBLISH" yang dibuat langsung dari dalam organisasi dukungan Microsoft. Informasi yang dimuat di sini disediakan sebagaimana adanya sebagai respons terhadap masalah yang muncul. Sebagai akibat dari kecepatan dalam membuatnya tersedia, materi mungkin menyertakan kesalahan pengetikan dan dapat direvisi kapan saja tanpa pemberitahuan. Lihat Ketentuan Penggunaan untuk pertimbangan lain.