سأل احد ازملاء عن كيفية تحويل الارقام من الانجليزية الى العربية داخل JasperReport
وبما انه تم افادته احببت ان اضيف طريقة اضافة method واستخدامها في JasperReport
الطريقة بسيطة جدا ..
اولا انشئ صنف ممتد من الصنف net.sf.jasperreports.engine.JRDefaultScriptlet داخل مشروعك
مثال للصنف وليكن باسم MyScriptlet
اضف الطرق التي تحتاجها
package arabteam.ireport;
import java.awt.font.NumericShaper;
import net.sf.jasperreports.engine.JRDefaultScriptlet;
public class MyScriptlet extends JRDefaultScriptlet {
public static String forceArabicNumbers(String str){
NumericShaper shaper = NumericShaper.getShaper(NumericShaper.ARABIC);
char[] ca = str.toCharArray();
shaper.shape(ca, 0, ca.length);
return String.copyValueOf(ca);
}
public static String forceArabicNumbers(Integer number){
return forceArabicNumbers(number.toString());
}
}ثانيا في iReport
في خانة Properties
اجعل الخاصية Scriptlet = Use this scriptlet class
والخاصية Scriptlet Class = arabteam.ireport.MyScriptlet
ثالثا في خصائص الحقل المقصود التعديل علية
اجعل الخاصية
Expressio = $P{REPORT_SCRIPTLET}.forceArabicNumbers($F{gpa})وسلامتكم
الشرح بسيط ولكني اتمنا ان يكون واضح

