Fetcher is helper for loading data into forms.
fetch(): mixedfetchSingle(?string $column = null): mixedfetchAll(?int $offset = null, ?int $limit = null): mixed[]fetchPairs(?string $key = null, ?string $value = null): mixed[]
Register fetcher factory under report.definitions.
report:
definitions:
fetcher.cached:
class: Tlapnet\Report\Fetcher\CachedFetcherFactory(@report.fetcher.dibi)
autowired: false
fetcher.dibi:
class: Tlapnet\Report\Bridges\Dibi\Fetcher\DibiFetcherFactory
autowired: off- CachedFetcher
- NetteDatabaseFetcher
- DibiFetcher
Call fetcher:fetchPairs to get list of items for form select.
example:
subreport:
params:
builder:
- addSelect({
name: country
title: Country
items: @report.fetcher.dibi::create('SELECT * FROM country')::fetchPairs('id', 'name')
})
- addSelect({
name: country
title: Country cache
items: @report.fetcher.cached::set(all1one,+1 day)::create('SELECT * FROM country')::fetchPairs('id', 'name')
})