Administrator
|
Hi,
I was wondering, now that we have the embedded documentation, is it still worth to duplicate in Wiki? Thanks Jacques Le 08/11/2018 à 16:17, [hidden email] a écrit : > Author: jleroux > Date: Thu Nov 8 15:17:25 2018 > New Revision: 1846159 > > URL: http://svn.apache.org/viewvc?rev=1846159&view=rev > Log: > No functional changes > > Updates updateWiki.bat to use AsciiDoctor > Removes *.md.html files, replaces them by *.html from AsciiDoctor > > I'll update the wiki page... > > Added: > ofbiz/tools/wiki-files/birt/Creating reports.html (with props) > ofbiz/tools/wiki-files/birt/How to use flexible reports.html (with props) > ofbiz/tools/wiki-files/birt/Report master creation.html (with props) > ofbiz/tools/wiki-files/birt/Using the Birt Report Designer.html (with props) > Removed: > ofbiz/tools/wiki-files/birt/Creating reports.md.html > ofbiz/tools/wiki-files/birt/How to use flexible reports.md.html > ofbiz/tools/wiki-files/birt/Report master creation.md.html > ofbiz/tools/wiki-files/birt/Using the Birt Report Designer.md.html > Modified: > ofbiz/tools/updateWiki.bat > ofbiz/tools/wiki-files/README.html > > Modified: ofbiz/tools/updateWiki.bat > URL: http://svn.apache.org/viewvc/ofbiz/tools/updateWiki.bat?rev=1846159&r1=1846158&r2=1846159&view=diff > ============================================================================== > --- ofbiz/tools/updateWiki.bat (original) > +++ ofbiz/tools/updateWiki.bat Thu Nov 8 15:17:25 2018 > @@ -5,10 +5,10 @@ pandoc applications/datamodel/DATAMODEL_ > pandoc themes/README.md -s -o tools/wiki-files/themes/README.md.html > > call asciidoctor README.adoc -o tools/wiki-files/README.html > -call asciidoctor "plugins/birt/documents/Creating reports.md" -o "tools/wiki-files/birt/Creating reports.md.html" > -call asciidoctor "plugins/birt/documents/Using the Birt Report Designer.md" -o "tools/wiki-files/birt/Using the Birt Report Designer.md.html" > -call asciidoctor "plugins/birt/documents/How to use flexible reports.md" -o "tools/wiki-files/birt/How to use flexible reports.md.html" > -call asciidoctor "plugins/birt/documents/Report master creation.md" -o "tools/wiki-files/birt/Report master creation.md.html" > +call asciidoctor "plugins/birt/documents/Creating reports.adoc" -o "tools/wiki-files/birt/Creating reports.html" > +call asciidoctor "plugins/birt/documents/Using the Birt Report Designer.adoc" -o "tools/wiki-files/birt/Using the Birt Report Designer.html" > +call asciidoctor "plugins/birt/documents/How to use flexible reports.adoc" -o "tools/wiki-files/birt/How to use flexible reports.html" > +call asciidoctor "plugins/birt/documents/Report master creation.adoc" -o "tools/wiki-files/birt/Report master creation.html" > > pandoc tools/demo-backup/README.md -s -o tools/wiki-files/demos/README.md.html > pandoc tools/documentation/BuildBot/BuildBot.md -s -o tools/wiki-files/BuildBot/BuildBot.md.html > > Modified: ofbiz/tools/wiki-files/README.html > URL: http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/README.html?rev=1846159&r1=1846158&r2=1846159&view=diff > ============================================================================== > --- ofbiz/tools/wiki-files/README.html (original) > +++ ofbiz/tools/wiki-files/README.html Thu Nov 8 15:17:25 2018 > @@ -1644,7 +1644,7 @@ Secure Sockets Extension) API</p> > </div> > <div id="footer"> > <div id="footer-text"> > -Last updated 2018-03-29 10:39:46 Paris, Madrid (heure dÃÃtÃ) > +Last updated 2018-09-14 08:19:31 Paris, Madrid (heure dÃÃtÃ) > </div> > </div> > </body> > > Added: ofbiz/tools/wiki-files/birt/Creating reports.html > URL: http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/birt/Creating%20reports.html?rev=1846159&view=auto > ============================================================================== > --- ofbiz/tools/wiki-files/birt/Creating reports.html (added) > +++ ofbiz/tools/wiki-files/birt/Creating reports.html Thu Nov 8 15:17:25 2018 > @@ -0,0 +1,588 @@ > +<!DOCTYPE html> > +<html lang="en"> > +<head> > +<meta charset="UTF-8"> > +<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]--> > +<meta name="viewport" content="width=device-width, initial-scale=1.0"> > +<meta name="generator" content="Asciidoctor 1.5.7.1"> > +<title>Report creation - Admin/Super-User</title> > +<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700"> > +<style> > +/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */ > +/* Uncomment @import statement below to use as custom stylesheet */ > +/*@import "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700";*/ > +article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block} > +audio,canvas,video{display:inline-block} > +audio:not([controls]){display:none;height:0} > +script{display:none!important} > +html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%} > +a{background:transparent} > +a:focus{outline:thin dotted} > +a:active,a:hover{outline:0} > +h1{font-size:2em;margin:.67em 0} > +abbr[title]{border-bottom:1px dotted} > +b,strong{font-weight:bold} > +dfn{font-style:italic} > +hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0} > +mark{background:#ff0;color:#000} > +code,kbd,pre,samp{font-family:monospace;font-size:1em} > +pre{white-space:pre-wrap} > +q{quotes:"\201C" "\201D" "\2018" "\2019"} > +small{font-size:80%} > +sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline} > +sup{top:-.5em} > +sub{bottom:-.25em} > +img{border:0} > +svg:not(:root){overflow:hidden} > +figure{margin:0} > +fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em} > +legend{border:0;padding:0} > +button,input,select,textarea{font-family:inherit;font-size:100%;margin:0} > +button,input{line-height:normal} > +button,select{text-transform:none} > +button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer} > +button[disabled],html input[disabled]{cursor:default} > +input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0} > +button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0} > +textarea{overflow:auto;vertical-align:top} > +table{border-collapse:collapse;border-spacing:0} > +*,*::before,*::after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box} > +html,body{font-size:100%} > +body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased} > +a:hover{cursor:pointer} > +img,object,embed{max-width:100%;height:auto} > +object,embed{height:100%} > +img{-ms-interpolation-mode:bicubic} > +.left{float:left!important} > +.right{float:right!important} > +.text-left{text-align:left!important} > +.text-right{text-align:right!important} > +.text-center{text-align:center!important} > +.text-justify{text-align:justify!important} > +.hide{display:none} > +img,object,svg{display:inline-block;vertical-align:middle} > +textarea{height:auto;min-height:50px} > +select{width:100%} > +.center{margin-left:auto;margin-right:auto} > +.stretch{width:100%} > +.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em} > +div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr} > +a{color:#2156a5;text-decoration:underline;line-height:inherit} > +a:hover,a:focus{color:#1d4b8f} > +a img{border:none} > +p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility} > +p aside{font-size:.875em;line-height:1.35;font-style:italic} > +h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em} > +h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0} > +h1{font-size:2.125em} > +h2{font-size:1.6875em} > +h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em} > +h4,h5{font-size:1.125em} > +h6{font-size:1em} > +hr{border:solid #ddddd8;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0} > +em,i{font-style:italic;line-height:inherit} > +strong,b{font-weight:bold;line-height:inherit} > +small{font-size:60%;line-height:inherit} > +code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)} > +ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit} > +ul,ol{margin-left:1.5em} > +ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em} > +ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit} > +ul.square{list-style-type:square} > +ul.circle{list-style-type:circle} > +ul.disc{list-style-type:disc} > +ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0} > +dl dt{margin-bottom:.3125em;font-weight:bold} > +dl dd{margin-bottom:1.25em} > +abbr,acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help} > +abbr{text-transform:none} > +blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd} > +blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)} > +blockquote cite::before{content:"\2014 \0020"} > +blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,.6)} > +blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)} > +@media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2} > +h1{font-size:2.75em} > +h2{font-size:2.3125em} > +h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em} > +h4{font-size:1.4375em}} > +table{background:#fff;margin-bottom:1.25em;border:solid 1px #dedede} > +table thead,table tfoot{background:#f7f8f7} > +table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left} > +table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)} > +table tr.even,table tr.alt,table tr:nth-of-type(even){background:#f8f8f7} > +table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6} > +h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em} > +h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400} > +.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table} > +.clearfix::after,.float-group::after{clear:both} > +*:not(pre)>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background-color:#f7f7f8;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word} > +*:not(pre)>code.nobreak{word-wrap:normal} > +*:not(pre)>code.nowrap{white-space:nowrap} > +pre,pre>code{line-height:1.45;color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;text-rendering:optimizeSpeed} > +em em{font-style:normal} > +strong strong{font-weight:400} > +.keyseq{color:rgba(51,51,51,.8)} > +kbd{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background-color:#f7f7f7;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em white inset;box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em #fff inset;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap} > +.keyseq kbd:first-child{margin-left:0} > +.keyseq kbd:last-child{margin-right:0} > +.menuseq,.menuref{color:#000} > +.menuseq b:not(.caret),.menuref{font-weight:inherit} > +.menuseq{word-spacing:-.02em} > +.menuseq b.caret{font-size:1.25em;line-height:.8} > +.menuseq i.caret{font-weight:bold;text-align:center;width:.45em} > +b.button::before,b.button::after{position:relative;top:-1px;font-weight:400} > +b.button::before{content:"[";padding:0 3px 0 2px} > +b.button::after{content:"]";padding:0 2px 0 3px} > +p a>code:hover{color:rgba(0,0,0,.9)} > +#header,#content,#footnotes,#footer{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em} > +#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" ";display:table} > +#header::after,#content::after,#footnotes::after,#footer::after{clear:both} > +#content{margin-top:1.25em} > +#content::before{content:none} > +#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0} > +#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #ddddd8} > +#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #ddddd8;padding-bottom:8px} > +#header .details{border-bottom:1px solid #ddddd8;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap} > +#header .details span:first-child{margin-left:-.125em} > +#header .details span.email a{color:rgba(0,0,0,.85)} > +#header .details br{display:none} > +#header .details br+span::before{content:"\00a0\2013\00a0"} > +#header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)} > +#header .details br+span#revremark::before{content:"\00a0|\00a0"} > +#header #revnumber{text-transform:capitalize} > +#header #revnumber::after{content:"\00a0"} > +#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #ddddd8;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem} > +#toc{border-bottom:1px solid #efefed;padding-bottom:.5em} > +#toc>ul{margin-left:.125em} > +#toc ul.sectlevel0>li>a{font-style:italic} > +#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0} > +#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none} > +#toc li{line-height:1.3334;margin-top:.3334em} > +#toc a{text-decoration:none} > +#toc a:active{text-decoration:underline} > +#toctitle{color:#7a2518;font-size:1.2em} > +@media screen and (min-width:768px){#toctitle{font-size:1.375em} > +body.toc2{padding-left:15em;padding-right:0} > +#toc.toc2{margin-top:0!important;background-color:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto} > +#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em} > +#toc.toc2>ul{font-size:.9em;margin-bottom:0} > +#toc.toc2 ul ul{margin-left:0;padding-left:1em} > +#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em} > +body.toc2.toc-right{padding-left:0;padding-right:15em} > +body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #efefed;left:auto;right:0}} > +@media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0} > +#toc.toc2{width:20em} > +#toc.toc2 #toctitle{font-size:1.375em} > +#toc.toc2>ul{font-size:.95em} > +#toc.toc2 ul ul{padding-left:1.25em} > +body.toc2.toc-right{padding-left:0;padding-right:20em}} > +#content #toc{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} > +#content #toc>:first-child{margin-top:0} > +#content #toc>:last-child{margin-bottom:0} > +#footer{max-width:100%;background-color:rgba(0,0,0,.8);padding:1.25em} > +#footer-text{color:rgba(255,255,255,.8);line-height:1.44} > +#content{margin-bottom:.625em} > +.sect1{padding-bottom:.625em} > +@media screen and (min-width:768px){#content{margin-bottom:1.25em} > +.sect1{padding-bottom:1.25em}} > +.sect1:last-child{padding-bottom:0} > +.sect1+.sect1{border-top:1px solid #efefed} > +#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400} > +#content h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em} > +#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible} > +#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none} > +#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221} > +.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em} > +.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic} > +table.tableblock.fit-content>caption.title{white-space:nowrap;width:0} > +.paragraph.lead>p,#preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)} > +table.tableblock #preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:inherit} > +.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%} > +.admonitionblock>table td.icon{text-align:center;width:80px} > +.admonitionblock>table td.icon img{max-width:none} > +.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase} > +.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #ddddd8;color:rgba(0,0,0,.6)} > +.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0} > +.exampleblock>.content{border-style:solid;border-width:1px;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;-webkit-border-radius:4px;border-radius:4px} > +.exampleblock>.content>:first-child{margin-top:0} > +.exampleblock>.content>:last-child{margin-bottom:0} > +.sidebarblock{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} > +.sidebarblock>:first-child{margin-top:0} > +.sidebarblock>:last-child{margin-bottom:0} > +.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center} > +.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0} > +.literalblock pre,.listingblock pre:not(.highlight),.listingblock pre[class="highlight"],.listingblock pre[class^="highlight "],.listingblock pre.CodeRay,.listingblock pre.prettyprint{background:#f7f7f8} > +.sidebarblock .literalblock pre,.sidebarblock .listingblock pre:not(.highlight),.sidebarblock .listingblock pre[class="highlight"],.sidebarblock .listingblock pre[class^="highlight "],.sidebarblock .listingblock pre.CodeRay,.sidebarblock .listingblock pre.prettyprint{background:#f2f1f1} > +.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{-webkit-border-radius:4px;border-radius:4px;word-wrap:break-word;padding:1em;font-size:.8125em} > +.literalblock pre.nowrap,.literalblock pre[class].nowrap,.listingblock pre.nowrap,.listingblock pre[class].nowrap{overflow-x:auto;white-space:pre;word-wrap:normal} > +@media screen and (min-width:768px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:.90625em}} > +@media screen and (min-width:1280px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:1em}} > +.literalblock.output pre{color:#f7f7f8;background-color:rgba(0,0,0,.9)} > +.listingblock pre.highlightjs{padding:0} > +.listingblock pre.highlightjs>code{padding:1em;-webkit-border-radius:4px;border-radius:4px} > +.listingblock pre.prettyprint{border-width:0} > +.listingblock>.content{position:relative} > +.listingblock code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:#999} > +.listingblock:hover code[data-lang]::before{display:block} > +.listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:#999} > +.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"} > +table.pyhltable{border-collapse:separate;border:0;margin-bottom:0;background:none} > +table.pyhltable td{vertical-align:top;padding-top:0;padding-bottom:0;line-height:1.45} > +table.pyhltable td.code{padding-left:.75em;padding-right:0} > +pre.pygments .lineno,table.pyhltable td:not(.code){color:#999;padding-left:0;padding-right:.5em;border-right:1px solid #ddddd8} > +pre.pygments .lineno{display:inline-block;margin-right:.25em} > +table.pyhltable .linenodiv{background:none!important;padding-right:0!important} > +.quoteblock{margin:0 1em 1.25em 1.5em;display:table} > +.quoteblock>.title{margin-left:-1.5em;margin-bottom:.75em} > +.quoteblock blockquote,.quoteblock blockquote p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify} > +.quoteblock blockquote{margin:0;padding:0;border:0} > +.quoteblock blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)} > +.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0} > +.quoteblock .attribution{margin-top:.5em;margin-right:.5ex;text-align:right} > +.quoteblock .quoteblock{margin-left:0;margin-right:0;padding:.5em 0;border-left:3px solid rgba(0,0,0,.6)} > +.quoteblock .quoteblock blockquote{padding:0 0 0 .75em} > +.quoteblock .quoteblock blockquote::before{display:none} > +.verseblock{margin:0 1em 1.25em} > +.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility} > +.verseblock pre strong{font-weight:400} > +.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex} > +.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic} > +.quoteblock .attribution br,.verseblock .attribution br{display:none} > +.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)} > +.quoteblock.abstract{margin:0 1em 1.25em;display:block} > +.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center} > +.quoteblock.abstract blockquote,.quoteblock.abstract blockquote p{word-spacing:0;line-height:1.6} > +.quoteblock.abstract blockquote::before,.quoteblock.abstract p::before{display:none} > +table.tableblock{max-width:100%;border-collapse:separate} > +p.tableblock:last-child{margin-bottom:0} > +td.tableblock>.content{margin-bottom:-1.25em} > +table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede} > +table.grid-all>thead>tr>.tableblock,table.grid-all>tbody>tr>.tableblock{border-width:0 1px 1px 0} > +table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0} > +table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0} > +table.grid-rows>thead>tr>.tableblock,table.grid-rows>tbody>tr>.tableblock{border-width:0 0 1px} > +table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0} > +table.grid-all>*>tr>.tableblock:last-child,table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0} > +table.grid-all>tbody>tr:last-child>.tableblock,table.grid-all>thead:last-child>tr>.tableblock,table.grid-rows>tbody>tr:last-child>.tableblock,table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0} > +table.frame-all{border-width:1px} > +table.frame-sides{border-width:0 1px} > +table.frame-topbot,table.frame-ends{border-width:1px 0} > +table.stripes-all tr,table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7} > +table.stripes-none tr,table.stripes-odd tr:nth-of-type(even){background:none} > +th.halign-left,td.halign-left{text-align:left} > +th.halign-right,td.halign-right{text-align:right} > +th.halign-center,td.halign-center{text-align:center} > +th.valign-top,td.valign-top{vertical-align:top} > +th.valign-bottom,td.valign-bottom{vertical-align:bottom} > +th.valign-middle,td.valign-middle{vertical-align:middle} > +table thead th,table tfoot th{font-weight:bold} > +tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7} > +tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold} > +p.tableblock>code:only-child{background:none;padding:0} > +p.tableblock{font-size:1em} > +td>div.verse{white-space:pre} > +ol{margin-left:1.75em} > +ul li ol{margin-left:1.5em} > +dl dd{margin-left:1.125em} > +dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0} > +ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em} > +ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none} > +ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em} > +ul.unstyled,ol.unstyled{margin-left:0} > +ul.checklist{margin-left:.625em} > +ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em} > +ul.checklist li>p:first-child>input[type="checkbox"]:first-child{margin-right:.25em} > +ul.inline{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em} > +ul.inline>li{margin-left:1.25em} > +.unstyled dl dt{font-weight:400;font-style:normal} > +ol.arabic{list-style-type:decimal} > +ol.decimal{list-style-type:decimal-leading-zero} > +ol.loweralpha{list-style-type:lower-alpha} > +ol.upperalpha{list-style-type:upper-alpha} > +ol.lowerroman{list-style-type:lower-roman} > +ol.upperroman{list-style-type:upper-roman} > +ol.lowergreek{list-style-type:lower-greek} > +.hdlist>table,.colist>table{border:0;background:none} > +.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none} > +td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em} > +td.hdlist1{font-weight:bold;padding-bottom:1.25em} > +.literalblock+.colist,.listingblock+.colist{margin-top:-.5em} > +.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top} > +.colist td:not([class]):first-child img{max-width:none} > +.colist td:not([class]):last-child{padding:.25em 0} > +.thumb,.th{line-height:0;display:inline-block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px #ddd;box-shadow:0 0 0 1px #ddd} > +.imageblock.left,.imageblock[style*="float: left"]{margin:.25em .625em 1.25em 0} > +.imageblock.right,.imageblock[style*="float: right"]{margin:.25em 0 1.25em .625em} > +.imageblock>.title{margin-bottom:0} > +.imageblock.thumb,.imageblock.th{border-width:6px} > +.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em} > +.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0} > +.image.left{margin-right:.625em} > +.image.right{margin-left:.625em} > +a.image{text-decoration:none;display:inline-block} > +a.image object{pointer-events:none} > +sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super} > +sup.footnote a,sup.footnoteref a{text-decoration:none} > +sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline} > +#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em} > +#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0} > +#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em} > +#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em} > +#footnotes .footnote:last-of-type{margin-bottom:0} > +#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0} > +.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0} > +.gist .file-data>table td.line-data{width:99%} > +div.unbreakable{page-break-inside:avoid} > +.big{font-size:larger} > +.small{font-size:smaller} > +.underline{text-decoration:underline} > +.overline{text-decoration:overline} > +.line-through{text-decoration:line-through} > +.aqua{color:#00bfbf} > +.aqua-background{background-color:#00fafa} > +.black{color:#000} > +.black-background{background-color:#000} > +.blue{color:#0000bf} > +.blue-background{background-color:#0000fa} > +.fuchsia{color:#bf00bf} > +.fuchsia-background{background-color:#fa00fa} > +.gray{color:#606060} > +.gray-background{background-color:#7d7d7d} > +.green{color:#006000} > +.green-background{background-color:#007d00} > +.lime{color:#00bf00} > +.lime-background{background-color:#00fa00} > +.maroon{color:#600000} > +.maroon-background{background-color:#7d0000} > +.navy{color:#000060} > +.navy-background{background-color:#00007d} > +.olive{color:#606000} > +.olive-background{background-color:#7d7d00} > +.purple{color:#600060} > +.purple-background{background-color:#7d007d} > +.red{color:#bf0000} > +.red-background{background-color:#fa0000} > +.silver{color:#909090} > +.silver-background{background-color:#bcbcbc} > +.teal{color:#006060} > +.teal-background{background-color:#007d7d} > +.white{color:#bfbfbf} > +.white-background{background-color:#fafafa} > +.yellow{color:#bfbf00} > +.yellow-background{background-color:#fafa00} > +span.icon>.fa{cursor:default} > +a span.icon>.fa{cursor:inherit} > +.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default} > +.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c} > +.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111} > +.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900} > +.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400} > +.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000} > +.conum[data-value]{display:inline-block;color:#fff!important;background-color:rgba(0,0,0,.8);-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold} > +.conum[data-value] *{color:#fff!important} > +.conum[data-value]+b{display:none} > +.conum[data-value]::after{content:attr(data-value)} > +pre .conum[data-value]{position:relative;top:-.125em} > +b.conum *{color:inherit!important} > +.conum:not([data-value]):empty{display:none} > +dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility} > +h1,h2,p,td.content,span.alt{letter-spacing:-.01em} > +p strong,td.content strong,div.footnote strong{letter-spacing:-.005em} > +p,blockquote,dt,td.content,span.alt{font-size:1.0625rem} > +p{margin-bottom:1.25rem} > +.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em} > +.exampleblock>.content{background-color:#fffef7;border-color:#e0e0dc;-webkit-box-shadow:0 1px 4px #e0e0dc;box-shadow:0 1px 4px #e0e0dc} > +.print-only{display:none!important} > +@page{margin:1.25cm .75cm} > +@media print{*{-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important} > +html{font-size:80%} > +a{color:inherit!important;text-decoration:underline!important} > +a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important} > +a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em} > +abbr[title]::after{content:" (" attr(title) ")"} > +pre,blockquote,tr,img,object,svg{page-break-inside:avoid} > +thead{display:table-header-group} > +svg{max-width:100%} > +p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3} > +h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid} > +#toc,.sidebarblock,.exampleblock>.content{background:none!important} > +#toc{border-bottom:1px solid #ddddd8!important;padding-bottom:0!important} > +body.book #header{text-align:center} > +body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em} > +body.book #header .details{border:0!important;display:block;padding:0!important} > +body.book #header .details span:first-child{margin-left:0!important} > +body.book #header .details br{display:block} > +body.book #header .details br+span::before{content:none!important} > +body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important} > +body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always} > +.listingblock code[data-lang]::before{display:block} > +#footer{padding:0 .9375em} > +.hide-on-print{display:none!important} > +.print-only{display:block!important} > +.hide-for-print{display:none!important} > +.show-for-print{display:inherit!important}} > +@media print,amzn-kf8{#header>h1:first-child{margin-top:1.25rem} > +.sect1{padding:0!important} > +.sect1+.sect1{border:0} > +#footer{background:none} > +#footer-text{color:rgba(0,0,0,.6);font-size:.9em}} > +@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}} > +</style> > +</head> > +<body class="article"> > +<div id="header"> > +<h1>Report creation - Admin/Super-User</h1> > +</div> > +<div id="content"> > +<div class="sect1"> > +<h2 id="_introduction">Introduction</h2> > +<div class="sectionbody"> > +<div class="admonitionblock note"> > +<table> > +<tr> > +<td class="icon"> > +<div class="title">Note</div> > +</td> > +<td class="content"> > +this feature will be officially available with the R17.12 branch first release > +</td> > +</tr> > +</table> > +</div> > +<div class="paragraph"> > +<p>A flexible report is an OFBiz content of FLEXIBLE_REPORT type that allows a final user to make use of the reporting module to obtain flexible reports, ie reports which are created from an entity or view definition and even from a service. A flexible report is created from a Report Master (content REPORT_MASTER), and an optional XML override of the parent form.</p> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_pre_requisite">Pre-requisite</h2> > +<div class="sectionbody"> > +<div class="ulist"> > +<ul> > +<li> > +<p>OFBiz framework</p> > +</li> > +<li> > +<p>The Birt plugin</p> > +</li> > +<li> > +<p>The BIRT Report Designer</p> > +</li> > +</ul> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_report_creation">Report creation</h2> > +<div class="sectionbody"> > +<div class="olist arabic"> > +<ol class="arabic"> > +<li> > +<p>Get to Birt component in OFBiz <span class="image"><img src="https://cwiki.apache.org/confluence/download/attachments/68720496/Birt%20Menus.png?api=v2" alt="Birt menus"></span></p> > +</li> > +<li> > +<p>Click on the "Flexible Report" menu (varies depending on themes)</p> > +</li> > +<li> > +<p>Click on the "Generate report" button, you get to this screen:</p> > +</li> > +<li> > +<p>Fill the form: > +<span class="image"><img src="https://cwiki.apache.org/confluence/download/attachments/68720496/Example%20Report.png?api=v2" alt="Example Report"></span></p> > +<div class="ulist"> > +<ul> > +<li> > +<p>The list "Choose report topic" will let you choose among predefined report masters your topic of interest.</p> > +</li> > +<li> > +<p>The report name is a simple short name from which the file name will be generated.</p> > +</li> > +<li> > +<p>The description is a short description which will allow you to recognise the report and its topic.</p> > +</li> > +<li> > +<p>The box "Generate filters in design" will add in the design the visualisation of the filters filled in the filtering form.</p> > +</li> > +</ul> > +</div> > +</li> > +</ol> > +</div> > +<div class="paragraph"> > +<p>Finally, if you don’t find what you want, you will need to create a new Report Master…​</p> > +</div> > +<div class="paragraph"> > +<p>Once the form is validated, OFBiz will show you the "Edit Report" screen. <span class="image"><img src="https://cwiki.apache.org/confluence/download/attachments/68720496/Edit%20Report%20screen.png?api=v2" alt="Edit Report screen"></span></p> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_report_information">Report information</h2> > +<div class="sectionbody"> > +<div class="paragraph"> > +<p>This first panel allows you to change the report description and status. Actually it does not make sense changing the status to published before having downloaded the .rptdesign file (Birt Report Designer file) from the server (in database), edited and uploaded it back to the server. This is explained in the section below. Changing the status allows users to use your reports. But if you publish without any change the report will render as empty.</p> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_the_rptdesign_report_file_download_edit_upload_and_publish_it">The .rptdesign report file: download, edit, upload and publish it</h2> > +<div class="sectionbody"> > +<div class="paragraph"> > +<p>To really use the report you need to download the .rptdesign file from the server in a location from where you can edit it with the BIRT Report Designer. So you need to install first the BIRT Report Designer. Then you can edit the .rptdesign file in the BIRT Report Designer. For that refer to the <a href="https://svn.apache.org/repos/asf/ofbiz/ofbiz-plugins/trunk/birt/documents/Using%20the%20Birt%20Report%20Designer.md.html">"Using the Birt Report Designer.md.html" file</a>. You can also find the Markdonw version in the same directory: ofbiz-framework/plugins/birt/documents</p> > +</div> > +<div class="sect2"> > +<h3 id="_editing_the_downloaded_file">Editing the downloaded file</h3> > +<div class="paragraph"> > +<p>Once you installed the BIRT Report Designer and have downloaded the .rptdesign file, you can edit it with the Birt Report Designer. When you have edited it suiting your needs you must upload it to the server for your changes to be taken into account by OFBiz.</p> > +</div> > +<div class="paragraph"> > +<p><strong>This is when things begin to be really interesting</strong>. You can then test your report using the "Preview" panel. There you can temporarily filter the result, and use the export format you prefer, once done click "Send". You can then decide to change the report content in the Birt Report Designer again or keep your changes. Once done in the Birt Report Designer, simply select the changed file to upload, and upload it again. You can re-test your changes and continue until you really get what you want! You can then publish the report to allow users to select and use it. There are 2 ways to publish a report from the "Manage reports" screen or directly in the "Report information" panel. We will see the "Manage reports" screen below.</p> > +</div> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_filters_overriding">Filters Overriding</h2> > +<div class="sectionbody"> > +<div class="paragraph"> > +<p>You may want to overide the default filters. You can then use the Xml "Override filters" panel to override and personnalize the form, once done click "Save". If you ignore that step, it will <strong>NOT</strong> prevent the report creation, <strong>it is already done</strong>, it will just be with the generic filtering form inherited from the master from.</p> > +</div> > +<div class="admonitionblock note"> > +<table> > +<tr> > +<td class="icon"> > +<div class="title">Note</div> > +</td> > +<td class="content"> > +if no preview is available, it is usually due to a mistake in the master form code. You can edit it in the database. > +</td> > +</tr> > +</table> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_manage_reports">Manage reports</h2> > +<div class="sectionbody"> > +<div class="paragraph"> > +<p>The "Manage reports" button get you to a screen which allows to edit (get back to current page), publish or delete a report.</p> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_use_a_report">Use a report</h2> > +<div class="sectionbody"> > +<div class="paragraph"> > +<p>Users can select and use any published report from that screen. When they select a report they then get the same "Preview" Panel and can do the same things than in the "Edit Report" screen. Refer users to</p> > +</div> > +</div> > +</div> > +</div> > +<div id="footer"> > +<div id="footer-text"> > +Last updated 2018-10-04 08:22:04 Paris, Madrid (heure dÃÃtÃ) > +</div> > +</div> > +</body> > +</html> > \ No newline at end of file > > Propchange: ofbiz/tools/wiki-files/birt/Creating reports.html > ------------------------------------------------------------------------------ > svn:eol-style = native > > Propchange: ofbiz/tools/wiki-files/birt/Creating reports.html > ------------------------------------------------------------------------------ > svn:keywords = Date Rev Author URL Id > > Propchange: ofbiz/tools/wiki-files/birt/Creating reports.html > ------------------------------------------------------------------------------ > svn:mime-type = text/html > > Added: ofbiz/tools/wiki-files/birt/How to use flexible reports.html > URL: http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/birt/How%20to%20use%20flexible%20reports.html?rev=1846159&view=auto > ============================================================================== > --- ofbiz/tools/wiki-files/birt/How to use flexible reports.html (added) > +++ ofbiz/tools/wiki-files/birt/How to use flexible reports.html Thu Nov 8 15:17:25 2018 > @@ -0,0 +1,522 @@ > +<!DOCTYPE html> > +<html lang="en"> > +<head> > +<meta charset="UTF-8"> > +<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]--> > +<meta name="viewport" content="width=device-width, initial-scale=1.0"> > +<meta name="generator" content="Asciidoctor 1.5.7.1"> > +<title>Using a flexible report - User</title> > +<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700"> > +<style> > +/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */ > +/* Uncomment @import statement below to use as custom stylesheet */ > +/*@import "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700";*/ > +article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block} > +audio,canvas,video{display:inline-block} > +audio:not([controls]){display:none;height:0} > +script{display:none!important} > +html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%} > +a{background:transparent} > +a:focus{outline:thin dotted} > +a:active,a:hover{outline:0} > +h1{font-size:2em;margin:.67em 0} > +abbr[title]{border-bottom:1px dotted} > +b,strong{font-weight:bold} > +dfn{font-style:italic} > +hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0} > +mark{background:#ff0;color:#000} > +code,kbd,pre,samp{font-family:monospace;font-size:1em} > +pre{white-space:pre-wrap} > +q{quotes:"\201C" "\201D" "\2018" "\2019"} > +small{font-size:80%} > +sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline} > +sup{top:-.5em} > +sub{bottom:-.25em} > +img{border:0} > +svg:not(:root){overflow:hidden} > +figure{margin:0} > +fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em} > +legend{border:0;padding:0} > +button,input,select,textarea{font-family:inherit;font-size:100%;margin:0} > +button,input{line-height:normal} > +button,select{text-transform:none} > +button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer} > +button[disabled],html input[disabled]{cursor:default} > +input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0} > +button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0} > +textarea{overflow:auto;vertical-align:top} > +table{border-collapse:collapse;border-spacing:0} > +*,*::before,*::after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box} > +html,body{font-size:100%} > +body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased} > +a:hover{cursor:pointer} > +img,object,embed{max-width:100%;height:auto} > +object,embed{height:100%} > +img{-ms-interpolation-mode:bicubic} > +.left{float:left!important} > +.right{float:right!important} > +.text-left{text-align:left!important} > +.text-right{text-align:right!important} > +.text-center{text-align:center!important} > +.text-justify{text-align:justify!important} > +.hide{display:none} > +img,object,svg{display:inline-block;vertical-align:middle} > +textarea{height:auto;min-height:50px} > +select{width:100%} > +.center{margin-left:auto;margin-right:auto} > +.stretch{width:100%} > +.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em} > +div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr} > +a{color:#2156a5;text-decoration:underline;line-height:inherit} > +a:hover,a:focus{color:#1d4b8f} > +a img{border:none} > +p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility} > +p aside{font-size:.875em;line-height:1.35;font-style:italic} > +h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em} > +h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0} > +h1{font-size:2.125em} > +h2{font-size:1.6875em} > +h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em} > +h4,h5{font-size:1.125em} > +h6{font-size:1em} > +hr{border:solid #ddddd8;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0} > +em,i{font-style:italic;line-height:inherit} > +strong,b{font-weight:bold;line-height:inherit} > +small{font-size:60%;line-height:inherit} > +code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)} > +ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit} > +ul,ol{margin-left:1.5em} > +ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em} > +ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit} > +ul.square{list-style-type:square} > +ul.circle{list-style-type:circle} > +ul.disc{list-style-type:disc} > +ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0} > +dl dt{margin-bottom:.3125em;font-weight:bold} > +dl dd{margin-bottom:1.25em} > +abbr,acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help} > +abbr{text-transform:none} > +blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd} > +blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)} > +blockquote cite::before{content:"\2014 \0020"} > +blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,.6)} > +blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)} > +@media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2} > +h1{font-size:2.75em} > +h2{font-size:2.3125em} > +h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em} > +h4{font-size:1.4375em}} > +table{background:#fff;margin-bottom:1.25em;border:solid 1px #dedede} > +table thead,table tfoot{background:#f7f8f7} > +table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left} > +table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)} > +table tr.even,table tr.alt,table tr:nth-of-type(even){background:#f8f8f7} > +table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6} > +h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em} > +h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400} > +.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table} > +.clearfix::after,.float-group::after{clear:both} > +*:not(pre)>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background-color:#f7f7f8;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word} > +*:not(pre)>code.nobreak{word-wrap:normal} > +*:not(pre)>code.nowrap{white-space:nowrap} > +pre,pre>code{line-height:1.45;color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;text-rendering:optimizeSpeed} > +em em{font-style:normal} > +strong strong{font-weight:400} > +.keyseq{color:rgba(51,51,51,.8)} > +kbd{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background-color:#f7f7f7;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em white inset;box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em #fff inset;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap} > +.keyseq kbd:first-child{margin-left:0} > +.keyseq kbd:last-child{margin-right:0} > +.menuseq,.menuref{color:#000} > +.menuseq b:not(.caret),.menuref{font-weight:inherit} > +.menuseq{word-spacing:-.02em} > +.menuseq b.caret{font-size:1.25em;line-height:.8} > +.menuseq i.caret{font-weight:bold;text-align:center;width:.45em} > +b.button::before,b.button::after{position:relative;top:-1px;font-weight:400} > +b.button::before{content:"[";padding:0 3px 0 2px} > +b.button::after{content:"]";padding:0 2px 0 3px} > +p a>code:hover{color:rgba(0,0,0,.9)} > +#header,#content,#footnotes,#footer{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em} > +#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" ";display:table} > +#header::after,#content::after,#footnotes::after,#footer::after{clear:both} > +#content{margin-top:1.25em} > +#content::before{content:none} > +#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0} > +#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #ddddd8} > +#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #ddddd8;padding-bottom:8px} > +#header .details{border-bottom:1px solid #ddddd8;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap} > +#header .details span:first-child{margin-left:-.125em} > +#header .details span.email a{color:rgba(0,0,0,.85)} > +#header .details br{display:none} > +#header .details br+span::before{content:"\00a0\2013\00a0"} > +#header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)} > +#header .details br+span#revremark::before{content:"\00a0|\00a0"} > +#header #revnumber{text-transform:capitalize} > +#header #revnumber::after{content:"\00a0"} > +#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #ddddd8;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem} > +#toc{border-bottom:1px solid #efefed;padding-bottom:.5em} > +#toc>ul{margin-left:.125em} > +#toc ul.sectlevel0>li>a{font-style:italic} > +#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0} > +#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none} > +#toc li{line-height:1.3334;margin-top:.3334em} > +#toc a{text-decoration:none} > +#toc a:active{text-decoration:underline} > +#toctitle{color:#7a2518;font-size:1.2em} > +@media screen and (min-width:768px){#toctitle{font-size:1.375em} > +body.toc2{padding-left:15em;padding-right:0} > +#toc.toc2{margin-top:0!important;background-color:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto} > +#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em} > +#toc.toc2>ul{font-size:.9em;margin-bottom:0} > +#toc.toc2 ul ul{margin-left:0;padding-left:1em} > +#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em} > +body.toc2.toc-right{padding-left:0;padding-right:15em} > +body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #efefed;left:auto;right:0}} > +@media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0} > +#toc.toc2{width:20em} > +#toc.toc2 #toctitle{font-size:1.375em} > +#toc.toc2>ul{font-size:.95em} > +#toc.toc2 ul ul{padding-left:1.25em} > +body.toc2.toc-right{padding-left:0;padding-right:20em}} > +#content #toc{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} > +#content #toc>:first-child{margin-top:0} > +#content #toc>:last-child{margin-bottom:0} > +#footer{max-width:100%;background-color:rgba(0,0,0,.8);padding:1.25em} > +#footer-text{color:rgba(255,255,255,.8);line-height:1.44} > +#content{margin-bottom:.625em} > +.sect1{padding-bottom:.625em} > +@media screen and (min-width:768px){#content{margin-bottom:1.25em} > +.sect1{padding-bottom:1.25em}} > +.sect1:last-child{padding-bottom:0} > +.sect1+.sect1{border-top:1px solid #efefed} > +#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400} > +#content h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em} > +#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible} > +#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none} > +#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221} > +.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em} > +.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic} > +table.tableblock.fit-content>caption.title{white-space:nowrap;width:0} > +.paragraph.lead>p,#preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)} > +table.tableblock #preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:inherit} > +.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%} > +.admonitionblock>table td.icon{text-align:center;width:80px} > +.admonitionblock>table td.icon img{max-width:none} > +.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase} > +.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #ddddd8;color:rgba(0,0,0,.6)} > +.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0} > +.exampleblock>.content{border-style:solid;border-width:1px;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;-webkit-border-radius:4px;border-radius:4px} > +.exampleblock>.content>:first-child{margin-top:0} > +.exampleblock>.content>:last-child{margin-bottom:0} > +.sidebarblock{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} > +.sidebarblock>:first-child{margin-top:0} > +.sidebarblock>:last-child{margin-bottom:0} > +.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center} > +.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0} > +.literalblock pre,.listingblock pre:not(.highlight),.listingblock pre[class="highlight"],.listingblock pre[class^="highlight "],.listingblock pre.CodeRay,.listingblock pre.prettyprint{background:#f7f7f8} > +.sidebarblock .literalblock pre,.sidebarblock .listingblock pre:not(.highlight),.sidebarblock .listingblock pre[class="highlight"],.sidebarblock .listingblock pre[class^="highlight "],.sidebarblock .listingblock pre.CodeRay,.sidebarblock .listingblock pre.prettyprint{background:#f2f1f1} > +.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{-webkit-border-radius:4px;border-radius:4px;word-wrap:break-word;padding:1em;font-size:.8125em} > +.literalblock pre.nowrap,.literalblock pre[class].nowrap,.listingblock pre.nowrap,.listingblock pre[class].nowrap{overflow-x:auto;white-space:pre;word-wrap:normal} > +@media screen and (min-width:768px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:.90625em}} > +@media screen and (min-width:1280px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:1em}} > +.literalblock.output pre{color:#f7f7f8;background-color:rgba(0,0,0,.9)} > +.listingblock pre.highlightjs{padding:0} > +.listingblock pre.highlightjs>code{padding:1em;-webkit-border-radius:4px;border-radius:4px} > +.listingblock pre.prettyprint{border-width:0} > +.listingblock>.content{position:relative} > +.listingblock code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:#999} > +.listingblock:hover code[data-lang]::before{display:block} > +.listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:#999} > +.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"} > +table.pyhltable{border-collapse:separate;border:0;margin-bottom:0;background:none} > +table.pyhltable td{vertical-align:top;padding-top:0;padding-bottom:0;line-height:1.45} > +table.pyhltable td.code{padding-left:.75em;padding-right:0} > +pre.pygments .lineno,table.pyhltable td:not(.code){color:#999;padding-left:0;padding-right:.5em;border-right:1px solid #ddddd8} > +pre.pygments .lineno{display:inline-block;margin-right:.25em} > +table.pyhltable .linenodiv{background:none!important;padding-right:0!important} > +.quoteblock{margin:0 1em 1.25em 1.5em;display:table} > +.quoteblock>.title{margin-left:-1.5em;margin-bottom:.75em} > +.quoteblock blockquote,.quoteblock blockquote p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify} > +.quoteblock blockquote{margin:0;padding:0;border:0} > +.quoteblock blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)} > +.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0} > +.quoteblock .attribution{margin-top:.5em;margin-right:.5ex;text-align:right} > +.quoteblock .quoteblock{margin-left:0;margin-right:0;padding:.5em 0;border-left:3px solid rgba(0,0,0,.6)} > +.quoteblock .quoteblock blockquote{padding:0 0 0 .75em} > +.quoteblock .quoteblock blockquote::before{display:none} > +.verseblock{margin:0 1em 1.25em} > +.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility} > +.verseblock pre strong{font-weight:400} > +.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex} > +.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic} > +.quoteblock .attribution br,.verseblock .attribution br{display:none} > +.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)} > +.quoteblock.abstract{margin:0 1em 1.25em;display:block} > +.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center} > +.quoteblock.abstract blockquote,.quoteblock.abstract blockquote p{word-spacing:0;line-height:1.6} > +.quoteblock.abstract blockquote::before,.quoteblock.abstract p::before{display:none} > +table.tableblock{max-width:100%;border-collapse:separate} > +p.tableblock:last-child{margin-bottom:0} > +td.tableblock>.content{margin-bottom:-1.25em} > +table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede} > +table.grid-all>thead>tr>.tableblock,table.grid-all>tbody>tr>.tableblock{border-width:0 1px 1px 0} > +table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0} > +table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0} > +table.grid-rows>thead>tr>.tableblock,table.grid-rows>tbody>tr>.tableblock{border-width:0 0 1px} > +table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0} > +table.grid-all>*>tr>.tableblock:last-child,table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0} > +table.grid-all>tbody>tr:last-child>.tableblock,table.grid-all>thead:last-child>tr>.tableblock,table.grid-rows>tbody>tr:last-child>.tableblock,table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0} > +table.frame-all{border-width:1px} > +table.frame-sides{border-width:0 1px} > +table.frame-topbot,table.frame-ends{border-width:1px 0} > +table.stripes-all tr,table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7} > +table.stripes-none tr,table.stripes-odd tr:nth-of-type(even){background:none} > +th.halign-left,td.halign-left{text-align:left} > +th.halign-right,td.halign-right{text-align:right} > +th.halign-center,td.halign-center{text-align:center} > +th.valign-top,td.valign-top{vertical-align:top} > +th.valign-bottom,td.valign-bottom{vertical-align:bottom} > +th.valign-middle,td.valign-middle{vertical-align:middle} > +table thead th,table tfoot th{font-weight:bold} > +tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7} > +tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold} > +p.tableblock>code:only-child{background:none;padding:0} > +p.tableblock{font-size:1em} > +td>div.verse{white-space:pre} > +ol{margin-left:1.75em} > +ul li ol{margin-left:1.5em} > +dl dd{margin-left:1.125em} > +dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0} > +ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em} > +ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none} > +ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em} > +ul.unstyled,ol.unstyled{margin-left:0} > +ul.checklist{margin-left:.625em} > +ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em} > +ul.checklist li>p:first-child>input[type="checkbox"]:first-child{margin-right:.25em} > +ul.inline{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em} > +ul.inline>li{margin-left:1.25em} > +.unstyled dl dt{font-weight:400;font-style:normal} > +ol.arabic{list-style-type:decimal} > +ol.decimal{list-style-type:decimal-leading-zero} > +ol.loweralpha{list-style-type:lower-alpha} > +ol.upperalpha{list-style-type:upper-alpha} > +ol.lowerroman{list-style-type:lower-roman} > +ol.upperroman{list-style-type:upper-roman} > +ol.lowergreek{list-style-type:lower-greek} > +.hdlist>table,.colist>table{border:0;background:none} > +.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none} > +td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em} > +td.hdlist1{font-weight:bold;padding-bottom:1.25em} > +.literalblock+.colist,.listingblock+.colist{margin-top:-.5em} > +.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top} > +.colist td:not([class]):first-child img{max-width:none} > +.colist td:not([class]):last-child{padding:.25em 0} > +.thumb,.th{line-height:0;display:inline-block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px #ddd;box-shadow:0 0 0 1px #ddd} > +.imageblock.left,.imageblock[style*="float: left"]{margin:.25em .625em 1.25em 0} > +.imageblock.right,.imageblock[style*="float: right"]{margin:.25em 0 1.25em .625em} > +.imageblock>.title{margin-bottom:0} > +.imageblock.thumb,.imageblock.th{border-width:6px} > +.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em} > +.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0} > +.image.left{margin-right:.625em} > +.image.right{margin-left:.625em} > +a.image{text-decoration:none;display:inline-block} > +a.image object{pointer-events:none} > +sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super} > +sup.footnote a,sup.footnoteref a{text-decoration:none} > +sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline} > +#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em} > +#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0} > +#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em} > +#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em} > +#footnotes .footnote:last-of-type{margin-bottom:0} > +#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0} > +.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0} > +.gist .file-data>table td.line-data{width:99%} > +div.unbreakable{page-break-inside:avoid} > +.big{font-size:larger} > +.small{font-size:smaller} > +.underline{text-decoration:underline} > +.overline{text-decoration:overline} > +.line-through{text-decoration:line-through} > +.aqua{color:#00bfbf} > +.aqua-background{background-color:#00fafa} > +.black{color:#000} > +.black-background{background-color:#000} > +.blue{color:#0000bf} > +.blue-background{background-color:#0000fa} > +.fuchsia{color:#bf00bf} > +.fuchsia-background{background-color:#fa00fa} > +.gray{color:#606060} > +.gray-background{background-color:#7d7d7d} > +.green{color:#006000} > +.green-background{background-color:#007d00} > +.lime{color:#00bf00} > +.lime-background{background-color:#00fa00} > +.maroon{color:#600000} > +.maroon-background{background-color:#7d0000} > +.navy{color:#000060} > +.navy-background{background-color:#00007d} > +.olive{color:#606000} > +.olive-background{background-color:#7d7d00} > +.purple{color:#600060} > +.purple-background{background-color:#7d007d} > +.red{color:#bf0000} > +.red-background{background-color:#fa0000} > +.silver{color:#909090} > +.silver-background{background-color:#bcbcbc} > +.teal{color:#006060} > +.teal-background{background-color:#007d7d} > +.white{color:#bfbfbf} > +.white-background{background-color:#fafafa} > +.yellow{color:#bfbf00} > +.yellow-background{background-color:#fafa00} > +span.icon>.fa{cursor:default} > +a span.icon>.fa{cursor:inherit} > +.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default} > +.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c} > +.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111} > +.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900} > +.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400} > +.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000} > +.conum[data-value]{display:inline-block;color:#fff!important;background-color:rgba(0,0,0,.8);-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold} > +.conum[data-value] *{color:#fff!important} > +.conum[data-value]+b{display:none} > +.conum[data-value]::after{content:attr(data-value)} > +pre .conum[data-value]{position:relative;top:-.125em} > +b.conum *{color:inherit!important} > +.conum:not([data-value]):empty{display:none} > +dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility} > +h1,h2,p,td.content,span.alt{letter-spacing:-.01em} > +p strong,td.content strong,div.footnote strong{letter-spacing:-.005em} > +p,blockquote,dt,td.content,span.alt{font-size:1.0625rem} > +p{margin-bottom:1.25rem} > +.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em} > +.exampleblock>.content{background-color:#fffef7;border-color:#e0e0dc;-webkit-box-shadow:0 1px 4px #e0e0dc;box-shadow:0 1px 4px #e0e0dc} > +.print-only{display:none!important} > +@page{margin:1.25cm .75cm} > +@media print{*{-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important} > +html{font-size:80%} > +a{color:inherit!important;text-decoration:underline!important} > +a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important} > +a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em} > +abbr[title]::after{content:" (" attr(title) ")"} > +pre,blockquote,tr,img,object,svg{page-break-inside:avoid} > +thead{display:table-header-group} > +svg{max-width:100%} > +p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3} > +h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid} > +#toc,.sidebarblock,.exampleblock>.content{background:none!important} > +#toc{border-bottom:1px solid #ddddd8!important;padding-bottom:0!important} > +body.book #header{text-align:center} > +body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em} > +body.book #header .details{border:0!important;display:block;padding:0!important} > +body.book #header .details span:first-child{margin-left:0!important} > +body.book #header .details br{display:block} > +body.book #header .details br+span::before{content:none!important} > +body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important} > +body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always} > +.listingblock code[data-lang]::before{display:block} > +#footer{padding:0 .9375em} > +.hide-on-print{display:none!important} > +.print-only{display:block!important} > +.hide-for-print{display:none!important} > +.show-for-print{display:inherit!important}} > +@media print,amzn-kf8{#header>h1:first-child{margin-top:1.25rem} > +.sect1{padding:0!important} > +.sect1+.sect1{border:0} > +#footer{background:none} > +#footer-text{color:rgba(0,0,0,.6);font-size:.9em}} > +@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}} > +</style> > +</head> > +<body class="article"> > +<div id="header"> > +<h1>Using a flexible report - User</h1> > +</div> > +<div id="content"> > +<div class="sect1"> > +<h2 id="_introduction">Introduction</h2> > +<div class="sectionbody"> > +<div class="admonitionblock note"> > +<table> > +<tr> > +<td class="icon"> > +<div class="title">Note</div> > +</td> > +<td class="content"> > +this feature will be officially available with the R17.12 branch first release > +</td> > +</tr> > +</table> > +</div> > +<div class="paragraph"> > +<p>A flexible report is an OFBiz content of FLEXIBLE_REPORT type which allows the final user to obtain reports using the Birt reporting module. It will be produced at a specific time of your choosing, with your chosen output format, filtering the data with a few parameters defined during report design creation.</p> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_pre_requisite">Pre-requisite</h2> > +<div class="sectionbody"> > +<div class="ulist"> > +<ul> > +<li> > +<p>OFBiz</p> > +</li> > +<li> > +<p>The Birt plugin</p> > +</li> > +<li> > +<p>Pre-published reports created from report masters</p> > +</li> > +</ul> > +</div> > +</div> > +</div> > +<div class="sect1"> > +<h2 id="_using_the_report">Using the report</h2> > +<div class="sectionbody"> > +<div class="olist arabic"> > +<ol class="arabic"> > +<li> > +<p>go to the Birt component or to another page harboring reports.</p> > +</li> > +<li> > +<p>In the Birt component, click "Use a report".</p> > +</li> > +<li> > +<p>Select your report and hit "Send".</p> > +</li> > +<li> > +<p>The next screen will allow you to filter your data through a set of pre-defined criteria. Should you leave it empty, you will retrieve unfiltered data.</p> > +</li> > +<li> > +<p>Select the desired export format</p> > +</li> > +<li> > +<p>Upon validation, your report is now loaded and can be saved.</p> > +</li> > +</ol> > +</div> > +<div class="admonitionblock note"> > +<table> > +<tr> > +<td class="icon"> > +<div class="title">Note</div> > +</td> > +<td class="content"> > +Report loading can be a bit long depending on the data treatment > +</td> > +</tr> > +</table> > +</div> > +</div> > +</div> > +</div> > +<div id="footer"> > +<div id="footer-text"> > +Last updated 2018-10-04 08:23:06 Paris, Madrid (heure dÃÃtÃ) > +</div> > +</div> > +</body> > +</html> > \ No newline at end of file > > Propchange: ofbiz/tools/wiki-files/birt/How to use flexible reports.html > ------------------------------------------------------------------------------ > svn:eol-style = native > > Propchange: ofbiz/tools/wiki-files/birt/How to use flexible reports.html > ------------------------------------------------------------------------------ > svn:keywords = Date Rev Author URL Id > > Propchange: ofbiz/tools/wiki-files/birt/How to use flexible reports.html > ------------------------------------------------------------------------------ > svn:mime-type = text/html > > > |
Administrator
|
OK, I'm answering to myself.
Duplicating documentation in wiki is not a good ideas as soon as the Asciidoc documentation exists in a branch. Else you end with multi versions to handle in wiki and that's a no good. So I'll remove them when an Asciidoc documentation exists. Jacques Le 08/11/2018 à 16:25, Jacques Le Roux a écrit : > Hi, > > I was wondering, now that we have the embedded documentation, is it still worth to duplicate in Wiki? > > Thanks > > Jacques > > > Le 08/11/2018 à 16:17, [hidden email] a écrit : >> Author: jleroux >> Date: Thu Nov 8 15:17:25 2018 >> New Revision: 1846159 >> >> URL: http://svn.apache.org/viewvc?rev=1846159&view=rev >> Log: >> No functional changes >> >> Updates updateWiki.bat to use AsciiDoctor >> Removes *.md.html files, replaces them by *.html from AsciiDoctor >> >> I'll update the wiki page... >> >> Added: >> ofbiz/tools/wiki-files/birt/Creating reports.html (with props) >> ofbiz/tools/wiki-files/birt/How to use flexible reports.html (with props) >> ofbiz/tools/wiki-files/birt/Report master creation.html (with props) >> ofbiz/tools/wiki-files/birt/Using the Birt Report Designer.html (with props) >> Removed: >> ofbiz/tools/wiki-files/birt/Creating reports.md.html >> ofbiz/tools/wiki-files/birt/How to use flexible reports.md.html >> ofbiz/tools/wiki-files/birt/Report master creation.md.html >> ofbiz/tools/wiki-files/birt/Using the Birt Report Designer.md.html >> Modified: >> ofbiz/tools/updateWiki.bat >> ofbiz/tools/wiki-files/README.html >> >> Modified: ofbiz/tools/updateWiki.bat >> URL: http://svn.apache.org/viewvc/ofbiz/tools/updateWiki.bat?rev=1846159&r1=1846158&r2=1846159&view=diff >> ============================================================================== >> --- ofbiz/tools/updateWiki.bat (original) >> +++ ofbiz/tools/updateWiki.bat Thu Nov 8 15:17:25 2018 >> @@ -5,10 +5,10 @@ pandoc applications/datamodel/DATAMODEL_ >> pandoc themes/README.md -s -o tools/wiki-files/themes/README.md.html >> call asciidoctor README.adoc -o tools/wiki-files/README.html >> -call asciidoctor "plugins/birt/documents/Creating reports.md" -o "tools/wiki-files/birt/Creating reports.md.html" >> -call asciidoctor "plugins/birt/documents/Using the Birt Report Designer.md" -o "tools/wiki-files/birt/Using the Birt Report Designer.md.html" >> -call asciidoctor "plugins/birt/documents/How to use flexible reports.md" -o "tools/wiki-files/birt/How to use flexible reports.md.html" >> -call asciidoctor "plugins/birt/documents/Report master creation.md" -o "tools/wiki-files/birt/Report master creation.md.html" >> +call asciidoctor "plugins/birt/documents/Creating reports.adoc" -o "tools/wiki-files/birt/Creating reports.html" >> +call asciidoctor "plugins/birt/documents/Using the Birt Report Designer.adoc" -o "tools/wiki-files/birt/Using the Birt Report Designer.html" >> +call asciidoctor "plugins/birt/documents/How to use flexible reports.adoc" -o "tools/wiki-files/birt/How to use flexible reports.html" >> +call asciidoctor "plugins/birt/documents/Report master creation.adoc" -o "tools/wiki-files/birt/Report master creation.html" >> pandoc tools/demo-backup/README.md -s -o tools/wiki-files/demos/README.md.html >> pandoc tools/documentation/BuildBot/BuildBot.md -s -o tools/wiki-files/BuildBot/BuildBot.md.html >> >> Modified: ofbiz/tools/wiki-files/README.html >> URL: http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/README.html?rev=1846159&r1=1846158&r2=1846159&view=diff >> ============================================================================== >> --- ofbiz/tools/wiki-files/README.html (original) >> +++ ofbiz/tools/wiki-files/README.html Thu Nov 8 15:17:25 2018 >> @@ -1644,7 +1644,7 @@ Secure Sockets Extension) API</p> >> </div> >> <div id="footer"> >> <div id="footer-text"> >> -Last updated 2018-03-29 10:39:46 Paris, Madrid (heure dÃÃtÃ) >> +Last updated 2018-09-14 08:19:31 Paris, Madrid (heure dÃÃtÃ) >> </div> >> </div> >> </body> >> >> Added: ofbiz/tools/wiki-files/birt/Creating reports.html >> URL: http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/birt/Creating%20reports.html?rev=1846159&view=auto >> ============================================================================== >> --- ofbiz/tools/wiki-files/birt/Creating reports.html (added) >> +++ ofbiz/tools/wiki-files/birt/Creating reports.html Thu Nov 8 15:17:25 2018 >> @@ -0,0 +1,588 @@ >> +<!DOCTYPE html> >> +<html lang="en"> >> +<head> >> +<meta charset="UTF-8"> >> +<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]--> >> +<meta name="viewport" content="width=device-width, initial-scale=1.0"> >> +<meta name="generator" content="Asciidoctor 1.5.7.1"> >> +<title>Report creation - Admin/Super-User</title> >> +<link rel="stylesheet" >> href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700"> >> +<style> >> +/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */ >> +/* Uncomment @import statement below to use as custom stylesheet */ >> +/*@import >> "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700";*/ >> +article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block} >> +audio,canvas,video{display:inline-block} >> +audio:not([controls]){display:none;height:0} >> +script{display:none!important} >> +html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%} >> +a{background:transparent} >> +a:focus{outline:thin dotted} >> +a:active,a:hover{outline:0} >> +h1{font-size:2em;margin:.67em 0} >> +abbr[title]{border-bottom:1px dotted} >> +b,strong{font-weight:bold} >> +dfn{font-style:italic} >> +hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0} >> +mark{background:#ff0;color:#000} >> +code,kbd,pre,samp{font-family:monospace;font-size:1em} >> +pre{white-space:pre-wrap} >> +q{quotes:"\201C" "\201D" "\2018" "\2019"} >> +small{font-size:80%} >> +sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline} >> +sup{top:-.5em} >> +sub{bottom:-.25em} >> +img{border:0} >> +svg:not(:root){overflow:hidden} >> +figure{margin:0} >> +fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em} >> +legend{border:0;padding:0} >> +button,input,select,textarea{font-family:inherit;font-size:100%;margin:0} >> +button,input{line-height:normal} >> +button,select{text-transform:none} >> +button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer} >> +button[disabled],html input[disabled]{cursor:default} >> +input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0} >> +button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0} >> +textarea{overflow:auto;vertical-align:top} >> +table{border-collapse:collapse;border-spacing:0} >> +*,*::before,*::after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box} >> +html,body{font-size:100%} >> +body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu >> Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased} >> +a:hover{cursor:pointer} >> +img,object,embed{max-width:100%;height:auto} >> +object,embed{height:100%} >> +img{-ms-interpolation-mode:bicubic} >> +.left{float:left!important} >> +.right{float:right!important} >> +.text-left{text-align:left!important} >> +.text-right{text-align:right!important} >> +.text-center{text-align:center!important} >> +.text-justify{text-align:justify!important} >> +.hide{display:none} >> +img,object,svg{display:inline-block;vertical-align:middle} >> +textarea{height:auto;min-height:50px} >> +select{width:100%} >> +.center{margin-left:auto;margin-right:auto} >> +.stretch{width:100%} >> +.subheader,.admonitionblock >> td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em} >> +div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr} >> +a{color:#2156a5;text-decoration:underline;line-height:inherit} >> +a:hover,a:focus{color:#1d4b8f} >> +a img{border:none} >> +p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility} >> +p aside{font-size:.875em;line-height:1.35;font-style:italic} >> +h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu >> Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em} >> +h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0} >> +h1{font-size:2.125em} >> +h2{font-size:1.6875em} >> +h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em} >> +h4,h5{font-size:1.125em} >> +h6{font-size:1em} >> +hr{border:solid #ddddd8;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0} >> +em,i{font-style:italic;line-height:inherit} >> +strong,b{font-weight:bold;line-height:inherit} >> +small{font-size:60%;line-height:inherit} >> +code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)} >> +ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit} >> +ul,ol{margin-left:1.5em} >> +ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em} >> +ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit} >> +ul.square{list-style-type:square} >> +ul.circle{list-style-type:circle} >> +ul.disc{list-style-type:disc} >> +ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0} >> +dl dt{margin-bottom:.3125em;font-weight:bold} >> +dl dd{margin-bottom:1.25em} >> +abbr,acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help} >> +abbr{text-transform:none} >> +blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd} >> +blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)} >> +blockquote cite::before{content:"\2014 \0020"} >> +blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,.6)} >> +blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)} >> +@media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2} >> +h1{font-size:2.75em} >> +h2{font-size:2.3125em} >> +h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em} >> +h4{font-size:1.4375em}} >> +table{background:#fff;margin-bottom:1.25em;border:solid 1px #dedede} >> +table thead,table tfoot{background:#f7f8f7} >> +table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em >> .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left} >> +table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)} >> +table tr.even,table tr.alt,table tr:nth-of-type(even){background:#f8f8f7} >> +table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6} >> +h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em} >> +h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400} >> +.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table} >> +.clearfix::after,.float-group::after{clear:both} >> +*:not(pre)>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em >> .5ex;word-spacing:-.15em;background-color:#f7f7f8;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word} >> >> +*:not(pre)>code.nobreak{word-wrap:normal} >> +*:not(pre)>code.nowrap{white-space:nowrap} >> +pre,pre>code{line-height:1.45;color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans >> Mono",monospace;font-weight:400;text-rendering:optimizeSpeed} >> +em em{font-style:normal} >> +strong strong{font-weight:400} >> +.keyseq{color:rgba(51,51,51,.8)} >> +kbd{font-family:"Droid Sans Mono","DejaVu Sans >> Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background-color:#f7f7f7;border:1px solid >> #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em white inset;box-shadow:0 1px 0 >> rgba(0,0,0,.2),0 0 0 .1em #fff inset;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap} >> +.keyseq kbd:first-child{margin-left:0} >> +.keyseq kbd:last-child{margin-right:0} >> +.menuseq,.menuref{color:#000} >> +.menuseq b:not(.caret),.menuref{font-weight:inherit} >> +.menuseq{word-spacing:-.02em} >> +.menuseq b.caret{font-size:1.25em;line-height:.8} >> +.menuseq i.caret{font-weight:bold;text-align:center;width:.45em} >> +b.button::before,b.button::after{position:relative;top:-1px;font-weight:400} >> +b.button::before{content:"[";padding:0 3px 0 2px} >> +b.button::after{content:"]";padding:0 2px 0 3px} >> +p a>code:hover{color:rgba(0,0,0,.9)} >> +#header,#content,#footnotes,#footer{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em} >> >> +#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" >> ";display:table} >> +#header::after,#content::after,#footnotes::after,#footer::after{clear:both} >> +#content{margin-top:1.25em} >> +#content::before{content:none} >> +#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0} >> +#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #ddddd8} >> +#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #ddddd8;padding-bottom:8px} >> +#header .details{border-bottom:1px solid >> #ddddd8;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row >> wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap} >> +#header .details span:first-child{margin-left:-.125em} >> +#header .details span.email a{color:rgba(0,0,0,.85)} >> +#header .details br{display:none} >> +#header .details br+span::before{content:"\00a0\2013\00a0"} >> +#header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)} >> +#header .details br+span#revremark::before{content:"\00a0|\00a0"} >> +#header #revnumber{text-transform:capitalize} >> +#header #revnumber::after{content:"\00a0"} >> +#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid >> #ddddd8;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem} >> +#toc{border-bottom:1px solid #efefed;padding-bottom:.5em} >> +#toc>ul{margin-left:.125em} >> +#toc ul.sectlevel0>li>a{font-style:italic} >> +#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0} >> +#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none} >> +#toc li{line-height:1.3334;margin-top:.3334em} >> +#toc a{text-decoration:none} >> +#toc a:active{text-decoration:underline} >> +#toctitle{color:#7a2518;font-size:1.2em} >> +@media screen and (min-width:768px){#toctitle{font-size:1.375em} >> +body.toc2{padding-left:15em;padding-right:0} >> +#toc.toc2{margin-top:0!important;background-color:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid >> #efefed;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto} >> +#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em} >> +#toc.toc2>ul{font-size:.9em;margin-bottom:0} >> +#toc.toc2 ul ul{margin-left:0;padding-left:1em} >> +#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em} >> +body.toc2.toc-right{padding-left:0;padding-right:15em} >> +body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #efefed;left:auto;right:0}} >> +@media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0} >> +#toc.toc2{width:20em} >> +#toc.toc2 #toctitle{font-size:1.375em} >> +#toc.toc2>ul{font-size:.95em} >> +#toc.toc2 ul ul{padding-left:1.25em} >> +body.toc2.toc-right{padding-left:0;padding-right:20em}} >> +#content >> #toc{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} >> +#content #toc>:first-child{margin-top:0} >> +#content #toc>:last-child{margin-bottom:0} >> +#footer{max-width:100%;background-color:rgba(0,0,0,.8);padding:1.25em} >> +#footer-text{color:rgba(255,255,255,.8);line-height:1.44} >> +#content{margin-bottom:.625em} >> +.sect1{padding-bottom:.625em} >> +@media screen and (min-width:768px){#content{margin-bottom:1.25em} >> +.sect1{padding-bottom:1.25em}} >> +.sect1:last-child{padding-bottom:0} >> +.sect1+.sect1{border-top:1px solid #efefed} >> +#content >> h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400} >> +#content >> h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em} >> +#content h1:hover>a.anchor,#content >> h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible} >> +#content >> h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none} >> +#content >> h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221} >> +.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em} >> +.admonitionblock >> td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto >> Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic} >> +table.tableblock.fit-content>caption.title{white-space:nowrap;width:0} >> +.paragraph.lead>p,#preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)} >> +table.tableblock #preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:inherit} >> +.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%} >> +.admonitionblock>table td.icon{text-align:center;width:80px} >> +.admonitionblock>table td.icon img{max-width:none} >> +.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase} >> +.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #ddddd8;color:rgba(0,0,0,.6)} >> +.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0} >> +.exampleblock>.content{border-style:solid;border-width:1px;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;-webkit-border-radius:4px;border-radius:4px} >> >> +.exampleblock>.content>:first-child{margin-top:0} >> +.exampleblock>.content>:last-child{margin-bottom:0} >> +.sidebarblock{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} >> >> +.sidebarblock>:first-child{margin-top:0} >> +.sidebarblock>:last-child{margin-bottom:0} >> +.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center} >> +.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content >> .ulist>ul>li:last-child>:last-child,.exampleblock>.content >> .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content >> .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content >> .qlist>ol>li:last-child>:last-child{margin-bottom:0} >> +.literalblock pre,.listingblock pre:not(.highlight),.listingblock pre[class="highlight"],.listingblock pre[class^="highlight "],.listingblock >> pre.CodeRay,.listingblock pre.prettyprint{background:#f7f7f8} >> +.sidebarblock .literalblock pre,.sidebarblock .listingblock pre:not(.highlight),.sidebarblock .listingblock pre[class="highlight"],.sidebarblock >> .listingblock pre[class^="highlight "],.sidebarblock .listingblock pre.CodeRay,.sidebarblock .listingblock pre.prettyprint{background:#f2f1f1} >> +.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock >> pre[class]{-webkit-border-radius:4px;border-radius:4px;word-wrap:break-word;padding:1em;font-size:.8125em} >> +.literalblock pre.nowrap,.literalblock pre[class].nowrap,.listingblock pre.nowrap,.listingblock >> pre[class].nowrap{overflow-x:auto;white-space:pre;word-wrap:normal} >> +@media screen and (min-width:768px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:.90625em}} >> +@media screen and (min-width:1280px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:1em}} >> +.literalblock.output pre{color:#f7f7f8;background-color:rgba(0,0,0,.9)} >> +.listingblock pre.highlightjs{padding:0} >> +.listingblock pre.highlightjs>code{padding:1em;-webkit-border-radius:4px;border-radius:4px} >> +.listingblock pre.prettyprint{border-width:0} >> +.listingblock>.content{position:relative} >> +.listingblock >> code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:#999} >> +.listingblock:hover code[data-lang]::before{display:block} >> +.listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:#999} >> +.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"} >> +table.pyhltable{border-collapse:separate;border:0;margin-bottom:0;background:none} >> +table.pyhltable td{vertical-align:top;padding-top:0;padding-bottom:0;line-height:1.45} >> +table.pyhltable td.code{padding-left:.75em;padding-right:0} >> +pre.pygments .lineno,table.pyhltable td:not(.code){color:#999;padding-left:0;padding-right:.5em;border-right:1px solid #ddddd8} >> +pre.pygments .lineno{display:inline-block;margin-right:.25em} >> +table.pyhltable .linenodiv{background:none!important;padding-right:0!important} >> +.quoteblock{margin:0 1em 1.25em 1.5em;display:table} >> +.quoteblock>.title{margin-left:-1.5em;margin-bottom:.75em} >> +.quoteblock blockquote,.quoteblock blockquote >> p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify} >> +.quoteblock blockquote{margin:0;padding:0;border:0} >> +.quoteblock >> blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px >> 2px rgba(0,0,0,.1)} >> +.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0} >> +.quoteblock .attribution{margin-top:.5em;margin-right:.5ex;text-align:right} >> +.quoteblock .quoteblock{margin-left:0;margin-right:0;padding:.5em 0;border-left:3px solid rgba(0,0,0,.6)} >> +.quoteblock .quoteblock blockquote{padding:0 0 0 .75em} >> +.quoteblock .quoteblock blockquote::before{display:none} >> +.verseblock{margin:0 1em 1.25em} >> +.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility} >> +.verseblock pre strong{font-weight:400} >> +.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex} >> +.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic} >> +.quoteblock .attribution br,.verseblock .attribution br{display:none} >> +.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)} >> +.quoteblock.abstract{margin:0 1em 1.25em;display:block} >> +.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center} >> +.quoteblock.abstract blockquote,.quoteblock.abstract blockquote p{word-spacing:0;line-height:1.6} >> +.quoteblock.abstract blockquote::before,.quoteblock.abstract p::before{display:none} >> +table.tableblock{max-width:100%;border-collapse:separate} >> +p.tableblock:last-child{margin-bottom:0} >> +td.tableblock>.content{margin-bottom:-1.25em} >> +table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede} >> +table.grid-all>thead>tr>.tableblock,table.grid-all>tbody>tr>.tableblock{border-width:0 1px 1px 0} >> +table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0} >> +table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0} >> +table.grid-rows>thead>tr>.tableblock,table.grid-rows>tbody>tr>.tableblock{border-width:0 0 1px} >> +table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0} >> +table.grid-all>*>tr>.tableblock:last-child,table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0} >> +table.grid-all>tbody>tr:last-child>.tableblock,table.grid-all>thead:last-child>tr>.tableblock,table.grid-rows>tbody>tr:last-child>.tableblock,table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0} >> >> +table.frame-all{border-width:1px} >> +table.frame-sides{border-width:0 1px} >> +table.frame-topbot,table.frame-ends{border-width:1px 0} >> +table.stripes-all tr,table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7} >> +table.stripes-none tr,table.stripes-odd tr:nth-of-type(even){background:none} >> +th.halign-left,td.halign-left{text-align:left} >> +th.halign-right,td.halign-right{text-align:right} >> +th.halign-center,td.halign-center{text-align:center} >> +th.valign-top,td.valign-top{vertical-align:top} >> +th.valign-bottom,td.valign-bottom{vertical-align:bottom} >> +th.valign-middle,td.valign-middle{vertical-align:middle} >> +table thead th,table tfoot th{font-weight:bold} >> +tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7} >> +tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold} >> +p.tableblock>code:only-child{background:none;padding:0} >> +p.tableblock{font-size:1em} >> +td>div.verse{white-space:pre} >> +ol{margin-left:1.75em} >> +ul li ol{margin-left:1.5em} >> +dl dd{margin-left:1.125em} >> +dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0} >> +ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em} >> +ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none} >> +ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em} >> +ul.unstyled,ol.unstyled{margin-left:0} >> +ul.checklist{margin-left:.625em} >> +ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist >> li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em} >> +ul.checklist li>p:first-child>input[type="checkbox"]:first-child{margin-right:.25em} >> +ul.inline{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row >> wrap;list-style:none;margin:0 0 .625em -1.25em} >> +ul.inline>li{margin-left:1.25em} >> +.unstyled dl dt{font-weight:400;font-style:normal} >> +ol.arabic{list-style-type:decimal} >> +ol.decimal{list-style-type:decimal-leading-zero} >> +ol.loweralpha{list-style-type:lower-alpha} >> +ol.upperalpha{list-style-type:upper-alpha} >> +ol.lowerroman{list-style-type:lower-roman} >> +ol.upperroman{list-style-type:upper-roman} >> +ol.lowergreek{list-style-type:lower-greek} >> +.hdlist>table,.colist>table{border:0;background:none} >> +.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none} >> +td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em} >> +td.hdlist1{font-weight:bold;padding-bottom:1.25em} >> +.literalblock+.colist,.listingblock+.colist{margin-top:-.5em} >> +.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top} >> +.colist td:not([class]):first-child img{max-width:none} >> +.colist td:not([class]):last-child{padding:.25em 0} >> +.thumb,.th{line-height:0;display:inline-block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px #ddd;box-shadow:0 0 0 1px #ddd} >> +.imageblock.left,.imageblock[style*="float: left"]{margin:.25em .625em 1.25em 0} >> +.imageblock.right,.imageblock[style*="float: right"]{margin:.25em 0 1.25em .625em} >> +.imageblock>.title{margin-bottom:0} >> +.imageblock.thumb,.imageblock.th{border-width:6px} >> +.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em} >> +.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0} >> +.image.left{margin-right:.625em} >> +.image.right{margin-left:.625em} >> +a.image{text-decoration:none;display:inline-block} >> +a.image object{pointer-events:none} >> +sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super} >> +sup.footnote a,sup.footnoteref a{text-decoration:none} >> +sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline} >> +#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em} >> +#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0} >> +#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em} >> +#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em} >> +#footnotes .footnote:last-of-type{margin-bottom:0} >> +#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0} >> +.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0} >> +.gist .file-data>table td.line-data{width:99%} >> +div.unbreakable{page-break-inside:avoid} >> +.big{font-size:larger} >> +.small{font-size:smaller} >> +.underline{text-decoration:underline} >> +.overline{text-decoration:overline} >> +.line-through{text-decoration:line-through} >> +.aqua{color:#00bfbf} >> +.aqua-background{background-color:#00fafa} >> +.black{color:#000} >> +.black-background{background-color:#000} >> +.blue{color:#0000bf} >> +.blue-background{background-color:#0000fa} >> +.fuchsia{color:#bf00bf} >> +.fuchsia-background{background-color:#fa00fa} >> +.gray{color:#606060} >> +.gray-background{background-color:#7d7d7d} >> +.green{color:#006000} >> +.green-background{background-color:#007d00} >> +.lime{color:#00bf00} >> +.lime-background{background-color:#00fa00} >> +.maroon{color:#600000} >> +.maroon-background{background-color:#7d0000} >> +.navy{color:#000060} >> +.navy-background{background-color:#00007d} >> +.olive{color:#606000} >> +.olive-background{background-color:#7d7d00} >> +.purple{color:#600060} >> +.purple-background{background-color:#7d007d} >> +.red{color:#bf0000} >> +.red-background{background-color:#fa0000} >> +.silver{color:#909090} >> +.silver-background{background-color:#bcbcbc} >> +.teal{color:#006060} >> +.teal-background{background-color:#007d7d} >> +.white{color:#bfbfbf} >> +.white-background{background-color:#fafafa} >> +.yellow{color:#bfbf00} >> +.yellow-background{background-color:#fafa00} >> +span.icon>.fa{cursor:default} >> +a span.icon>.fa{cursor:inherit} >> +.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default} >> +.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c} >> +.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111} >> +.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900} >> +.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400} >> +.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000} >> +.conum[data-value]{display:inline-block;color:#fff!important;background-color:rgba(0,0,0,.8);-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open >> Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold} >> +.conum[data-value] *{color:#fff!important} >> +.conum[data-value]+b{display:none} >> +.conum[data-value]::after{content:attr(data-value)} >> +pre .conum[data-value]{position:relative;top:-.125em} >> +b.conum *{color:inherit!important} >> +.conum:not([data-value]):empty{display:none} >> +dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility} >> +h1,h2,p,td.content,span.alt{letter-spacing:-.01em} >> +p strong,td.content strong,div.footnote strong{letter-spacing:-.005em} >> +p,blockquote,dt,td.content,span.alt{font-size:1.0625rem} >> +p{margin-bottom:1.25rem} >> +.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em} >> +.exampleblock>.content{background-color:#fffef7;border-color:#e0e0dc;-webkit-box-shadow:0 1px 4px #e0e0dc;box-shadow:0 1px 4px #e0e0dc} >> +.print-only{display:none!important} >> +@page{margin:1.25cm .75cm} >> +@media print{*{-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important} >> +html{font-size:80%} >> +a{color:inherit!important;text-decoration:underline!important} >> +a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important} >> +a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) >> ")";display:inline-block;font-size:.875em;padding-left:.25em} >> +abbr[title]::after{content:" (" attr(title) ")"} >> +pre,blockquote,tr,img,object,svg{page-break-inside:avoid} >> +thead{display:table-header-group} >> +svg{max-width:100%} >> +p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3} >> +h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid} >> +#toc,.sidebarblock,.exampleblock>.content{background:none!important} >> +#toc{border-bottom:1px solid #ddddd8!important;padding-bottom:0!important} >> +body.book #header{text-align:center} >> +body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em} >> +body.book #header .details{border:0!important;display:block;padding:0!important} >> +body.book #header .details span:first-child{margin-left:0!important} >> +body.book #header .details br{display:block} >> +body.book #header .details br+span::before{content:none!important} >> +body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important} >> +body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always} >> +.listingblock code[data-lang]::before{display:block} >> +#footer{padding:0 .9375em} >> +.hide-on-print{display:none!important} >> +.print-only{display:block!important} >> +.hide-for-print{display:none!important} >> +.show-for-print{display:inherit!important}} >> +@media print,amzn-kf8{#header>h1:first-child{margin-top:1.25rem} >> +.sect1{padding:0!important} >> +.sect1+.sect1{border:0} >> +#footer{background:none} >> +#footer-text{color:rgba(0,0,0,.6);font-size:.9em}} >> +@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}} >> +</style> >> +</head> >> +<body class="article"> >> +<div id="header"> >> +<h1>Report creation - Admin/Super-User</h1> >> +</div> >> +<div id="content"> >> +<div class="sect1"> >> +<h2 id="_introduction">Introduction</h2> >> +<div class="sectionbody"> >> +<div class="admonitionblock note"> >> +<table> >> +<tr> >> +<td class="icon"> >> +<div class="title">Note</div> >> +</td> >> +<td class="content"> >> +this feature will be officially available with the R17.12 branch first release >> +</td> >> +</tr> >> +</table> >> +</div> >> +<div class="paragraph"> >> +<p>A flexible report is an OFBiz content of FLEXIBLE_REPORT type that allows a final user to make use of the reporting module to obtain flexible >> reports, ie reports which are created from an entity or view definition and even from a service. A flexible report is created from a Report Master >> (content REPORT_MASTER), and an optional XML override of the parent form.</p> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_pre_requisite">Pre-requisite</h2> >> +<div class="sectionbody"> >> +<div class="ulist"> >> +<ul> >> +<li> >> +<p>OFBiz framework</p> >> +</li> >> +<li> >> +<p>The Birt plugin</p> >> +</li> >> +<li> >> +<p>The BIRT Report Designer</p> >> +</li> >> +</ul> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_report_creation">Report creation</h2> >> +<div class="sectionbody"> >> +<div class="olist arabic"> >> +<ol class="arabic"> >> +<li> >> +<p>Get to Birt component in OFBiz <span class="image"><img >> src="https://cwiki.apache.org/confluence/download/attachments/68720496/Birt%20Menus.png?api=v2" alt="Birt menus"></span></p> >> +</li> >> +<li> >> +<p>Click on the "Flexible Report" menu (varies depending on themes)</p> >> +</li> >> +<li> >> +<p>Click on the "Generate report" button, you get to this screen:</p> >> +</li> >> +<li> >> +<p>Fill the form: >> +<span class="image"><img src="https://cwiki.apache.org/confluence/download/attachments/68720496/Example%20Report.png?api=v2" alt="Example >> Report"></span></p> >> +<div class="ulist"> >> +<ul> >> +<li> >> +<p>The list "Choose report topic" will let you choose among predefined report masters your topic of interest.</p> >> +</li> >> +<li> >> +<p>The report name is a simple short name from which the file name will be generated.</p> >> +</li> >> +<li> >> +<p>The description is a short description which will allow you to recognise the report and its topic.</p> >> +</li> >> +<li> >> +<p>The box "Generate filters in design" will add in the design the visualisation of the filters filled in the filtering form.</p> >> +</li> >> +</ul> >> +</div> >> +</li> >> +</ol> >> +</div> >> +<div class="paragraph"> >> +<p>Finally, if you don’t find what you want, you will need to create a new Report Master…​</p> >> +</div> >> +<div class="paragraph"> >> +<p>Once the form is validated, OFBiz will show you the "Edit Report" screen. <span class="image"><img >> src="https://cwiki.apache.org/confluence/download/attachments/68720496/Edit%20Report%20screen.png?api=v2" alt="Edit Report screen"></span></p> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_report_information">Report information</h2> >> +<div class="sectionbody"> >> +<div class="paragraph"> >> +<p>This first panel allows you to change the report description and status. Actually it does not make sense changing the status to published >> before having downloaded the .rptdesign file (Birt Report Designer file) from the server (in database), edited and uploaded it back to the server. >> This is explained in the section below. Changing the status allows users to use your reports. But if you publish without any change the report will >> render as empty.</p> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_the_rptdesign_report_file_download_edit_upload_and_publish_it">The .rptdesign report file: download, edit, upload and publish it</h2> >> +<div class="sectionbody"> >> +<div class="paragraph"> >> +<p>To really use the report you need to download the .rptdesign file from the server in a location from where you can edit it with the BIRT Report >> Designer. So you need to install first the BIRT Report Designer. Then you can edit the .rptdesign file in the BIRT Report Designer. For that refer >> to the <a href="https://svn.apache.org/repos/asf/ofbiz/ofbiz-plugins/trunk/birt/documents/Using%20the%20Birt%20Report%20Designer.md.html">"Using >> the Birt Report Designer.md.html" file</a>. You can also find the Markdonw version in the same directory: ofbiz-framework/plugins/birt/documents</p> >> +</div> >> +<div class="sect2"> >> +<h3 id="_editing_the_downloaded_file">Editing the downloaded file</h3> >> +<div class="paragraph"> >> +<p>Once you installed the BIRT Report Designer and have downloaded the .rptdesign file, you can edit it with the Birt Report Designer. When you >> have edited it suiting your needs you must upload it to the server for your changes to be taken into account by OFBiz.</p> >> +</div> >> +<div class="paragraph"> >> +<p><strong>This is when things begin to be really interesting</strong>. You can then test your report using the "Preview" panel. There you can >> temporarily filter the result, and use the export format you prefer, once done click "Send". You can then decide to change the report content in >> the Birt Report Designer again or keep your changes. Once done in the Birt Report Designer, simply select the changed file to upload, and upload it >> again. You can re-test your changes and continue until you really get what you want! You can then publish the report to allow users to select and >> use it. There are 2 ways to publish a report from the "Manage reports" screen or directly in the "Report information" panel. We will see the >> "Manage reports" screen below.</p> >> +</div> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_filters_overriding">Filters Overriding</h2> >> +<div class="sectionbody"> >> +<div class="paragraph"> >> +<p>You may want to overide the default filters. You can then use the Xml "Override filters" panel to override and personnalize the form, once done >> click "Save". If you ignore that step, it will <strong>NOT</strong> prevent the report creation, <strong>it is already done</strong>, it will just >> be with the generic filtering form inherited from the master from.</p> >> +</div> >> +<div class="admonitionblock note"> >> +<table> >> +<tr> >> +<td class="icon"> >> +<div class="title">Note</div> >> +</td> >> +<td class="content"> >> +if no preview is available, it is usually due to a mistake in the master form code. You can edit it in the database. >> +</td> >> +</tr> >> +</table> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_manage_reports">Manage reports</h2> >> +<div class="sectionbody"> >> +<div class="paragraph"> >> +<p>The "Manage reports" button get you to a screen which allows to edit (get back to current page), publish or delete a report.</p> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_use_a_report">Use a report</h2> >> +<div class="sectionbody"> >> +<div class="paragraph"> >> +<p>Users can select and use any published report from that screen. When they select a report they then get the same "Preview" Panel and can do the >> same things than in the "Edit Report" screen. Refer users to</p> >> +</div> >> +</div> >> +</div> >> +</div> >> +<div id="footer"> >> +<div id="footer-text"> >> +Last updated 2018-10-04 08:22:04 Paris, Madrid (heure dÃÃtÃ) >> +</div> >> +</div> >> +</body> >> +</html> >> \ No newline at end of file >> >> Propchange: ofbiz/tools/wiki-files/birt/Creating reports.html >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Propchange: ofbiz/tools/wiki-files/birt/Creating reports.html >> ------------------------------------------------------------------------------ >> svn:keywords = Date Rev Author URL Id >> >> Propchange: ofbiz/tools/wiki-files/birt/Creating reports.html >> ------------------------------------------------------------------------------ >> svn:mime-type = text/html >> >> Added: ofbiz/tools/wiki-files/birt/How to use flexible reports.html >> URL: http://svn.apache.org/viewvc/ofbiz/tools/wiki-files/birt/How%20to%20use%20flexible%20reports.html?rev=1846159&view=auto >> ============================================================================== >> --- ofbiz/tools/wiki-files/birt/How to use flexible reports.html (added) >> +++ ofbiz/tools/wiki-files/birt/How to use flexible reports.html Thu Nov 8 15:17:25 2018 >> @@ -0,0 +1,522 @@ >> +<!DOCTYPE html> >> +<html lang="en"> >> +<head> >> +<meta charset="UTF-8"> >> +<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=edge"><![endif]--> >> +<meta name="viewport" content="width=device-width, initial-scale=1.0"> >> +<meta name="generator" content="Asciidoctor 1.5.7.1"> >> +<title>Using a flexible report - User</title> >> +<link rel="stylesheet" >> href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700"> >> +<style> >> +/* Asciidoctor default stylesheet | MIT License | http://asciidoctor.org */ >> +/* Uncomment @import statement below to use as custom stylesheet */ >> +/*@import >> "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700";*/ >> +article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block} >> +audio,canvas,video{display:inline-block} >> +audio:not([controls]){display:none;height:0} >> +script{display:none!important} >> +html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%} >> +a{background:transparent} >> +a:focus{outline:thin dotted} >> +a:active,a:hover{outline:0} >> +h1{font-size:2em;margin:.67em 0} >> +abbr[title]{border-bottom:1px dotted} >> +b,strong{font-weight:bold} >> +dfn{font-style:italic} >> +hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0} >> +mark{background:#ff0;color:#000} >> +code,kbd,pre,samp{font-family:monospace;font-size:1em} >> +pre{white-space:pre-wrap} >> +q{quotes:"\201C" "\201D" "\2018" "\2019"} >> +small{font-size:80%} >> +sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline} >> +sup{top:-.5em} >> +sub{bottom:-.25em} >> +img{border:0} >> +svg:not(:root){overflow:hidden} >> +figure{margin:0} >> +fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em} >> +legend{border:0;padding:0} >> +button,input,select,textarea{font-family:inherit;font-size:100%;margin:0} >> +button,input{line-height:normal} >> +button,select{text-transform:none} >> +button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer} >> +button[disabled],html input[disabled]{cursor:default} >> +input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0} >> +button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0} >> +textarea{overflow:auto;vertical-align:top} >> +table{border-collapse:collapse;border-spacing:0} >> +*,*::before,*::after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box} >> +html,body{font-size:100%} >> +body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu >> Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased} >> +a:hover{cursor:pointer} >> +img,object,embed{max-width:100%;height:auto} >> +object,embed{height:100%} >> +img{-ms-interpolation-mode:bicubic} >> +.left{float:left!important} >> +.right{float:right!important} >> +.text-left{text-align:left!important} >> +.text-right{text-align:right!important} >> +.text-center{text-align:center!important} >> +.text-justify{text-align:justify!important} >> +.hide{display:none} >> +img,object,svg{display:inline-block;vertical-align:middle} >> +textarea{height:auto;min-height:50px} >> +select{width:100%} >> +.center{margin-left:auto;margin-right:auto} >> +.stretch{width:100%} >> +.subheader,.admonitionblock >> td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em} >> +div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr} >> +a{color:#2156a5;text-decoration:underline;line-height:inherit} >> +a:hover,a:focus{color:#1d4b8f} >> +a img{border:none} >> +p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility} >> +p aside{font-size:.875em;line-height:1.35;font-style:italic} >> +h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu >> Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em} >> +h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0} >> +h1{font-size:2.125em} >> +h2{font-size:1.6875em} >> +h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em} >> +h4,h5{font-size:1.125em} >> +h6{font-size:1em} >> +hr{border:solid #ddddd8;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0} >> +em,i{font-style:italic;line-height:inherit} >> +strong,b{font-weight:bold;line-height:inherit} >> +small{font-size:60%;line-height:inherit} >> +code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)} >> +ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit} >> +ul,ol{margin-left:1.5em} >> +ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em} >> +ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit} >> +ul.square{list-style-type:square} >> +ul.circle{list-style-type:circle} >> +ul.disc{list-style-type:disc} >> +ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0} >> +dl dt{margin-bottom:.3125em;font-weight:bold} >> +dl dd{margin-bottom:1.25em} >> +abbr,acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help} >> +abbr{text-transform:none} >> +blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd} >> +blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)} >> +blockquote cite::before{content:"\2014 \0020"} >> +blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,.6)} >> +blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)} >> +@media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2} >> +h1{font-size:2.75em} >> +h2{font-size:2.3125em} >> +h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em} >> +h4{font-size:1.4375em}} >> +table{background:#fff;margin-bottom:1.25em;border:solid 1px #dedede} >> +table thead,table tfoot{background:#f7f8f7} >> +table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em >> .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left} >> +table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)} >> +table tr.even,table tr.alt,table tr:nth-of-type(even){background:#f8f8f7} >> +table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6} >> +h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em} >> +h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400} >> +.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table} >> +.clearfix::after,.float-group::after{clear:both} >> +*:not(pre)>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em >> .5ex;word-spacing:-.15em;background-color:#f7f7f8;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word} >> >> +*:not(pre)>code.nobreak{word-wrap:normal} >> +*:not(pre)>code.nowrap{white-space:nowrap} >> +pre,pre>code{line-height:1.45;color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans >> Mono",monospace;font-weight:400;text-rendering:optimizeSpeed} >> +em em{font-style:normal} >> +strong strong{font-weight:400} >> +.keyseq{color:rgba(51,51,51,.8)} >> +kbd{font-family:"Droid Sans Mono","DejaVu Sans >> Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background-color:#f7f7f7;border:1px solid >> #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em white inset;box-shadow:0 1px 0 >> rgba(0,0,0,.2),0 0 0 .1em #fff inset;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap} >> +.keyseq kbd:first-child{margin-left:0} >> +.keyseq kbd:last-child{margin-right:0} >> +.menuseq,.menuref{color:#000} >> +.menuseq b:not(.caret),.menuref{font-weight:inherit} >> +.menuseq{word-spacing:-.02em} >> +.menuseq b.caret{font-size:1.25em;line-height:.8} >> +.menuseq i.caret{font-weight:bold;text-align:center;width:.45em} >> +b.button::before,b.button::after{position:relative;top:-1px;font-weight:400} >> +b.button::before{content:"[";padding:0 3px 0 2px} >> +b.button::after{content:"]";padding:0 2px 0 3px} >> +p a>code:hover{color:rgba(0,0,0,.9)} >> +#header,#content,#footnotes,#footer{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em} >> >> +#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" >> ";display:table} >> +#header::after,#content::after,#footnotes::after,#footer::after{clear:both} >> +#content{margin-top:1.25em} >> +#content::before{content:none} >> +#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0} >> +#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #ddddd8} >> +#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #ddddd8;padding-bottom:8px} >> +#header .details{border-bottom:1px solid >> #ddddd8;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row >> wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap} >> +#header .details span:first-child{margin-left:-.125em} >> +#header .details span.email a{color:rgba(0,0,0,.85)} >> +#header .details br{display:none} >> +#header .details br+span::before{content:"\00a0\2013\00a0"} >> +#header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)} >> +#header .details br+span#revremark::before{content:"\00a0|\00a0"} >> +#header #revnumber{text-transform:capitalize} >> +#header #revnumber::after{content:"\00a0"} >> +#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid >> #ddddd8;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem} >> +#toc{border-bottom:1px solid #efefed;padding-bottom:.5em} >> +#toc>ul{margin-left:.125em} >> +#toc ul.sectlevel0>li>a{font-style:italic} >> +#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0} >> +#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none} >> +#toc li{line-height:1.3334;margin-top:.3334em} >> +#toc a{text-decoration:none} >> +#toc a:active{text-decoration:underline} >> +#toctitle{color:#7a2518;font-size:1.2em} >> +@media screen and (min-width:768px){#toctitle{font-size:1.375em} >> +body.toc2{padding-left:15em;padding-right:0} >> +#toc.toc2{margin-top:0!important;background-color:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid >> #efefed;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto} >> +#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em} >> +#toc.toc2>ul{font-size:.9em;margin-bottom:0} >> +#toc.toc2 ul ul{margin-left:0;padding-left:1em} >> +#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em} >> +body.toc2.toc-right{padding-left:0;padding-right:15em} >> +body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #efefed;left:auto;right:0}} >> +@media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0} >> +#toc.toc2{width:20em} >> +#toc.toc2 #toctitle{font-size:1.375em} >> +#toc.toc2>ul{font-size:.95em} >> +#toc.toc2 ul ul{padding-left:1.25em} >> +body.toc2.toc-right{padding-left:0;padding-right:20em}} >> +#content >> #toc{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} >> +#content #toc>:first-child{margin-top:0} >> +#content #toc>:last-child{margin-bottom:0} >> +#footer{max-width:100%;background-color:rgba(0,0,0,.8);padding:1.25em} >> +#footer-text{color:rgba(255,255,255,.8);line-height:1.44} >> +#content{margin-bottom:.625em} >> +.sect1{padding-bottom:.625em} >> +@media screen and (min-width:768px){#content{margin-bottom:1.25em} >> +.sect1{padding-bottom:1.25em}} >> +.sect1:last-child{padding-bottom:0} >> +.sect1+.sect1{border-top:1px solid #efefed} >> +#content >> h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400} >> +#content >> h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em} >> +#content h1:hover>a.anchor,#content >> h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible} >> +#content >> h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none} >> +#content >> h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221} >> +.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em} >> +.admonitionblock >> td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto >> Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic} >> +table.tableblock.fit-content>caption.title{white-space:nowrap;width:0} >> +.paragraph.lead>p,#preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)} >> +table.tableblock #preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:inherit} >> +.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%} >> +.admonitionblock>table td.icon{text-align:center;width:80px} >> +.admonitionblock>table td.icon img{max-width:none} >> +.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase} >> +.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #ddddd8;color:rgba(0,0,0,.6)} >> +.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0} >> +.exampleblock>.content{border-style:solid;border-width:1px;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;-webkit-border-radius:4px;border-radius:4px} >> >> +.exampleblock>.content>:first-child{margin-top:0} >> +.exampleblock>.content>:last-child{margin-bottom:0} >> +.sidebarblock{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px} >> >> +.sidebarblock>:first-child{margin-top:0} >> +.sidebarblock>:last-child{margin-bottom:0} >> +.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center} >> +.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content >> .ulist>ul>li:last-child>:last-child,.exampleblock>.content >> .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content >> .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content >> .qlist>ol>li:last-child>:last-child{margin-bottom:0} >> +.literalblock pre,.listingblock pre:not(.highlight),.listingblock pre[class="highlight"],.listingblock pre[class^="highlight "],.listingblock >> pre.CodeRay,.listingblock pre.prettyprint{background:#f7f7f8} >> +.sidebarblock .literalblock pre,.sidebarblock .listingblock pre:not(.highlight),.sidebarblock .listingblock pre[class="highlight"],.sidebarblock >> .listingblock pre[class^="highlight "],.sidebarblock .listingblock pre.CodeRay,.sidebarblock .listingblock pre.prettyprint{background:#f2f1f1} >> +.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock >> pre[class]{-webkit-border-radius:4px;border-radius:4px;word-wrap:break-word;padding:1em;font-size:.8125em} >> +.literalblock pre.nowrap,.literalblock pre[class].nowrap,.listingblock pre.nowrap,.listingblock >> pre[class].nowrap{overflow-x:auto;white-space:pre;word-wrap:normal} >> +@media screen and (min-width:768px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:.90625em}} >> +@media screen and (min-width:1280px){.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:1em}} >> +.literalblock.output pre{color:#f7f7f8;background-color:rgba(0,0,0,.9)} >> +.listingblock pre.highlightjs{padding:0} >> +.listingblock pre.highlightjs>code{padding:1em;-webkit-border-radius:4px;border-radius:4px} >> +.listingblock pre.prettyprint{border-width:0} >> +.listingblock>.content{position:relative} >> +.listingblock >> code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:#999} >> +.listingblock:hover code[data-lang]::before{display:block} >> +.listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:#999} >> +.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"} >> +table.pyhltable{border-collapse:separate;border:0;margin-bottom:0;background:none} >> +table.pyhltable td{vertical-align:top;padding-top:0;padding-bottom:0;line-height:1.45} >> +table.pyhltable td.code{padding-left:.75em;padding-right:0} >> +pre.pygments .lineno,table.pyhltable td:not(.code){color:#999;padding-left:0;padding-right:.5em;border-right:1px solid #ddddd8} >> +pre.pygments .lineno{display:inline-block;margin-right:.25em} >> +table.pyhltable .linenodiv{background:none!important;padding-right:0!important} >> +.quoteblock{margin:0 1em 1.25em 1.5em;display:table} >> +.quoteblock>.title{margin-left:-1.5em;margin-bottom:.75em} >> +.quoteblock blockquote,.quoteblock blockquote >> p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify} >> +.quoteblock blockquote{margin:0;padding:0;border:0} >> +.quoteblock >> blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px >> 2px rgba(0,0,0,.1)} >> +.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0} >> +.quoteblock .attribution{margin-top:.5em;margin-right:.5ex;text-align:right} >> +.quoteblock .quoteblock{margin-left:0;margin-right:0;padding:.5em 0;border-left:3px solid rgba(0,0,0,.6)} >> +.quoteblock .quoteblock blockquote{padding:0 0 0 .75em} >> +.quoteblock .quoteblock blockquote::before{display:none} >> +.verseblock{margin:0 1em 1.25em} >> +.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility} >> +.verseblock pre strong{font-weight:400} >> +.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex} >> +.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic} >> +.quoteblock .attribution br,.verseblock .attribution br{display:none} >> +.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)} >> +.quoteblock.abstract{margin:0 1em 1.25em;display:block} >> +.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center} >> +.quoteblock.abstract blockquote,.quoteblock.abstract blockquote p{word-spacing:0;line-height:1.6} >> +.quoteblock.abstract blockquote::before,.quoteblock.abstract p::before{display:none} >> +table.tableblock{max-width:100%;border-collapse:separate} >> +p.tableblock:last-child{margin-bottom:0} >> +td.tableblock>.content{margin-bottom:-1.25em} >> +table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede} >> +table.grid-all>thead>tr>.tableblock,table.grid-all>tbody>tr>.tableblock{border-width:0 1px 1px 0} >> +table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0} >> +table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0} >> +table.grid-rows>thead>tr>.tableblock,table.grid-rows>tbody>tr>.tableblock{border-width:0 0 1px} >> +table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0} >> +table.grid-all>*>tr>.tableblock:last-child,table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0} >> +table.grid-all>tbody>tr:last-child>.tableblock,table.grid-all>thead:last-child>tr>.tableblock,table.grid-rows>tbody>tr:last-child>.tableblock,table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0} >> >> +table.frame-all{border-width:1px} >> +table.frame-sides{border-width:0 1px} >> +table.frame-topbot,table.frame-ends{border-width:1px 0} >> +table.stripes-all tr,table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7} >> +table.stripes-none tr,table.stripes-odd tr:nth-of-type(even){background:none} >> +th.halign-left,td.halign-left{text-align:left} >> +th.halign-right,td.halign-right{text-align:right} >> +th.halign-center,td.halign-center{text-align:center} >> +th.valign-top,td.valign-top{vertical-align:top} >> +th.valign-bottom,td.valign-bottom{vertical-align:bottom} >> +th.valign-middle,td.valign-middle{vertical-align:middle} >> +table thead th,table tfoot th{font-weight:bold} >> +tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7} >> +tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold} >> +p.tableblock>code:only-child{background:none;padding:0} >> +p.tableblock{font-size:1em} >> +td>div.verse{white-space:pre} >> +ol{margin-left:1.75em} >> +ul li ol{margin-left:1.5em} >> +dl dd{margin-left:1.125em} >> +dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0} >> +ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em} >> +ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none} >> +ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em} >> +ul.unstyled,ol.unstyled{margin-left:0} >> +ul.checklist{margin-left:.625em} >> +ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist >> li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em} >> +ul.checklist li>p:first-child>input[type="checkbox"]:first-child{margin-right:.25em} >> +ul.inline{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row >> wrap;list-style:none;margin:0 0 .625em -1.25em} >> +ul.inline>li{margin-left:1.25em} >> +.unstyled dl dt{font-weight:400;font-style:normal} >> +ol.arabic{list-style-type:decimal} >> +ol.decimal{list-style-type:decimal-leading-zero} >> +ol.loweralpha{list-style-type:lower-alpha} >> +ol.upperalpha{list-style-type:upper-alpha} >> +ol.lowerroman{list-style-type:lower-roman} >> +ol.upperroman{list-style-type:upper-roman} >> +ol.lowergreek{list-style-type:lower-greek} >> +.hdlist>table,.colist>table{border:0;background:none} >> +.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none} >> +td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em} >> +td.hdlist1{font-weight:bold;padding-bottom:1.25em} >> +.literalblock+.colist,.listingblock+.colist{margin-top:-.5em} >> +.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top} >> +.colist td:not([class]):first-child img{max-width:none} >> +.colist td:not([class]):last-child{padding:.25em 0} >> +.thumb,.th{line-height:0;display:inline-block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px #ddd;box-shadow:0 0 0 1px #ddd} >> +.imageblock.left,.imageblock[style*="float: left"]{margin:.25em .625em 1.25em 0} >> +.imageblock.right,.imageblock[style*="float: right"]{margin:.25em 0 1.25em .625em} >> +.imageblock>.title{margin-bottom:0} >> +.imageblock.thumb,.imageblock.th{border-width:6px} >> +.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em} >> +.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0} >> +.image.left{margin-right:.625em} >> +.image.right{margin-left:.625em} >> +a.image{text-decoration:none;display:inline-block} >> +a.image object{pointer-events:none} >> +sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super} >> +sup.footnote a,sup.footnoteref a{text-decoration:none} >> +sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline} >> +#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em} >> +#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0} >> +#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em} >> +#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em} >> +#footnotes .footnote:last-of-type{margin-bottom:0} >> +#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0} >> +.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0} >> +.gist .file-data>table td.line-data{width:99%} >> +div.unbreakable{page-break-inside:avoid} >> +.big{font-size:larger} >> +.small{font-size:smaller} >> +.underline{text-decoration:underline} >> +.overline{text-decoration:overline} >> +.line-through{text-decoration:line-through} >> +.aqua{color:#00bfbf} >> +.aqua-background{background-color:#00fafa} >> +.black{color:#000} >> +.black-background{background-color:#000} >> +.blue{color:#0000bf} >> +.blue-background{background-color:#0000fa} >> +.fuchsia{color:#bf00bf} >> +.fuchsia-background{background-color:#fa00fa} >> +.gray{color:#606060} >> +.gray-background{background-color:#7d7d7d} >> +.green{color:#006000} >> +.green-background{background-color:#007d00} >> +.lime{color:#00bf00} >> +.lime-background{background-color:#00fa00} >> +.maroon{color:#600000} >> +.maroon-background{background-color:#7d0000} >> +.navy{color:#000060} >> +.navy-background{background-color:#00007d} >> +.olive{color:#606000} >> +.olive-background{background-color:#7d7d00} >> +.purple{color:#600060} >> +.purple-background{background-color:#7d007d} >> +.red{color:#bf0000} >> +.red-background{background-color:#fa0000} >> +.silver{color:#909090} >> +.silver-background{background-color:#bcbcbc} >> +.teal{color:#006060} >> +.teal-background{background-color:#007d7d} >> +.white{color:#bfbfbf} >> +.white-background{background-color:#fafafa} >> +.yellow{color:#bfbf00} >> +.yellow-background{background-color:#fafa00} >> +span.icon>.fa{cursor:default} >> +a span.icon>.fa{cursor:inherit} >> +.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default} >> +.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c} >> +.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111} >> +.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900} >> +.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400} >> +.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000} >> +.conum[data-value]{display:inline-block;color:#fff!important;background-color:rgba(0,0,0,.8);-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open >> Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold} >> +.conum[data-value] *{color:#fff!important} >> +.conum[data-value]+b{display:none} >> +.conum[data-value]::after{content:attr(data-value)} >> +pre .conum[data-value]{position:relative;top:-.125em} >> +b.conum *{color:inherit!important} >> +.conum:not([data-value]):empty{display:none} >> +dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility} >> +h1,h2,p,td.content,span.alt{letter-spacing:-.01em} >> +p strong,td.content strong,div.footnote strong{letter-spacing:-.005em} >> +p,blockquote,dt,td.content,span.alt{font-size:1.0625rem} >> +p{margin-bottom:1.25rem} >> +.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em} >> +.exampleblock>.content{background-color:#fffef7;border-color:#e0e0dc;-webkit-box-shadow:0 1px 4px #e0e0dc;box-shadow:0 1px 4px #e0e0dc} >> +.print-only{display:none!important} >> +@page{margin:1.25cm .75cm} >> +@media print{*{-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important} >> +html{font-size:80%} >> +a{color:inherit!important;text-decoration:underline!important} >> +a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important} >> +a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) >> ")";display:inline-block;font-size:.875em;padding-left:.25em} >> +abbr[title]::after{content:" (" attr(title) ")"} >> +pre,blockquote,tr,img,object,svg{page-break-inside:avoid} >> +thead{display:table-header-group} >> +svg{max-width:100%} >> +p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3} >> +h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid} >> +#toc,.sidebarblock,.exampleblock>.content{background:none!important} >> +#toc{border-bottom:1px solid #ddddd8!important;padding-bottom:0!important} >> +body.book #header{text-align:center} >> +body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em} >> +body.book #header .details{border:0!important;display:block;padding:0!important} >> +body.book #header .details span:first-child{margin-left:0!important} >> +body.book #header .details br{display:block} >> +body.book #header .details br+span::before{content:none!important} >> +body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important} >> +body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always} >> +.listingblock code[data-lang]::before{display:block} >> +#footer{padding:0 .9375em} >> +.hide-on-print{display:none!important} >> +.print-only{display:block!important} >> +.hide-for-print{display:none!important} >> +.show-for-print{display:inherit!important}} >> +@media print,amzn-kf8{#header>h1:first-child{margin-top:1.25rem} >> +.sect1{padding:0!important} >> +.sect1+.sect1{border:0} >> +#footer{background:none} >> +#footer-text{color:rgba(0,0,0,.6);font-size:.9em}} >> +@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}} >> +</style> >> +</head> >> +<body class="article"> >> +<div id="header"> >> +<h1>Using a flexible report - User</h1> >> +</div> >> +<div id="content"> >> +<div class="sect1"> >> +<h2 id="_introduction">Introduction</h2> >> +<div class="sectionbody"> >> +<div class="admonitionblock note"> >> +<table> >> +<tr> >> +<td class="icon"> >> +<div class="title">Note</div> >> +</td> >> +<td class="content"> >> +this feature will be officially available with the R17.12 branch first release >> +</td> >> +</tr> >> +</table> >> +</div> >> +<div class="paragraph"> >> +<p>A flexible report is an OFBiz content of FLEXIBLE_REPORT type which allows the final user to obtain reports using the Birt reporting module. It >> will be produced at a specific time of your choosing, with your chosen output format, filtering the data with a few parameters defined during >> report design creation.</p> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_pre_requisite">Pre-requisite</h2> >> +<div class="sectionbody"> >> +<div class="ulist"> >> +<ul> >> +<li> >> +<p>OFBiz</p> >> +</li> >> +<li> >> +<p>The Birt plugin</p> >> +</li> >> +<li> >> +<p>Pre-published reports created from report masters</p> >> +</li> >> +</ul> >> +</div> >> +</div> >> +</div> >> +<div class="sect1"> >> +<h2 id="_using_the_report">Using the report</h2> >> +<div class="sectionbody"> >> +<div class="olist arabic"> >> +<ol class="arabic"> >> +<li> >> +<p>go to the Birt component or to another page harboring reports.</p> >> +</li> >> +<li> >> +<p>In the Birt component, click "Use a report".</p> >> +</li> >> +<li> >> +<p>Select your report and hit "Send".</p> >> +</li> >> +<li> >> +<p>The next screen will allow you to filter your data through a set of pre-defined criteria. Should you leave it empty, you will retrieve >> unfiltered data.</p> >> +</li> >> +<li> >> +<p>Select the desired export format</p> >> +</li> >> +<li> >> +<p>Upon validation, your report is now loaded and can be saved.</p> >> +</li> >> +</ol> >> +</div> >> +<div class="admonitionblock note"> >> +<table> >> +<tr> >> +<td class="icon"> >> +<div class="title">Note</div> >> +</td> >> +<td class="content"> >> +Report loading can be a bit long depending on the data treatment >> +</td> >> +</tr> >> +</table> >> +</div> >> +</div> >> +</div> >> +</div> >> +<div id="footer"> >> +<div id="footer-text"> >> +Last updated 2018-10-04 08:23:06 Paris, Madrid (heure dÃÃtÃ) >> +</div> >> +</div> >> +</body> >> +</html> >> \ No newline at end of file >> >> Propchange: ofbiz/tools/wiki-files/birt/How to use flexible reports.html >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Propchange: ofbiz/tools/wiki-files/birt/How to use flexible reports.html >> ------------------------------------------------------------------------------ >> svn:keywords = Date Rev Author URL Id >> >> Propchange: ofbiz/tools/wiki-files/birt/How to use flexible reports.html >> ------------------------------------------------------------------------------ >> svn:mime-type = text/html >> >> >> > > |
Hello Jacques,
Jacques Le Roux <[hidden email]> writes: > Duplicating documentation in wiki is not a good ideas as soon as the > Asciidoc documentation exists in a branch. > > Else you end with multi versions to handle in wiki and that's a no good. I strongly agree. > So I'll remove them when an Asciidoc documentation exists. Even if IME a majority of links are already broken in the Wiki (which is part of the reason why I am strongly convinced that Wikis as a main documentation are a bad idea), I would suggest replacing the page content with a link to the web version of the user/developper manual instead of simply deleting the page. This helps people keeping bookmarks on some important Wiki pages which could be hard to retrieve otherwise. Additionally this would help avoiding both internal and external links breakage. WDYT? -- Mathieu Lirzin GPG: F2A3 8D7E EB2B 6640 5761 070D 0ADE E100 9460 4D37 |
Administrator
|
Le 08/11/2018 à 23:26, Mathieu Lirzin a écrit :
> Even if IME a majority of links are already broken in the Wiki (which is > part of the reason why I am strongly convinced that Wikis as a main > documentation are a bad idea), I would suggest replacing the page > content with a link to the web version of the user/developper manual > instead of simply deleting the page. This helps people keeping > bookmarks on some important Wiki pages which could be hard to retrieve > otherwise. Additionally this would help avoiding both internal and > external links breakage. > > WDYT? > Good idea, that would be links (one by release + trunk), or maybe only trunk with an explanation on how to get to releases (just changing the URL). Also with an advice to use a browser addon you can see the file magnified (not plain text) I'll think about it... Jacques |
Jacques Le Roux <[hidden email]> writes:
> Le 08/11/2018 à 23:26, Mathieu Lirzin a écrit : >> Even if IME a majority of links are already broken in the Wiki (which is >> part of the reason why I am strongly convinced that Wikis as a main >> documentation are a bad idea), I would suggest replacing the page >> content with a link to the web version of the user/developper manual >> instead of simply deleting the page. This helps people keeping >> bookmarks on some important Wiki pages which could be hard to retrieve >> otherwise. Additionally this would help avoiding both internal and >> external links breakage. >> >> WDYT? >> > > Good idea, that would be links (one by release + trunk), or maybe only trunk with an explanation on how to get to releases (just changing the URL). It depends on how the Web documentation is organized but if we were to have a page referencing all released version of the documentation like JBake [1] we could point to it. > Also with an advice to use a browser addon you can see the file magnified (not plain text) Shouldn't the documentation be available on the Web directly in HTML form with the output of AsciiDoctor? I am not sure to understand what you mean. As a side note: Do you know why the OFBiz website is still referencing the Confluence Wiki as the Developper/User manuals? Thanks. [1] https://jbake.org/docs/ -- Mathieu Lirzin GPG: F2A3 8D7E EB2B 6640 5761 070D 0ADE E100 9460 4D37 |
On Fri, 9 Nov 2018 at 22:01, Mathieu Lirzin <[hidden email]>
wrote: > Shouldn't the documentation be available on the Web directly in HTML > form with the output of AsciiDoctor? Thanks Mathieu. That was my thought too. Cheers Paul Foxworthy -- Coherent Software Australia Pty Ltd PO Box 2773 Cheltenham Vic 3192 Australia Phone: +61 3 9585 6788 Web: http://www.coherentsoftware.com.au/ Email: [hidden email]
--
Coherent Software Australia Pty Ltd http://www.coherentsoftware.com.au/ Bonsai ERP, the all-inclusive ERP system http://www.bonsaierp.com.au/ |
On Fri, 9 Nov 2018 at 22:01, Mathieu Lirzin <[hidden email]>
wrote: > Shouldn't the documentation be available on the Web directly in HTML > form with the output of AsciiDoctor? + 1 Documentation must be available via our web pages. While developers may benefit from having it local, we must help deciders and influencers (accountants, business consultants, etc.) in an easy way to evaluate the product. It should not be that difficult to generate release specific documentation as part of the release process and hook it into the website. Best regards, Pierre Smits *Apache Trafodion <https://trafodion.apache.org>, Vice President* *Apache Directory <https://directory.apache.org>, PMC Member* Apache Incubator <https://incubator.apache.org>, committer *Apache OFBiz <https://ofbiz.apache.org>, contributor (without privileges) since 2008* Apache Steve <https://steve.apache.org>, committer On Mon, Nov 12, 2018 at 7:31 AM Paul Foxworthy <[hidden email]> wrote: > On Fri, 9 Nov 2018 at 22:01, Mathieu Lirzin <[hidden email]> > wrote: > > > > Shouldn't the documentation be available on the Web directly in HTML > > form with the output of AsciiDoctor? > > > Thanks Mathieu. That was my thought too. > > Cheers > > Paul Foxworthy > > -- > Coherent Software Australia Pty Ltd > PO Box 2773 > Cheltenham Vic 3192 > Australia > > Phone: +61 3 9585 6788 > Web: http://www.coherentsoftware.com.au/ > Email: [hidden email] > |
Administrator
|
Hi All,
Yes I totally agree. Actually we should have links to the generated documentation in HTML format like we have a link for the API. We should use the generateOfbizDocumentation and generatePluginDocumentation Gradle tasks in Buildbot to generate the documentation like we do for the API (API is actually also a documentation). Then we should have as less as possible links to get to the documentation from one site page. One for user, developer manuals and one for each plugins documentation We should use the wiki only for stuff which can't be in the generated documentation, ie for stuff which are not releases specific. While at it, we need to agree about some points: With generatePluginDocumentation, plugins are apart, so are their documentations consider standalone guides? I suggest to have only 3 toc levels w/o numbers. Else the toc could be several pages (at least user doc.) before reaching the content. And numbers don't add anything rather confuse, the simpler the better. Maybe it's possible to have a general toc and tocs by component? Opinions ? @Mathieu, about your question As a side note: Do you know why the OFBiz website is still referencing the Confluence Wiki as the Developper/User manuals? I think it's because Asciidoc content and process is still a WIP... Jacques Le 12/11/2018 à 08:28, Pierre Smits a écrit : > On Fri, 9 Nov 2018 at 22:01, Mathieu Lirzin <[hidden email]> > wrote: > > >> Shouldn't the documentation be available on the Web directly in HTML >> form with the output of AsciiDoctor? > + 1 Documentation must be available via our web pages. While developers > may benefit from having it local, we must help deciders and influencers > (accountants, business consultants, etc.) in an easy way to evaluate the > product. > > It should not be that difficult to generate release specific documentation > as part of the release process and hook it into the website. > > Best regards, > > Pierre Smits > > *Apache Trafodion <https://trafodion.apache.org>, Vice President* > *Apache Directory <https://directory.apache.org>, PMC Member* > Apache Incubator <https://incubator.apache.org>, committer > *Apache OFBiz <https://ofbiz.apache.org>, contributor (without privileges) > since 2008* > Apache Steve <https://steve.apache.org>, committer > > > On Mon, Nov 12, 2018 at 7:31 AM Paul Foxworthy <[hidden email]> wrote: > >> On Fri, 9 Nov 2018 at 22:01, Mathieu Lirzin <[hidden email]> >> wrote: >> >> >>> Shouldn't the documentation be available on the Web directly in HTML >>> form with the output of AsciiDoctor? >> >> Thanks Mathieu. That was my thought too. >> >> Cheers >> >> Paul Foxworthy >> >> -- >> Coherent Software Australia Pty Ltd >> PO Box 2773 >> Cheltenham Vic 3192 >> Australia >> >> Phone: +61 3 9585 6788 >> Web: http://www.coherentsoftware.com.au/ >> Email: [hidden email] >> |
Administrator
|
BTW we have also to move that to AsciiDoc: https://demo-trunk.ofbiz.apache.org/cmssite/cms/APACHE_OFBIZ_HTML
OFBIZ-9926 relates to that Le 13/11/2018 à 20:09, Jacques Le Roux a écrit : > Hi All, > > Yes I totally agree. Actually we should have links to the generated documentation in HTML format like we have a link for the API. > > We should use the generateOfbizDocumentation and generatePluginDocumentation Gradle tasks in Buildbot to generate the documentation like we do for > the API (API is actually also a documentation). > > Then we should have as less as possible links to get to the documentation from one site page. One for user, developer manuals and one for each > plugins documentation > > We should use the wiki only for stuff which can't be in the generated documentation, ie for stuff which are not releases specific. > > While at it, we need to agree about some points: > > With generatePluginDocumentation, plugins are apart, so are their documentations consider standalone guides? > > I suggest to have only 3 toc levels w/o numbers. Else the toc could be several pages (at least user doc.) before reaching the content. And numbers > don't add anything rather confuse, the simpler the better. > > Maybe it's possible to have a general toc and tocs by component? > > Opinions ? > > @Mathieu, about your question > > As a side note: Do you know why the OFBiz website is still referencing the Confluence Wiki as the Developper/User manuals? > > I think it's because Asciidoc content and process is still a WIP... > > Jacques > > > Le 12/11/2018 à 08:28, Pierre Smits a écrit : >> On Fri, 9 Nov 2018 at 22:01, Mathieu Lirzin <[hidden email]> >> wrote: >> >> >>> Shouldn't the documentation be available on the Web directly in HTML >>> form with the output of AsciiDoctor? >> + 1 Documentation must be available via our web pages. While developers >> may benefit from having it local, we must help deciders and influencers >> (accountants, business consultants, etc.) in an easy way to evaluate the >> product. >> >> It should not be that difficult to generate release specific documentation >> as part of the release process and hook it into the website. >> >> Best regards, >> >> Pierre Smits >> >> *Apache Trafodion <https://trafodion.apache.org>, Vice President* >> *Apache Directory <https://directory.apache.org>, PMC Member* >> Apache Incubator <https://incubator.apache.org>, committer >> *Apache OFBiz <https://ofbiz.apache.org>, contributor (without privileges) >> since 2008* >> Apache Steve <https://steve.apache.org>, committer >> >> >> On Mon, Nov 12, 2018 at 7:31 AM Paul Foxworthy <[hidden email]> wrote: >> >>> On Fri, 9 Nov 2018 at 22:01, Mathieu Lirzin <[hidden email]> >>> wrote: >>> >>> >>>> Shouldn't the documentation be available on the Web directly in HTML >>>> form with the output of AsciiDoctor? >>> >>> Thanks Mathieu. That was my thought too. >>> >>> Cheers >>> >>> Paul Foxworthy >>> >>> -- >>> Coherent Software Australia Pty Ltd >>> PO Box 2773 >>> Cheltenham Vic 3192 >>> Australia >>> >>> Phone: +61 3 9585 6788 >>> Web: http://www.coherentsoftware.com.au/ >>> Email: [hidden email] >>> > > |
Administrator
|
In reply to this post by Jacques Le Roux
Le 13/11/2018 à 20:09, Jacques Le Roux a écrit :
> With generatePluginDocumentation, plugins are apart, so are their documentations consider standalone guides? When I think about it they are and, like for applications, we should try to provide a user and developer manuals for each plugin. Jacques |
Free forum by Nabble | Edit this page |