Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 22 Next »

Having set up an ELO connection, you can define a source. The name implies that this will be a source for Portrait and your future sections. Technically speaking, sources are ELO index-field queries. The results of these queries will be stored as lists in Portrait.

Add the following to the source section inside the application.yml file:

sources:
  source:
    - id: 'elo-outgoing-invoices'
      conn: 'ix-Archive1'
      sourceType: 'elo'
      runInterval: 3600
      excludeKeysFromSuggestions: []
      sourceSpecific:
        mask: Sales
        searchParams:
          - name: SALDOCTYPE
            value: Invoice

The name of the source will be elo-outgoing-invoices. The name will be later on used inside the section. In this example, the connection ix-Archive1 is used and therefore must be defined firsthand. The sourceType will be in case of ELO always be elo. Thus, sourceSpecific config is required. Each ELO source needs a mask (= ELO keywording mask) and searchParams (= ELO indexfields). The name of an indexfield is referenced by its internal group name.

By default, ELO limits a search result to 10.000 entries. This limit can be adjusted - see the ELO Indexserver Documentation.

Settings

Name

id String

Name of the source

conn String

Used connection.
Refer to ELO connections

sourceType String

In case of ELO: elo

keyName String OPTIONAL

Name of the indexed object. If not set, it will default to sord.Name

key String OPTIONAL

Unique Id of the indexed object. If not set, it will default to sord.Guid

The key must be unique for this document in Portrait

runInterval Integer

reindex interval of the source in seconds

runDelay Integer OPTIONAL

delay before the first reindex run in seconds.

runAt String

instead of using an interval, you can define a specific time when the reindex will be triggered. Example:

runtAt: 07:00

runAt cannot be combined with runInterval

excludeKeysFromSuggestions
List<String>

This list excludes the Keys from being added to the suggesters. Suggesters are used inside the search as “Completion Suggester” and “Did you Mean”.

For ELO sources, a good practice is to filter all the internal fields out. Example:

excludeKeysFromSuggestions: [path, xDateIso, iDateIso, fileExtension, owner, parentId, isDocument, fileSize, desc]

sourceSpecific.mask String

Keywording mask

sourceSpecific.searchParams
List<String name, String value>

A list of ELO index fields to narrow the search.

A list entry consists of the internal group name of an ELO index field and the value.

Example:

searchParams:
- name: SALDOCTYPE
  value: Auftragsbestätigung
- name: COMPANY
  value: 'CRONUS AG'

sourceSpecific.documentDate
newerThanDays Integer
olderThanDays Integer

These settings are under sourceSpecific and limits the search to a time range – either into the future or the past.

The range will be applied on the ELO-Sord property “External Date“ (aka. Document Date).

Example:

documentDate:
  newerThanDays: 365
  olderThanDays: 730

This example limits the reindex to documents that are older than two years or newer than a year.

sourceSpecific.archivingDate
newerThanDays Integer
olderThanDays Integer

These settings are under sourceSpecific and limits the search to a time range – either into the future or the past.

The range will be applied on the ELO-Sord property “Internal Date“ (aka. Archiving Date).

Example:

archivingDate:
  newerThanDays: 0
  olderThanDays: 90

This example limits the reindex to documents that are archived at max for 90 days. The property newerThanDays is set to zero, so could also be left out.

sourceSpecific.maps
List<object> OPTIONAL

Index ELO maps of a given object. Due to a lot of different configuration setups, you must define which fields are imported.

Example:

maps:
  - domain: objekte
    name: INVOICE_TAX
    type: table
  - domain: formdata
    name: MY_VERY_LONG_TEXT
    type: string

Domain
You need to define which domain you want to use, typically this would be objekte or formdata - in case of fields used in Business Solutions.

You can also define your own domain (e.g. ApplicationA). See also de.elo.ix.client.MapDomainC in the ELO IndexServer documentation.

Type
Can either be string or table. If the type is table, Portrait will collect a value and convert it into a table and store it as a list of objects.

Name
The name of the map field or the common prefix of a map-table.

Given the above examples, the map fields can be accessed via the following names from the UI:

  • string: map_formdata_MY_VERY_LONG_TEXT

  • table: table_objekte_YOUR_TABLE_PREFIX

If Portrait detects that a map-value is stored as blob, the blob value is extracted and stored as text. Otherwise, the normal value is utilized (which is limited to 255 chars).

  • No labels