Pesan galat saat Anda mencoba untuk mengirimkan transaksi Akunting analitis atau Simpan Master merekam di Microsoft Dynamics GP: "Tidak dapat menyisipkan bukti kunci duplikat dalam objek 'AAGXXXXX'"

PENTING: Artikel ini diterjemahkan oleh perangkat lunak penerjemahan mesin Microsoft, dan mungkin telah diedit oleh Masyarakat Microsoft melalui teknologi CTF dan bukan oleh seorang penerjemah profesional. Microsoft menawarkan baik artikel yang diterjemahkan oleh manusia maupun artikel hasil editan terjemahan oleh mesin/komunitas, sehingga Anda dapat mengakses semua artikel di Sentra Pengetahuan yang kami miliki dalam berbagai bahasa. Namun artikel hasil editan mesin atau bahkan komunitas tidak selalu sempurna. Artikel ini dapat mengandung kesalahan dalam hal kosa kata, sintaksis atau tatabahasa, sangat mirip dengan penutur asing yang membuat kekeliruan ketika berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab atas ketidakakuratan, kesalahan atau kerugian apa pun akibat dari kekeliruan dalam penerjemahan isi atau penggunaannya oleh pelanggan kami. Microsoft juga akan senantiasa memperbarui perangkat lunak penerjemahan mesin dan alat untuk menyempurnakan Editan Hasil Penerjemahan Mesin.

Klik disini untuk melihat versi Inggris dari artikel ini: 897280
Gejala
Ketika Anda mencoba untuk mengirimkan transaksi Akunting analitis di Microsoft Dynamics GP, Anda mungkin menerima pesan galat berikut:

[Microsoft] [ODBC SQL Server pengandar] [SQL Server] Pelanggaran bukti kunci primer contraint 'PKAAG30000', tidak dapat menyisipkan bukti kunci duplikat dalam objek 'AAG30003'

Catatan
dalam pesan galat ini, AAG30000 adalah placeholder untuk Daftar Tabel. Kata "contraint" adalah kesalahan ejaan "batasan."

Pesan galat sebenarnya yang Anda terima mungkin berisi salah satu dari Daftar Tabel berikut ini:
  • AAG00103
  • AAG00500
  • AAG00600
  • AAG00601
  • AAG00602
  • AAG00603
  • AAG00400
  • AAG00401
  • AAG00201
  • AAG00310
  • AAG00900
  • AAG00901
  • AAG00902
  • AAG00903
  • AAG10000
  • AAG10001
  • AAG10002
  • AAG10003
  • AAG20000
  • AAG20001
  • AAG20002
  • AAG20003
  • AAG30000
  • AAG30001
  • AAG30002
  • AAG30003
Penyebab
Masalah ini terjadi karena tersedia nilai berikutnya (aaRowID) ditandai untuk Daftar Tabel ini (aaTableID) di dalam Daftar Tabel AAG00102 telah digunakan dalam Daftar Tabel yang sesuai (atau serangkaian Daftar Tabel sub).

Sebagai contoh, Daftar Tabel '30000' di dalam Daftar Tabel AAG00102 akan melihat Daftar Tabel AAG30000, AAG30001, AAG30002 dan AAG30003, jadi berhati-hati untuk memeriksa semua Daftar Tabel dalam seri untuk Daftar Tabel yang dapat diterapkan.



Pemecahan masalah
Untuk mengatasi masalah ini, gunakan salah satu dari metode berikut ini di bawah ini untuk membandingkan nilai digunakan tertinggi di Daftar Tabel AA (dan Daftar Tabel sub) terhadap nilai tersedia berikutnya yang disimpan di dalam Daftar Tabel AAG00102.

Catatan Sebelum Anda mengikuti petunjuk di artikel ini, pastikan bahwa Anda memiliki kopi rekam cadang lengkap dari pangkalan data yang Anda dapat memulihkan jika terjadi masalah.

Metode 1 - menggunakan skrip SQL untuk memperbarui nilai di AAG00102 untuk sebagian besar AA Daftar Tabel

Anda dapat men-download skrip SQL menggunakan tautan di bawah ini dan menjalankan di SQL Server Management Studio terhadap database perusahaan secara otomatis memperbarui nomor tersedia berikutnya yang disimpan di dalam Daftar Tabel AAG00102 sebagai dibandingkan terakhir digunakan nilai dalam Daftar Tabel AA. Skrip akan terlihat di Daftar Tabel berikut ini: AAG10000, AAG20000, AAG30000, AAG00201, AAG00400, AAG00401, AAG00500, AAG00600, AAG00900 dan AAG00903. Jadi terlihat di sebagian besar Daftar Tabel AA, tetapi tidak semua, dan tidak sub Daftar Tabel seri. Untuk mendapatkan skrip, kunjungi situs web Microsoft berikut ini:

https://MBS.Microsoft.com/files/customer/GP/Downloads/ServicePacks/AA_Update_AAG00102.SQL

Metode 2 - metode Manual untuk nilai penelitian dan update pada AAG00102 Daftar Tabel AA satu per satu

  1. Buka SQL Server Management Studio. Untuk melakukannya, klik mulai, arahkan ke program, arahkan ke versi Microsoft SQL Server, dan kemudian klik SQL Server Management Studio.
  2. Di jendela terhubung ke SQL Server , masuk ke SQL Server Management Studio menggunakan sandi sa.
  3. Klik pada Permintaan baru ikon untuk membuka jendela pencarian dan menyalin atau ketik skrip berikut di jendela pencarian. Jalankan terhadap database perusahaan.
    select MAX (aaGLHdrID) from AAG30000*/Insert in the appropriate column/table for the aaGLHdrID and AAG30000 placeholders in the script.
  4. Perhatikan hasil kueri yang akan menunjukkan nilai tertinggi terakhir digunakan di dalam Daftar Tabel. (Jika Daftar Tabel sub Daftar Tabel, pastikan untuk memeriksa tertinggi terakhir menggunakan nilai mereka serta.)
  5. Ketik skrip berikut di jendela pencarian dan mengeksekusi terhadap pangkalan data dinamis:
    select * from AAG00102 where CMPANYID = 'nnn'
    Catatan Dalam permintaan ini, ganti NNN dengan ID perusahaan Untuk menemukan ID perusahaan, ketik kueri berikut ini di jendela pencarian.
    select * from SY01500
    Pilih pangkalan data dinamis di dalam daftar di bagian atas jendela, dan kemudian tekan F5.
  6. Verifikasi bahwa nilai di bidang aaRowID nilai aaTableID30000 (atau Daftar Tabel sesuai) sama dengan atau lebih besar daripada nilai yang Anda catat di langkah 4.
  7. Gunakan skrip berikut ini untuk memperbarui nilai. Untuk melakukannya, ketik skrip berikut di jendela pencarian, kemudian tekan F5.
    update aag00102 set aaROWID = 'yyyy' where aaTableID = 30000 and CMPANYID = 'zzz'
    Catatan Skrip ini menggantikan yyyy tempat penampung dengan nilai yang Anda catat di langkah 4. Ganti ZZZ dengan ID perusahaan Juga mengganti aaTableID dengan Daftar Tabel yang sesuai.
Status
Microsoft telah memastikan bahwa ini merupakan masalah di dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".

Peringatan: Artikel ini telah diterjemahkan secara otomatis

Properti

ID Artikel: 897280 - Tinjauan Terakhir: 10/22/2015 22:35:00 - Revisi: 1.5

Microsoft Dynamics GP 2015, Microsoft Dynamics GP 2013, Microsoft Dynamics GP 2010, Microsoft Dynamics GP 10.0

  • kberrmsg kbmbsmigrate kbbug kbmt KB897280 KbMtid
Tanggapan