Skip to content

fix: resolve potential bugs - RETURN in loop, overly broad CATCH#42

Merged
MagPasulke merged 6 commits into
mainfrom
fix/issue-26-potential-bugs
May 24, 2026
Merged

fix: resolve potential bugs - RETURN in loop, overly broad CATCH#42
MagPasulke merged 6 commits into
mainfrom
fix/issue-26-potential-bugs

Conversation

@MagPasulke
Copy link
Copy Markdown
Owner

Fixes #26

Changes

  1. RETURN → CONTINUE in precheck_update LOOP (zbp_asis_i_ruleset.clas.locals_imp.abap)

    • RETURN exits the entire method after the first failing entity; subsequent entities are never validated.
  2. CATCH cx_root → specific exceptions in zasis_cl_ev_producer_resolver.clas.abap

    • Narrowed to zasis_cx_exc and cx_sy_create_object_error instead of swallowing all exceptions.

⚠️ Please sync to SAP system via abapGit and run ABAP Unit tests before merging.

- precheck_update: RETURN exited entire method after first failing entity,
  preventing validation of subsequent entities. Changed to CONTINUE.
- ev_producer_resolver: CATCH cx_root swallowed all exceptions including
  system errors. Narrowed to zasis_cx_exc and cx_sy_create_object_error.

Fixes #26
@MagPasulke MagPasulke marked this pull request as ready for review May 24, 2026 20:04
… values query

Replace overly broad CATCH cx_root (which swallowed all exceptions and
stored results in dead variables) with specific catches:
- cx_rap_query_filter_no_range: filter cannot be converted to ranges
- cx_sy_move_cast_error: domain is not an elementary type

Both return empty result. Unexpected exceptions now propagate to the
RAP framework for proper error surfacing.
@MagPasulke MagPasulke merged commit 0046363 into main May 24, 2026
1 check passed
@MagPasulke MagPasulke deleted the fix/issue-26-potential-bugs branch May 24, 2026 20:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Potential Bugs: Binary search, RETURN in loop, overly broad CATCH

1 participant