From aac5bd4cc12f4a1596c499a0b3c19f8d131ca516 Mon Sep 17 00:00:00 2001 From: yamelsenih Date: Fri, 31 May 2024 18:52:19 -0400 Subject: [PATCH] Add Format Pattern support --- docs/adempiere_report_engine.json | 63 +++++++++++++++++++ .../report_engine/service/ReportBuilder.java | 18 +++++- 2 files changed, 80 insertions(+), 1 deletion(-) diff --git a/docs/adempiere_report_engine.json b/docs/adempiere_report_engine.json index 2aed712..2b76440 100644 --- a/docs/adempiere_report_engine.json +++ b/docs/adempiere_report_engine.json @@ -139,6 +139,69 @@ ], "cookie": [], "body": "{\n \"id\": 1000944,\n \"name\": \"Org. -> Hecho Contable\",\n \"description\": \"\",\n \"print_format_id\": 1000944,\n \"report_view_id\": 0,\n \"record_count\": \"1\",\n \"columns\": [\n {\n \"code\": \"1028695\",\n \"title\": \"Record ID\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028694\",\n \"title\": \"Table\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028693\",\n \"title\": \"Organization\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028688\",\n \"title\": \"Account\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028687\",\n \"title\": \"Acct Date\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028696\",\n \"title\": \"Description\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028697\",\n \"title\": \"Period\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028692\",\n \"title\": \"Business Partner \",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028711\",\n \"title\": \"Currency\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028712\",\n \"title\": \"Source Debit\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028713\",\n \"title\": \"Source Credit\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028714\",\n \"title\": \"Acct Debit\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028723\",\n \"title\": \"Acct Credit\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1063548\",\n \"title\": \"Created By\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1063549\",\n \"title\": \"Created\",\n \"color\": \"\",\n \"style\": \"\"\n }\n ],\n \"rows\": [\n {\n \"cells\": {\n \"1028687\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028688\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028692\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028693\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028694\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028695\": {\n \"value\": 1018613,\n \"table_name\": \"M_MatchInv\",\n \"display_value\": \"1475\"\n },\n \"1028696\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028697\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028711\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028712\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028713\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028714\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1028723\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1063548\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1063549\": {\n \"value\": null,\n \"display_value\": \"\"\n }\n },\n \"level\": 0,\n \"children\": []\n },\n {\n \"cells\": {\n \"1028687\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028688\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028692\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028693\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028694\": {\n \"value\": 472,\n \"display_value\": \"M_MatchInv - Match Invoice\"\n },\n \"1028695\": {\n \"value\": 1018613,\n \"table_name\": \"M_MatchInv\",\n \"display_value\": \"1475\"\n },\n \"1028696\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028697\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028711\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028712\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028713\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028714\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1028723\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1063548\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1063549\": {\n \"value\": null,\n \"display_value\": \"\"\n }\n },\n \"level\": 1,\n \"children\": []\n },\n {\n \"cells\": {\n \"1028687\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028688\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028692\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028693\": {\n \"value\": 1000020,\n \"display_value\": \"ERP\"\n },\n \"1028694\": {\n \"value\": 472,\n \"display_value\": \"M_MatchInv - Match Invoice\"\n },\n \"1028695\": {\n \"value\": 1018613,\n \"table_name\": \"M_MatchInv\",\n \"display_value\": \"1475\"\n },\n \"1028696\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028697\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028711\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028712\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028713\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028714\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1028723\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1063548\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1063549\": {\n \"value\": null,\n \"display_value\": \"\"\n }\n },\n \"level\": 2,\n \"children\": []\n },\n {\n \"cells\": {\n \"1028687\": {\n \"value\": {\n \"type\": \"date\",\n \"value\": \"2024-02-01 12:00:00\"\n },\n \"display_value\": \"\"\n },\n \"1028688\": {\n \"value\": 1001637,\n \"display_value\": \"1.1.3.1.0.1.0.3_Inventario de Mercancías Importadas\"\n },\n \"1028692\": {\n \"value\": 1007713,\n \"display_value\": \"CIFRE CERAMICA, S.L.\"\n },\n \"1028693\": {\n \"value\": 1000020,\n \"display_value\": \"ERP\"\n },\n \"1028694\": {\n \"value\": 472,\n \"display_value\": \"M_MatchInv - Match Invoice\"\n },\n \"1028695\": {\n \"value\": 1018613,\n \"table_name\": \"M_MatchInv\",\n \"display_value\": \"1475\"\n },\n \"1028696\": {\n \"value\": \"1475\",\n \"display_value\": \"\"\n },\n \"1028697\": {\n \"value\": 1000120,\n \"display_value\": \"2024-02\"\n },\n \"1028711\": {\n \"value\": 50001,\n \"display_value\": \"VES\"\n },\n \"1028712\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\"\n },\n \"1028713\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\"\n },\n \"1028714\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\"\n },\n \"1028723\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\"\n },\n \"1063548\": {\n \"value\": 1000882,\n \"display_value\": \"Angel Muñoz\"\n },\n \"1063549\": {\n \"value\": {\n \"type\": \"date\",\n \"value\": \"2024-03-25 08:45:29\"\n },\n \"display_value\": \"\"\n }\n },\n \"level\": 61,\n \"children\": []\n }\n ],\n \"next_page_token\": \"\",\n \"instance_id\": 0\n}" + }, + { + "name": "Formatted Values", + "originalRequest": { + "method": "GET", + "header": [], + "url": { + "raw": "{{host}}/report-engine/views/1000944?filters=[{\"name\": \"Fact_Acct_ID\", \"operator\": \"equal\", \"values\": 8270847}]", + "host": [ + "{{host}}" + ], + "path": [ + "report-engine", + "views", + "1000944" + ], + "query": [ + { + "key": "filters", + "value": "[{\"name\": \"Fact_Acct_ID\", \"operator\": \"equal\", \"values\": 8270847}]" + } + ] + } + }, + "status": "OK", + "code": 200, + "_postman_previewlanguage": "json", + "header": [ + { + "key": "content-type", + "value": "application/json" + }, + { + "key": "grpc-encoding", + "value": "identity" + }, + { + "key": "grpc-accept-encoding", + "value": "gzip" + }, + { + "key": "x-envoy-upstream-service-time", + "value": "2330" + }, + { + "key": "grpc-status", + "value": "0" + }, + { + "key": "content-length", + "value": "10160" + }, + { + "key": "date", + "value": "Fri, 31 May 2024 22:51:09 GMT" + }, + { + "key": "server", + "value": "envoy" + } + ], + "cookie": [], + "body": "{\n \"id\": 1000944,\n \"name\": \"Org. -> Hecho Contable\",\n \"description\": \"\",\n \"print_format_id\": 1000944,\n \"report_view_id\": 0,\n \"record_count\": \"1\",\n \"columns\": [\n {\n \"code\": \"1028695\",\n \"title\": \"Record ID\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028694\",\n \"title\": \"Table\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028693\",\n \"title\": \"Organization\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028688\",\n \"title\": \"Account\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028687\",\n \"title\": \"Acct Date\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028696\",\n \"title\": \"Description\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028697\",\n \"title\": \"Period\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028692\",\n \"title\": \"Business Partner \",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028711\",\n \"title\": \"Currency\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028712\",\n \"title\": \"Source Debit\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028713\",\n \"title\": \"Source Credit\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028714\",\n \"title\": \"Acct Debit\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1028723\",\n \"title\": \"Acct Credit\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1063548\",\n \"title\": \"Created By\",\n \"color\": \"\",\n \"style\": \"\"\n },\n {\n \"code\": \"1063549\",\n \"title\": \"Created\",\n \"color\": \"\",\n \"style\": \"\"\n }\n ],\n \"rows\": [\n {\n \"cells\": {\n \"1028687\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028688\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028692\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028693\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028694\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028695\": {\n \"value\": 1018613,\n \"table_name\": \"M_MatchInv\",\n \"display_value\": \"1475\"\n },\n \"1028696\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028697\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028711\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028712\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028713\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028714\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1028723\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1063548\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1063549\": {\n \"value\": null,\n \"display_value\": \"\"\n }\n },\n \"level\": 0,\n \"children\": []\n },\n {\n \"cells\": {\n \"1028687\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028688\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028692\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028693\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028694\": {\n \"value\": 472,\n \"display_value\": \"M_MatchInv - Match Invoice\"\n },\n \"1028695\": {\n \"value\": 1018613,\n \"table_name\": \"M_MatchInv\",\n \"display_value\": \"1475\"\n },\n \"1028696\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028697\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028711\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028712\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028713\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028714\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1028723\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1063548\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1063549\": {\n \"value\": null,\n \"display_value\": \"\"\n }\n },\n \"level\": 1,\n \"children\": []\n },\n {\n \"cells\": {\n \"1028687\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028688\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028692\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028693\": {\n \"value\": 1000020,\n \"display_value\": \"ERP\"\n },\n \"1028694\": {\n \"value\": 472,\n \"display_value\": \"M_MatchInv - Match Invoice\"\n },\n \"1028695\": {\n \"value\": 1018613,\n \"table_name\": \"M_MatchInv\",\n \"display_value\": \"1475\"\n },\n \"1028696\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028697\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028711\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028712\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028713\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1028714\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1028723\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"\",\n \"sum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"mean_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"count_value\": {\n \"type\": \"decimal\",\n \"value\": \"1\"\n },\n \"minimum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"maximum_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"variance_value\": {\n \"type\": \"decimal\",\n \"value\": \"0.0000\"\n },\n \"deviation_value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n }\n },\n \"1063548\": {\n \"value\": null,\n \"display_value\": \"\"\n },\n \"1063549\": {\n \"value\": null,\n \"display_value\": \"\"\n }\n },\n \"level\": 2,\n \"children\": []\n },\n {\n \"cells\": {\n \"1028687\": {\n \"value\": {\n \"type\": \"date\",\n \"value\": \"2024-02-01 12:00:00\"\n },\n \"display_value\": \"01/02/2024\"\n },\n \"1028688\": {\n \"value\": 1001637,\n \"display_value\": \"1.1.3.1.0.1.0.3_Inventario de Mercancías Importadas\"\n },\n \"1028692\": {\n \"value\": 1007713,\n \"display_value\": \"CIFRE CERAMICA, S.L.\"\n },\n \"1028693\": {\n \"value\": 1000020,\n \"display_value\": \"ERP\"\n },\n \"1028694\": {\n \"value\": 472,\n \"display_value\": \"M_MatchInv - Match Invoice\"\n },\n \"1028695\": {\n \"value\": 1018613,\n \"table_name\": \"M_MatchInv\",\n \"display_value\": \"1475\"\n },\n \"1028696\": {\n \"value\": \"1475\",\n \"display_value\": \"\"\n },\n \"1028697\": {\n \"value\": 1000120,\n \"display_value\": \"2024-02\"\n },\n \"1028711\": {\n \"value\": 50001,\n \"display_value\": \"VES\"\n },\n \"1028712\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"0.00\"\n },\n \"1028713\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"0.00\"\n },\n \"1028714\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"0.00\"\n },\n \"1028723\": {\n \"value\": {\n \"type\": \"decimal\",\n \"value\": \"0\"\n },\n \"display_value\": \"0.00\"\n },\n \"1063548\": {\n \"value\": 1000882,\n \"display_value\": \"Angel Muñoz\"\n },\n \"1063549\": {\n \"value\": {\n \"type\": \"date\",\n \"value\": \"2024-03-25 08:45:29\"\n },\n \"display_value\": \"Mar 25, 2024, 8:45:29 PM VET\"\n }\n },\n \"level\": 61,\n \"children\": []\n }\n ],\n \"next_page_token\": \"\",\n \"instance_id\": 0\n}" } ] }, diff --git a/src/main/java/org/spin/report_engine/service/ReportBuilder.java b/src/main/java/org/spin/report_engine/service/ReportBuilder.java index f734708..4b71cf1 100644 --- a/src/main/java/org/spin/report_engine/service/ReportBuilder.java +++ b/src/main/java/org/spin/report_engine/service/ReportBuilder.java @@ -14,6 +14,8 @@ ************************************************************************************/ package org.spin.report_engine.service; +import java.math.BigDecimal; +import java.sql.Timestamp; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -39,6 +41,7 @@ import org.compiere.util.DB; import org.compiere.util.DisplayType; import org.compiere.util.Env; +import org.compiere.util.Language; import org.compiere.util.Trx; import org.compiere.util.Util; import org.spin.report_engine.data.Cell; @@ -164,6 +167,7 @@ private ReportInfo get(String transactionName) { throw new AdempiereException("@FillMandatory@ @AD_PrintFormat_ID@"); } limit = LimitUtil.getPageSize(limit); + Language language = Language.getLoginLanguage(); MPrintFormat printFormat = new MPrintFormat(Env.getCtx(), getPrintFormatId(), null); PrintFormat format = PrintFormat.newInstance(printFormat); QueryDefinition queryDefinition = format.getQuery().withConditions(conditions).withInstanceId(getInstanceId()).withLimit(limit, offset).buildQuery(); @@ -200,7 +204,19 @@ private ReportInfo get(String transactionName) { } } } else { - cell.withValue(resulset.getObject(column.getColumnName())); + Object value = resulset.getObject(column.getColumnName()); + cell.withValue(value); + // Apply Format Pattern + String formatPattern = item.getFormatPattern(); + if(value != null) { + if(DisplayType.isDate(item.getReferenceId())) { + Timestamp date = (Timestamp) value; + cell.withDisplayValue(DisplayType.getDateFormat(item.getReferenceId(), language, formatPattern).format(date)); + } else if(DisplayType.isNumeric(item.getReferenceId()) && BigDecimal.class.isAssignableFrom(value.getClass())) { + BigDecimal number = (BigDecimal) value; + cell.withDisplayValue(DisplayType.getNumberFormat(item.getReferenceId(), language, formatPattern).format(number)); + } + } } } } catch (Exception e) {