自訂欄位
建立可自由設定的額外欄位,適用於工時單、客戶、專案、活動、與使用者,並支援各種格式。欄位可設為選填或必填,且可設定存取權限。
![Kevin Papst](/images/kevin-papst.webp)
Kevin Papst
Allows configuration of additional (custom) fields for:
Timesheets
, Customers
, Projects
, Activities
, Invoices
, User
, Expenses
(see plugin).
Features
You can create as many fields as you want for each data type, where each field:
- is either optional or mandatory
- can be restricted to users with certain permissions or roles
- can be described with a name and help text
- has a maximum length of 65535 character
The custom-field data is then available in:
- Data-tables will display all visible fields
- Exports (HTML and Spreadsheets include all visible fields)
- Timesheet exports (include visible timesheet fields)
- API (collections and entities)
- Invoice templates (custom templates have access to all fields)
You can change the “weight” of custom-fields, so they show up in the order you define.
Be aware:
- Sensitive data can be configured as “invisible”, so it will not show up in the previously mentioned places
- Weekly-hours does NOT support custom fields
- User preferences (custom fields for users) are not exported by the API (this is a limitation in the core application)
- User preferences have a maximum length of 250 character
Field types
Custom fields can be of the following type:
string
, integer
, number
, duration
, money
, language
, currency
, country
, color
, date
, datetime
, email
, textarea
, invoice template
, checkbox
, choice-list
More about those in the documentation.
安裝
複製檔案
Extract the ZIP file and upload the included directory and all files to your Kimai installation to the new directory:
var/plugins/MetaFieldsBundle/
The file structure needs to look like this afterwards:
var/plugins/
├── MetaFieldsBundle
│ ├── MetaFieldsBundle.php
| └ ... more files and directories follow here ...
清除快取
After uploading the files, Kimai needs to know about the new plugin. It will be found once the cache was re-built. Call these commands from the Kimai directory:
How to reload Kimai cache
bin/console kimai:reload --env=prod
It is not advised, but in case the above command fails you could try:
rm -r var/cache/prod/*
You might have to set file permissions afterwards:
Adjust file permission
You have to allow PHP (your webserver process) to write to var/
and it subdirectories.
Here is an example for Debian/Ubuntu, to be executed inside the Kimai directory:
chown -R :www-data .
chmod -R g+r .
chmod -R g+rw var/
You might not need these commands in a shared-hosting environment.
And you probably need to prefix them with sudo
and/or the group might be called different from www-data
.
建立資料庫
Run the following command:
bin/console kimai:bundle:metafields:install
This will create the required database tables and update them to the latest version.
If you see an error like There are no commands defined in the "kimai:bundle:XYZ" namespace.
,
then either the directory has a wrong name (must be var/plugins/MetaFieldsBundle/) or you forgot to clear the cache (look above).
更新
Updating the plugin works exactly like the installation:
- Delete the directory
var/plugins/MetaFieldsBundle/
-
Execute all installation steps again:
- 複製檔案
- 清除快取
- Update database with
bin/console kimai:bundle:metafields:install
變更記錄
Version 2.9.0
Compatibility: requires minimum Kimai 2.15.0
- Inline Nelmio API Doc configuration
Version 2.8.0
Compatibility: requires minimum Kimai 2.15.0
Version 2.7.0
Compatibility: requires minimum Kimai 2.15.0
- Improved internal API
- Fixed translation issues with Task fields
Version 2.6.0
Compatibility: requires minimum Kimai 2.15.0
Added: support for custom fields with the Task-Management bundle (needs Task Management version 2.7.0)
Version 2.5.0
Compatibility: requires minimum Kimai 2.5.0
Fixed: auto-tags support in detail pages (in cases where many tags already exist)
Version 2.4.1
Compatibility: requires minimum Kimai 2.5.0
- Changed: import Route attribute from correct namespace
- Changed: removed API security definition
Version 2.4.0
Compatibility: requires minimum Kimai 2.5.0
Changed: do not load all meta-fields from database on every page load
Version 2.3.0
Compatibility: requires minimum Kimai 2.5.0
Changed: moved some translations to core, allowing more languages
Version 2.2.0
Compatibility: requires minimum Kimai 2.1.0
Use annotation type for routes
Version 2.1.0
Compatibility: requires minimum Kimai 2.0.0
Simplified listing view
Version 2.0.7
Compatibility: requires minimum Kimai 2.0.0
Fixed: prevent error if tag name exceeds 100 character
使用截圖
常見問題
這些常見問題由本外掛程式的開發者提供。
Read more about the license for this item here
You can buy the plugin via the Marketplaces 'Lemon Squeezy' or 'Gumroad' and pay with Credit Card or PayPal. Both offer instant access to the purchases.
Support-questions, bug-reports and feature-requests will be answered in this Github repository