Snapshot: new training tasks (balanced generation), docs

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Kral
2026-10-05 22:08:59 +02:00
parent eb13453097
commit 6984fc7917
572 changed files with 30024 additions and 0 deletions

View File

@@ -0,0 +1,54 @@
# 1. Goal
A maple syrup farm collects sap from its groves. The farm must store each sap
delivery in one database table. Later programs and views read the deliveries
from this table.
# 2. Open questions
None.
# 3. Context
- The farm works with several groves. Each grove has a grove number.
- One delivery belongs to exactly one grove and has exactly one delivery date.
- The farm measures the sap in litres. The farm measures the sugar content of
the sap in degrees Brix.
- The farm pays the grove for each delivery. The payment is an amount in a
currency.
- All objects are in package $TMP.
# 4. Contract
- Create the transparent database table {{P}}SYRUP in package $TMP.
- The table has exactly these fields, in this order:
client, delivery_id, grove_id, delivery_date, sap_liters, brix,
quality_grade, payout, currency_code.
# 5. Business rules
1. The table has the fields of the table below. The table below gives the data
type, the length and the number of decimals of each field.
| Field | Data type | Length | Decimals | Key | Not null |
| --- | --- | --- | --- | --- | --- |
| client | CLNT | 3 | - | yes | yes |
| delivery_id | CHAR | 10 | - | yes | yes |
| grove_id | CHAR | 8 | - | no | no |
| delivery_date | DATS | 8 | - | no | no |
| sap_liters | DEC | 9 | 2 | no | no |
| brix | DEC | 4 | 1 | no | no |
| quality_grade | NUMC | 2 | - | no | no |
| payout | CURR | 15 | 2 | no | no |
| currency_code | CUKY | 5 | - | no | no |
2. client and delivery_id are the key fields. No other field is a key field.
3. The key fields are not null.
4. payout is an amount. The currency of payout is the value of currency_code.
5. Two rows with the same client and the same delivery_id are not allowed.
# 6. Constraints
- Release target: 8.16.
- Coding standards: Clean ABAP.
- Out of scope: no other objects.
# 7. Acceptance
- The table is active and has no syntax error.
- The hidden tests pass.
- Write ABAP Unit tests in a global test class. Check the field properties with
RTTI and check the table access with CL_OSQL_TEST_ENVIRONMENT.