Magento 2 saat melakukan pemesanan dari toko yang baru dibuat, setelah mengklik tombol pesanan tempat di bawah kesalahan dibatalkan,
Kesalahan sintaksis atau pelanggaran akses: 1103 Nama tabel salah '', kueri adalah: INSERT INTO `` () VALUES ()
Dan hentikan fungsi pesanan tempat.
Jawaban:
jika Anda telah membuat toko Anda secara terprogram Anda harus mengirimkan suatu acara
add_store
denganstore model
parameter in Anda .Jika Anda melihat
\Magento\SalesSequence\Observer\SequenceCreatorObserver
, pengamat ini dipanggil untukadd_store
acara tersebutIni akan memasukkan beberapa data yang terkait dengan toko Anda di
sales_sequence_meta
tabelsumber
masalah ini Anda dapatkan ketika Anda mencoba menyisipkan baris baru ke tabel relasi pengiriman ke urutan pembuatan otomatis. untuk mengatasi masalah ini, silakan lihat pada tabel "sales_afterence_meta" dengan "entitas_type" = "order", periksa dan pastikan entitas_type = "order" ini ada di semua toko Anda. Masukkan yang baru jika Anda memeriksanya tidak mengetahui id toko apa pun.
1 | memesan | 0 | sequence_order_0
sumber
Dalam berbagai keadaan, Magento tidak membuat tabel urutan penjualan untuk sebuah toko. Ini adalah tabel di mana ID kenaikan pesanan, ID kenaikan pengiriman, dll dibuat. Jadi, checkout gagal ketika mencoba untuk menetapkan ID kenaikan untuk pesanan baru. Tabel contoh:
Berikut adalah modul untuk perintah Magento CLI yang akan membuat tabel urutan penjualan yang hilang untuk toko tertentu: https://github.com/joeshelton-wagento/fixsalessequence
sumber
Kesalahan di atas terjadi ketika ada tabel yang hilang untuk multi-toko. Alasan utama di balik masalah ini adalah ketika migrasi dilakukan menggunakan ekstensi pihak ketiga apa pun yang tidak dilakukan oleh alat migrasi data.
CATATAN : Silakan ambil cadangan database sebelum menerapkan perubahan apa pun!
Anda akan melihat bahwa, tabel berikut mungkin Hilang:
Asumsi : toko 1, toko 2 berfungsi dengan baik, jika toko 3 tidak berfungsi dengan baik.
Jika toko 3 tidak berfungsi dengan baik maka tabel ini perlu dibuat:
sequence_creditmemo_3 sequence_invoice_3 sequence_order_3 sequence_shipment_3
CATATAN: Anda bisa mendapatkan struktur tabel ini dari tabel lain yang ada seperti sequence_creditmemo_1, sequence_invoice_1, sequence_order_1, sequence_shipment_1
CATATAN : Perlu mengubah id toko di nama tabel.
Tabel berikut perlu diperbarui dengan entri tabel profil urutan yang sesuai:
sales_afterence_meta sales_afterence_profile
Catatan : Perlu mengubah id toko di kueri di bawah ini.
Catatan : Ubah awalan sebagai id penyimpanan untuk kueri di bawah ini.
Silakan terapkan solusi di atas, saya harap ini akan membantu Anda untuk memecahkan masalah Anda.
CATATAN : Silakan ambil cadangan database sebelum melakukan perubahan!
sumber
Saya pikir Magento 2 tidak diinstal dengan benar. Jadi, jika mungkin, coba instal ulang versi terbaru yang diperbarui dan setelah itu pertama-tama hapus cache & lakukan pengindeksan. Ini berfungsi dengan baik dari pengaturan saya.
sumber
Saya men-debug masalahnya. Untuk kasus saya, itu karena proses yang tidak lengkap selama pembuatan toko karena data yang berat. Saya menemukan entri tidak ada di tabel 'sales_afterence_meta' untuk toko itu. Saya mencoba dengan menambahkannya secara manual dan berhasil melakukan pemesanan.
Periksa entri untuk toko yang relevan.
sumber