Skip to content

[Docs] Update and refine docs#657

Open
fashxp wants to merge 6 commits into
2026.2from
docs/restructure-data-importer
Open

[Docs] Update and refine docs#657
fashxp wants to merge 6 commits into
2026.2from
docs/restructure-data-importer

Conversation

@fashxp

@fashxp fashxp commented Jul 14, 2026

Copy link
Copy Markdown
Member

No description provided.

fashxp and others added 4 commits July 10, 2026 09:29
Reorder the docs to follow the Studio "Data Setup" wizard, add a
Getting Started walkthrough, and resolve duplicate numeric prefixes
(03_Configuration/03_Upgrade, 06_Extending/06_Troubleshooting_FAQ).

Correct content that no longer matched the source:

- Installation targeted Pimcore 10.5/11 and admin-ui-classic-bundle.
  composer.json requires pimcore/pimcore ^2026.1 and PHP 8.4/8.5, and
  registerDependentBundles() wires Datahub automatically.
- Element Location Update was documented as applying to all imported
  objects. Resolver::loadOrCreateAndPrepareElement() applies the
  creation strategy to new elements and the update strategy to
  existing ones only.
- CSV "Skip First Row" was documented as turning the header row into
  column names. It only skips the row; the separate "Save Header Name"
  option does that.
- The Extending page described the removed ExtJS plugin API. The
  frontend is now a Studio UI plugin using dynamic type registries.

Document features present in code and UI but not in the docs: the
Upload data source, the SQL file format, the String Replace operator,
the Many-to-Many Relation data target, the Find or Create Folder and
Do Not Create location strategies, As Variant, Include unpublished
objects, the ID data index gating Delta Check and Cleanup, the
Write If Target Is Not Empty / Write If Source Is Empty flags,
Autofill, the one-time job schedule, and PostPreparationEvent.

Replace doc/07_Studio.md, a hand-maintained mirror of the Studio REST
API, with doc/06_Extending/03_Studio_Integration.md. All 20 Studio
controllers are @internal and Studio serves generated OpenAPI docs at
/pimcore-studio/api/docs, so the copy could only drift. It already had:
it named the PHP constant PLUGIN_DATA_IMPORTER_CONFIG as the permission,
whose value is plugin_datahub_config. The replacement keeps the
permission model, the API docs location, and the supported ways to
drive imports from outside.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019LmFQ3VND6uUqMpWsmppz6
Recapture the Data Importer screenshots from Pimcore Studio on the
public demo. The previous images showed the removed ExtJS Admin Classic
interface.

Replaced: datasource_asset, datasource_sql, import_preview,
resolver_settings, transformation_pipeline, data_target_direct,
execution, logging, and a fresher mapping.

Added: data_target_types (all four data target types) and
processing_settings, neither of which had an image.

Correct three details the live UI disproved:

- The tab order is General, Data Setup, Execution, Import Logs,
  Permissions. Getting Started listed Permissions second.
- Start Import sits in the Manual Execution panel, not in the
  Execution Settings panel.
- The Data Source Type dropdown lists HTTP before SFTP.

Verified live against the demo: the six data sources, the five Data
Setup steps, the four data target types including Many-to-Many Relation,
the Import Asset options (Parent folder, Use existing, Overwrite
existing, Preg match), the Processing Settings groups, and the two
schedule types.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019LmFQ3VND6uUqMpWsmppz6
- Installation becomes a folder with the upgrade notes as its subpage, matching
  the other bundles.
- Delete the Studio Integration page. It described @internal endpoints and
  duplicated permissions. The supported-interfaces table ("driving imports from
  outside Pimcore": push data source, the CLI commands, Messenger) was the
  valuable part and moves to Import Execution Details.
- Permissions are now documented once, in the installation chapter, covering the
  gate, adapter and per-configuration permissions.
- The events page named three Studio events as examples. There are fourteen.
  Document all of them, with payloads read from each event class.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019LmFQ3VND6uUqMpWsmppz6
The page said Composer pulls Datahub in and the bundle registers it as a
dependent bundle, which reads as "Datahub is set up automatically". It is not.
registerDependentBundles only loads a bundle into the kernel, and
pimcore:bundle:install never cascades. Datahub's own installer is what creates
the plugin_datahub_config permission and the Datahub permission category this
adapter's controllers require, so without it every non-admin user is locked out.

Add the explicit install step for Datahub.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019LmFQ3VND6uUqMpWsmppz6
@fashxp fashxp self-assigned this Jul 14, 2026
@fashxp fashxp added the Task label Jul 14, 2026
fashxp and others added 2 commits July 14, 2026 15:26
The execution and troubleshooting screenshots were still Admin Classic. Recapture
the manual execution, execution status and cron settings in Pimcore Studio, each
cropped to its own section. Remove datasource.png, which no page references.

Add the XLSX Sheet Name default (Sheet1), which XlsxFileInterpreter applies.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019LmFQ3VND6uUqMpWsmppz6
Reshoot the Data Setup screenshots against real demo data at 1440x900 and crop them to
the relevant section:

- execution / faq_execution_status: taken during an actual import run, so the progress
  bar and item counter show real values.
- datasource_asset, datasource_sql, processing_settings: proper section crops, no cut
  content.
- mapping: wider crop with real source preview values.
- transformation_pipeline, data_target_types, data_target_direct: modal-only crops, no
  background bleed. data_target_direct now shows the Direct target with its own config
  fields instead of repeating the type dropdown.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant