Manage project budgets with availability control and supplements
✓Works with OpenClaudeYou are an SAP PS (Project Systems) consultant. The user wants to manage project budgets using availability control mechanisms and handle budget supplements to maintain cost control across project phases.
What to check first
- Run
TCODE: CJBDto verify Budget Master Data configuration exists for your project - Confirm project budget release status in
TCODE: CJ20N— only released budgets can be tracked - Check
TCODE: OKKPto verify availability control strategy (Profile/Overall/Phase-based) is active
Steps
- Open
TCODE: CJ40(Project Budget) and select your project definition (WBS element) - Navigate to Budget tab and verify the budget category type (Plan/Actual) matches your control requirements
- Set availability control strategy via
TCODE: OKKP— choose between Profile-based (PROF), Overall (OVER), or Phase-based (PHASE) control - Define commitment and actual cost limits in the budget master using
TCODE: CJBDwith fieldsAVCTRL(availability control indicator) andPHCTL(phase control) - Create budget supplements via
TCODE: CJ42when actual commitments exceed original budget allocation - Run report
CJV1(Availability Control Report) to monitor budget consumption vs. available budget in real-time - Configure warning threshold percentages in
TCODE: OKKPcustomizing (typically 80% warning, 100% hard limit) - Release final budget via
TCODE: CJ20Nwith status RELEASED to activate availability control enforcement
Code
REPORT zsat_ps_budget_management.
DATA: lt_budget_data TYPE TABLE OF bapips_budgetplan,
ls_budget TYPE bapips_budgetplan,
lv_project_id TYPE prps-pspid,
lv_budget_amt TYPE bapips_budgetplan-budget_amount,
lv_supplement TYPE bapips_budgetplan-budget_amount,
ls_return TYPE bapiret2.
PARAMETERS: p_pspid TYPE prps-pspid OBLIGATORY,
p_budget TYPE curr2-currencycode DEFAULT 'USD',
p_phase TYPE pspph-pspph DEFAULT '01',
p_suppl TYPE p DECIMALS 2.
START-OF-SELECTION.
CALL FUNCTION 'BAPI_PS_BUDGET_GETDETAIL'
EXPORTING
projectid = p_pspid
planversion = '01'
IMPORTING
budget_master = ls_budget
TABLES
return = lt_return
budget_lines = lt_budget_data.
IF sy-subrc = 0.
WRITE: / 'Current Budget Amount:', ls_budget-budget_amount.
Note: this example was truncated in the source. See the GitHub repo for the latest full version.
Common Pitfalls
- Treating this skill as a one-shot solution — most workflows need iteration and verification
- Skipping the verification steps — you don't know it worked until you measure
- Applying this skill without understanding the underlying problem — read the related docs first
When NOT to Use This Skill
- When a simpler manual approach would take less than 10 minutes
- On critical production systems without testing in staging first
- When you don't have permission or authorization to make these changes
How to Verify It Worked
- Run the verification steps documented above
- Compare the output against your expected baseline
- Check logs for any warnings or errors — silent failures are the worst kind
Production Considerations
- Test in staging before deploying to production
- Have a rollback plan — every change should be reversible
- Monitor the affected systems for at least 24 hours after the change
Related SAP Skills
Other Claude Code skills in the same category — free to download.
ABAP Developer
Write clean ABAP code with modern syntax, CDS views, and best practices
SAP Fiori App
Build SAP Fiori applications with SAPUI5 and Fiori Elements
SAP BTP Setup
Set up and deploy applications on SAP Business Technology Platform
SAP HANA Query
Write and optimize SAP HANA SQL queries and calculation views
SAP OData Service
Create and consume OData services in SAP (V2 and V4)
SAP RFC Connector
Connect to SAP via RFC/BAPI from external applications
SAP CDS Model
Create Core Data Services models and annotations for SAP
SAP CAP App
Build full-stack applications with SAP Cloud Application Programming Model
Want a SAP skill personalized to YOUR project?
This is a generic skill that works for everyone. Our AI can generate one tailored to your exact tech stack, naming conventions, folder structure, and coding patterns — with 3x more detail.