Import über Shopware CLI

Guten Tag,
Ich würde gerne größere Datensätze wie Kunden, Produkte oder Kategorien importieren. Die Import/Export Funktion in Shopware, stößt dabei immer auf zum Teil willkürliche Probleme (auch per API Endpunkt).

Nun würde ich die Datensätze gerne über die CLI mit dem Befehl import:entity probieren.
Leider finde ich keine Möglichkeit, benutzerdefinierte Profile anzugeben. Ist das wirklich so gewollt?

Vielen Dank im Voraus.

Es gibt doch das Argument profile oder verstehe ich die Frage falsch?

$ php bin/console import:entity --help

Usage:
  import:entity [options] [--] <file> <expireDate> [<profile>]

Arguments:
  file                   Path to import file
  expireDate             PHP DateTime compatible string
  profile                Wrap profile names with whitespaces into quotation marks, like 'Default Category'

Options:
  -r, --rollbackOnError  Rollback database transaction on error
  -p, --printErrors      Print errors occured during import
  -d, --dryRun           Do a dry run of import without persisting data
  -h, --help             Display help for the given command. When no command is given display help for the list command
  -q, --quiet            Do not output any message
  -V, --version          Display this application version
      --ansi|--no-ansi   Force (or disable --no-ansi) ANSI output
  -n, --no-interaction   Do not ask any interactive question
  -e, --env=ENV          The Environment name. [default: "dev"]
      --no-debug         Switch off debug mode.
  -v|vv|vvv, --verbose   Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Richtig, aber dort werden die eigenen benutzerdefinierten Profile nicht angezeigt…
Somit leider nicht zu verwenden, wenn man weitere Felder importieren muss.

Ok, es gibt einen Workaround. BS, aber es geht:

Über die API per
GET /api/import-export-profile/
die ID des gewünschten Profiles rausfinden, und dann per
PATCH /api/import-export-profile/ID
und JSON Body
{"name": "Neuer Name" }
den Name des Profiles setzen. Im Backend sieht man nur das „Label“, über die CLI den „Namen“.
Dann Cache leeren und man sieht sein gewünschtes Profile auch über die CLI.

:roll_eyes:

Hallo zusammen,

ich sitze auch gerade an diesem Problem. Mir werden die eigenen Profiles angezeigt:

Wenn ich nun den „bestand“ angebe meckert er trotzdem…

Grüße
sunflower

Wie gesagt: „name“ ist nicht gleich „label“.

Hol dir über die API mit GET /api/import-export-profile/ die entsprechende ID und setze dann den gewünschten „name“ per PATCH

:slightly_smiling_face: hat funktioniert, danke für den Hinweis.