I'm trying to create a three column table in draw.io. I've started with the software / entity relationship example and adapted the style slightly. I've taken this example because I need my arrows to originate and go to specific rows in the table, and not just the table in general.
However, I have a few problems, I'm at a loss on how to create a third column, I would like for the vertical line to extend all the way down even if the elements don't (currently they are a right-line on the left inside element of the "row"). And finally, I need to be able to adapt the size of the columns flexibly (rather than having to edit settings in the individual rows). Am I missing a better solution here?
I am not sure I Understood all details, but this article might help:
https://drawio-app.com/tables-in-drawio-got-a-makeover/
You can make something like this and modify it additionally.
or just copy/paste this code to Extras > Edit diagram
<mxGraphModel dx="2062" dy="762" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="ppajL3H83U300mlp604u-53" value="Table" style="shape=table;html=1;whiteSpace=wrap;startSize=30;container=1;collapsible=0;childLayout=tableLayout;" vertex="1" parent="1">
<mxGeometry x="450" y="270" width="180" height="150" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-54" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;collapsible=0;dropTarget=0;pointerEvents=0;fillColor=none;top=0;left=0;bottom=0;right=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="ppajL3H83U300mlp604u-53">
<mxGeometry y="30" width="180" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-55" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-54">
<mxGeometry width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-56" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-54">
<mxGeometry x="60" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-57" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-54">
<mxGeometry x="120" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-58" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;collapsible=0;dropTarget=0;pointerEvents=0;fillColor=none;top=0;left=0;bottom=0;right=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="ppajL3H83U300mlp604u-53">
<mxGeometry y="70" width="180" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-59" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-58">
<mxGeometry width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-60" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-58">
<mxGeometry x="60" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-61" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-58">
<mxGeometry x="120" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-62" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;collapsible=0;dropTarget=0;pointerEvents=0;fillColor=none;top=0;left=0;bottom=0;right=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="ppajL3H83U300mlp604u-53">
<mxGeometry y="110" width="180" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-63" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-62">
<mxGeometry width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-64" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-62">
<mxGeometry x="60" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-65" value="" style="shape=partialRectangle;html=1;whiteSpace=wrap;connectable=0;overflow=hidden;fillColor=none;top=0;left=0;bottom=0;right=0;" vertex="1" parent="ppajL3H83U300mlp604u-62">
<mxGeometry x="120" width="60" height="40" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-69" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="ppajL3H83U300mlp604u-66" target="ppajL3H83U300mlp604u-54">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-66" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="120" y="200" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-70" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="ppajL3H83U300mlp604u-67" target="ppajL3H83U300mlp604u-58">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-67" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="120" y="330" width="120" height="60" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-71" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;" edge="1" parent="1" source="ppajL3H83U300mlp604u-68" target="ppajL3H83U300mlp604u-62">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="ppajL3H83U300mlp604u-68" value="" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="120" y="470" width="120" height="60" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
Regards,
Related
I'm trying to build an Android APK in Ionic but I'm getting the following error:
Discovered saved plugin "NetworkStatus". Adding it to the project
Failed to restore plugin "NetworkStatus" from config.xml. You might need to try adding it again. Error: Error: npm: Command failed with exit code 1
Error output:
npm ERR! code E404
npm ERR! 404 'NetworkStatus' is not in the npm registry.
npm ERR! 404 name can no longer contain capital letters
npm ERR! 404
npm ERR! 404 'NetworkStatus#latest' is not in the npm registry.
npm ERR! 404 Your package name is not valid, because
npm ERR! 404 1. name can no longer contain capital letters
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\IONIC\AppData\Roaming\npm-cache\_logs\2019-10-11T20_47_57_623Z-debug.log`
I'm using the following command to build the release APK:
ionic cordova build android --prod --release
also my config.xml look like:
<?xml version='1.0' encoding='utf-8'?><widget id="io.ionic.starter" version="0.0.1"
xmlns="http://www.w3.org/ns/widgets"
xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>App</name>
<description>Descreption</description>
<author email="info#demo.com" href="http://demo.com/">App</author>
<content src="index.html" />
<access origin="*" />
<access launch-external="yes" origin="whatsapp//*" />
<allow-intent href="whatsapp:*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<preference name="ScrollEnabled" value="false" />
<preference name="android-minSdkVersion" value="19" />
<preference name="BackupWebStorage" value="none" />
<preference name="SplashMaintainAspectRatio" value="true" />
<preference name="FadeSplashScreenDuration" value="300" />
<preference name="SplashShowOnlyFirstTime" value="false" />
<preference name="SplashScreen" value="screen" />
<preference name="SplashScreenDelay" value="3000" />
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
<platform name="android">
<edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application"
xmlns:android="http://schemas.android.com/apk/res/android">
<application android:networkSecurityConfig="#xml/network_security_config" />
</edit-config>
<resource-file src="resources/android/xml/network_security_config.xml" target="app/src/main/res/xml/network_security_config.xml" />
<allow-intent href="market:*" />
<icon density="ldpi" src="resources/android/icon/drawable-ldpi-icon.png" />
<icon density="mdpi" src="resources/android/icon/drawable-mdpi-icon.png" />
<icon density="hdpi" src="resources/android/icon/drawable-hdpi-icon.png" />
<icon density="xhdpi" src="resources/android/icon/drawable-xhdpi-icon.png" />
<icon density="xxhdpi" src="resources/android/icon/drawable-xxhdpi-icon.png" />
<icon density="xxxhdpi" src="resources/android/icon/drawable-xxxhdpi-icon.png" />
<splash density="land-ldpi" src="resources/android/splash/drawable-land-ldpi-screen.png" />
<splash density="land-mdpi" src="resources/android/splash/drawable-land-mdpi-screen.png" />
<splash density="land-hdpi" src="resources/android/splash/drawable-land-hdpi-screen.png" />
<splash density="land-xhdpi" src="resources/android/splash/drawable-land-xhdpi-screen.png" />
<splash density="land-xxhdpi" src="resources/android/splash/drawable-land-xxhdpi-screen.png" />
<splash density="land-xxxhdpi" src="resources/android/splash/drawable-land-xxxhdpi-screen.png" />
<splash density="port-ldpi" src="resources/android/splash/drawable-port-ldpi-screen.png" />
<splash density="port-mdpi" src="resources/android/splash/drawable-port-mdpi-screen.png" />
<splash density="port-hdpi" src="resources/android/splash/drawable-port-hdpi-screen.png" />
<splash density="port-xhdpi" src="resources/android/splash/drawable-port-xhdpi-screen.png" />
<splash density="port-xxhdpi" src="resources/android/splash/drawable-port-xxhdpi-screen.png" />
<splash density="port-xxxhdpi" src="resources/android/splash/drawable-port-xxxhdpi-screen.png" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
<icon height="57" src="resources/ios/icon/icon.png" width="57" />
<icon height="114" src="resources/ios/icon/icon#2x.png" width="114" />
<icon height="29" src="resources/ios/icon/icon-small.png" width="29" />
<icon height="58" src="resources/ios/icon/icon-small#2x.png" width="58" />
<icon height="87" src="resources/ios/icon/icon-small#3x.png" width="87" />
<icon height="20" src="resources/ios/icon/icon-20.png" width="20" />
<icon height="40" src="resources/ios/icon/icon-20#2x.png" width="40" />
<icon height="60" src="resources/ios/icon/icon-20#3x.png" width="60" />
<icon height="48" src="resources/ios/icon/icon-24#2x.png" width="48" />
<icon height="55" src="resources/ios/icon/icon-27.5#2x.png" width="55" />
<icon height="29" src="resources/ios/icon/icon-29.png" width="29" />
<icon height="58" src="resources/ios/icon/icon-29#2x.png" width="58" />
<icon height="87" src="resources/ios/icon/icon-29#3x.png" width="87" />
<icon height="40" src="resources/ios/icon/icon-40.png" width="40" />
<icon height="80" src="resources/ios/icon/icon-40#2x.png" width="80" />
<icon height="120" src="resources/ios/icon/icon-40#3x.png" width="120" />
<icon height="88" src="resources/ios/icon/icon-44#2x.png" width="88" />
<icon height="50" src="resources/ios/icon/icon-50.png" width="50" />
<icon height="100" src="resources/ios/icon/icon-50#2x.png" width="100" />
<icon height="60" src="resources/ios/icon/icon-60.png" width="60" />
<icon height="120" src="resources/ios/icon/icon-60#2x.png" width="120" />
<icon height="180" src="resources/ios/icon/icon-60#3x.png" width="180" />
<icon height="72" src="resources/ios/icon/icon-72.png" width="72" />
<icon height="144" src="resources/ios/icon/icon-72#2x.png" width="144" />
<icon height="76" src="resources/ios/icon/icon-76.png" width="76" />
<icon height="152" src="resources/ios/icon/icon-76#2x.png" width="152" />
<icon height="167" src="resources/ios/icon/icon-83.5#2x.png" width="167" />
<icon height="172" src="resources/ios/icon/icon-86#2x.png" width="172" />
<icon height="196" src="resources/ios/icon/icon-98#2x.png" width="196" />
<icon height="1024" src="resources/ios/icon/icon-1024.png" width="1024" />
<splash height="480" src="resources/ios/splash/Default~iphone.png" width="320" />
<splash height="960" src="resources/ios/splash/Default#2x~iphone.png" width="640" />
<splash height="1024" src="resources/ios/splash/Default-Portrait~ipad.png" width="768" />
<splash height="768" src="resources/ios/splash/Default-Landscape~ipad.png" width="1024" />
<splash height="1125" src="resources/ios/splash/Default-Landscape-2436h.png" width="2436" />
<splash height="1242" src="resources/ios/splash/Default-Landscape-736h.png" width="2208" />
<splash height="2048" src="resources/ios/splash/Default-Portrait#2x~ipad.png" width="1536" />
<splash height="1536" src="resources/ios/splash/Default-Landscape#2x~ipad.png" width="2048" />
<splash height="2732" src="resources/ios/splash/Default-Portrait#~ipadpro.png" width="2048" />
<splash height="2048" src="resources/ios/splash/Default-Landscape#~ipadpro.png" width="2732" />
<splash height="1136" src="resources/ios/splash/Default-568h#2x~iphone.png" width="640" />
<splash height="1334" src="resources/ios/splash/Default-667h.png" width="750" />
<splash height="2208" src="resources/ios/splash/Default-736h.png" width="1242" />
<splash height="2436" src="resources/ios/splash/Default-2436h.png" width="1125" />
<splash height="2732" src="resources/ios/splash/Default#2x~universal~anyany.png" width="2732" />
</platform>
<plugin name="cordova-plugin-whitelist" spec="1.3.3" />
<plugin name="cordova-plugin-statusbar" spec="2.4.2" />
<plugin name="cordova-plugin-device" spec="2.0.2" />
<plugin name="cordova-plugin-splashscreen" spec="5.0.2" />
<plugin name="cordova-plugin-ionic-webview" spec="^4.0.0" />
<plugin name="cordova-plugin-ionic-keyboard" spec="^2.0.5" />
<plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager" />
I'm using rest api in this project to get data from database & post data to database. but it gives the error at the time of build apk or run apk.
You are using the very old Cordova syntax (From 2.9.0) for Android as stated here.
First, remove the latest line in the config.xml:
<plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager" />
Then, make sure you have the updated Cordova using cordova -v. If it needs an update, update your global Cordova to the latest npm update -g cordova, then update the platforms and plugins.
For more info, you can check How to update Cordova?
After updating Cordova, install the network information cordova-plugin-network-information plugin. You can check the documentation in the Ionic Docs for more details and how to use it.
I've update the AgileConfiguration.xml process template to include specific columns, column order and widths to match how our teams work. After importing the process configuration, I was expecting the changes to be reflected in Web Access product and iteration backlog pages. The changes do not appear, rather I see my personal column changes I may have made over time. I've tested in a new Team Project, the changes appear.
How can I remove my personal modifications and test to ensure the changes are applied? Further, how can I ensure all users receive the updates if they have made their own changes?
Example of the template:
<?xml version="1.0" encoding="utf-16"?>
<AgileProjectConfiguration>
<IterationBacklog>
<Columns>
<Column width="65" refname="System.WorkItemType" />
<Column width="400" refname="System.Title" />
<Column width="60" refname="System.State" />
<Column width="45" refname="Microsoft.VSTS.Scheduling.RemainingWork" />
<Column width="90" refname="System.AssignedTo" />
<Column width="40" refname="Microsoft.VSTS.Common.Priority" />
<Column width="100" refname="Microsoft.VSTS.Common.Triage" />
<Column width="50" refname="Custom.SCRID" />
<Column width="250" refname="System.AreaPath" />
</Columns>
</IterationBacklog>
<ProductBacklog>
<AddPanel>
<Fields>
<Field refname="System.Title" />
</Fields>
</AddPanel>
<Columns>
<Column width="65" refname="System.WorkItemType" />
<Column width="400" refname="System.Title" />
<Column width="60" refname="System.State" />
<Column width="45" refname="Microsoft.VSTS.Scheduling.Effort" />
<Column width="90" refname="System.AssignedTo" />
<Column width="100" refname="Microsoft.VSTS.Common.Triage" />
<Column width="150" refname="System.IterationPath" />
<Column width="50" refname="Custom.SCRID" />
<Column width="50" refname="Microsoft.VSTS.Common.BacklogPriority" />
<Column width="250" refname="System.AreaPath" />
</Columns>
</ProductBacklog>
</AgileProjectConfiguration>
I uploaded a zipped folder with my config.xml file in the root. I don't get any build errors. After the build it doesn't show any plugins, any icons, any information in my config.xml file whatsoever. The only notification I get is "This app isn't using the latest version of PhoneGap. We recommend upgrading to 3.7.0." — in fact, it shows PhoneGap Build 3.3.0.
<?xml version="1.0" encoding="UTF-8"?>
<widget xmlns = "http://www.w3.org/ns/widgets"
xmlns:gap = "http://phonegap.com/ns/1.0"
id = "com.parker.products.2015"
versionCode="1"
version = "0.0.1">
<name>Products</name>
<description>Easily view Parker Aerospace products and component information on iOS devices for reference or convenient use with customers and industry colleagues.</description>
<gap:platform name="ios" />
<preference name="phonegap-version" value="3.7.0" />
<preference name="orientation" value="default" />
<preference name="fullscreen" value="false" />
<preference name="webviewbounce" value="false" />
<preference name="DisallowOverscroll" value="true"/>
<preference name="disallowOverscroll" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="prerendered-icon" value="true" />
<icon src="res/icon/ios/icon-57.png" gap:platform="ios" width="57" height="57" />
<icon src="res/icon/ios/icon-72.png" gap:platform="ios" width="72" height="72" />
<icon src="res/icon/ios/icon-57-2x.png" gap:platform="ios" width="114" height="114" />
<icon src="res/icon/ios/icon-72-2x.png" gap:platform="ios" width="144" height="144" />
<icon src="res/icon/ios/icon-76.png" gap:platform="ios" width="76" height="76" />
<icon src="res/icon/ios/icon-120.png" gap:platform="ios" width="120" height="120" />
<icon src="res/icon/ios/icon-152.png" gap:platform="ios" width="152" height="152" />
<gap:splash src="res/screen/ios/screen-iphone-portrait.png" gap:platform="ios" width="320" height="480" />
<gap:splash src="res/screen/ios/screen-iphone-landscape.png" gap:platform="ios" width="480" height="320" />
<gap:splash src="res/screen/ios/screen-iphone-portrait-2x.png" gap:platform="ios" width="640" height="960" />
<gap:splash src="res/screen/ios/screen-iphone-landscape-2x.png" gap:platform="ios" width="960" height="640" />
<gap:splash src="res/screen/ios/screen-iphone-portrait-568h-2x.png" gap:platform="ios" width="640" height="1136" />
<gap:splash src="res/screen/ios/screen-ipad-portrait.png" gap:platform="ios" width="768" height="1024 " />
<gap:splash src="res/screen/ios/screen-ipad-landscape.png" gap:platform="ios" width="1024" height="768" />
<gap:splash src="res/screen/ios/screen-ipad-portrait-2x.png" gap:platform="ios" width="1536" height="2008" />
<gap:splash src="res/screen/ios/screen-ipad-landscape-2x.png" gap:platform="ios" width="2048" height="1496" />
<feature name="http://api.phonegap.com/1.0/file"/>
<feature name="http://api.phonegap.com/1.0/network"/>
<gap:plugin name="org.apache.cordova.dialogs" />
<gap:plugin name="org.apache.cordova.device" />
<gap:plugin name="de.appplant.cordova.plugin.email-composer" />
<gap:plugin name="org.apache.cordova.network-information" />
<gap:plugin name="org.apache.cordova.inappbrowser" />
<gap:plugin name="org.apache.cordova.splashscreen" />
<gap:plugin name="com.phonegap.plugin.statusbar" />
</widget>
I've been trying to figure this out for days. Any ideas?
#Lisa, sometimes when the compiler fails, it drops references after that. Try removing all your plugins and add them back one at a time. It is tedious, but I found one bug like that. NOTE: It might be easier to start with a blank App, then to use the one you've put hours into.
FWIW: I do every plugin in a simple App, then add it to my main App. This allows me to test that plugin for bugs, then when I find them (bugs) I do less backtracking. It works sometimes. --Jesse
I am using iReport 5.6 and when I set conditional formatting for cells in a table preview in iReport works ok
When I save as xls document the table is shown the cells are colored and values are in the cells but they (values) are not displayed. If I set cell color to normal I can see the values. Any ideas how to fix it. Either in Excel or iReport (preferably)?
my xml
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="test_tabelegrafi" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<property name="ireport.zoom" value="1.4641000000000006"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="92"/>
<style name="table" lineSpacing="Single">
<box>
<pen lineWidth="1.0" lineColor="#000000"/>
</box>
</style>
<style name="table_TH" mode="Opaque" backcolor="#F0F8FF" lineSpacing="Single">
<box>
<pen lineWidth="0.5" lineColor="#000000"/>
</box>
</style>
<style name="table_CH" mode="Opaque" backcolor="#BFE1FF" lineSpacing="Single">
<box>
<pen lineWidth="0.5" lineColor="#000000"/>
</box>
</style>
<style name="table_TD" mode="Opaque" backcolor="#FFFFFF" lineSpacing="Single">
<box>
<pen lineWidth="0.5" lineColor="#000000"/>
</box>
</style>
<style name="barva_rdeca" mode="Transparent" forecolor="#000000" backcolor="#FFFFFF" lineSpacing="Single" pattern="">
<conditionalStyle>
<conditionExpression><![CDATA[$F{count} > 100]]></conditionExpression>
<style mode="Opaque" backcolor="#FF0000" fill="Solid" lineSpacing="Single"/>
</conditionalStyle>
<conditionalStyle>
<conditionExpression><![CDATA[$F{count} <= 100]]></conditionExpression>
<style mode="Opaque" backcolor="#00CC33" fill="Solid" lineSpacing="Single"/>
</conditionalStyle>
</style>
<subDataset name="New Dataset 2">
<queryString>
<![CDATA[select
o_teacher,
o_class,
o_location,
count(*)
from outputs_txt
where o_date between '2014-05-30' and '2014-06-30' and o_class != '' and o_location is not null
group by o_teacher, o_class,o_location
order by o_class,o_teacher
limit 10]]>
</queryString>
<field name="o_teacher" class="java.lang.String"/>
<field name="o_class" class="java.lang.String"/>
<field name="o_location" class="java.lang.String"/>
<field name="count" class="java.lang.Long"/>
</subDataset>
<subDataset name="Graf">
<queryString>
<![CDATA[select
o_teacher,
o_class,
o_location,
count(*)
from outputs_txt
where o_date between '2014-05-30' and '2014-06-30' and o_class != '' and o_location is not null
and o_location IN ('tel1','tel2', 'tel3')
group by o_teacher, o_class,o_location
order by o_class,o_teacher
limit 10]]>
</queryString>
<field name="o_teacher" class="java.lang.String"/>
<field name="o_class" class="java.lang.String"/>
<field name="o_location" class="java.lang.String"/>
<field name="count" class="java.lang.Long"/>
</subDataset>
<queryString>
<![CDATA[select
o_teacher,
o_class,
o_location,
count(*)
from outputs_txt
where o_date between '2014-05-30' and '2014-06-30' and o_class != '' and o_location is not null
group by o_teacher, o_class,o_location
order by o_class,o_teacher
limit 10]]>
</queryString>
<field name="o_teacher" class="java.lang.String"/>
<field name="o_class" class="java.lang.String"/>
<field name="o_location" class="java.lang.String"/>
<field name="count" class="java.lang.Long"/>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="79" splitType="Stretch">
<staticText>
<reportElement x="154" y="0" width="234" height="38"/>
<textElement textAlignment="Center" lineSpacing="Single">
<font size="14"/>
</textElement>
<text><![CDATA[TESTNI REPORT TABEL IN GRAFOV]]></text>
</staticText>
</band>
</title>
<pageHeader>
<band height="287" splitType="Stretch">
<componentElement>
<reportElement key="table" style="barva_rdeca" stretchType="RelativeToBandHeight" x="0" y="0" width="555" height="118"/>
<jr:table xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd">
<datasetRun subDataset="New Dataset 2">
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
</datasetRun>
<jr:column width="90">
<jr:columnHeader style="table_CH" height="30" rowSpan="1">
<staticText>
<reportElement x="0" y="0" width="90" height="30"/>
<textElement lineSpacing="Single"/>
<text><![CDATA[o_teacher]]></text>
</staticText>
</jr:columnHeader>
<jr:detailCell style="table_TD" height="20" rowSpan="1">
<textField>
<reportElement x="0" y="0" width="90" height="20"/>
<textElement lineSpacing="Single"/>
<textFieldExpression class="java.lang.String"><![CDATA[$F{o_teacher}]]></textFieldExpression>
</textField>
</jr:detailCell>
</jr:column>
<jr:column width="90">
<jr:columnHeader style="table_CH" height="30" rowSpan="1">
<staticText>
<reportElement x="0" y="0" width="90" height="30"/>
<textElement lineSpacing="Single"/>
<text><![CDATA[o_class]]></text>
</staticText>
</jr:columnHeader>
<jr:detailCell style="table_TD" height="20" rowSpan="1">
<textField>
<reportElement x="0" y="0" width="90" height="20"/>
<textElement textAlignment="Center" lineSpacing="Single"/>
<textFieldExpression class="java.lang.String"><![CDATA[$F{o_class}]]></textFieldExpression>
</textField>
</jr:detailCell>
</jr:column>
<jr:column width="90">
<jr:columnHeader style="table_CH" height="30" rowSpan="1">
<staticText>
<reportElement x="0" y="0" width="90" height="30"/>
<textElement lineSpacing="Single"/>
<text><![CDATA[o_location]]></text>
</staticText>
</jr:columnHeader>
<jr:detailCell style="table_TD" height="20" rowSpan="1">
<textField>
<reportElement x="0" y="0" width="90" height="20"/>
<textElement textAlignment="Center" lineSpacing="Single"/>
<textFieldExpression class="java.lang.String"><![CDATA[$F{o_location}]]></textFieldExpression>
</textField>
</jr:detailCell>
</jr:column>
<jr:column width="90">
<jr:columnHeader style="table_CH" height="30" rowSpan="1">
<staticText>
<reportElement x="0" y="0" width="90" height="30"/>
<textElement lineSpacing="Single"/>
<text><![CDATA[count]]></text>
</staticText>
</jr:columnHeader>
<jr:detailCell style="table_TD" height="20" rowSpan="1">
<textField>
<reportElement style="barva_rdeca" x="0" y="0" width="90" height="20"/>
<textElement textAlignment="Center" lineSpacing="Single" markup="none"/>
<textFieldExpression class="java.lang.String"><![CDATA[$F{count}]]></textFieldExpression>
</textField>
</jr:detailCell>
</jr:column>
</jr:table>
</componentElement>
<bar3DChart>
<chart>
<reportElement positionType="Float" x="0" y="141" width="555" height="146"/>
<chartTitle/>
<chartSubtitle/>
<chartLegend/>
</chart>
<categoryDataset>
<dataset>
<datasetRun subDataset="Graf">
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
</datasetRun>
</dataset>
<categorySeries>
<seriesExpression><![CDATA[$F{o_location}]]></seriesExpression>
<categoryExpression><![CDATA[$F{o_teacher}]]></categoryExpression>
<valueExpression><![CDATA[$F{count}]]></valueExpression>
</categorySeries>
</categoryDataset>
<bar3DPlot>
<plot/>
<itemLabel/>
<categoryAxisFormat>
<axisFormat/>
</categoryAxisFormat>
<valueAxisFormat>
<axisFormat/>
</valueAxisFormat>
</bar3DPlot>
</bar3DChart>
</band>
</pageHeader>
<columnHeader>
<band splitType="Stretch"/>
</columnHeader>
<detail>
<band splitType="Stretch"/>
</detail>
<columnFooter>
<band splitType="Stretch"/>
</columnFooter>
<pageFooter>
<band splitType="Stretch"/>
</pageFooter>
<summary>
<band height="42" splitType="Stretch"/>
</summary>
</jasperReport>
The only solution I could find was that after export I selected the cells in Excel and changed type to Numeric or smth other then custom.
Having a GridPane with 2 rows and 2 columns, setting the row constraints to 50 percent height results in unwanted behaviour.
Code:
<BorderPane xmlns:fx="http://javafx.com/fxml" fx:controller="..." stylesheets="#general.css" prefWidth="800" prefHeight="600">
<top>
<VBox>
<!-- ... -->
</VBox>
</top>
<bottom>
<HBox>
<!-- ... -->
</HBox>
</bottom>
<center>
<GridPane >
<children>
<ScrollPane fx:id="tilePane" GridPane.columnIndex="0" GridPane.rowIndex="0">
<content>
</content>
<GridPane.margin>
<Insets bottom="2" left="2" right="2" top="2" />
</GridPane.margin>
</ScrollPane>
<TreeView fx:id="listPane" GridPane.columnIndex="0" GridPane.rowIndex="1">
<root>
<TreeItem value="Stages" />
</root>
<GridPane.margin>
<Insets bottom="2" left="2" right="2" top="2" />
</GridPane.margin>
</TreeView>
<ScrollPane fx:id="mapPane" GridPane.columnIndex="1" GridPane.rowIndex="0" GridPane.rowSpan="2">
<content>
</content>
<GridPane.margin>
<Insets bottom="2" left="2" right="2" top="2" />
</GridPane.margin>
</ScrollPane>
</children>
<columnConstraints>
<ColumnConstraints hgrow="ALWAYS" percentWidth="25"/>
<ColumnConstraints hgrow="ALWAYS" />
</columnConstraints>
<rowConstraints>
<RowConstraints vgrow="ALWAYS" percentHeight="50" />
<RowConstraints vgrow="ALWAYS" percentHeight="50" />
</rowConstraints>
</GridPane>
</center>
</BorderPane>
(mentioned attribute at the bottom)
I expected that the two rows would share their available height at a 50% rate. They do this, but they also consume a lot more space than needed.
Picture of the result with, and without percentHeight specified:
Do I understand percentHeight wrong, or is there another approach?