Magento 2 lors de la commande dans le magasin nouvellement créé, après avoir cliqué sur le bouton de commande ci-dessous, l'erreur s'affiche,
Erreur de syntaxe ou violation d'accès: 1103 Nom de table incorrect '', la requête était: INSERT INTO `` () VALUES ()
Et arrêtez la fonctionnalité de commande.
Réponses:
si vous avez créé votre boutique par programme, vous devez envoyer un événement
add_store
avec votrestore model
paramètre in.Si vous regardez
\Magento\SalesSequence\Observer\SequenceCreatorObserver
, cet observateur est appelé pour l'add_store
événementIl insérera des données relatives à votre magasin dans le
sales_sequence_meta
tableaula source
vous rencontrez ce problème lorsque vous essayez d'insérer une nouvelle ligne dans un navire de relation de table pour générer automatiquement la séquence. pour résoudre ce problème, veuillez consulter le tableau "sales_sequence_meta" avec "entity_type" = "order", vérifiez et assurez-vous que cette entity_type = "order" existe dans tous vos magasins. Insérez-en un nouveau si vous vérifiez qu'il a manqué pour tout identifiant de magasin.
1 | commander | 0 | sequence_order_0
la source
Dans diverses circonstances, Magento ne crée pas de tables de séquence de ventes pour un magasin. Ce sont des tableaux où les ID d'incrément de commande, les ID d'incrément d'expédition, etc. sont créés. Ainsi, le paiement échoue lorsque vous essayez d'attribuer un ID d'incrément à une nouvelle commande. Exemples de tableaux:
Voici un module pour une commande CLI Magento qui créera des tables de séquence de vente manquantes pour un magasin donné: https://github.com/joeshelton-wagento/fixsalessequence
la source
L'erreur ci-dessus se produit lorsqu'il manque des tables pour plusieurs magasins. La principale raison du problème est lorsque la migration est effectuée à l'aide d'une extension tierce non effectuée par l'outil de migration de données.
REMARQUE : veuillez prendre une sauvegarde de la base de données avant d'appliquer les modifications!
Vous remarquerez que les tableaux suivants peuvent être manquants:
Hypothèse : le magasin 1, le magasin 2 fonctionne bien, si le magasin 3 ne fonctionne pas correctement.
Si le magasin 3 ne fonctionne pas correctement, ces tables doivent être créées:
sequence_creditmemo_3 sequence_invoice_3 sequence_order_3 sequence_shipment_3
REMARQUE: vous pouvez obtenir la structure de ces tables à partir d'autres tables existantes telles que sequence_creditmemo_1, sequence_invoice_1, sequence_order_1, sequence_shipment_1
REMARQUE : vous devez modifier l'ID de magasin dans le nom de la table.
Les tables suivantes doivent être mises à jour avec les entrées de table de profil de séquence correspondantes:
sales_sequence_meta sales_sequence_profile
Remarque : Vous devez modifier l'ID du magasin dans les requêtes ci-dessous.
Remarque : Modifiez le préfixe comme identifiant de magasin pour la requête ci-dessous.
Veuillez appliquer la solution ci-dessus, j'espère que cela vous aidera à résoudre votre problème.
REMARQUE : veuillez prendre une sauvegarde de la base de données avant de faire des changements!
la source
Je pense que Magento 2 n'est pas installé correctement. Donc, si possible, essayez de réinstaller la dernière version mise à jour et après cela, tout d'abord vider le cache et faire l'indexation. Son fonctionne correctement depuis ma configuration.
la source
Je débogue le problème. Pour mon cas, le processus était incomplet lors de la création du magasin en raison de données volumineuses. J'ai trouvé une entrée manquante dans la table 'sales_sequence_meta' pour ce magasin. J'ai essayé en l'ajoutant manuellement et en mesure de passer la commande avec succès.
Vérifiez l'entrée du magasin concerné.
la source