| 1 | forms: |
| 2 | - name: add-xyz-hours |
| 3 | display_name: "Hours spent on XYZ contracting project" |
| 4 | commit: |
| 5 | message: "Add {{ hours }} hours spent on XYZ contracting project" |
| 6 | fields: |
| 7 | - name: date |
| 8 | type: date |
| 9 | display_name: "Date" |
| 10 | required: true |
| 11 | - name: hours |
| 12 | type: number |
| 13 | display_name: "Hours" |
| 14 | required: true |
| 15 | - name: rate |
| 16 | type: number |
| 17 | display_name: "Rate (USD)" |
| 18 | default: "300" |
| 19 | required: true |
| 20 | - name: narration |
| 21 | type: str |
| 22 | default: "Hours spent on the software development project for client XYZ" |
| 23 | display_name: "Narration" |
| 24 | operations: |
| 25 | - type: append |
| 26 | file: "books/{{ date.year }}.bean" |
| 27 | content: | |
| 28 | {{ date }} * {{ narration | tojson }} |
| 29 | Assets:AccountsReceivable:Contracting:XYZ {{ hours }} XYZ.HOUR @ {{ rate }} USD |
| 30 | Income:Contracting:XYZ |