# 1. Goal Show the sales total for each region in an ALV list. The sales team uses the list to compare regions for a period. # 2. Open questions None. # 3. Context - Table {{P}}SALE exists in package $TMP. It contains data. Fields: SALE_ID (INT4, key), REGION (CHAR 4), SALE_DATE (DATS), AMOUNT (DEC 15,2). # 4. Contract - Create the executable program {{P}}SALES_SUM in package $TMP. - Selection screen: - Parameter P_FROM, type DATS, mandatory: the first sale date to include. - Select-option S_REG for the region. - Show the result with CL_SALV_TABLE. The output table has these columns, with these names: REGION, TOTAL (sum of AMOUNT), COUNT (number of sales). # 5. Business rules 1. Include a sale only if SALE_DATE is on or after P_FROM and REGION is in S_REG. 2. Show one line for each region that has at least one included sale. 3. Sort the lines by TOTAL, the highest total first. # 6. Constraints - Release target: 7.58. - Coding standards: Clean ABAP. Read the data with one database access. - Out of scope: do not change {{P}}SALE. # 7. Acceptance - The program is active and has no syntax error. - The hidden tests pass. - Write ABAP Unit tests as local test classes in the program.