Das Programm das ich derzeit bearbeite füllt eine interne Tabelle und überträgt diese in einen Excel-Sheet. Eine zusätzliche Anforderung ist, dass einige Felder farblich markiert werden müssen.
Grundsätzlich funktioniert das Programm schon ganz gut bis auf ein Problem bei den Datumsfeldern.
Das Datum soll im Format JJJJ/MM/TT ausgegeben werden. Das funktioniert, wenn die Zelle nicht farblich markiert ist. Sobald eine farbliche Markierung greift, wird das Datum im Format TT/MM/JJJJ angezeigt und die Zellenformatierung entspricht einer Textzelle.
Für die Kommunikation mit Excel verwende ich die Tabellenkalkulationsschnittstelle (i_oi_spreadsheet) der Desktop Office Intergration. Ich hole mir das Format der Zelle über die Methode get_cell_format, ändere die Hintergrundfarbe und lade das geänderte Format über die Methode cell_format wieder zurück. Danach lade ich mit der Methode insert_one_table die Daten in das Excelsheet. Das Coding habe ich hier mal angehängt.
Hat hier vielleicht jemand eine Idee wie ich das richtige Datumsformat ausgegeben bekomme?
Danke schon mal für die Hilfe
- Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
- sheet_interface->get_cell_format(
- EXPORTING
- row = ls_change_field-row " Zeile
- column = ls_change_field-col " Spalte
- no_flush = 'X' " flush?
- * updating = -1 " screen updating
- IMPORTING
- error = error " error?
- * retcode = retcode " text of error
- ).
- ls_cell-top = ls_change_field-row.
- ls_cell-left = ls_change_field-col.
- ls_cell-rows = 1.
- ls_cell-columns = 1.
- ls_cell-back = 6.
- sheet_interface->cell_format(
- EXPORTING
- no_flush = 'X' " flush?
- cells = lt_cells " Tabelle der Zellinformationen
- IMPORTING
- error = error " error?
- ).
- sheet_interface->insert_one_table(
- EXPORTING
- ddic_name = 'Z_EXCEL_OUTPUT' " Name of a table of the data dictionary
- data_table = lt_edl_excel_output " Data
- * fields_table = fields_table " The fields of the table
- rangename = 'EDL_RESULT' " The name of the range
- no_flush = ' ' " flush?
- wholetable = i_oi_spreadsheet=>spreadsheet_insertall " Inserts the whole table?
- * updating = -1 " Screen updating
- IMPORTING
- error = error " errors?
- * retcode = retcode " text of the error
- ).
- GeSHi ©