{"id":36160,"date":"2026-01-13T14:40:38","date_gmt":"2026-01-13T13:40:38","guid":{"rendered":"https:\/\/www.risc-software.at\/fachbeitraege\/visualization-or-illusion-the-underestimated-role-of-data-preparation\/"},"modified":"2026-08-26T10:32:36","modified_gmt":"2026-08-26T08:32:36","slug":"visualization-or-illusion-the-underestimated-role-of-data-preparation","status":"publish","type":"publication","link":"https:\/\/www.risc-software.at\/en\/technicalarticles\/visualization-or-illusion-the-underestimated-role-of-data-preparation\/","title":{"rendered":"Visualization or illusion: the underestimated role of data preparation"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Data quality as the foundation for reliable decisions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">from Marco Jahn<\/h3>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Efficient corporate management requires a reliable database. However, in many companies, management decisions are still based on manually created reports, which are often contradictory or already outdated. If the data is not prepared properly, even the best visualization does not provide well-founded insights, but rather distorted results. A high coordination effort often ties up valuable resources because there is no uniform view of the key figures. Instead of pursuing strategic goals, managers spend their time clarifying the data situation. Find out in this article how professional data structuring improves the quality of decision-making and creates the basis for modern business intelligence.     <br><\/p>\n\n\n\n<div class=\"wp-block-media-text has-media-on-the-right is-stacked-on-mobile\"><div class=\"wp-block-media-text__content\">\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Contents<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>When decisions cost more time than they create<\/li>\n\n\n\n<li>Why this problem is particularly critical today<\/li>\n\n\n\n<li>The role of the database for well-founded decisions<\/li>\n\n\n\n<li>Why many business intelligence solutions fail despite modern tools<\/li>\n\n\n\n<li>The role of the database for well-founded decisions<\/li>\n\n\n\n<li>Requirements for effective decision support<\/li>\n\n\n\n<li>From data preparation to usable decision support<\/li>\n\n\n\n<li>Power BI as a technical basis for decision support<\/li>\n\n\n\n<li>Economic benefits and ROI of structured data preparation<\/li>\n<\/ul>\n\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n<\/div><figure class=\"wp-block-media-text__media\"><img data-dominant-color=\"6e7f8d\" data-has-transparency=\"false\" style=\"--dominant-color: #6e7f8d;\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/ChatGPT-Image-7.-Jan.-2026-15_52_21-1024x683.webp\" alt=\"Datenaufbereitung im B2B Bereich\" class=\"wp-image-35676 size-full not-transparent\" srcset=\"https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/ChatGPT-Image-7.-Jan.-2026-15_52_21-1024x683.webp 1024w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/ChatGPT-Image-7.-Jan.-2026-15_52_21-300x200.webp 300w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/ChatGPT-Image-7.-Jan.-2026-15_52_21-768x512.webp 768w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/ChatGPT-Image-7.-Jan.-2026-15_52_21.webp 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/div>\n\n\n<div class=\"wp-block-group-container alignfull \">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">When decisions cost more time than they create<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In many companies, management decisions are based on manually created reports from different departments, if decisions are made on the basis of data at all. These reports are often outdated or contradictory in terms of content by the time decisions are made, as they are based on different data statuses, definitions and calculation logics. In addition, in many cases the underlying data is not prepared for reporting and analysis purposes, resulting in distorted, incomplete or meaningless results.  <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The resulting coordination effort ties up valuable time and delays decisions, while there is no reliable and uniform view of the company data. Instead of strategic control, the focus is often on clarifying the data situation, which noticeably impairs transparency, speed and decision-making quality. <\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-group-container alignfull \">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">Why this problem is particularly critical today<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Due to the increasing amount of data, companies are faced with the challenge that well-founded data-based decisions are becoming increasingly difficult to implement. If this complexity is not mitigated by suitable technical structures and consistent data processing, management loses its ability to control. Companies then run the risk of no longer acting proactively, but merely reacting to market and business developments.  <\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-group-container alignfull \">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">The role of the database for well-founded decisions<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A sound basis for decision-making is not only created in reporting, but also in the systematic technical preparation of the data. Even if the immediate added value of this step is often not directly visible at management level, it is decisive in determining whether analyses can be used consistently, reproducibly and reliably. In practice, relevant information comes from a large number of different systems, which become confusing without technical integration and functional modeling, causing reporting and analysis applications to lose their informative value.  <\/p>\n<\/div>\n<\/div>\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6a9b32cbefc65&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6a9b32cbefc65\" class=\"wp-block-image size-large is-resized wp-lightbox-container\"><img data-dominant-color=\"eff2f5\" data-has-transparency=\"false\" decoding=\"async\" width=\"1024\" height=\"683\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/image2026-1-13_10-51-5-1024x683.webp\" alt=\"Data value chain of data preparation in the B2B sector\" class=\"wp-image-35674 not-transparent\" style=\"--dominant-color: #eff2f5; width:1170px;height:auto\" srcset=\"https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/image2026-1-13_10-51-5-1024x683.webp 1024w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/image2026-1-13_10-51-5-300x200.webp 300w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/image2026-1-13_10-51-5-768x512.webp 768w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/image2026-1-13_10-51-5.webp 1536w\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n<div class=\"wp-block-group-container alignfull \">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">Requirements for effective decision support<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Effective decision support does not come from individual reports or visualizations, but from technically consistent processing and provision of relevant data. Managers need up-to-date and comprehensible information that is based on standardized data logic and is comparable across different use cases. Only when this technical basis has been created can dashboards reliably depict deviations, developments and correlations and serve as a genuine decision-making aid.  <\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-group-container alignfull \">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">Why many business intelligence solutions fail despite modern tools<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Many BI initiatives fail not because of a lack of visualizations, but because of inadequate technical implementation in advance. Data is brought together from different systems without being consistently integrated, technically modeled or prepared for repeatable analyses. This results in dashboards that display figures but are neither comparable nor well-founded and therefore quickly lose acceptance. Without properly implemented data preparation, business intelligence remains an isolated application instead of establishing itself as reliable decision-making support in day-to-day operations and strategy.   <\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-group-container alignfull \">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">From data preparation to usable decision support<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Only structured and technically sound data preparation makes it possible to use data permanently and consistently for reporting and decision-making purposes. This includes the integration of different data sources, the standardization of technical definitions and the development of a stable data model that works reliably even with growing data volumes. On this basis, dashboards are not created as one-off visualizations, but as reusable, resilient applications that make changes in the business transparent and support decisions in a comprehensible manner.  <\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-group-container alignfull \">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">Power BI as a technical basis for decision support<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Power BI does not develop its added value as an isolated visualization tool, but as part of a technically clean data architecture. In combination with structured data preparation, it makes it possible to provide consistent data models for different use cases and to analyze them flexibly. Dashboards are therefore not static reports, but interactive applications based on stable data logic that provide decision-makers with a reliable, up-to-date view of relevant key figures.  <\/p>\n<\/div>\n<\/div>\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6a9b32cbf0ba5&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6a9b32cbf0ba5\" class=\"wp-block-image size-large wp-lightbox-container\"><img data-dominant-color=\"d8dde3\" data-has-transparency=\"false\" style=\"--dominant-color: #d8dde3;\" decoding=\"async\" width=\"1024\" height=\"550\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/Screenshot-2026-01-08-110905-1024x550.webp\" alt=\"\" class=\"wp-image-35675 not-transparent\" srcset=\"https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/Screenshot-2026-01-08-110905-1024x550.webp 1024w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/Screenshot-2026-01-08-110905-300x161.webp 300w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/Screenshot-2026-01-08-110905-768x413.webp 768w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/Screenshot-2026-01-08-110905-1536x826.webp 1536w, https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/Screenshot-2026-01-08-110905.webp 1920w\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\tdata-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.thisImage.buttonRight\"\n\t\t\tdata-wp-style--top=\"state.thisImage.buttonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n<div class=\"wp-block-group-container alignfull \">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading\">Economic benefits and ROI of structured data preparation<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The economic benefits of business intelligence arise less from the tool used than from the quality and reusability of the underlying data preparation. Technically sound integration and modelling reduces manual reporting work, minimizes<br>sources of error and noticeably shortens decision-making cycles. At the same time, data models and dashboards that have been set up once can be reused for different issues, which means that investments not only pay for themselves in the short term, but also make a lasting contribution to increasing efficiency and improving the company&#8217;s ability to control itself.  <\/p>\n<\/div>\n<\/div>\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-7387b849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\">\n<h2 class=\"wp-block-heading\">Contact Person<\/h2>\n\n\n<script>\n\/\/----------------------------------------------------------\n\/\/------ JAVASCRIPT HOOK FUNCTIONS FOR GRAVITY FORMS -------\n\/\/----------------------------------------------------------\n\nif ( ! gform ) {\n\tdocument.addEventListener( 'gform_main_scripts_loaded', function() { gform.scriptsLoaded = true; } );\n\tdocument.addEventListener( 'gform\/theme\/scripts_loaded', function() { gform.themeScriptsLoaded = true; } );\n\twindow.addEventListener( 'DOMContentLoaded', function() { gform.domLoaded = true; } );\n\n\tvar gform = {\n\t\tdomLoaded: false,\n\t\tscriptsLoaded: false,\n\t\tthemeScriptsLoaded: false,\n\t\tisFormEditor: () => typeof InitializeEditor === 'function',\n\n\t\t\/**\n\t\t * @deprecated 2.9 the use of initializeOnLoaded in the form editor context is deprecated.\n\t\t * @remove-in 4.0 this function will not check for gform.isFormEditor().\n\t\t *\/\n\t\tcallIfLoaded: function ( fn ) {\n\t\t\tif ( gform.domLoaded && gform.scriptsLoaded && ( gform.themeScriptsLoaded || gform.isFormEditor() ) ) {\n\t\t\t\tif ( gform.isFormEditor() ) {\n\t\t\t\t\tconsole.warn( 'The use of gform.initializeOnLoaded() is deprecated in the form editor context and will be removed in Gravity Forms 3.1.' );\n\t\t\t\t}\n\t\t\t\tfn();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\n\t\t\/**\n\t\t * Call a function when all scripts are loaded\n\t\t *\n\t\t * @param function fn the callback function to call when all scripts are loaded\n\t\t *\n\t\t * @returns void\n\t\t *\/\n\t\tinitializeOnLoaded: function( fn ) {\n\t\t\tif ( ! gform.callIfLoaded( fn ) ) {\n\t\t\t\tdocument.addEventListener( 'gform_main_scripts_loaded', () => { gform.scriptsLoaded = true; gform.callIfLoaded( fn ); } );\n\t\t\t\tdocument.addEventListener( 'gform\/theme\/scripts_loaded', () => { gform.themeScriptsLoaded = true; gform.callIfLoaded( fn ); } );\n\t\t\t\twindow.addEventListener( 'DOMContentLoaded', () => { gform.domLoaded = true; gform.callIfLoaded( fn ); } );\n\t\t\t}\n\t\t},\n\n\t\thooks: { action: {}, filter: {} },\n\t\taddAction: function( action, callable, priority, tag ) {\n\t\t\tgform.addHook( 'action', action, callable, priority, tag );\n\t\t},\n\t\taddFilter: function( action, callable, priority, tag ) {\n\t\t\tgform.addHook( 'filter', action, callable, priority, tag );\n\t\t},\n\t\tdoAction: function( action ) {\n\t\t\tgform.doHook( 'action', action, arguments );\n\t\t},\n\t\tapplyFilters: function( action ) {\n\t\t\treturn gform.doHook( 'filter', action, arguments );\n\t\t},\n\t\tremoveAction: function( action, tag ) {\n\t\t\tgform.removeHook( 'action', action, tag );\n\t\t},\n\t\tremoveFilter: function( action, priority, tag ) {\n\t\t\tgform.removeHook( 'filter', action, priority, tag );\n\t\t},\n\t\taddHook: function( hookType, action, callable, priority, tag ) {\n\t\t\tif ( undefined == gform.hooks[hookType][action] ) {\n\t\t\t\tgform.hooks[hookType][action] = [];\n\t\t\t}\n\t\t\tvar hooks = gform.hooks[hookType][action];\n\t\t\tif ( undefined == tag ) {\n\t\t\t\ttag = action + '_' + hooks.length;\n\t\t\t}\n\t\t\tif( priority == undefined ){\n\t\t\t\tpriority = 10;\n\t\t\t}\n\n\t\t\tgform.hooks[hookType][action].push( { tag:tag, callable:callable, priority:priority } );\n\t\t},\n\t\tdoHook: function( hookType, action, args ) {\n\n\t\t\t\/\/ splice args from object into array and remove first index which is the hook name\n\t\t\targs = Array.prototype.slice.call(args, 1);\n\n\t\t\tif ( undefined != gform.hooks[hookType][action] ) {\n\t\t\t\tvar hooks = gform.hooks[hookType][action], hook;\n\t\t\t\t\/\/sort by priority\n\t\t\t\thooks.sort(function(a,b){return a[\"priority\"]-b[\"priority\"]});\n\n\t\t\t\thooks.forEach( function( hookItem ) {\n\t\t\t\t\thook = hookItem.callable;\n\n\t\t\t\t\tif(typeof hook != 'function')\n\t\t\t\t\t\thook = window[hook];\n\t\t\t\t\tif ( 'action' == hookType ) {\n\t\t\t\t\t\thook.apply(null, args);\n\t\t\t\t\t} else {\n\t\t\t\t\t\targs[0] = hook.apply(null, args);\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t\tif ( 'filter'==hookType ) {\n\t\t\t\treturn args[0];\n\t\t\t}\n\t\t},\n\t\tremoveHook: function( hookType, action, priority, tag ) {\n\t\t\tif ( undefined != gform.hooks[hookType][action] ) {\n\t\t\t\tvar hooks = gform.hooks[hookType][action];\n\t\t\t\thooks = hooks.filter( function(hook, index, arr) {\n\t\t\t\t\tvar removeHook = (undefined==tag||tag==hook.tag) && (undefined==priority||priority==hook.priority);\n\t\t\t\t\treturn !removeHook;\n\t\t\t\t} );\n\t\t\t\tgform.hooks[hookType][action] = hooks;\n\t\t\t}\n\t\t}\n\t};\n}\n<\/script>\n\n                <div class='gf_browser_gecko gform_wrapper gform-theme gform-theme--foundation gform-theme--framework gform-theme--orbital' data-form-theme='orbital' data-form-index='0' id='gform_wrapper_3' ><style>#gform_wrapper_3[data-form-index=\"0\"].gform-theme{--gf-color-primary: #5181a9;--gf-color-primary-rgb: 81, 129, 169;--gf-color-primary-contrast: #ffffff;--gf-color-primary-contrast-rgb: 255, 255, 255;--gf-color-primary-darker: #1F4F77;--gf-color-primary-lighter: #83B3DB;--gf-color-secondary: #fff;--gf-color-secondary-rgb: 255, 255, 255;--gf-color-secondary-contrast: #112337;--gf-color-secondary-contrast-rgb: 17, 35, 55;--gf-color-secondary-darker: #F5F5F5;--gf-color-secondary-lighter: #FFFFFF;--gf-color-out-ctrl-light: rgba(17, 35, 55, 0.1);--gf-color-out-ctrl-light-rgb: 17, 35, 55;--gf-color-out-ctrl-light-darker: rgba(104, 110, 119, 0.35);--gf-color-out-ctrl-light-lighter: #F5F5F5;--gf-color-out-ctrl-dark: #585e6a;--gf-color-out-ctrl-dark-rgb: 88, 94, 106;--gf-color-out-ctrl-dark-darker: #112337;--gf-color-out-ctrl-dark-lighter: rgba(17, 35, 55, 0.65);--gf-color-in-ctrl: #fff;--gf-color-in-ctrl-rgb: 255, 255, 255;--gf-color-in-ctrl-contrast: #112337;--gf-color-in-ctrl-contrast-rgb: 17, 35, 55;--gf-color-in-ctrl-darker: #F5F5F5;--gf-color-in-ctrl-lighter: #FFFFFF;--gf-color-in-ctrl-primary: #5181a9;--gf-color-in-ctrl-primary-rgb: 81, 129, 169;--gf-color-in-ctrl-primary-contrast: #fff;--gf-color-in-ctrl-primary-contrast-rgb: 255, 255, 255;--gf-color-in-ctrl-primary-darker: #1F4F77;--gf-color-in-ctrl-primary-lighter: #83B3DB;--gf-color-in-ctrl-light: rgba(17, 35, 55, 0.1);--gf-color-in-ctrl-light-rgb: 17, 35, 55;--gf-color-in-ctrl-light-darker: rgba(104, 110, 119, 0.35);--gf-color-in-ctrl-light-lighter: #F5F5F5;--gf-color-in-ctrl-dark: #585e6a;--gf-color-in-ctrl-dark-rgb: 88, 94, 106;--gf-color-in-ctrl-dark-darker: #112337;--gf-color-in-ctrl-dark-lighter: rgba(17, 35, 55, 0.65);--gf-radius: 3px;--gf-font-size-secondary: 14px;--gf-font-size-tertiary: 13px;--gf-icon-ctrl-number: url(\"data:image\/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4 0C4.26522 5.96046e-08 4.51957 0.105357 4.70711 0.292893L7.70711 3.29289C8.09763 3.68342 8.09763 4.31658 7.70711 4.70711C7.31658 5.09763 6.68342 5.09763 6.29289 4.70711L4 2.41421L1.70711 4.70711C1.31658 5.09763 0.683417 5.09763 0.292893 4.70711C-0.0976311 4.31658 -0.097631 3.68342 0.292893 3.29289L3.29289 0.292893C3.48043 0.105357 3.73478 0 4 0ZM0.292893 9.29289C0.683417 8.90237 1.31658 8.90237 1.70711 9.29289L4 11.5858L6.29289 9.29289C6.68342 8.90237 7.31658 8.90237 7.70711 9.29289C8.09763 9.68342 8.09763 10.3166 7.70711 10.7071L4.70711 13.7071C4.31658 14.0976 3.68342 14.0976 3.29289 13.7071L0.292893 10.7071C-0.0976311 10.3166 -0.0976311 9.68342 0.292893 9.29289Z' fill='rgba(17, 35, 55, 0.65)'\/%3E%3C\/svg%3E\");--gf-icon-ctrl-select: url(\"data:image\/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.292893 0.292893C0.683417 -0.097631 1.31658 -0.097631 1.70711 0.292893L5 3.58579L8.29289 0.292893C8.68342 -0.0976311 9.31658 -0.0976311 9.70711 0.292893C10.0976 0.683417 10.0976 1.31658 9.70711 1.70711L5.70711 5.70711C5.31658 6.09763 4.68342 6.09763 4.29289 5.70711L0.292893 1.70711C-0.0976311 1.31658 -0.0976311 0.683418 0.292893 0.292893Z' fill='rgba(17, 35, 55, 0.65)'\/%3E%3C\/svg%3E\");--gf-icon-ctrl-search: url(\"data:image\/svg+xml,%3Csvg width='640' height='640' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M256 128c-70.692 0-128 57.308-128 128 0 70.691 57.308 128 128 128 70.691 0 128-57.309 128-128 0-70.692-57.309-128-128-128zM64 256c0-106.039 85.961-192 192-192s192 85.961 192 192c0 41.466-13.146 79.863-35.498 111.248l154.125 154.125c12.496 12.496 12.496 32.758 0 45.254s-32.758 12.496-45.254 0L367.248 412.502C335.862 434.854 297.467 448 256 448c-106.039 0-192-85.962-192-192z' fill='rgba(17, 35, 55, 0.65)'\/%3E%3C\/svg%3E\");--gf-label-space-y-secondary: var(--gf-label-space-y-md-secondary);--gf-ctrl-border-color: #686e77;--gf-ctrl-size: var(--gf-ctrl-size-md);--gf-ctrl-label-color-primary: #112337;--gf-ctrl-label-color-secondary: #112337;--gf-ctrl-choice-size: var(--gf-ctrl-choice-size-md);--gf-ctrl-checkbox-check-size: var(--gf-ctrl-checkbox-check-size-md);--gf-ctrl-radio-check-size: var(--gf-ctrl-radio-check-size-md);--gf-ctrl-btn-font-size: var(--gf-ctrl-btn-font-size-md);--gf-ctrl-btn-padding-x: var(--gf-ctrl-btn-padding-x-md);--gf-ctrl-btn-size: var(--gf-ctrl-btn-size-md);--gf-ctrl-btn-border-color-secondary: #686e77;--gf-ctrl-btn-bg-color-hover-tertiary: #EBEBEB;--gf-field-img-choice-size: var(--gf-field-img-choice-size-md);--gf-field-img-choice-card-space: var(--gf-field-img-choice-card-space-md);--gf-field-img-choice-check-ind-size: var(--gf-field-img-choice-check-ind-size-md);--gf-field-img-choice-check-ind-icon-size: var(--gf-field-img-choice-check-ind-icon-size-md);--gf-field-pg-steps-number-color: rgba(17, 35, 55, 0.8);}<\/style>\n                        <div class='gform_heading'>\n                            <p class='gform_description'><\/p>\n                        <\/div><form method='post' enctype='multipart\/form-data'  id='gform_3'  action='\/en\/wp-json\/wp\/v2\/publication\/36160' data-formid='3' novalidate>\n                        <div class='gform-body gform_body'><div id='gform_fields_3' class='gform_fields top_label form_sublabel_above description_below validation_below'><fieldset id=\"field_3_1\" class=\"gfield gfield--type-name gfield--input-type-name gfield_contains_required field_sublabel_hidden_label gfield--no-description field_description_above hidden_label field_validation_below gfield_visibility_visible\"  ><legend class='gfield_label gform-field-label gfield_label_before_complex' ><span class='gform-field-label__text'>Name<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/legend><div class='ginput_complex ginput_container ginput_container--name no_prefix no_first_name no_middle_name has_last_name no_suffix gf_name_has_1 ginput_container_name gform-grid-row' id='input_3_1'>\n                            \n                            \n                            \n                            <span id='input_3_1_6_container' class='name_last gform-grid-col gform-grid-col--size-auto' >\n                                                    <input type='text' name='input_1.6' id='input_3_1_6' value=''   aria-required='true'   placeholder='Name' autocomplete=\"family-name\" \/>\n                                                    <label for='input_3_1_6' class='gform-field-label gform-field-label--type-sub hidden_sub_label screen-reader-text'>Last<\/label>\n                                                <\/span>\n                            \n                        <\/div><\/fieldset><div id=\"field_3_13\" class=\"gfield gfield--type-text gfield--input-type-text gfield--width-half gfield_contains_required field_sublabel_above gfield--no-description field_description_above hidden_label field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_3_13'><span class='gform-field-label__text'>Company<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_text'><input name='input_13' id='input_3_13' type='text' value='' class='large'    placeholder='Company' aria-required=\"true\" aria-invalid=\"false\"   \/><\/div><\/div><div id=\"field_3_2\" class=\"gfield gfield--type-email gfield--input-type-email gfield--width-half gfield_contains_required field_sublabel_above gfield--no-description field_description_above hidden_label field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_3_2'><span class='gform-field-label__text'>Email address<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_email'>\n                            <input name='input_2' id='input_3_2' type='email' value='' class='large'   placeholder='Email Address' aria-required=\"true\" aria-invalid=\"false\"  \/>\n                        <\/div><\/div><div id=\"field_3_3\" class=\"gfield gfield--type-textarea gfield--input-type-textarea gfield_contains_required field_sublabel_above gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_3_3'><span class='gform-field-label__text'>Your message to us<\/span><span class=\"gfield_required\"><span class=\"gfield_required gfield_required_text\">(Required)<\/span><\/span><\/label><div class='ginput_container ginput_container_textarea'><textarea name='input_3' id='input_3_3' class='textarea medium'    placeholder='Your message to us' aria-required=\"true\" aria-invalid=\"false\"   rows='10' cols='50'><\/textarea><\/div><\/div><div id=\"field_3_14\" class=\"gfield gfield--type-hcaptcha gfield--input-type-hcaptcha gfield--width-full field_sublabel_above gfield--no-description field_description_below hidden_label field_validation_below gfield_visibility_visible\"  ><label class='gfield_label gform-field-label' for='input_3_14'><span class='gform-field-label__text'>hCaptcha<\/span><\/label>\t\t<input\n\t\t\t\ttype=\"hidden\"\n\t\t\t\tclass=\"hcaptcha-widget-id\"\n\t\t\t\tname=\"hcaptcha-widget-id\"\n\t\t\t\tvalue=\"eyJzb3VyY2UiOlsiZ3Jhdml0eWZvcm1zXC9ncmF2aXR5Zm9ybXMucGhwIl0sImZvcm1faWQiOjN9-672761a691d5b9e84bc162ef5b692e99\">\n\t\t\t\t<h-captcha\n\t\t\tclass=\"h-captcha\" id=\"input_3_14\" data-tabindex=\"0\"\n\t\t\tdata-sitekey=\"3a6a81c1-2b2e-4b2a-b1eb-d9446bc09afb\"\n\t\t\tdata-theme=\"light\"\n\t\t\tdata-size=\"normal\"\n\t\t\tdata-auto=\"false\"\n\t\t\tdata-ajax=\"false\"\n\t\t\tdata-force=\"false\">\n\t\t<\/h-captcha>\n\t\t<input type=\"hidden\" id=\"gravity_forms_nonce\" name=\"gravity_forms_nonce\" value=\"4a6154654e\" \/><input type=\"hidden\" name=\"_wp_http_referer\" value=\"\/en\/wp-json\/wp\/v2\/publication\/36160\" \/><\/div><\/div><\/div>\n        <div class='gform-footer gform_footer top_label'> <button type='submit' id='gform_submit_button_3' class='gform_button button gform-button--width-full' onclick='gform.submission.handleButtonClick(this);' data-submission-type='submit' >Submit<\/button> \n            <input type='hidden' class='gform_hidden' name='gform_submission_method' data-js='gform_submission_method_3' value='postback' \/>\n            <input type='hidden' class='gform_hidden' name='gform_theme' data-js='gform_theme_3' id='gform_theme_3' value='orbital' \/>\n            <input type='hidden' class='gform_hidden' name='gform_style_settings' data-js='gform_style_settings_3' id='gform_style_settings_3' value='{&quot;buttonPrimaryBackgroundColor&quot;:&quot;#5181a9&quot;,&quot;buttonPrimaryColor&quot;:&quot;#ffffff&quot;}' \/>\n            <input type='hidden' class='gform_hidden' name='is_submit_3' value='1' \/>\n            <input type='hidden' class='gform_hidden' name='gform_submit' value='3' \/>\n            \n            <input type='hidden' class='gform_hidden' name='gform_currency' data-currency='EUR' value='s+uEilmYgAhS042uN2EeKGsK0tCTpEchLIiudXO8nZTxpQTdT4UEdx94uTk5DMVty82NeOh2joMWDU6wTZOusg0LQvZqwPCy1AByx0pL8Ifh+oM=' \/>\n            <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' \/>\n            <input type='hidden' class='gform_hidden' name='state_3' value='WyJ7XCJnZm9ybV9zdWJtaXNzaW9uX21ldGhvZFwiOltcImYyZWZiYjJiMjI3ODQyMDZlNDM2YjcwNzYzMzFlNTI1XCIsXCIxYThmZGM4MTc1OTQxZTRjY2UwNzY4N2IyMGI4MTM4MlwiXSxcImdmb3JtX3RoZW1lXCI6XCIyMDhlNmRmNGE5MTdiOWUwYTA1NWZkN2Y1MDljOTdjYVwiLFwiZ2Zvcm1fc3R5bGVfc2V0dGluZ3NcIjpcImVjYmE1NWE4ZDBjMGJjMDEzZGRjZDNlN2UyNTU0MmUzXCIsXCJmb3JtX2lkXCI6XCIyMWY3NWJmNTkyOWQzYmZjZjFlNjg3ZDJiOGRjZGRhN1wiLFwidXJsXCI6XCI5ZjhiMjA1M2Y1NjVkZjQyYzEwNjQzNTZkYmEzMTQzMlwiLFwic3RhdGVfdGltZXN0YW1wXCI6XCIzOGE0NjlhYTJhM2IyODIxOTVlMGZlZmVmY2E2ZWMyOFwifSIsIjI1Mzc4Y2ZiMzM0ZjYxNTdhMDQ2ZDk3NTcxNjU5N2M1IiwxNzg4NTU1OTgwXQ==' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_target_page_number_3' id='gform_target_page_number_3' value='0' \/>\n            <input type='hidden' autocomplete='off' class='gform_hidden' name='gform_source_page_number_3' id='gform_source_page_number_3' value='1' \/>\n            <input type='hidden' name='gform_field_values' value='' \/>\n            \n        <\/div>\n                        <\/form>\n                        <\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\">\n<h2 class=\"wp-block-heading\">Author<\/h2>\n\n\n<div class=\"contact-person\">\n      <picture>\n      \n      \n      \n      \n      <img decoding=\"async\" data-aos=\"fade-zoom-in\"\n           data-aos-offset=\"0\" class=\"w-full\" width=\"212\" height=\"293\"\n           src=\"https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/Portrait_freigestellt_mjahn-e1768311479238.webp\"\n           alt=\"\">\n    <\/picture>\n    <div class=\"acf-innerblocks-container\">\n\n<h5 class=\"wp-block-heading\">Marco Jahn<\/h5>\n\n\n\n<p class=\"wp-block-paragraph\">  Data Engineer<\/p>\n\n<\/div>  <\/div>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Read more<\/h2>\n\n\n<div class=\"posts-slider-block\" data-aos=\"fade-up\" data-aos-offset=\"0\" data-aos-anchor-placement=\"top-bottom\">\n        <section class=\"splide posts-slider\" aria-label=\"Gallery Slides\">\n            <div class=\"splide__arrows\">\n                <button class=\"splide__arrow splide__arrow--prev\">\n                    <span class=\"sr-only\">Previous<\/span>\n                    <img decoding=\"async\" loading=\"lazy\" width=\"25\" height=\"21\" src=\"https:\/\/www.risc-software.at\/app\/themes\/risc-theme-main\/public\/images\/icon-arrow.35d2ec.svg\"\n                         alt=\"Previous\">\n                <\/button>\n                <button class=\"splide__arrow splide__arrow--next\">\n                    <span class=\"sr-only\">Next<\/span>\n                    <img decoding=\"async\" loading=\"lazy\" width=\"25\" height=\"21\" src=\"https:\/\/www.risc-software.at\/app\/themes\/risc-theme-main\/public\/images\/icon-arrow.35d2ec.svg\"\n                         alt=\"Next\">\n                <\/button>\n            <\/div>\n            <div class=\"inner\">\n                <div class=\"splide__track\">\n                    <div class=\"splide__list\">\n\n                                                    <a href=\"https:\/\/www.risc-software.at\/en\/referenceprojects\/opt1mus\/\" class=\"splide__slide blog-post-teaser mb-1 lg:mb-3\">\n                                <div class=\"blog-image\">\n                                                                                                                                <picture>\n                                                                                        <img decoding=\"async\" src=\"https:\/\/www.risc-software.at\/app\/uploads\/2023\/09\/2023-04-24-opt1mus_Projektstart-360x214.png\"\n                                                 alt=\"Project opt1mus\">\n                                        <\/picture>\n                                                                    <\/div>\n                                <div class=\"blog-content px-2 py-3 xl:px-4 xl:py-5\">\n                                    <h3>Project opt1mus<\/h3>\n                                    <div class=\"blog-post-excerpt mt-2\">\n                                        The opt1mus project is developing a holistic system for the light metals industry that will use digital twins and artificial intelligence to make production more efficient and lower emissions.\n                                    <\/div>\n                                    <span class=\"inline-block mt-2 more\">mehr erfahren <span class=\"ml-1 icon-more\"><\/span><\/span>\n\n                                <\/div>\n                            <\/a>\n                                                    <a href=\"https:\/\/www.risc-software.at\/en\/referenceprojects\/scaleable-weather-database\/\" class=\"splide__slide blog-post-teaser mb-1 lg:mb-3\">\n                                <div class=\"blog-image\">\n                                                                                                                                <picture>\n                                                                                        <img decoding=\"async\" src=\"https:\/\/www.risc-software.at\/app\/uploads\/2023\/10\/iStock_foto-deckblatt-360x214.jpg\"\n                                                 alt=\"Scalable weather database for wetter.at and wetter-deutschland.com\">\n                                        <\/picture>\n                                                                    <\/div>\n                                <div class=\"blog-content px-2 py-3 xl:px-4 xl:py-5\">\n                                    <h3>Scalable weather database for wetter.at and wetter-deutschland.com<\/h3>\n                                    <div class=\"blog-post-excerpt mt-2\">\n                                        Mobile World Information Systems GmbH (MOWIS) offers weather data services, including the websites wetter.at and wetter-deutschland.com.\n                                    <\/div>\n                                    <span class=\"inline-block mt-2 more\">mehr erfahren <span class=\"ml-1 icon-more\"><\/span><\/span>\n\n                                <\/div>\n                            <\/a>\n                                                    <a href=\"https:\/\/www.risc-software.at\/en\/referenceprojects\/software-product-for-production-in-continuous-casting-of-aluminum\/\" class=\"splide__slide blog-post-teaser mb-1 lg:mb-3\">\n                                <div class=\"blog-image\">\n                                                                                                                                <picture>\n                                                                                        <img decoding=\"async\" src=\"https:\/\/www.risc-software.at\/app\/uploads\/2023\/10\/iStock_000003266601Medium-360x214.jpg\"\n                                                 alt=\"From development to product maturity with Docker\">\n                                        <\/picture>\n                                                                    <\/div>\n                                <div class=\"blog-content px-2 py-3 xl:px-4 xl:py-5\">\n                                    <h3>From development to product maturity with Docker<\/h3>\n                                    <div class=\"blog-post-excerpt mt-2\">\n                                        RISC Software GmbH supported the LKR Leichtmetallkompetenzzentrum Ranshofen in rolling out a software product for production in continuous aluminum casting. This software enables precise parameter configuration via a web application. The Docker platform was used to combine different user environments and versions.  \n                                    <\/div>\n                                    <span class=\"inline-block mt-2 more\">mehr erfahren <span class=\"ml-1 icon-more\"><\/span><\/span>\n\n                                <\/div>\n                            <\/a>\n                                                    <a href=\"https:\/\/www.risc-software.at\/en\/technicalarticles\/containerization-in-software-revolution-in-deployment-processes\/\" class=\"splide__slide blog-post-teaser mb-1 lg:mb-3\">\n                                <div class=\"blog-image\">\n                                                                                                                                <picture>\n                                                                                        <img decoding=\"async\" src=\"https:\/\/www.risc-software.at\/app\/uploads\/2024\/04\/iStock-183240308-360x214.jpg\"\n                                                 alt=\"Containerization in software: revolution in deployment processes\">\n                                        <\/picture>\n                                                                    <\/div>\n                                <div class=\"blog-content px-2 py-3 xl:px-4 xl:py-5\">\n                                    <h3>Containerization in software: revolution in deployment processes<\/h3>\n                                    <div class=\"blog-post-excerpt mt-2\">\n                                        How do you deliver a new software solution to customers so that it is easy to use and operate?\n                                    <\/div>\n                                    <span class=\"inline-block mt-2 more\">mehr erfahren <span class=\"ml-1 icon-more\"><\/span><\/span>\n\n                                <\/div>\n                            <\/a>\n                                                    <a href=\"https:\/\/www.risc-software.at\/en\/technicalarticles\/the-path-to-a-customized-data-platform\/\" class=\"splide__slide blog-post-teaser mb-1 lg:mb-3\">\n                                <div class=\"blog-image\">\n                                                                                                                                <picture>\n                                                                                        <img decoding=\"async\" src=\"https:\/\/www.risc-software.at\/app\/uploads\/2024\/10\/2024-10_Der-Weg-zu-einer-kundenspezifischen-Datenplattform_RISC_Software_GmbH_generated_with_Midjourney-360x214.png\"\n                                                 alt=\"The path to a customized data platform\">\n                                        <\/picture>\n                                                                    <\/div>\n                                <div class=\"blog-content px-2 py-3 xl:px-4 xl:py-5\">\n                                    <h3>The path to a customized data platform<\/h3>\n                                    <div class=\"blog-post-excerpt mt-2\">\n                                        Efficient production planning: An advanced tabu search solves complex optimization problems. The algorithm identifies promising solution patterns and integrates them into the search process to create optimal production plans faster and more precisely. \n                                    <\/div>\n                                    <span class=\"inline-block mt-2 more\">mehr erfahren <span class=\"ml-1 icon-more\"><\/span><\/span>\n\n                                <\/div>\n                            <\/a>\n                                            <\/div>\n                <\/div>\n            <\/div>\n        <\/section>\n    <\/div>\n","protected":false},"excerpt":{"rendered":"<p>Reliable corporate management requires precise data preparation. However, manual reports often deliver contradictory results and delay decisions. Find out how to ensure data quality and create a solid reporting basis.  <\/p>\n","protected":false},"featured_media":38386,"template":"","publication-category":[],"class_list":["post-36160","publication","type-publication","status-publish","has-post-thumbnail","hentry"],"acf":[],"portrait_thumb_url":"https:\/\/www.risc-software.at\/app\/uploads\/2026\/01\/ChatGPT-Image-7.-Jan.-2026-15_52_21-360x214.webp","_links":{"self":[{"href":"https:\/\/www.risc-software.at\/en\/wp-json\/wp\/v2\/publication\/36160","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.risc-software.at\/en\/wp-json\/wp\/v2\/publication"}],"about":[{"href":"https:\/\/www.risc-software.at\/en\/wp-json\/wp\/v2\/types\/publication"}],"version-history":[{"count":7,"href":"https:\/\/www.risc-software.at\/en\/wp-json\/wp\/v2\/publication\/36160\/revisions"}],"predecessor-version":[{"id":38400,"href":"https:\/\/www.risc-software.at\/en\/wp-json\/wp\/v2\/publication\/36160\/revisions\/38400"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.risc-software.at\/en\/wp-json\/wp\/v2\/media\/38386"}],"wp:attachment":[{"href":"https:\/\/www.risc-software.at\/en\/wp-json\/wp\/v2\/media?parent=36160"}],"wp:term":[{"taxonomy":"publication-category","embeddable":true,"href":"https:\/\/www.risc-software.at\/en\/wp-json\/wp\/v2\/publication-category?post=36160"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}