diff --git a/.abapgit.xml b/.abapgit.xml
index 7abba7d..0a0f3a0 100644
--- a/.abapgit.xml
+++ b/.abapgit.xml
@@ -9,10 +9,10 @@
-
SAP_BASIS
- 740
+ 754
- ZCL_CONVERT=>C_VERSION
+ /APMG/CL_CONVERT=>C_VERSION
diff --git a/.github/workflows/reuse.yml b/.github/workflows/reuse.yml
index bfa2099..7bc1392 100644
--- a/.github/workflows/reuse.yml
+++ b/.github/workflows/reuse.yml
@@ -1,11 +1,20 @@
+# SPDX-FileCopyrightText: 2022 Free Software Foundation Europe e.V.
+#
+# SPDX-License-Identifier: CC0-1.0
+
name: REUSE Compliance Check
-on: [push, pull_request,workflow_dispatch]
+on: [push, pull_request, workflow_dispatch]
+
+permissions:
+ contents: read
jobs:
- test:
+ Reuse-Compliance-Check:
runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+
- name: REUSE Compliance Check
- uses: fsfe/reuse-action@v1
+ uses: fsfe/reuse-action@694eabb15673ec601ea19d4cd949969141372512 # v5.0.0
diff --git a/.reuse/dep5 b/.reuse/dep5
deleted file mode 100644
index bb76a6f..0000000
--- a/.reuse/dep5
+++ /dev/null
@@ -1,8 +0,0 @@
-Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: ...
-Upstream-Contact: Marc Bernard
-Source: https://github.com/abapPM/ABAP-...
-
-Files: *
-Copyright: 2024 apm.to Inc.
-License: MIT
diff --git a/README.md b/README.md
index 0c9b5b1..0b0f921 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-
+
[](https://github.com/abapPM/ABAP-Convert/blob/main/LICENSE)
[](https://github.com/abapPM/.github/blob/main/CODE_OF_CONDUCT.md)
@@ -6,27 +6,27 @@
# Convert Any Data Type
-The last class you will need to convert between data types. Well, that's the goal 😁
+The last class you will ever need to convert between data types. Well, that's the goal 😁
-Do you remember how to convert a string to an xstring? How about an ABAP timestamp to Unixtime? Or a string to a CHAR with overflow check? Don't recall the syntax for the right string template to convert a timestamp to an ISO date? 🤔
+Do you remember how to convert a string to an xstring? How about converting an ABAP timestamp to Unix time? Or a string to a CHAR with overflow check? Do you recall the syntax for the correct string template to convert a timestamp to an ISO date? 🤔
Look no further and use this class 😄
NO WARRANTIES, [MIT License](https://github.com/abapPM/ABAP-Convert/blob/main/LICENSE)
> [!NOTE]
-> It might make sense to move various date/time conversions into a separate "Temporal" object like in [JavaScript](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Temporal). Open an issue to discuss if you're interested!
+> It might make sense to move various date/time conversions into a separate "Temporal" object, like in [JavaScript](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Temporal). Open an issue to discuss if you're interested!
## Usage
Create an instance with the source value and use one of the methods to get the target value.
```abap
-DATA(str) = NEW zcl_convert( value )->to_string( ).
+DATA(str) = NEW /apmg/cl_convert( value )->to_string( ).
" or
-DATA(str) = zcl_convert=>create( value )->to_string( ).
+DATA(str) = /apmg/cl_convert=>create( value )->to_string( ).
" or
-DATA(conv) = NEW zcl_convert( ).
+DATA(conv) = NEW /apmg/cl_convert( ).
DATA(str) = conv->from( value )->to_string( ).
```
@@ -56,13 +56,13 @@ Method | Description
`^` All date/time conversions include `timezone` as an optional parameter (default `UTC`).
-`*` String and xstring conversions include `encodinng` (default `UTF8`) and `ignore_errors` as optional parameters.
+`*` String and xstring conversions include `encoding` (default `UTF8`) and `ignore_errors` as optional parameters.
Constructor options:
Option | Description
-------|------------
-`trim_strings` | Remove trailing spaces when convertin to string (including intermediate conversions)
+`trim_strings` | Remove trailing spaces when converting to string (including intermediate conversions)
## Prerequisites
@@ -82,7 +82,7 @@ All contributions are welcome! Read our [Contribution Guidelines](https://github
You can install the developer version of ABAP CONVERT using [abapGit](https://github.com/abapGit/abapGit) either by creating a new online repository for `https://github.com/abapPM/ABAP-Convert`.
-Recommended SAP package: `$CONVERT`
+Recommended SAP package: `/APMG/CONVERT`
## About
@@ -90,4 +90,4 @@ Made with ❤ in Canada
Copyright 2025 apm.to Inc.
-Follow [@marcf.be](https://bsky.app/profile/marcf.be) on Blueksy and [@marcfbe](https://linkedin.com/in/marcfbe) or LinkedIn
+Follow [@marcf.be](https://bsky.app/profile/marcf.be) on Bluesky and [@marcfbe](https://linkedin.com/in/marcfbe) or LinkedIn
diff --git a/abaplint.json b/abaplint.json
index e87e1e7..10233c9 100644
--- a/abaplint.json
+++ b/abaplint.json
@@ -37,6 +37,7 @@
"CLAS",
"DEVC",
"INTF",
+ "NSPC",
"PROG"
]
},
@@ -148,7 +149,7 @@
"message_exists": true,
"method_implemented_twice": true,
"method_length": {
- "exclude": ["zcl_convert.local_imp"]
+ "exclude": ["#apmg#cl_convert.local_imp.clas.abap"]
},
"method_overwrites_builtin": true,
"method_parameter_names": false,
@@ -182,7 +183,7 @@
"aqqu": "^Z",
"aqsg": "^Z",
"auth": "^Z",
- "clas": "^ZC(L|X)\\_",
+ "clas": "^/APMG/C(L|X)_CONVERT",
"cmod": "^Z",
"doma": "^Z",
"dtel": "^Z",
@@ -194,7 +195,7 @@
"idoc": "^Z",
"ignoreNames": [],
"ignorePatterns": [],
- "intf": "^ZIF\\_",
+ "intf": "^/APMG/IF_CONVERT",
"msag": "^Z",
"patternKind": "required",
"pinf": "^Z",
@@ -226,7 +227,7 @@
"prefer_inline": true,
"prefer_is_not": true,
"prefer_pragmas": true,
- "prefer_raise_exception_new": true,
+ "prefer_raise_exception_new": false,
"prefer_returning_to_exporting": true,
"prefer_xsdbool": true,
"preferred_compare_operator": true,
@@ -281,7 +282,7 @@
"xml_consistency": true
},
"syntax": {
- "errorNamespace": "^(Z|Y|LCL_|TY_|LIF_)",
+ "errorNamespace": "^(/APMG/|LCL_|TY_|LIF_)",
"globalConstants": [],
"globalMacros": [],
"version": "v754"
diff --git a/package.abap.json b/package.abap.json
index c792774..ed95d78 100644
--- a/package.abap.json
+++ b/package.abap.json
@@ -1,16 +1,18 @@
{
- "name": "xxx",
+ "name": "convert",
"version": "1.0.0",
- "description": "XXX",
+ "description": "Convert any data type",
"type": "module",
"keywords": [
"abap",
"apm",
- "module"
+ "module",
+ "conversion",
+ "data types"
],
"homepage": "https://abappm.com",
"bugs": {
- "url": "https://github.com/abapPM/ABAP-XXX"
+ "url": "https://github.com/abapPM/ABAP-Convert"
},
"license": "MIT",
"author": {
@@ -26,7 +28,7 @@
}
],
"repository": {
- "url": "https://github.com/abapPM/ABAP-XXX"
+ "url": "https://github.com/abapPM/ABAP-Convert"
},
"funding": {
"type": "github",
diff --git a/src/#apmg#.nspc.xml b/src/#apmg#.nspc.xml
new file mode 100644
index 0000000..5ecb4d0
--- /dev/null
+++ b/src/#apmg#.nspc.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+ /APMG/
+ 41813564412598342476
+
+
+ E
+ apm
+ apm.to Inc.
+
+
+
+
diff --git a/src/zcl_convert.clas.abap b/src/#apmg#cl_convert.clas.abap
similarity index 78%
rename from src/zcl_convert.clas.abap
rename to src/#apmg#cl_convert.clas.abap
index 7bf1ebb..d04dbb1 100644
--- a/src/zcl_convert.clas.abap
+++ b/src/#apmg#cl_convert.clas.abap
@@ -1,4 +1,4 @@
-CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
+CLASS /apmg/cl_convert DEFINITION PUBLIC CREATE PUBLIC.
************************************************************************
* Convert Any Data Type
@@ -9,7 +9,6 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
" TODO!: Add test cases for 100% coverage
" FUTURE: Add to_codepage conversions CL_ABAP_CODEPAGE
- " FUTURE?: Replace exceptions with CX_SY_CONVERSION_...
PUBLIC SECTION.
@@ -41,7 +40,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
!data TYPE any
!options TYPE ty_options OPTIONAL
RETURNING
- VALUE(result) TYPE REF TO zcl_convert.
+ VALUE(result) TYPE REF TO /apmg/cl_convert.
METHODS constructor
IMPORTING
@@ -52,13 +51,13 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
IMPORTING
!data TYPE any
RETURNING
- VALUE(result) TYPE REF TO zcl_convert.
+ VALUE(result) TYPE REF TO /apmg/cl_convert.
METHODS to_char
CHANGING
!result TYPE csequence
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_date
IMPORTING
@@ -66,7 +65,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE d
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_time
IMPORTING
@@ -74,7 +73,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE t
RAISING
- zcx_error ##NEEDED.
+ /apmg/cx_error ##NEEDED.
METHODS to_timestamp
IMPORTING
@@ -82,7 +81,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE timestamp
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_timestampl
IMPORTING
@@ -90,7 +89,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE timestampl
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_utclong
IMPORTING
@@ -98,7 +97,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE utclong
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_epoch
IMPORTING
@@ -107,7 +106,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE string
RAISING
- zcx_error ##NEEDED.
+ /apmg/cx_error ##NEEDED.
METHODS to_unixtime
IMPORTING
@@ -115,7 +114,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE string
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_isotime
IMPORTING
@@ -123,7 +122,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE string
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_string
IMPORTING
@@ -132,13 +131,13 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE string
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_hex
CHANGING
!result TYPE xsequence
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_xstring
IMPORTING
@@ -147,49 +146,49 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
RETURNING
VALUE(result) TYPE xstring
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_int
RETURNING
VALUE(result) TYPE i
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_int8
RETURNING
VALUE(result) TYPE int8
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_packed
CHANGING
!result TYPE p
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_float
RETURNING
VALUE(result) TYPE f
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_decfloat16
RETURNING
VALUE(result) TYPE decfloat16
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_decfloat34
RETURNING
VALUE(result) TYPE decfloat34
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_bool
RETURNING
VALUE(result) TYPE abap_bool
RAISING
- zcx_error.
+ /apmg/cx_error.
METHODS to_typekind
RETURNING
@@ -200,6 +199,7 @@ CLASS zcl_convert DEFINITION PUBLIC CREATE PUBLIC.
!is_long TYPE abap_bool DEFAULT abap_false
RETURNING
VALUE(result) TYPE string.
+
PROTECTED SECTION.
PRIVATE SECTION.
@@ -217,7 +217,7 @@ ENDCLASS.
-CLASS zcl_convert IMPLEMENTATION.
+CLASS /apmg/cl_convert IMPLEMENTATION.
METHOD constructor.
@@ -240,7 +240,7 @@ CLASS zcl_convert IMPLEMENTATION.
METHOD from.
GET REFERENCE OF data INTO data_ref.
- typekind = cl_abap_typedescr=>describe_by_data_ref( data_ref )->type_kind.
+ typekind = cl_abap_typedescr=>describe_by_data( data )->type_kind.
result = me.
@@ -280,7 +280,7 @@ CLASS zcl_convert IMPLEMENTATION.
result = xsdbool( IS NOT INITIAL ).
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'bool' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'bool' ).
ENDCASE.
ENDMETHOD.
@@ -311,15 +311,15 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(string_data) = to_string( ).
result = string_data.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'char' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'char' ).
ENDTRY.
IF condense( result ) <> condense( string_data ).
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = 'Data is longer than target variable'.
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'char' ).
ENDIF.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'char' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'char' ).
ENDCASE.
ENDMETHOD.
@@ -338,7 +338,7 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = CONV d( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'date' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'date' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_packed.
@@ -346,11 +346,11 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
CONVERT TIME STAMP TIME ZONE timezone INTO DATE result.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'date' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'date' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'date' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'date' ).
ENDCASE.
ENDMETHOD.
@@ -362,7 +362,7 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(decfloat34) = to_decfloat34( ).
result = CONV decfloat16( decfloat34 ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'decfloat16' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'decfloat16' ).
ENDTRY.
ENDMETHOD.
@@ -388,7 +388,7 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = CONV decfloat34( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'decfloat34' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'decfloat34' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_char
@@ -403,11 +403,11 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(string_data) = to_string( ).
result = CONV decfloat34( string_data ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'decfloat34' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'decfloat34' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'decfloat34' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'decfloat34' ).
ENDCASE.
ENDMETHOD.
@@ -421,14 +421,15 @@ CLASS zcl_convert IMPLEMENTATION.
TYPES ty_ms TYPE n LENGTH 3.
IF millisec < 0 OR millisec > 999.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = 'Milliseconds must be between 0 and 999'.
+ " Milliseconds must be between 0 and 999
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'epoch' ).
ENDIF.
TRY.
DATA(ms) = CONV ty_ms( millisec ).
result = to_unixtime( ) && ms.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'epoch' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'epoch' ).
ENDTRY.
ENDMETHOD.
@@ -454,7 +455,7 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = CONV f( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'float' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'float' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_char
@@ -469,11 +470,11 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(string_data) = to_string( ).
result = CONV f( string_data ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'float' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'float' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'float' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'float' ).
ENDCASE.
ENDMETHOD.
@@ -485,11 +486,11 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(xstring_data) = to_xstring( ).
result = xstring_data.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'hex' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'hex' ).
ENDTRY.
IF result <> xstring_data.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = 'Data is longer than target variable'.
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'hex' ).
ENDIF.
ENDMETHOD.
@@ -501,7 +502,7 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(int8) = to_int8( ).
result = CONV i( int8 ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'integer' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'integer' ).
ENDTRY.
ENDMETHOD.
@@ -529,7 +530,7 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = CONV int8( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'int8' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'int8' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_char
@@ -542,11 +543,11 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(string_data) = to_string( ).
result = CONV int8( string_data ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'int8' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'int8' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'int8' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'int8' ).
ENDCASE.
ENDMETHOD.
@@ -562,7 +563,7 @@ CLASS zcl_convert IMPLEMENTATION.
result = |{ timestampl TIMESTAMP = ISO }|.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'isotime' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'isotime' ).
ENDTRY.
ENDMETHOD.
@@ -590,7 +591,7 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = .
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'packed' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'packed' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_char
@@ -605,11 +606,11 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(string_data) = to_string( ).
result = string_data.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'packed' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'packed' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'packed' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'packed' ).
ENDCASE.
ENDMETHOD.
@@ -645,7 +646,7 @@ CLASS zcl_convert IMPLEMENTATION.
result = CONV string( ).
" FIXME? Might have a trailing space. Should we trim it?
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'string' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'string' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_hex
@@ -667,10 +668,8 @@ CLASS zcl_convert IMPLEMENTATION.
iv_xstring = xstring_data
RECEIVING
rv_string = result.
- CATCH cx_root INTO DATA(error).
- RAISE EXCEPTION TYPE zcx_error_text
- EXPORTING
- text = _conversion_error( 'string' ) && error->get_text( ).
+ CATCH cx_root.
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'string' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_table.
@@ -684,11 +683,11 @@ CLASS zcl_convert IMPLEMENTATION.
table =
sep = cl_abap_char_utilities=>newline ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'string' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'string' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'string' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'string' ).
ENDCASE.
IF options-trim_strings = abap_true.
@@ -712,11 +711,11 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = CONV t( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'time' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'time' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'time' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'time' ).
ENDCASE.
ENDMETHOD.
@@ -728,11 +727,11 @@ CLASS zcl_convert IMPLEMENTATION.
DATA(timestampl) = to_timestampl( timezone ).
DATA(frac) = frac( timestampl ).
IF frac <> 0.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'timestamp' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'timestamp' ).
ENDIF.
result = timestampl ##TYPE.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'timestamp' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'timestamp' ).
ENDTRY.
ENDMETHOD.
@@ -751,7 +750,7 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = CONV timestampl( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'timestampl' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'timestampl' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_date.
@@ -759,7 +758,7 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
CONVERT DATE INTO TIME STAMP result TIME ZONE timezone.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'timestampl' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'timestampl' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_utclong.
@@ -767,11 +766,11 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = cl_abap_tstmp=>utclong2tstmp( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'timestampl' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'timestampl' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'timestampl' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'timestampl' ).
ENDCASE.
ENDMETHOD.
@@ -815,7 +814,7 @@ CLASS zcl_convert IMPLEMENTATION.
result = condense( CONV string( unixtime ) ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'unixtime' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'unixtime' ).
ENDTRY.
ENDMETHOD.
@@ -836,7 +835,7 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
result = CONV utclong( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'utclong' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'utclong' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_date.
@@ -844,11 +843,11 @@ CLASS zcl_convert IMPLEMENTATION.
TRY.
CONVERT DATE TIME t TIME ZONE timezone INTO UTCLONG result.
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'utclong' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'utclong' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'utclong' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'utclong' ).
ENDCASE.
ENDMETHOD.
@@ -866,15 +865,14 @@ CLASS zcl_convert IMPLEMENTATION.
OR cl_abap_typedescr=>typekind_xstring.
IF encoding IS NOT INITIAL.
- RAISE EXCEPTION TYPE zcx_error_text
- EXPORTING
- text = 'Cannot convert encoding since data is already in hex format'.
+ " Cannot convert encoding since data is already in hex format
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'xstring' ).
ENDIF.
TRY.
result = CONV xstring( ).
CATCH cx_root.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'xstring' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'xstring' ).
ENDTRY.
WHEN cl_abap_typedescr=>typekind_char
@@ -909,14 +907,12 @@ CLASS zcl_convert IMPLEMENTATION.
iv_string = string_data
RECEIVING
rv_xstring = result.
- CATCH cx_root INTO DATA(error).
- RAISE EXCEPTION TYPE zcx_error_text
- EXPORTING
- text = _conversion_error( 'xstring' ) && error->get_text( ).
+ CATCH cx_root.
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'xstring' ).
ENDTRY.
WHEN OTHERS.
- RAISE EXCEPTION TYPE zcx_error_text EXPORTING text = _conversion_error( 'xstring' ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = _conversion_error( 'xstring' ).
ENDCASE.
ENDMETHOD.
diff --git a/src/zcl_convert.clas.locals_imp.abap b/src/#apmg#cl_convert.clas.locals_imp.abap
similarity index 90%
rename from src/zcl_convert.clas.locals_imp.abap
rename to src/#apmg#cl_convert.clas.locals_imp.abap
index 62109df..a712e41 100644
--- a/src/zcl_convert.clas.locals_imp.abap
+++ b/src/#apmg#cl_convert.clas.locals_imp.abap
@@ -13,13 +13,13 @@ CLASS lcl_utils DEFINITION.
IMPORTING
!encoding TYPE string
RAISING
- zcx_error.
+ /apmg/cx_error.
CLASS-METHODS validate_timezone
IMPORTING
!timezone TYPE string
RAISING
- zcx_error.
+ /apmg/cx_error.
CLASS-METHODS is_timestamp
IMPORTING
@@ -53,13 +53,13 @@ CLASS lcl_utils IMPLEMENTATION.
ENDIF.
WHEN cl_abap_typedescr=>typekind_decfloat.
IF is_long = abap_true.
- result = 'decimal loating point number'(105).
+ result = 'decimal floating point number'(105).
ELSE.
result = 'decfloat'(005).
ENDIF.
WHEN cl_abap_typedescr=>typekind_decfloat16.
IF is_long = abap_true.
- result = 'decimal loating point number with 16 places'(106).
+ result = 'decimal floating point number with 16 places'(106).
ELSE.
result = 'decfloat16'(006).
ENDIF.
@@ -178,16 +178,16 @@ CLASS lcl_utils IMPLEMENTATION.
METHOD validate_encoding.
CASE encoding.
- WHEN zcl_convert=>c_encoding-ascii
- OR zcl_convert=>c_encoding-utf_8
- OR zcl_convert=>c_encoding-utf_16_be
- OR zcl_convert=>c_encoding-utf_16_le
- OR zcl_convert=>c_encoding-utf_32_be
- OR zcl_convert=>c_encoding-utf_32_le
+ WHEN /apmg/cl_convert=>c_encoding-ascii
+ OR /apmg/cl_convert=>c_encoding-utf_8
+ OR /apmg/cl_convert=>c_encoding-utf_16_be
+ OR /apmg/cl_convert=>c_encoding-utf_16_le
+ OR /apmg/cl_convert=>c_encoding-utf_32_be
+ OR /apmg/cl_convert=>c_encoding-utf_32_le
OR ''.
RETURN.
WHEN OTHERS.
- zcx_error=>raise( |Invalid encoding: { encoding }| ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = |Unkown encoding: { encoding }|.
ENDCASE.
ENDMETHOD.
@@ -197,7 +197,7 @@ CLASS lcl_utils IMPLEMENTATION.
SELECT COUNT(*) FROM ttzz INTO @DATA(count)
WHERE tzone = @timezone AND flagactive = @abap_true.
IF count <> 1.
- zcx_error=>raise( |Invalid timezone: { timezone }| ).
+ RAISE EXCEPTION TYPE /apmg/cx_error_text EXPORTING text = |Too many timezones|.
ENDIF.
ENDMETHOD.
diff --git a/src/zcl_convert.clas.testclasses.abap b/src/#apmg#cl_convert.clas.testclasses.abap
similarity index 79%
rename from src/zcl_convert.clas.testclasses.abap
rename to src/#apmg#cl_convert.clas.testclasses.abap
index a685979..7305740 100644
--- a/src/zcl_convert.clas.testclasses.abap
+++ b/src/#apmg#cl_convert.clas.testclasses.abap
@@ -38,53 +38,53 @@ CLASS ltcl_convert DEFINITION FOR TESTING RISK LEVEL HARMLESS
* END OF c_regex
DATA:
- i TYPE REF TO zcl_convert,
- i8 TYPE REF TO zcl_convert,
- f TYPE REF TO zcl_convert,
- d16 TYPE REF TO zcl_convert,
- d34 TYPE REF TO zcl_convert,
- p TYPE REF TO zcl_convert,
- c TYPE REF TO zcl_convert,
- c_number TYPE REF TO zcl_convert,
- n TYPE REF TO zcl_convert,
- str TYPE REF TO zcl_convert,
- str_number TYPE REF TO zcl_convert,
- str_float TYPE REF TO zcl_convert,
- str_date TYPE REF TO zcl_convert,
- str_time TYPE REF TO zcl_convert,
- str_timestamp TYPE REF TO zcl_convert,
- str_timestampl TYPE REF TO zcl_convert,
- d TYPE REF TO zcl_convert,
- t TYPE REF TO zcl_convert,
- x TYPE REF TO zcl_convert,
- xstr TYPE REF TO zcl_convert,
- timestamp TYPE REF TO zcl_convert,
- timestampl TYPE REF TO zcl_convert,
- utclong TYPE REF TO zcl_convert.
+ i TYPE REF TO /apmg/cl_convert,
+ i8 TYPE REF TO /apmg/cl_convert,
+ f TYPE REF TO /apmg/cl_convert,
+ d16 TYPE REF TO /apmg/cl_convert,
+ d34 TYPE REF TO /apmg/cl_convert,
+ p TYPE REF TO /apmg/cl_convert,
+ c TYPE REF TO /apmg/cl_convert,
+ c_number TYPE REF TO /apmg/cl_convert,
+ n TYPE REF TO /apmg/cl_convert,
+ str TYPE REF TO /apmg/cl_convert,
+ str_number TYPE REF TO /apmg/cl_convert,
+ str_float TYPE REF TO /apmg/cl_convert,
+ str_date TYPE REF TO /apmg/cl_convert,
+ str_time TYPE REF TO /apmg/cl_convert,
+ str_timestamp TYPE REF TO /apmg/cl_convert,
+ str_timestampl TYPE REF TO /apmg/cl_convert,
+ d TYPE REF TO /apmg/cl_convert,
+ t TYPE REF TO /apmg/cl_convert,
+ x TYPE REF TO /apmg/cl_convert,
+ xstr TYPE REF TO /apmg/cl_convert,
+ timestamp TYPE REF TO /apmg/cl_convert,
+ timestampl TYPE REF TO /apmg/cl_convert,
+ utclong TYPE REF TO /apmg/cl_convert.
METHODS:
setup,
- to_char FOR TESTING RAISING zcx_error,
- to_bool FOR TESTING RAISING zcx_error,
- to_date FOR TESTING RAISING zcx_error,
- to_decfloat16 FOR TESTING RAISING zcx_error,
- to_decfloat34 FOR TESTING RAISING zcx_error,
- to_epoch FOR TESTING RAISING zcx_error,
- to_float FOR TESTING RAISING zcx_error,
- to_hex FOR TESTING RAISING zcx_error,
- to_int FOR TESTING RAISING zcx_error,
- to_int8 FOR TESTING RAISING zcx_error,
- to_isotime FOR TESTING RAISING zcx_error,
- to_packed FOR TESTING RAISING zcx_error,
- to_string FOR TESTING RAISING zcx_error,
- to_time FOR TESTING RAISING zcx_error,
- to_timestamp FOR TESTING RAISING zcx_error,
- to_timestampl FOR TESTING RAISING zcx_error,
- to_typekind FOR TESTING RAISING zcx_error,
- to_typetext FOR TESTING RAISING zcx_error,
- to_unixtime FOR TESTING RAISING zcx_error,
- to_utclong FOR TESTING RAISING zcx_error,
- to_xstring FOR TESTING RAISING zcx_error.
+ to_char FOR TESTING RAISING /apmg/cx_error,
+ to_bool FOR TESTING RAISING /apmg/cx_error,
+ to_date FOR TESTING RAISING /apmg/cx_error,
+ to_decfloat16 FOR TESTING RAISING /apmg/cx_error,
+ to_decfloat34 FOR TESTING RAISING /apmg/cx_error,
+ to_epoch FOR TESTING RAISING /apmg/cx_error,
+ to_float FOR TESTING RAISING /apmg/cx_error,
+ to_hex FOR TESTING RAISING /apmg/cx_error,
+ to_int FOR TESTING RAISING /apmg/cx_error,
+ to_int8 FOR TESTING RAISING /apmg/cx_error,
+ to_isotime FOR TESTING RAISING /apmg/cx_error,
+ to_packed FOR TESTING RAISING /apmg/cx_error,
+ to_string FOR TESTING RAISING /apmg/cx_error,
+ to_time FOR TESTING RAISING /apmg/cx_error,
+ to_timestamp FOR TESTING RAISING /apmg/cx_error,
+ to_timestampl FOR TESTING RAISING /apmg/cx_error,
+ to_typekind FOR TESTING RAISING /apmg/cx_error,
+ to_typetext FOR TESTING RAISING /apmg/cx_error,
+ to_unixtime FOR TESTING RAISING /apmg/cx_error,
+ to_utclong FOR TESTING RAISING /apmg/cx_error,
+ to_xstring FOR TESTING RAISING /apmg/cx_error.
ENDCLASS.
@@ -127,25 +127,25 @@ CLASS ltcl_convert IMPLEMENTATION.
TRY.
i8->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
TRY.
f->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
TRY.
d16->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
TRY.
d34->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
cl_abap_unit_assert=>assert_equals(
@@ -155,7 +155,7 @@ CLASS ltcl_convert IMPLEMENTATION.
TRY.
c->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
cl_abap_unit_assert=>assert_equals(
@@ -169,7 +169,7 @@ CLASS ltcl_convert IMPLEMENTATION.
TRY.
str->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
cl_abap_unit_assert=>assert_equals(
@@ -191,25 +191,25 @@ CLASS ltcl_convert IMPLEMENTATION.
TRY.
xstr->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
TRY.
timestamp->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
TRY.
timestampl->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
TRY.
utclong->to_int( ).
cl_abap_unit_assert=>fail( ).
- CATCH zcx_error.
+ CATCH /apmg/cx_error.
ENDTRY.
ENDMETHOD.
diff --git a/src/zcl_convert.clas.xml b/src/#apmg#cl_convert.clas.xml
similarity index 97%
rename from src/zcl_convert.clas.xml
rename to src/#apmg#cl_convert.clas.xml
index b5e9b8b..cfb7af2 100644
--- a/src/zcl_convert.clas.xml
+++ b/src/#apmg#cl_convert.clas.xml
@@ -3,7 +3,7 @@
- ZCL_CONVERT
+ /APMG/CL_CONVERT
E
Converter
1
@@ -238,13 +238,13 @@
-
I
105
- decimal loating point number
+ decimal floating point number
50
-
I
106
- decimal loating point number with 16 places
+ decimal floating point number with 16 places
50
-