Proper Case formatting a text in JasperReports - jasper-reports

Is there a way to create a "proper case text display in JasperReports". I am using JasperReports 5.x with iReport Designer.
I have data returned from DB which is a string/text field user entered text... the problem here is some users enter in all calitals and some enter in all small I want to display the text values in a proper case... I know this can be achieved in SQL but unfortunately I dont have that option to simply edit the query....
Thanks for your help in advance...
Meeza

There wouldnt be any standard settings in iReport, you would need to use an external Method to create the text you need. I would try to go for an Apache Commons solution, or create your own Method.
I have not used the WordUtils class from Apache Commons Lang, but it looks like capitalize may be what you want.
http://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/WordUtils.html#capitalize(java.lang.String)
To Add a Jar to your classpath in iReport:
Tools -> Option -> Classpath -> Add Jar
You then need to import the Class as well:
From the Report root element, edit the Properties. Find "Imports" click on the ellipses (...) and add your class!
iReport Imports

Related

How to Create or edit existing PCB template (Title block) in Altium Designer v17

I would like to create a personalize PCB template (Title block) for my company which include company information and logo. So I wanted to know how can I use or edit existing PCB sheet templates according to my needs?
Pariksit.
THIS ISN'T A QUESTION ABOUT PROGRAMMING. I'll answer but don't worry if someone delete the question.
I like to create my own title blocks. You can do that creating a schematic component and introducing the parameters you want.
In your schematic library, add a new component called Title_Block. Use lines and strings to create the fields.
I put these strings in red to show that are special strings starting with '=' sign.
These special strings will be replaced automatically by Altium when you create a parameters with the same name. I put some Altium default parameters (SheetNumber, SheetTotal, CurrentDate and Title) and two that we'll create (VersionRevision and Project). You can see other default special strings here: Schematic Text Strings.
In your schematic sheet, disable the Title Block to introduce yours. Right click on the schematic, Options > Sheet..., and uncheck the Title Block box.
Create your own parameters on Project > Project Options tab Parameters like this:
Now, when you add the component called _Title_Block it seems like this:
In Schematic Page,
Design->Project Template ->Choose a File
Now, following location will be open.
C:\Users\Public\Documents\Altium\AD16\Templates
Here, you can find like A3,A4 different template for Schematic and PCB also.
You can Edit that as per requirement.
To Edit or Change the logo in Template sheet:
Place->Drawing tool->Graphic.

How to accomplish drop-down lists in KIE workbench?

I'm new to JBPM and am trying to wrap my head around a new project, and recently noticed that while trying to define some user task forms I couldn't find a form option for a drop-down list
At this point my knowledge of the technology is pretty small, and this seems like a strange limitation at first glance, which should have an easy work-around, but I'm having difficulty finding a quick and dirty solution.
Is this something I'd have to code in Eclipse, or something else?
The answer that #cego provides is correct for "hard-coded" values, if you want to load dynamic values (from a database for example) you can use the Select Box field type and configure it to use a SelectValuesProvider that calculates the combo values.
To create a SelectValuesProvider you should create a java project with a mvn dependency to:
<dependency>
<groupId>org.jbpm</groupId>
<artifactId>jbpm-form-modeler-api</artifactId>
</dependency>
Once you did that you can create your class that implements org.jbpm.formModeler.core.config.SelectValuesProvider. This interface provides two methods:
String getIdentifier(): should return a unique String that identifies this provider. This String will be shown on the Select Box configuration popup.
Map getSelectOptions(Field field, String value, FormRenderContext renderContext, Locale locale): This method have to return a Map containting the key, text that are going to be load on the Select box. The received parameters are:
Field field: the configuration of the field that is going to be evaluated.
String Value: the current value of the field
FormRenderContext renderContext: a class that contains all the information about the form that is rendered at that moment.
Locale locale: the locale in which is being rendered the form.
Once you've created this provider, you must compile your project and put the jar on the server classpath and restart it. After doing that you'll be able to create a form (or edit an existing one), add a Select Box field and choose your provider on the "Data provider" combo box.
Hope it helps, if you have any doubt please ask and I'll try to create an example.
Regards,
Pere
Ok, for old versions you can do it turning a textbox to a combobox using a RangeProvider. This is a very similar solution to the previous one.
First you should create java project with a mvn dependency to:
<dependency>
<groupId>org.jbpm</groupId>
<artifactId>jbpm-form-modeler-api</artifactId>
</dependency>
After that you have to create your RangeProvider class that implements org.jbpm.formModeler.api.model.RangeProvider and implement it's methods. As the SelectValuesProvider on the previous example this interface provides two methods:
- String getType(): A unique String to identify the provider
- Map getRangesMap(String namespace): This method have to return a Map containting the key, text that are going to be load on the combo box. It only receives a String parameter, it is an identifier that allows you to get all the information about the form that is being rendered.
Also you have to create a META-INF/beans.xml file to allow to lookup your provider via CDI (I missed this step on the previous example, sorry).
As the previous example, once you've created the provider you must compile your project and put the jar on the server classpath and restart it.
When the server is started you have to create a new form (or open an existing one), add a TextBox field, edit it's properties and write the string returned by your RangeProvider's getType method on the "Range value" property.
Save the field properties and if everything is fine the field would be rendered as a combobox showing the values returned by your provider.
To create a select element(drop-down list) look for "Setting a Range Formula" in this part of the documentation: http://docs.jboss.org/jbpm/v6.1/userguide/chap-formmodeler.html#sect-formmodeler-FormulasExpression

Custom content assist for default java editor in Eclipse

I'm currently trying to develop an Eclipse Plugin to support code replacement, like what the default content assist in Eclipse do. What I want to implement is something like "insert argument names automatically on method completion with visualized box around the argument" and I can "use the Tab key to navigate between the inserted names" and "while navigating, list of optional variables for current argument can be displayed and be chosen".
In short, it comes to two questions:
How to add the visualized box around the already existed variable or even Java keywords that need replacement? And at the meanwhile I can use Tab key to switch between these boxes.
How to display a list of candidates to select from when I trigger on the box?
By now I only figure out the extension point : org.eclipse.jdt.ui.javaCompletionProposalComputer may be useful, but I have no idea where to start at? Thanks in advance.
Oh, finally I've solved it myself...
For the 'box', it should be the LinkedModeModel, this class should work with LinkedPositionGroup and LinkedPosition to add mutiple boxes. And we should use LinkedModeUI to set it up.
For the content assistant, there's no need to use the extension point. There is a ProposalPosition class which extends LinkedPosition for you to add your proposals for the 'box' in its constructor. And we can simply use the CompletionProposal to construct a ICompletionProposal array as the argument of ProposalPosition's constructor.

How to set eclipse preferences use plugin?

Now I'm using python to change settings files under .metadata/ in my workspace.I need find every line needed in these files beacuase I don't want any unnecessary content.
For example , if I want set tab's width be 4. I need change the file
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs
in workspace and add a line following in it , not simply copy the settings file:
tabWidth=4
So I want to know : Can I set this value by java code in eclipse plugin? If it can, please give me related classes :-)
And, does it more complex than python's method?
In a plugin you can use:
IPreferenceStore store = new ScopedPreferenceStore(InstanceScope.INSTANCE, "org.eclipse.ui.editors");
store.setValue("tabWidth", 4);

TYPO3/TemplaVoila: Unknown column 'belayout' in 'field list' when adding new Template Object

We're trying to implement a mobile version of our Typo3 site, but whenever I add a new Template Object and select something in "Make this a sub-template of", I get this error:
I'm not very good with typo3, so if anyone could point me in the right direction it would be great. Thanks.
Go to Install Tool > Database Analyser > COMPARE and mark the checkboxes to add missing fields and tables (you don't need to remove suggested things)
Repeat the operation as long as required, if some field can not be added by COMPARE, you need to include it manually via phpMyAdmin. Most probably in such case you'll need to resolve some conflict.
Next go to Extension Manager, find the TemplaVoila ext and search for Update button, to make sure that the config is saved correctly to the file.