pawelwiejkut/bw_remove_characters
An ABAP class for a BW transformation's end routine that strips the characters an InfoObject cannot accept, checked against transaction RSKC, before they cause an activation error.
A flat-file load into BW can carry characters an InfoObject's data type rejects, which then fails activation partway through a DSO load. Put in a transformation's end routine between the flat-file source and the target DSO, the class checks each value with the SAP function module RSKC_CHAVL_OF_IOBJ_CHECK, going by the characters maintained in transaction RSKC, and removes whatever is not allowed. It also stops a value reaching a data type that cannot hold it, char values passed to date fields being the maintainer's example. It installs through abapGitabapGitA Git client written in ABAP that runs inside the system, so objects are cloned, pulled and pushed without leaving it; with no package manager in ABAP, a cloned repository is how code is distributed.community org, abap or by copying the class, and is called with a reference to result_package.
Facts
Where it sits
Who is behind it
In the atlas: maintains 2, contributes to 3@pawelwiejkutmaintainer
Before choosing this
Signals
ActivityQuietNo published releases; repository quiet for 24 months
It publishes no releases, and its repository has been quiet for at least 24 full months. This may be normal for stable software; check whether its current state still fits your use.
What it declares
Every artifact
- Type
- Package
- Origin
- Independently maintained
As a package
- Where it runs
- Inside its host
- Distributed through
- abapGitCopied into the project
Connections
Getting data into an analytical store and keeping it current
Download
README
quoted from pawelwiejkut/bw_remove_characters under MIT, readRemove special characters in BW transformations
Welcome at github BW tool for remove special characters, fell free to contribute and create pull requests.
If you have frequent data load from flat files in your BW, you know that user can provide wrong characters into. To prevent activation error of this data, please use this development in your transformation end routine on the first layer (RSDS->DSO).
Issue scenario
No all special characters defined in BW can be hanlded by infoobjects. Due to that, if user provide unexpected chart, we get an issue in case of data activation in our BW system:

or other informations like:
- Value ‘#’ (hex. ‘2300’) of characteristic contains invalid characters
- Error when assigning SID: Action VAL_SID_CONVERT InfoObject
- (hex. ‘500072007A0065006C006500770020006E0061002000720061’) of characteristic contains inva
How it works ?
This development check infoobject based on passed reference table. Best idea is to use this in end routine between flatfile source system and target DSO. You can't use this if your target object is field based instead of inffobect based. If any invaild characters occurs, it will be automatically replaced by nothig ( cuted off).
Why better than other solutions ?
This development uses standard SAP function module RSKC_CHAVL_OF_IOBJ_CHECK, which basically checks every character you are trying to pass to particular infoobject and confirms is that character allowed to be used in. Most of avaible implementations check correctness of passed characters based on SAP note 173241:
!"%&''()*+,-./:;<=>?_0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
This implementation addiotionaly:
- prevent you against pass unsupported characters into particular data types, like passing char values to date fields,
- bases on entries that you provided in RSKC transaction
Usage instructions:
- Clone code using ABAP Git or just copy class,
- Add following code into end routine to your trnasformations between flatfile datasource and DSO:
DATA(lobj_check) = NEW zcl_bw_validate_special(
ir_ref = REF #( result_package ) ).
lobj_check->validate(
EXPORTING
it_tab = result_package
it_monitor = monitor
IMPORTING
et_tab = result_package
et_monitor = monitor ).
- Use and be happy !
Others providing
Compare all 9 on the Loading a warehouse page →- SAP Analytics CloudSAP Analytics CloudSAP's SaaS front end for analytics: business intelligence, planning and predictive in one product, and the place a Datasphere analytic model is meant to end up being read.sap official, btpSaaS for business intelligence, planning and predictive analyticsfrom BTP/BAIP
- SAP DatasphereSAP DatasphereSAP's cloud data warehouse: spaces, modelled views and analytic models over data brought in or federated from source systems, with the business context carried along rather than rebuilt.sap official, btpCloud data warehouse with spaces, views and analytic modelsfrom BTP/BAIP
- ERPLERPLA DuckDB extension that reads SAP ERP tables, CDS views and BW queries from SQL over RFC, BICS and ODP, and can mount an SAP system as a DuckDB catalog to join against other data.independent, abapDuckDB extension reading SAP ERP tables, CDS views and BW queriesfrom ABAP
- bw-modeling-mcpbw-modeling-mcpReads, creates and modifies BW/4HANA modelling objects through the same internal APIs Eclipse BWMT and the BW/4HANA Cockpit use — and can run centrally on BTP with each caller reaching BW as themselves.independent, btpMCP server for BW/4HANA modelling objectsfrom BTP/BAIP
- sap_analytics_cloud_mcpsap_analytics_cloud_mcpThe SAP Analytics Cloud REST API as ninety tools across eleven service areas — content, data import and export, user management, transport, scheduling and translation.independent, btpMCP server for the SAP Analytics Cloud REST APIfrom BTP/BAIP
- @mariodefe/sap-datasphere-mcp@mariodefe/sap-datasphere-mcpForty-five tools across a Datasphere tenant — discovery, metadata, analytics, ETL extraction, database users, lineage and column profiling — with config-driven PII masking applied before anything reaches the model.independent, btpMCP server with forty-five tools across a Datasphere tenantfrom BTP/BAIP
- pawelwiejkut/bw_trfn_pocketknifepawelwiejkut/bw_trfn_pocketknifeA framework that handles SAP BW transformation start routines from a customisation table with its own maintenance view, instead of a routine class written per transformation.independent, abapFramework for BW transformation start routines from a tablefrom ABAP
- dbt-sap-hana-clouddbt-sap-hana-cloudA dbt adapter, installed as a Python package beside dbt-core, that lets a dbt project target SAP HANA Cloud as its warehouse through a profile in profiles.yml.sap official, btpdbt adapter targeting SAP HANA Cloud as its warehousefrom BTP/BAIP
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
abaplint
History in the atlas
- First seen.
For your agent
- Ref
artifact:pawelwiejkut-bw-remove-characters- JSON
- /artifacts/pawelwiejkut-bw-remove-characters.json
- MCP
- Connecting an agent