> For the complete documentation index, see [llms.txt](https://sealights-docs.tricentis.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sealights-docs.tricentis.com/setup-and-configuration/command-line-interface/upload-flpca-data.md).

# Upload FLPCA data

Import a Fiori Launchpad (FLPCA) Excel export for each pipeline's PRD RFC. Required for Fiori before search\_testrepo; optional enrichment for non-Fiori landscapes.

FLPCA is the Fiori Launchpad Content Administrator export (`/UI2/FLPCA`). Importing FLPCA data enriches test-repository matching: for each Fiori app, the search adds the launchpad **titles and keywords**, and the semantic object and action names, as extra search terms.

The import is dispatched as a server task. The imported data is stored locally on the agent host (one data file per RFC Destination, under the agent's user-data folder); it is not uploaded to SeaLights.

{% hint style="warning" %}
**When to run it:** Import FLPCA data **after** RFC, pipeline, and test-repository configuration is in place.

**Which RFC:** Import against the pipeline's **PRD RFC** — the RFC Destination set as the pipeline's production system (`prd`). `search_testrepo` reads FLPCA data only from the PRD RFC's database. An import against any other RFC (for example the QAS RFC) still succeeds, but search does not use it and skips FLPCA expansion.

**Fiori (required):** For Fiori applications, FLPCA import is **mandatory**. Complete the import for each pipeline's PRD RFC (`upload_flpca import` → confirm with `upload_flpca status`) **before** you run `search_testrepo`. See [Fiori support](broken://pages/ZslbGtlcKtkEs84gV7Iz).

**Non-Fiori (optional):** If you do not rely on Fiori-driven processes, FLPCA import is optional enrichment for test-repository matching.
{% endhint %}

## Import FLPCA data

{% hint style="info" %}
You can also write these commands with a space instead of an underscore: `slabapcli upload flpca import` and `slabapcli upload flpca status` are equivalent to `slabapcli upload_flpca import` and `slabapcli upload_flpca status`, and take the same parameters. This page uses the `upload_flpca` spelling.
{% endhint %}

### `slabapcli upload_flpca import`

Imports an FLPCA Excel export for an RFC Destination. The import runs as a server task, and the command waits until the task has finished. It exits with code `0` when the import succeeds and with a non-zero code when it fails. Use `upload_flpca status` to see the result afterwards.

The ABAP Agent server must be running (see [Start the ABAP Agent Server](broken://pages/jjXJbDJ9CnFBYzl2NDMP)), and the server's service account must be able to read the `--file` path.

The imported data is written to:

```
{userdata}\private\flpca\{rfc-name-lowercase}.db
```

`{userdata}` is the `[settings].userdata` directory, which defaults to `%ProgramData%\Tricentis\SeaLights\ABAP Agent`. For example, for RFC Destination `S23` with the default location, the data is written to `%ProgramData%\Tricentis\SeaLights\ABAP Agent\private\flpca\s23.db`.

Each import replaces the data that was previously imported for that RFC.

#### File format

The `--file` must be an **Excel workbook** exported from `/UI2/FLPCA`. Use `.xlsx` or `.xlsm`. A legacy `.xls` file cannot be imported (the import fails because the workbook is invalid); save it as `.xlsx` first. Files with any other extension (for example `.csv` or `.txt`) are rejected.

* Only the **first worksheet** is imported.
* The **first used row** is the header row; every row below it is imported as data.
* Keep the column headers as exported from `/UI2/FLPCA`, except for the rename described below. Other columns in the export are ignored.

The agent uses these columns:

| Column                                                          | Used for                                               |
| --------------------------------------------------------------- | ------------------------------------------------------ |
| `Application Ressource`                                         | Identifies the Fiori app                               |
| `Transaction`                                                   | Links the launchpad entry to the transaction it starts |
| `Catalog Title`, `Tile Title`, `Tile Subtitle`, `Tile Keywords` | Added as search terms                                  |
| `Semantic Object`, `Action`                                     | Added as a `<Semantic Object>-<Action>` search term    |

If the `Transaction` column is missing, the import still succeeds, but search cannot use the FLPCA data and skips the FLPCA enrichment without reporting an error.

{% hint style="info" %}
**`Application Ressource` spelling:** Older SAP releases export this column as `Application Ressource` (the spelling used by SAP). If your export names it `Application Resource` instead, rename the column header to `Application Ressource` before you import the file.
{% endhint %}

A workbook with no worksheets, no used cells, or an empty header row fails the import with `FLPCA workbook is invalid or empty.`

{% tabs %}
{% tab title="Command Prompt" %}
{% code title="Syntax" overflow="wrap" %}

```batch
slabapcli.exe upload_flpca import --rfc <rfc> --file <path>
```

{% endcode %}
{% endtab %}

{% tab title="PowerShell" %}
{% code title="Syntax" overflow="wrap" %}

```powershell
.\slabapcli.exe upload_flpca import --rfc <rfc> --file <path>
```

{% endcode %}
{% endtab %}
{% endtabs %}

| Parameter | Short flag | Required | Description                                                                                                                                                  |
| --------- | ---------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `--rfc`   | —          | Yes      | The pipeline's **PRD RFC** Destination name (must match a `[[rfc]].name` value in `config.toml`, and should be the pipeline's `prd` RFC, e.g. `S23`).        |
| `--file`  | —          | Yes      | Full path to the FLPCA Excel workbook (`.xlsx` or `.xlsm`) on the agent host. The file must exist, and the server's service account must be able to read it. |

#### Example

{% tabs %}
{% tab title="Command Prompt" %}
{% code title="Command" overflow="wrap" %}

```batch
slabapcli.exe upload_flpca import --rfc "S23" --file "C:\data\flpca_s23_export.xlsx"
```

{% endcode %}
{% endtab %}

{% tab title="PowerShell" %}
{% code title="Command" overflow="wrap" %}

```powershell
.\slabapcli.exe upload_flpca import --rfc 'S23' --file 'C:\data\flpca_s23_export.xlsx'
```

{% endcode %}
{% endtab %}
{% endtabs %}

{% code title="Expected output (PowerShell, abbreviated)" overflow="wrap" lineNumbers="true" %}

```log
.\slabapcli.exe upload_flpca import --rfc 'S23' --file 'C:\data\flpca_s23_export.xlsx'
[2026-03-08 11:10:00.101+02:00] [info] Detected Windows version: Windows 11
[2026-03-08 11:10:00.123+02:00] [info] Config pathname: C:\ProgramData\Tricentis\SeaLights\ABAP Agent\config\config.toml
```

{% endcode %}

{% hint style="info" %}
The command waits until the server has finished the import. It checks the task every 30 seconds, so it can take up to 30 seconds longer than the import itself. When it returns, check the exit code: `0` means the import succeeded, and any other value means it failed. Use `upload_flpca status --rfc S23` to see the recorded result.
{% endhint %}

***

## Check import status

### `slabapcli upload_flpca status`

Shows the result of the last `upload_flpca import` run for an RFC Destination. Reports the process state and any server message. If the last import failed, it reports when it failed and why.

{% tabs %}
{% tab title="Command Prompt" %}
{% code title="Syntax" overflow="wrap" %}

```batch
slabapcli.exe upload_flpca status --rfc <rfc>
```

{% endcode %}
{% endtab %}

{% tab title="PowerShell" %}
{% code title="Syntax" overflow="wrap" %}

```powershell
.\slabapcli.exe upload_flpca status --rfc <rfc>
```

{% endcode %}
{% endtab %}
{% endtabs %}

| Parameter | Short flag | Required | Description                                                          |
| --------- | ---------- | -------- | -------------------------------------------------------------------- |
| `--rfc`   | —          | Yes      | The RFC Destination name whose last import result you want to check. |

#### Example

{% tabs %}
{% tab title="Command Prompt" %}
{% code title="Command" overflow="wrap" %}

```batch
slabapcli.exe upload_flpca status --rfc "S23"
```

{% endcode %}
{% endtab %}

{% tab title="PowerShell" %}
{% code title="Command" overflow="wrap" %}

```powershell
.\slabapcli.exe upload_flpca status --rfc 'S23'
```

{% endcode %}
{% endtab %}
{% endtabs %}

{% code title="Expected output (PowerShell) — successful import" overflow="wrap" lineNumbers="true" %}

```log
.\slabapcli.exe upload_flpca status --rfc 'S23'
[2026-03-08 11:12:00.433+02:00] [info] Detected Windows version: Windows 11
[2026-03-08 11:12:00.456+02:00] [info] Config pathname: C:\ProgramData\Tricentis\SeaLights\ABAP Agent\config\config.toml
Process 'proc-def456' status: Done
```

{% endcode %}

The status output reports:

| Field          | Values                     | Meaning                                       |
| -------------- | -------------------------- | --------------------------------------------- |
| Process status | `Running`, `Done`, `Error` | Current state of the server-side import task. |

If the server returns a message for the process, it is printed on an additional `Server message:` line.

FLPCA data is stored only on the agent host and is not uploaded to SeaLights, so the status output has no upload state.

#### Failed import

If the last import failed, `status` prints when it failed (in UTC) and a reason, and exits with a non-zero code:

{% code title="Expected output (PowerShell) — failed import" overflow="wrap" lineNumbers="true" %}

```log
.\slabapcli.exe upload_flpca status --rfc 'S23'
[2026-03-08 11:12:00.433+02:00] [info] Detected Windows version: Windows 11
[2026-03-08 11:12:00.456+02:00] [info] Config pathname: C:\ProgramData\Tricentis\SeaLights\ABAP Agent\config\config.toml
Last import failed at 2026-03-08 09:10:00 for RFC 'S23'.
Reason: Import finished without processId (exit code 14).
```

{% endcode %}

The exit code in the reason is the code that the `upload_flpca import` command returned (for example `14` when the server reported that the import task failed). It does not contain the underlying cause; see the [server log](broken://pages/jjXJbDJ9CnFBYzl2NDMP#server-logs) for details.

If no import has been run yet, the command prints: `No import has been run for RFC 'S23' - run 'upload flpca import' or 'upload_flpca import' first.`
