Masuk dengan Microsoft
Masuk atau buat akun.
Halo,
Pilih akun lain.
Anda memiliki beberapa akun
Pilih akun yang ingin Anda gunakan untuk masuk.

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

Gejala

Urutan perencanaan fungsi menghitung salah saran "Qty. untuk memesan" ketika Anda menggunakan lingkungan membuat pesanan di Microsoft Dynamics NAV. Masalah ini terjadi jika Anda menggunakan multilevel tagihan material (Good).
Masalah ini terjadi di dalam produk berikut ini:

  • Microsoft Dynamics NAV 2009 R2

  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

  • Microsoft Dynamics NAV 2009

  • Microsoft Dynamics NAV 5.0 Paket Layanan 1 (SP1)

Penyebab

Sistem menggunakan fungsi berulang yang selalu mengubah jumlah item yang ditemukan (BOM menciptakan "pohon" di mana beberapa item dapat terjadi satu atau beberapa kali). Namun, ini adalah perilaku yang tidak benar, karena semua anak untuk item yang diperbarui akan dapat dihapus atau dimutakhirkan.

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 ditetapkan 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 sistem objek ID 5210 objek dan objek sistem objek ID 9015 .



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. Membuat fungsi lokal UpdateRelatedComponent codeunit (99000809):

    ...LOCAL PROCEDURE UpdateRelatedComponent@15(ParentReqLine@1000 : Record 246);
    WITH PlanningComponent DO BEGIN
    SETCURRENTKEY("Worksheet Template Name","Worksheet Batch Name","Worksheet Line No.","Item No.");
    SETRANGE("Worksheet Line No.",ParentReqLine."Line No.");
    SETFILTER("Item No.",'<>%1','');
    SETFILTER("Expected Quantity",'<>0');
    SETFILTER("Planning Level Code",'<>0');
    IF FIND('-') THEN
    REPEAT
    IF LineHasBeenCreated(ChildReqLine,PlanningComponent) THEN BEGIN
    UpdateRelatedComponent(ChildReqLine);
    IF ChildReqLine.Quantity <> "Expected Quantity" THEN BEGIN
    // qty has to be updated, there is a new need of component
    ChildReqLine.BlockDynamicTracking(Blocked);
    ChildReqLine.VALIDATE(Quantity,ChildReqLine.Quantity - "Expected Quantity");
    ChildReqLine.MODIFY;

    // updating qty of component for parent
    VALIDATE("Quantity per","Quantity per");
    MODIFY;
    END ELSE
    // line will be recreated
    ChildReqLine.DELETE(TRUE);
    END;
    UNTIL NEXT = 0;
    END;
    ...


    Menambahkan parameter berikut ini di fungsi:

    • Nama: PlanningComponent; DataType: Catatan (99000829)

    • Nama: ChildReqLine; DataType: Catatan (246)

  2. Membuat fungsi lokal LineHasBeenCreated codeunit (99000829):

    ...LOCAL PROCEDURE LineHasBeenCreated@18(VAR ChildReqLine@1000 : Record 246;PlanningComponent@1001 : Record 99000829) : Boolean;
    WITH ChildReqLine DO BEGIN
    SETCURRENTKEY("Worksheet Template Name","Journal Batch Name",Type,"No.");
    SETRANGE("Worksheet Template Name",PlanningComponent."Worksheet Template Name");
    SETRANGE("Journal Batch Name",PlanningComponent."Worksheet Batch Name");
    SETRANGE(Type,Type::Item);
    SETRANGE("No.",PlanningComponent."Item No.");
    SETRANGE("Variant Code",PlanningComponent."Variant Code");
    SETRANGE("Ref. Order Type","Ref. Order Type"::"Prod. Order");
    SETRANGE("Ref. Order Status",PlanningComponent."Ref. Order Status");
    SETRANGE("Ref. Order No.",PlanningComponent."Ref. Order No.");
    SETFILTER("Planning Level",'>%1',0);
    EXIT(FINDFIRST);
    END;
    ...
  3. Ubah kode di fungsi InsertPlanningLine codeunit (99000809) sebagai berikut:
    Kode yang ada

    ... IF ReqLine2."Planning Level" < ReqLine."Planning Level" THEN
    ReqLine2."Planning Level" := ReqLine."Planning Level";

    ReqLine2.MODIFY;
    ...

    Penggantian kode

    ... IF ReqLine2."Planning Level" <ReqLine."Planning Level" THEN
    ReqLine2."Planning Level" := ReqLine."Planning Level";

    // the ReqLine2 can have children which has to be delete or updated
    // Add the following line.
    UpdateRelatedComponent(ReqLine2);

    ReqLine2.MODIFY;
    ...


Prasyarat

Anda harus memiliki salah satu produk berikut ini diinstal untuk menerapkan perbaikan terbaru ini:

  • Microsoft Dynamics NAV 2009 R2

  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

  • Microsoft Dynamics NAV 2009

  • 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".

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.

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.

Apakah informasi ini berguna?

Seberapa puaskah Anda dengan kualitas bahasanya?
Apa yang memengaruhi pengalaman Anda?
Dengan menekan kirim, umpan balik Anda akan digunakan untuk meningkatkan produk dan layanan Microsoft. Admin TI Anda akan dapat mengumpulkan data ini. Pernyataan Privasi.

Terima kasih atas umpan balik Anda!

×