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 33 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

maxResultSize Integer OPTIONAL

Per default, the ELO results are limited to 10.000 elements. By defining this property, you can overwrite the default to a higher value.

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. Example:

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

icon String

See Entry Icons

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 OPTIONAL
from Integer or Date
to Integer or Date

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:
  from: 365
  to: 730

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

It is also possible to use exact dates. The dates have to be written in the ISO 8601 (https://www.iso.org/iso-8601-date-and-time-format.html) format. Example:

documentDate:
  from: 2021-01-01
  to: 2021-12-31

This example limits the reindex to all documents from 2021.

sourceSpecific.archivingDate OPTIONAL
from Integer or Date
to Integer or Date

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:
  from: 0
  to: 90

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

It is also possible to use exact dates. The dates have to be written in the ISO 8601 (https://www.iso.org/iso-8601-date-and-time-format.html) format. Example:

archivingDate:
  from: 2021-01-01
  to: 2021-12-31

This example limits the reindex to all documents that have been archived in 2021.

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).

sourceSpecific.blacklistAdministration
boolean OPTIONAL

Default: true

Determines if sords within the ‘administration’ folder are blacklisted and therefore not indexed.

sourceSpecific.blacklistChaosablage
boolean OPTIONAL

Default: true

Determines if sords within the ‘chaosablage’ folder are blacklisted and therefore not indexed.

Index Documents/Files

It is possible to index files referenced by an entry. Currently only supported when providing public access to them.

Configuration:

sourceSpecific:
  mask: Application Entry
  files:
    publicCache: true
    nesting: 1
    mask: Application Attachment

Name

publicCache: true/false

Must be true
Default: false

mask String

Mask selector for Entries you want to cache. This should be the document mask.

nesting Int

Hierarchy level for the search. Defaults to 1

Storage Location

The Files are cached during reindex and stored on the local file system alongside the configuration.

/portrait
  /config
     /application-prod.yml
  /public
     /<sourceID>
        /(<ELOGUID>).<DocExtensionFromELO>

The files can then be retrieved via the URL

https://<portraitBaseURL>/api/files/<sourceID>/(<GUID>).<extension>

One example use case is to include images into preformatted HTML or Markdown content.

Please keep in mind, that there is no login required to access the cached files

  • No labels