Skip to content

Quick Start

Get started with DaRT Reader in 5 minutes.

Using the GUI

Step 1: Launch DaRT Reader

Open the DaRT Reader application. You'll see the main window with a drag-and-drop zone.

Step 2: Enter license key

Go to File > Settings. Enter a valid license key.

Step 3: Load a Directory File

You can load a directory file in two ways:

Option A: Drag and Drop

Drag your directory file (.dir or similar) onto the drop zone.

Option B: File Menu

  1. Click File > Open directory file
  2. Browse to your directory file
  3. Click Open

Step 4: View Extract Information

Once loaded, you'll see:

  • Extract metadata (version, date, etc.)
  • Directory file path
  • Payload file information
  • File size validation results

Step 5: Work with Segments

Click the Segments button to:

  • View all available segments
  • Select segments to export
  • See segment metadata (size, record count, etc.)
  • Click on any row to see detailed information about the fields in the extract

Step 6: Export Data

Choose your export option:

Export to Database:

  1. Click Write to database
  2. Select database type (SQLite, PostgreSQL, etc.)
  3. Enter connection details.

    ℹ️ Note: If you enter a connection string, leave out the protocol prefix. For example, in jdbc:postgresql://localhost:5432/mydb, leave out jdbc:postgresql:.

  4. Optionally enter username/password
  5. Click Start

Export to CSV:

  1. Click Write to file
  2. Select output directory
  3. Choose which segments to export
  4. Click Export

Using the CLI

Inspect an Extract

View information about a DaRT extract:

ℹ️ Note: Make sure to save a valid license key using the GUI.

beye inspect /path/to/directory.file

Example output:

Client (key)..............................
Logical system..................U90CLNT400
DaRT release...........................2.7
SAP release............................740

More information ...

List Segments

List all segments in an extract:

beye list /path/to/directory.file
Example output when the DaRT extract is in German:

FTR_GDPDU_XSTR_AT02               Finanzgeschäftsvorgangstypen                                             372
FTR_GDPDU_XSTR_AT07               Typ von Bewegungen und Konditionen                                        90
FTR_GDPDU_XSTR_AT10               Finanzgeschäftsart-Bezeichnung                                           145
FTR_GDPDU_XSTR_AT10B              Customizing Bewertung                                                    244
FTR_GDPDU_XSTR_AT30               Formeltabelle für Finanzmathematik                                         3
FTR_GDPDU_XSTR_AT40               Berechnungstypen des Finanzstromrechners                                  60
FTR_GDPDU_XSTR_ATMA               Art eines Rahmenvertrags                                                   1

More information ...

To see details for a specific segment:

beye list /path/to/directory.file TXW_SEL
Example output when the DaRT extract is in German:

1     SEGTYPE       Segmenttyp der Datendatei             
2     SEGDATA       Datendatei: Segmentdatenschlüssel     
3     COMP_CODE     Buchungskreis                         
4     PERIOD        Geschäftsmonat  

More information ...

Export to Database

Export segments to a database:

See the Configuration File Example section for an example of what the configuration file should look like.

beye save --config-file config.json

With password authentication:

beye save --config config.json -u username -p

Export to CSV

Export specific segments to CSV files:

beye write-to-file /path/to/directory.file /output/directory TXW_SEL TXW_META

Validating the checksums

If you have written the extract to a database with the following command:

beye save --config-file config.json

Now validate the extract (use the same config file):

beye validate --config-file config.json

Output:

Check sums match for table TXW_FI_NGL_POS
Check sums match for table TXW_FI_POS

Configuration File Example

Create a config.json file for database exports:

{
  "path-to-directory-file": "/path/to/directory.file",
  "database-connection": {
    "type": "bundled-driver",
    "connection-string": "jdbc:postgresql://localhost:5432/mydb",
    "driver": "postgres"
  },
  "number-connections": 4,
  "chunk-size-per-connection": 5000,
  "table-prefix": "peter_",
  "autoCommit": true,
  "robust": false
}

For SQLite (simpler):

{
  "path-to-directory-file": "relative-path/directory-file",
  "database-connection": {
    "type": "bundled-driver",
    "connection-string": "jdbc:sqlite:/path/to/database",
    "driver": "sqlite"
  },
  "chunk-size-per-connection": 100,
  "number-connections": 1,
  "robust": false
}

Bring your own driver:

The following example assumes that the Firebird driver is on the classpath (see Advanced Configuration). It will only write the two segments TXW_FI_HD and TXW_FI_POS.

{
  "path-to-directory-file": "relative-path/directory-file",
    "selected-segments": {
                          "type": "include",
                          "segments": ["TXW_FI_HD", "TXW_FI_POS"]
                          },
    "database-connection": {
    "type": "own-driver",
    "connection-string":"jdbc:firebirdsql://localhost:3050//var/lib/firebird/data/mydb.fdb",
    "driver-class-name": "org.firebirdsql.jdbc.FBDriver",
    "field-mapping": {
        "BigDecimal": {
            "type-name": "DECIMAL",
            "has-length": false
        },
        "String": {
            "type-name": "VARCHAR",
            "has-length": true
        },
        "Int": {
            "type-name": "INTEGER",
            "has-length": false
        },
        "Date": {
            "type-name": "TIMESTAMP",
            "has-length": false
        },
        "Float": {
            "type-name": "FLOAT",
            "has-length": false
        },
        "BigInt": {
            "type-name": "INT64",
            "has-length": false
        },
        "LocalTime": {
            "type-name": "TIMESTAMP",
            "has-length": false
        },
        "YearMonth": {
            "type-name": "TIMESTAMP",
            "has-length": false
        },
        "Char": {
            "type-name": "CHAR",
            "has-length": true
        }
    }
    },
  "number-connections": 10,
  "chunk-size-per-connection": 15000,
  "autoCommit": true,
  "robust": false
}

Next Steps

Tips

Performance

For large extracts, increase numberConnections (4-8) and chunkSizePerConnection (5000-10000) for faster processing.

Security

Never store passwords in config files. Use the -p flag to enter passwords interactively.

Log Files

If something goes wrong, check the logs via Help > View Logs in the GUI or in the logging directory.