OWA Toolkit File upload

The logic in 18.3 changed to better accomidate OWA based applications that are not apex based. It’s probably easiest to explan with a flow chart so here the current logic as of ORDS 18.3+.

graph TD A[ Read Defaults.xml ]-->B{ Contains owa.docTable }; B--Yes-->D{ table name is
FLOWS_FILES.WWV_FLOW_FILE_OBJECTS$ } B--No-->C; C{ contains apex.docTable }--Yes-->D; C--No-->E{ Check Apex 5+ }; D--Yes-->E; D--No-->G; E--Yes-->F[ Use apex_util.set_blob ] E--No and DO NOT have tablename-->H[ ERROR ]; E--No and have tablename-->G[ Use specified table name ];

Great but how was this flow chart made.

I found Mermaid.JS found here: https://mermaidjs.github.io this is pretty terse syntax to get a simple flow chart out. Here’s the syntax for the above flowchart.

  graph TD
    A[ Read Defaults.xml ]-->B{ Contains owa.docTable };
    B--Yes-->D{ table name is <br/> FLOWS_FILES.WWV_FLOW_FILE_OBJECTS$ }
    B--No-->C;
    C{ contains apex.docTable }--Yes-->D;
    C--No-->E{ Check Apex 5+ };
    D--Yes-->E;
    D--No-->G;
    E--Yes-->F[ Use apex_util.set_blob ]
    E--No and DO NOT have tablename-->H[ ERROR ];
    E--No and have tablename-->G[ Use specified table name ];

And here’s the configuration being used:

  var config = {
    startOnLoad: true,
    theme:"forest",
    flowchart:{
        useMaxWidth:false,
        htmlLabels:true,
        curve: "basis" 

    }
};
    mermaid.initialize(config);