Merge branch 'main' into clone

This commit is contained in:
Domi Bigl 2022-07-28 20:22:32 +02:00 committed by GitHub
commit bdd33474a0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 213 additions and 410 deletions

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DATA>
<GROUP_ID>github.com/abap2xlsx/abap2xlsx</GROUP_ID>
<ARTIFACT_ID>abap2xlsx</ARTIFACT_ID>
<VERSION>7.15.0</VERSION>
<REPOSITORY_TYPE>abapGit</REPOSITORY_TYPE>
<GIT_URL>https://github.com/abap2xlsx/abap2xlsx.git</GIT_URL>
</DATA>
</asx:values>
</asx:abap>

11
abaplint-app.json Normal file
View File

@ -0,0 +1,11 @@
{
"configurations": {
"default": {
"filename": "./abaplint.json"
},
"steampunk": {
"filename": "./abaplint-steampunk.json",
"annotations": false
}
}
}

54
abaplint-steampunk.json Normal file
View File

@ -0,0 +1,54 @@
{
"global": {
"files": "/src/**/*.*",
"noIssues": ["/demos/", "/not_cloud/"]
},
"dependencies": [
{
"url": "https://github.com/abapedia/steampunk-2205-api",
"files": "/src/**/*.*"
}
],
"syntax": {
"version": "Cloud",
"errorNamespace": "."
},
"rules": {
"begin_end_names": {
"severity": "Warning"
},
"check_ddic": {
"severity": "Warning"
},
"check_include": {
"severity": "Warning"
},
"check_syntax": {
"severity": "Warning"
},
"global_class": {
"severity": "Warning"
},
"implement_methods": {
"severity": "Warning"
},
"method_implemented_twice": {
"severity": "Warning"
},
"parser_error": {
"severity": "Warning"
},
"parser_missing_space": {
"severity": "Warning"
},
"superclass_final": {
"severity": "Warning"
},
"unknown_types": {
"severity": "Warning"
},
"xml_consistency": {
"severity": "Warning"
}
}
}

View File

@ -19,10 +19,27 @@
"globalMacros": []
},
"rules": {
"align_parameters": false,
"cds_legacy_view": true,
"cds_parser_error": true,
"classic_exceptions_overlap": true,
"local_testclass_consistency": true,
"no_aliases": false,
"no_chained_assignment": false,
"unnecessary_pragma": false,
"unnecessary_chaining": false,
"superfluous_value": true,
"static_call_via_instance": false,
"slow_parameter_passing": false,
"prefer_corresponding": true,
"pragma_style": true,
"omit_preceding_zeros": true,
"no_inline_in_optional_branches": false,
"nrob_consistency": true,
"no_external_form_calls": true,
"constant_classes": true,
"cyclic_oo": false,
"many_parentheses": true,
"pragma_placement": true,
"unused_ddic": true,
"dangerous_statement": true,
"db_operation_in_loop": false,
@ -77,6 +94,7 @@
"avoid_use": {
"define": true,
"describeLines": false,
"testSeams": true,
"statics": false,
"defaultKey": false,
"break": true
@ -87,7 +105,6 @@
"check_comments": false,
"check_ddic": true,
"check_include": true,
"check_no_handler_pragma": true,
"check_syntax": true,
"check_text_elements": false,
"check_transformation_exists": true,
@ -117,7 +134,6 @@
"ignoreFunctionModuleName": false
},
"local_class_naming": false,
"local_testclass_location": true,
"main_file_contents": true,
"message_exists": false,
"msag_consistency": true,

View File

@ -1,165 +0,0 @@
abapGit changelog
=================
Legend
------
* : fixed
! : changed
+ : added
- : removed
2022-01-08 v7.15.0
------------------
! Refactor ABAP Cloud: change REFRESH to CLEAR
* Prevent row height zero
+ New parameter ip_columnrow in SET_CELL and other methods
! Refactor ABAP Cloud: remove use of DTEL SYLANGU and DTEL GUID_16
! Refactor ABAP Cloud: remove use of cl_abap_conv_out_ce=>uccpi
! Refactor ABAP Cloud: move converter classes to not_cloud package
+ Check demo regressions
! Refactor ABAP Cloud: change FLOAT to F
! Refactor ABAP Cloud: remove TYPE-POOLS statements
! Refactor ABAP Cloud: change SYTABIX to I
! Lint rule to reject commented code / commented code removed
+ Add column for photographer in zdemo_calendar
! Lint rule to reject code not in keyword_case upper
! Refactor ABAP Cloud: use new collection classes
+ Allow more than 255 sheets per workbook
! Refactor ABAP Cloud: Domain for ZEXCEL_SHEET_TITLE
* Demo WebDynpro: ICF, button text, MIME type
! Refactor ABAP Cloud: ddic, fix UUID and GUID_16
* Typo in code: hasehd -> hashed
! Refactor ABAP Cloud: MOVE statements
! Refactor ABAP Cloud: remove DTEL INTTYPE
* After BIND_TABLE no columns in object
+ Change_area_style (same as change_cell_style, but for area)
+ Customizable demo 25 + backend in demo 37
* Reflect new abap2xlsx project URL
* Fix enhancement categories of several structures
* Fix links after org. move
! Refactor method change_cell_style in zcl_excel_worksheet
* Correcting broken links after moving of repo
* Reader fails for workbook with chart
+ Worksheet columns right-to-left
* README.md, update urls
* Huge writer error height/hight and fit to page
! Refactor ABAP Cloud: remove use of DOMA INT2
! Refactor ABAP Cloud: remove use of DTEL DSTRING
* Huge reader reading cells multiple styles
! Pretty print
* Add exception handling
! Split convert_column2alpha
+ SET_AREA/SET_AREA_FORMULA: set value or formula for whole area instea… …
2021-11-11 v7.14.0
------------------
+ changelog
! Refactor ABAP Cloud: column width based on SAP font
! Refactor ABAP Cloud: DDIC references changed
! Refactor ABAP Cloud: collection classes
! Refactor: split unit tests into one method per case
! pretty print zcl_excel_worksheet
* SET_CELL_FORMULA: set formula even if cell was uninitialized
! Refactor: replace all macros with methods
+ Add ability to generate report from template
* Read range of print titles
+ Multiple Styles in One Cell ("rich text format")
+ Bind ALV with non-displayed SALV data
+ new feature "Ignored Errors"
* Ignore invalid Excel Table names
+ new feature "Calculated Columns"
* better error message for ZDEMO_EXCEL25
2021-10-11 v7.13.0
------------------
! zcl_excel_common: refactor unit tests
! Refactor: replace zcl_excel_aunit with cl_abap_unit_assert
! Refactor ABAP Cloud: DDIC references changed
* clear Style exporting parameter in GET_CELL
+ Conditional Formatting for Cells that "Begin With" and more
- Delete unused customui objects
* ZDEMO_EXCEL37 incorrect screen field labels
* SHIFT_FORMULA
! Refactor: replace macro with method in zcl_excel_style_number_format
* autofilter messed up if several sheets
* autofilter + filtering value, then read it, the filtering value is lost
* autofilter on row 2 is incorrectly set on row 1
! Refactor: change EXIT to RETURN, where applicable
! Refactor: zcl_excel_common: refactor STATICS to CLASS-DATA
* Writer: trailing spaces of cell values lost
! Refactor: move zexcel_s_org_rel to demos
! update to latest abapGit format
! abaplint to not change sy fields anymore
! Refactor: Do not change sy fields anymore
! abapGit diff says zdemo_calendar_classes has changed
! update abaplint configuration to latest
! Refactor: Move non-Cloud code to separate package (#795) …
* Reader: empty Excel date -> ABAP 00000000
2021-09-11 v7.12.0
------------------
! First draft of the contributing guidelines
! Refactor: remove usage of CHAR07 domain
2021-08-11 v7.11.0
------------------
! Pretty print on all source code
! Create coding-guidelines.md
! remove usage of CHAR08 DTEL
! remove usage of CHAR10 domain
! remove usage of OS_BOOLEAN
2021-07-11 v7.10.0
------------------
! remove unused DOMA
! Reader: wrong worksheet dimension
* GET_TABLE: support fields of type date
* Vietnamese, Emoji and other characters not rendered in old SAP versions
* SET_TABLE: support table headers with newline
* SET_CELL: support values with wildcard format like `_x0041_`
2021-06-11 v7.9.0
------------------
! update linter config to latest
+ Remove 15 chars. limit at encrypt password
+ Reader to read range of hyperlinks and new method SET_AREA_HYPERLINK
* Vietnamese, Emoji and other characters not rendered
* Update of ZDEMO_EXCEL31 to use CALCULATE_COLUMN_WIDTHS
! remove CHAR01
2021-05-11 v7.8.0
------------------
! remove "BOOLEAN" domain
! replace messages with ones from ZABAP2XLSX message class
2021-04-11 v7.7.0
------------------
! remove CHAR_02 domain
! abapGit format update
2021-03-11 v7.6.0
------------------
! AUnit warning zcl excel reader huge file "# au > "#au
! Remove doma ZEXCEL_BOOLE01
2021-02-11 v7.5.0
------------------
+ Possibility to get the fieldcatalog with mandt
! cleanup types in zif_excel_book_protection
2021-01-11 v7.4.0
------------------
! warning about SAPLink in documentation, and replace obsolete links in zangry_birds and zdemo_excel1
! remove XFELD usage
! Dynamic prefill of date in zdemo_calendar
2020-12-11 v7.3.0
------------------
* Fix in ZDEMO_EXCEL11: Field-symbol usage
! Update abapGit-installation.md
2020-11-11 v7.2.0
------------------
! Improve Documentaiton
! Fix package errors
+ Feature: Enable custom converters

View File

@ -4,7 +4,7 @@
## Procedure
Execute abapGit using the report **ZABAPGIT_FULL**, click on *New Online*, fill the field *Git repository URL* with *https://github.com/abap2xlsx/abap2xlsx.git*, package with *$abap2xlsx* if you just want to test. If you want to transport abap2xlsx to production then use a non local package, for example ZABAP2XLSX. Click *Create package* if the package doesn't exist yet. Then click *Clone online repo*.
Execute abapGit using the report **ZABAPGIT_STANDALONE**, click on *New Online*, fill the field *Git repository URL* with *https://github.com/abap2xlsx/abap2xlsx.git*, package with *$abap2xlsx* if you just want to test. If you want to transport abap2xlsx to production then use a non local package, for example ZABAP2XLSX. Click *Create package* if the package doesn't exist yet. Then click *Clone online repo*.
![abapGit New Online Repository](new-online-abap2xlsx.png)

View File

@ -0,0 +1,31 @@
# Publishing a new release
Let's create a release from time to time, every 1 or 2 months for instance, to contain enough changes, but not too much.
Below are the notes taken while publishing the release `7.15.0`.
Version numbering is based on [Semantic Versioning 2.0.0](https://semver.org/):
- `7`: a major release. NB: it will probably not change as we don't want to "make incompatible API changes".
- `15`: a minor release
- `0`: patch level (bug fixes)
Create a branch for this new release, change `zcl_excel_version` to indicate the new version number and push the changes to the repository
With GitHub Desktop (or any Git console or Git user interface), [add the tag](https://docs.github.com/en/desktop/contributing-and-collaborating-using-github-desktop/managing-commits/managing-tags) `7.15.0` to this branch.
Do a pull request.
Wait for approval/commit(s) merged into the master branch.
Now [create the release in GitHub](https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository#creating-a-release):
- Click "Releases"
- Click "Draft a new release"
- Click "Choose a tag"
- Type the title, click "Auto-generate release notes" and click "Preview" to verify; you should have a list with the following items, edit as required:
- `+`: new feature
- `*`: bug fix
- `!`: feature modification
- `-`: feature removed
- Click "Publish release"
- It's done, zip and tar.gz files are automatically assigned to the release
- The new release appears in the Code home page, with the changelog in the release page itself.

View File

@ -1,10 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DEVC" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DEVC>
<CTEXT>Spreadsheet Demo Reports</CTEXT>
</DEVC>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -1,32 +0,0 @@
CLASS zcl_excel_apack DEFINITION
PUBLIC
FINAL
CREATE PUBLIC .
PUBLIC SECTION.
INTERFACES if_apack_manifest.
METHODS: constructor.
ALIASES descriptor FOR if_apack_manifest~descriptor.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
CLASS zcl_excel_apack IMPLEMENTATION.
METHOD constructor.
descriptor-group_id = 'github.com/abap2xlsx/abap2xlsx'.
descriptor-artifact_id = 'abap2xlsx'.
descriptor-version = zcl_excel=>version.
descriptor-repository_type = 'abapGit'.
descriptor-git_url = 'https://github.com/abap2xlsx/abap2xlsx.git'.
ENDMETHOD.
ENDCLASS.

View File

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_CLAS" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<VSEOCLASS>
<CLSNAME>ZCL_EXCEL_APACK</CLSNAME>
<LANGU>E</LANGU>
<DESCRIPT>abap2xlsx version and dependencies</DESCRIPT>
<STATE>1</STATE>
<CLSCCINCL>X</CLSCCINCL>
<FIXPT>X</FIXPT>
<UNICODE>X</UNICODE>
</VSEOCLASS>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -701,7 +701,7 @@ CLASS zcl_excel_common IMPLEMENTATION.
ls_component TYPE abap_componentdescr,
lo_elemdescr TYPE REF TO cl_abap_elemdescr,
ls_dfies TYPE dfies,
l_position TYPE tabfdpos.
l_position LIKE ls_dfies-position.
"for DDIC structure get the info directly
IF io_struct->is_ddic_type( ) = abap_true.

View File

@ -5,15 +5,6 @@ CLASS zcl_excel_drawing DEFINITION
INHERITING FROM zcl_excel_base.
PUBLIC SECTION.
*"* public components of class ZCL_EXCEL_DRAWING
*"* do not include other source files here!!!
*"* protected components of class ZCL_EXCEL_DRAWING
*"* do not include other source files here!!!
*"* protected components of class ZCL_EXCEL_DRAWING
*"* do not include other source files here!!!
*"* protected components of class ZCL_EXCEL_DRAWING
*"* do not include other source files here!!!
CONSTANTS c_graph_pie TYPE zexcel_graph_type VALUE 1. "#EC NOTEXT
CONSTANTS c_graph_line TYPE zexcel_graph_type VALUE 2. "#EC NOTEXT
CONSTANTS c_graph_bars TYPE zexcel_graph_type VALUE 0. "#EC NOTEXT
@ -152,6 +143,8 @@ CLASS zcl_excel_drawing DEFINITION
DATA from_loc TYPE zexcel_drawing_location .
DATA to_loc TYPE zexcel_drawing_location .
DATA size TYPE zexcel_drawing_size .
CONSTANTS c_ixml_iid_element TYPE i VALUE 130.
ENDCLASS.
@ -468,7 +461,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
rval = lo_iterator.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
WHILE lo_node IS BOUND.
node3 ?= node2->find_from_name_ns( name = 'idx' uri = namespace-c ).
@ -504,7 +497,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
ip_sername = lv_sername.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
ENDWHILE.
"note: numCache avoided
@ -544,7 +537,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
rval = lo_iterator.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
WHILE lo_node IS BOUND.
zcl_excel_reader_2007=>fill_struct_from_attributes( EXPORTING ip_element = node2 CHANGING cp_structure = ls_prop ).
@ -660,7 +653,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
ENDIF.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
ENDWHILE.
@ -682,7 +675,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
rval = lo_iterator.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
WHILE lo_node IS BOUND.
node3 ?= node2->find_from_name_ns( name = 'idx' uri = namespace-c ).
@ -714,7 +707,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
ip_sername = lv_sername.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
ENDWHILE.
@ -764,7 +757,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
rval = lo_iterator.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
WHILE lo_node IS BOUND.
node3 ?= node2->find_from_name_ns( name = 'idx' uri = namespace-c ).
@ -804,7 +797,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
ip_sername = lv_sername.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
ENDWHILE.
"note: numCache avoided
@ -853,7 +846,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
rval = lo_iterator.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
WHILE lo_node IS BOUND.
zcl_excel_reader_2007=>fill_struct_from_attributes( EXPORTING ip_element = node2 CHANGING cp_structure = ls_prop ).
@ -965,7 +958,7 @@ CLASS zcl_excel_drawing IMPLEMENTATION.
ENDIF.
lo_node = lo_iterator->get_next( ).
IF lo_node IS BOUND.
node2 ?= lo_node->query_interface( ixml_iid_element ).
node2 ?= lo_node->query_interface( c_ixml_iid_element ).
ENDIF.
ENDWHILE.
WHEN OTHERS.

View File

@ -282,32 +282,32 @@ CLASS zcl_excel_reader_2007 DEFINITION
VALUE(rv_style_guid) TYPE zexcel_cell_style .
METHODS load_theme
IMPORTING
VALUE(iv_path) TYPE string
!ip_excel TYPE REF TO zcl_excel
iv_path TYPE string
!ip_excel TYPE REF TO zcl_excel
RAISING
zcx_excel .
CONSTANTS: BEGIN OF namespace,
x14ac TYPE string VALUE 'http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac',
vba_project TYPE string VALUE 'http://schemas.microsoft.com/office/2006/relationships/vbaProject', "#EC NEEDED for future incorporation of XLSM-reader
c TYPE string VALUE 'http://schemas.openxmlformats.org/drawingml/2006/chart',
a TYPE string VALUE 'http://schemas.openxmlformats.org/drawingml/2006/main',
xdr TYPE string VALUE 'http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing',
mc TYPE string VALUE 'http://schemas.openxmlformats.org/markup-compatibility/2006',
r TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',
chart TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart',
drawing TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing',
hyperlink TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink',
image TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image',
office_document TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument',
printer_settings TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/printerSettings',
shared_strings TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings',
styles TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles',
theme TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme',
worksheet TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet',
relationships TYPE string VALUE 'http://schemas.openxmlformats.org/package/2006/relationships',
core_properties TYPE string VALUE 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties',
main TYPE string VALUE 'http://schemas.openxmlformats.org/spreadsheetml/2006/main',
x14ac TYPE string VALUE 'http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac',
vba_project TYPE string VALUE 'http://schemas.microsoft.com/office/2006/relationships/vbaProject', "#EC NEEDED for future incorporation of XLSM-reader
c TYPE string VALUE 'http://schemas.openxmlformats.org/drawingml/2006/chart',
a TYPE string VALUE 'http://schemas.openxmlformats.org/drawingml/2006/main',
xdr TYPE string VALUE 'http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing',
mc TYPE string VALUE 'http://schemas.openxmlformats.org/markup-compatibility/2006',
r TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships',
chart TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart',
drawing TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing',
hyperlink TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink',
image TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image',
office_document TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument',
printer_settings TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/printerSettings',
shared_strings TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings',
styles TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles',
theme TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme',
worksheet TYPE string VALUE 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet',
relationships TYPE string VALUE 'http://schemas.openxmlformats.org/package/2006/relationships',
core_properties TYPE string VALUE 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties',
main TYPE string VALUE 'http://schemas.openxmlformats.org/spreadsheetml/2006/main',
END OF namespace.
PRIVATE SECTION.
@ -4165,7 +4165,7 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION.
*--------------------------------------------------------------------*
* §3 Cycle through the Relationship Tags and use the ones we need
*--------------------------------------------------------------------*
lo_node ?= lo_rels->find_from_name_ns( name = 'Relationship' uri = namespace-relationships ). "#EC NOTEXT
lo_node ?= lo_rels->find_from_name_ns( name = 'Relationship' uri = namespace-relationships ). "#EC NOTEXT
WHILE lo_node IS BOUND.
fill_struct_from_attributes( EXPORTING

View File

@ -30,12 +30,12 @@ CLASS zcl_excel_theme DEFINITION
VALUE(iv_syscolorlast) TYPE zcl_excel_theme_color_scheme=>t_srgb OPTIONAL .
METHODS set_color_scheme_name
IMPORTING
VALUE(iv_name) TYPE string .
iv_name TYPE string .
METHODS set_font
IMPORTING
VALUE(iv_type) TYPE string
VALUE(iv_script) TYPE string
VALUE(iv_typeface) TYPE string .
iv_type TYPE string
iv_script TYPE string
iv_typeface TYPE string .
METHODS set_latin_font
IMPORTING
VALUE(iv_type) TYPE string

View File

@ -44,10 +44,10 @@ CLASS zcl_excel_theme_color_scheme DEFINITION
!io_color_scheme TYPE REF TO if_ixml_element .
METHODS set_color
IMPORTING
VALUE(iv_type) TYPE string
VALUE(iv_srgb) TYPE t_srgb OPTIONAL
VALUE(iv_syscolorname) TYPE string OPTIONAL
VALUE(iv_syscolorlast) TYPE t_srgb .
iv_type TYPE string
iv_srgb TYPE t_srgb OPTIONAL
iv_syscolorname TYPE string OPTIONAL
iv_syscolorlast TYPE t_srgb .
METHODS build_xml
IMPORTING
!io_document TYPE REF TO if_ixml_document .

View File

@ -52,7 +52,7 @@ CLASS zcl_excel_theme_font_scheme DEFINITION
!io_font_scheme TYPE REF TO if_ixml_element .
METHODS set_name
IMPORTING
VALUE(iv_name) TYPE string .
iv_name TYPE string .
METHODS build_xml
IMPORTING
!io_document TYPE REF TO if_ixml_document .

View File

@ -93,7 +93,6 @@ CLASS zcl_excel_worksheet DEFINITION
DATA sheet_setup TYPE REF TO zcl_excel_sheet_setup .
DATA show_gridlines TYPE zexcel_show_gridlines READ-ONLY VALUE abap_true ##NO_TEXT.
DATA show_rowcolheaders TYPE zexcel_show_gridlines READ-ONLY VALUE abap_true ##NO_TEXT.
DATA styles TYPE zexcel_t_sheet_style .
DATA tabcolor TYPE zexcel_s_tabcolor READ-ONLY .
DATA column_formulas TYPE mty_th_column_formula READ-ONLY .
CLASS-DATA:
@ -2969,14 +2968,18 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
DATA: lt_field_catalog TYPE zexcel_t_fieldcatalog,
lv_value_lowercase TYPE string,
lv_scrtext_l_initial TYPE scrtext_l,
lv_long_text TYPE string,
lv_max_length TYPE i,
lv_temp_length TYPE i,
lv_syindex TYPE c LENGTH 3,
lt_column_name_buffer TYPE SORTED TABLE OF string WITH UNIQUE KEY table_line.
FIELD-SYMBOLS: <ls_field_catalog> TYPE zexcel_s_fieldcatalog,
<scrtxt1> TYPE any,
<scrtxt2> TYPE any,
<scrtxt3> TYPE any.
<scrtxt1> TYPE any,
<scrtxt2> TYPE any,
<scrtxt3> TYPE any.
" Due restrinction of new table object we cannot have two column with the same name
" Due to restrictions in new table object we cannot have two columns with the same name
" Check if a column with the same name exists, if exists add a counter
" If no medium description is provided we try to use small or long
@ -3013,6 +3016,8 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
<ls_field_catalog>-scrtext_l = 'Column'. " default value as Excel does
ENDIF.
lv_scrtext_l_initial = <ls_field_catalog>-scrtext_l.
DESCRIBE FIELD <ls_field_catalog>-scrtext_l LENGTH lv_max_length IN CHARACTER MODE.
DO.
lv_value_lowercase = <ls_field_catalog>-scrtext_l.
TRANSLATE lv_value_lowercase TO LOWER CASE.
@ -3022,7 +3027,14 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
EXIT.
ELSE.
lv_syindex = sy-index.
CONCATENATE <ls_field_catalog>-scrtext_l lv_syindex INTO <ls_field_catalog>-scrtext_l.
CONCATENATE lv_scrtext_l_initial lv_syindex INTO lv_long_text.
IF strlen( lv_long_text ) <= lv_max_length.
<ls_field_catalog>-scrtext_l = lv_long_text.
ELSE.
lv_temp_length = strlen( lv_scrtext_l_initial ) - 1.
lv_scrtext_l_initial = substring( val = lv_scrtext_l_initial len = lv_temp_length ).
CONCATENATE lv_scrtext_l_initial lv_syindex INTO <ls_field_catalog>-scrtext_l.
ENDIF.
ENDIF.
ENDDO.
@ -3136,7 +3148,7 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
rv_guid = ip_style_or_guid.
ELSE.
RAISE EXCEPTION TYPE zcx_excel EXPORTING error = 'IP_GUID type must be either REF TO zcl_excel_tyle or zexcel_cell_style'.
RAISE EXCEPTION TYPE zcx_excel EXPORTING error = 'IP_GUID type must be either REF TO zcl_excel_style or zexcel_cell_style'.
ENDIF.
ENDMETHOD.
@ -3690,6 +3702,9 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
* If not, use default
DATA: lo_format_code_datetime TYPE zexcel_number_format.
DATA: stylemapping TYPE zexcel_s_stylemapping.
IF <fs_sheet_content>-cell_style IS INITIAL.
<fs_sheet_content>-cell_style = me->excel->get_default_style( ).
ENDIF.
CASE lv_value_type.
WHEN cl_abap_typedescr=>typekind_date.
TRY.

View File

@ -1101,18 +1101,6 @@
<LANGU>I</LANGU>
<DESCRIPT>Show Gridlines</DESCRIPT>
</SEOCOMPOTX>
<SEOCOMPOTX>
<CLSNAME>ZCL_EXCEL_WORKSHEET</CLSNAME>
<CMPNAME>STYLES</CMPNAME>
<LANGU>E</LANGU>
<DESCRIPT>Sheet style table type</DESCRIPT>
</SEOCOMPOTX>
<SEOCOMPOTX>
<CLSNAME>ZCL_EXCEL_WORKSHEET</CLSNAME>
<CMPNAME>STYLES</CMPNAME>
<LANGU>I</LANGU>
<DESCRIPT>Sheet style table type</DESCRIPT>
</SEOCOMPOTX>
<SEOCOMPOTX>
<CLSNAME>ZCL_EXCEL_WORKSHEET</CLSNAME>
<CMPNAME>STYLES_COND</CMPNAME>

View File

@ -415,7 +415,7 @@ CLASS zcl_excel_writer_huge_file IMPLEMENTATION.
IF lv_freeze_cell_column > 1.
lv_value = lv_freeze_cell_column - 1.
l_worksheet-xsplit = lv_freeze_cell_row - 1.
l_worksheet-xsplit = lv_freeze_cell_column - 1.
ENDIF.
lv_freeze_cell_column_alpha = zcl_excel_common=>convert_column2alpha( ip_column = lv_freeze_cell_column ).

View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_DTEL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD04V>
<ROLLNAME>ZEXCEL_FIELDNAME</ROLLNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<HEADLEN>30</HEADLEN>
<SCRLEN1>10</SCRLEN1>
<SCRLEN2>20</SCRLEN2>
<SCRLEN3>40</SCRLEN3>
<DDTEXT>Field Name</DDTEXT>
<REPTEXT>Field Name</REPTEXT>
<SCRTEXT_S>Field Name</SCRTEXT_S>
<SCRTEXT_M>Field Name</SCRTEXT_M>
<SCRTEXT_L>Field Name</SCRTEXT_L>
<DTELMASTER>E</DTELMASTER>
<DATATYPE>CHAR</DATATYPE>
<LENG>000030</LENG>
<OUTPUTLEN>000030</OUTPUTLEN>
</DD04V>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -18,7 +18,7 @@
</DD03P>
<DD03P>
<FIELDNAME>COLUMNNAME</FIELDNAME>
<ROLLNAME>FIELDNAME</ROLLNAME>
<ROLLNAME>ZEXCEL_FIELDNAME</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>

View File

@ -20,15 +20,13 @@
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ROLLNAME>FIELDNAME</ROLLNAME>
<CHECKTABLE>DD03L</CHECKTABLE>
<ROLLNAME>ZEXCEL_FIELDNAME</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<SHLPORIGIN>P</SHLPORIGIN>
<COMPTYPE>E</COMPTYPE>
</DD03P>
<DD03P>
<FIELDNAME>COLUMNNAME</FIELDNAME>
<ROLLNAME>FIELDNAME</ROLLNAME>
<ROLLNAME>ZEXCEL_FIELDNAME</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
@ -174,54 +172,6 @@
</DD03P>
</DD03P_TABLE>
<DD05M_TABLE>
<DD05M>
<FIELDNAME>FIELDNAME</FIELDNAME>
<FORTABLE>ZEXCEL_S_CONVERTER_FCAT</FORTABLE>
<FORKEY>TABNAME</FORKEY>
<CHECKTABLE>DD03L</CHECKTABLE>
<CHECKFIELD>TABNAME</CHECKFIELD>
<PRIMPOS>0001</PRIMPOS>
<DOMNAME>AS4TAB</DOMNAME>
<DATATYPE>CHAR</DATATYPE>
</DD05M>
<DD05M>
<FIELDNAME>FIELDNAME</FIELDNAME>
<FORTABLE>ZEXCEL_S_CONVERTER_FCAT</FORTABLE>
<FORKEY>FIELDNAME</FORKEY>
<CHECKTABLE>DD03L</CHECKTABLE>
<CHECKFIELD>FIELDNAME</CHECKFIELD>
<PRIMPOS>0002</PRIMPOS>
<DOMNAME>FDNAME</DOMNAME>
<DATATYPE>CHAR</DATATYPE>
</DD05M>
<DD05M>
<FIELDNAME>FIELDNAME</FIELDNAME>
<FORTABLE>&apos;A&apos;</FORTABLE>
<CHECKTABLE>DD03L</CHECKTABLE>
<CHECKFIELD>AS4LOCAL</CHECKFIELD>
<PRIMPOS>0003</PRIMPOS>
<DOMNAME>AS4LOCAL</DOMNAME>
<DATATYPE>CHAR</DATATYPE>
</DD05M>
<DD05M>
<FIELDNAME>FIELDNAME</FIELDNAME>
<FORTABLE>&apos;0000&apos;</FORTABLE>
<CHECKTABLE>DD03L</CHECKTABLE>
<CHECKFIELD>AS4VERS</CHECKFIELD>
<PRIMPOS>0004</PRIMPOS>
<DOMNAME>AS4VERS</DOMNAME>
<DATATYPE>NUMC</DATATYPE>
</DD05M>
<DD05M>
<FIELDNAME>FIELDNAME</FIELDNAME>
<FORTABLE>ZEXCEL_S_CONVERTER_FCAT</FORTABLE>
<FORKEY>POSITION</FORKEY>
<CHECKTABLE>DD03L</CHECKTABLE>
<CHECKFIELD>POSITION</CHECKFIELD>
<PRIMPOS>0005</PRIMPOS>
<DOMNAME>AS4POS</DOMNAME>
<DATATYPE>NUMC</DATATYPE>
</DD05M>
<DD05M>
<FIELDNAME>TABNAME</FIELDNAME>
<FORTABLE>ZEXCEL_S_CONVERTER_FCAT</FORTABLE>
@ -252,10 +202,6 @@
</DD05M>
</DD05M_TABLE>
<DD08V_TABLE>
<DD08V>
<FIELDNAME>FIELDNAME</FIELDNAME>
<CHECKTABLE>DD03L</CHECKTABLE>
</DD08V>
<DD08V>
<FIELDNAME>TABNAME</FIELDNAME>
<CHECKTABLE>DD02L</CHECKTABLE>

View File

@ -18,7 +18,7 @@
</DD03P>
<DD03P>
<FIELDNAME>COLUMNNAME</FIELDNAME>
<ROLLNAME>FIELDNAME</ROLLNAME>
<ROLLNAME>ZEXCEL_FIELDNAME</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>

View File

@ -19,7 +19,7 @@
</DD03P>
<DD03P>
<FIELDNAME>FIELDNAME</FIELDNAME>
<ROLLNAME>FIELDNAME</ROLLNAME>
<ROLLNAME>ZEXCEL_FIELDNAME</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>

View File

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TABL" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD02V>
<TABNAME>ZEXCEL_S_SHEET_STYLE</TABNAME>
<DDLANGUAGE>E</DDLANGUAGE>
<TABCLASS>INTTAB</TABCLASS>
<DDTEXT>Sheet style structure</DDTEXT>
<EXCLASS>1</EXCLASS>
</DD02V>
<DD03P_TABLE>
<DD03P>
<FIELDNAME>GUID</FIELDNAME>
<ROLLNAME>ZEXCEL_CELL_STYLE</ROLLNAME>
<ADMINFIELD>0</ADMINFIELD>
<COMPTYPE>E</COMPTYPE>
</DD03P>
</DD03P_TABLE>
</asx:values>
</asx:abap>
</abapGit>

View File

@ -1,18 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<abapGit version="v1.0.0" serializer="LCL_OBJECT_TTYP" serializer_version="v1.0.0">
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
<asx:values>
<DD40V>
<TYPENAME>ZEXCEL_T_SHEET_STYLE</TYPENAME>
<DDLANGUAGE>E</DDLANGUAGE>
<ROWTYPE>ZEXCEL_S_SHEET_STYLE</ROWTYPE>
<ROWKIND>S</ROWKIND>
<DATATYPE>STRU</DATATYPE>
<ACCESSMODE>T</ACCESSMODE>
<KEYDEF>D</KEYDEF>
<KEYKIND>N</KEYKIND>
<DDTEXT>Sheet style table type</DDTEXT>
</DD40V>
</asx:values>
</asx:abap>
</abapGit>