Category Archives: JAVA

How to set Currency Format on TotalRow in OAAdvancedTable

เจอปัญหาในการใส่ Format ให้กับจำนวนเงิน สำหรับ Total Row ใน OAAdvancedTable

OAAdvancedTable
Id: showDetailTb
Id: column1

Total Value: True
Id: TrxAmount
View Attribute: TrxAmount

ถึงเราจะใส่ Format ให้กับ OAMessagedStyledTextBean id TrxAmount

Formatter formatter = new OADecimalValidater("#,###,###,##0.00;(#,###,###,##0.00)", "#,###,###,##0.00;(#,###,###,##0.00)");

OAAdvancedTableBean adTable = (OAAdvancedTableBean) webBean.findChildRecursive("showDetailTb");

OAMessageStyledTextBean trxAmountTotal = (OAMessageStyledTextBean) adTable.findChildRecursive("TrxAmount");
trxAmountTotal.setAttributeValue(ON_SUBMIT_VALIDATER_ATTR, formatter);

แต่จำนวน Total ก็ยังไม่อยู่ในรูป Format

หลังจากลองผิดลองถูก เข้าไป set format ในเกือบทุก objects ที่อยู่ภายใต้ OAAdvancedTable ก็ได้เข้าใจว่าถ้าต้องการให้เลขใน TotalRow อยู่ในรูปแบบที่จัด Format แล้วเราต้องไปตั้งค่าที่ …

Continue reading

Convert JAVA String to Date

    วันนี้ต้องเขียนโปรแกรมโดยรับ Parameter ประเภท Date จากหน้าจอมาในรูบแบบ String จำนวน 2 ตัวแปร จากนั้นนำมาหาผลต่างของทั้งสองค่า

วันนี้เลยขอเขียนเกี่ยวกับการ Convert JAVA String to Date

สิ่งที่ควรทำความเข้าใจ
java.lang.Object 
java.util.Date
java.lang.String
* java.text.SimpleDateFormat

ตัวอย่างการแปลง String -> Date


SimpleDateFormat formatter = new SimpleDateFormat(“dd-MMM-yyyy”);
String string = “17-Sep-2014”;
Date date = formatter.parse(string);
System.out.println(“Date: “+date);

ตัวอย่างการหาค่าต่างของจำนวนวัน 2 ค่า


String starDateStr = “01-Oct-2014”;

String endDateStr = “31-Oct-2014”;
SimpleDateFormat formatter = new SimpleDateFormat(“dd-MMM-yyyy”);
try
{
    Date startDate = formatter.parse(startDateStr);
    Date endDate = formatter.parse(endDtaeStr);
   
System.out.println(“Start Date: ” + startDate);
   
System.out.println(“End Date: ” + endDate);

    long t1 = startDate.getTime();
    long t2 = endDate.getTime();
    long diffTime = t2 – t1;
    System.out.println(“Time diff: ” + diffTime);
 

    long diffDay = diffTime / (1000 * 60 * 60 * 24);
   
System.out.println(“Days diff: ” + diffDay);
}catch(ParseException e){
    e.printStackTrace();
}


Credit:: http://stackoverflow.com/questions/4216745/java-string-to-date-conversion

วิธีการเปรียบเทียบตัวแปรวันที่ใน JAVA (Date comparison)

โดยปรกติเราสามารถเปรียบเทียบค่ามากกว่าน้อยกว่าของตัวเลข ด้วยเครื่องหมาย

“<" น้อยกว่า
“>” มากกว่า
“=” เท่ากับ

แต่ เมื่อต้องการเปรีบบเทียบตัวแปรประเภท วันที่ (Date) ไม่ว่าจะเป็น java.util.Date ro oracle.jbo.domain.Date ตัวแปรทั้งสองจะไม่ยอมให้ใช้เครื่องหมายดังกล่าวในการเปรียบเทียบ

… แล้วจะทำยังไงล่ะ ถ้าเราต้องการรู้ว่า xinputDate มากกว่า หรือน้อยกว่า todayDate

จะขออธิบายแบ่งเป็น 2 กรณี
กรณีที่ 1 java.util.Date
กรณีที่ 2 oracle.jbo.domain.Date

java.util.Date
ตัวแปร Date ของ Java จะมี method ให้เรียกใช้เพื่อเปรียบเทียบอยู่สำคัญๆ ดังนี้
after
before
compareTo
equals

oracle.jbo.domain.Date
compareTo
equals

ในบทความนี้จะขออธิบาย method compareTo เนื่องจากสามารถปรับใช้ได้ และมีประโยชน์อย่างมาก
การเปรีบเทียบตัวแปรวันที่ 2 ตัวแปร ทำได้โดย

public class Main {                                                     
public static void main(String args[])                                  
{                                                                      
Date todayDate=new Date();                                                
Date xinputDate=new Date(todayDate.getYear(),todayDate.getMonth()-1,todayDate.getDay());
if(todayDate.compareTo(xinputDate)<0)                                
     System.out.println(“Today Date มีค่าน้อยกว่า xinputDate”);
  else if(todayDate.compareTo(xinputDate)>0)                         
     System.out.println(“Today Date มีค่ามากกว่า xinputDate”);
  else                                                       
     System.out.println(“TodayDate และ xinputDate มีค่าเท่ากัน”);             
  }                                                          
}

thanks
http://stackoverflow.com/a/15925758/3386155
http://docs.oracle.com/cd/E21043_01/apirefs.1111/e10655/oracle/jbo/domain/Date.html
http://docs.oracle.com/javase/6/docs/api/java/util/Date.html

Populate current date use getCurrentDBDate()


SimpleAMImpl am = (SimpleAMImpl) pageContext.getApplicationModule(webBean);
SimpleDateFormat format = new SimpleDateFormat(“yyyy-MM-dd hh:mm:ss.S”);
SimpleDateFormat formatDate = new SimpleDateFormat(“yyyy-MM-dd hh:mm:ss”);
oracle.jbo.domain.Date convertDate = applicationModule.getOADBTransaction().getCurrentDBDate();
java.util.Date date = format.parse(convertDate.toString());
String convStr = formatDate.format(date);
System.out.println(“Date from database: ”+convertDate.toString());
System.out.println(“java.util.Date: “+date.toString());
System.out.println(“String date: “+convStr);

ขอแปะ code ไว้ก่อนแล้วจะมาอธิบายนะครับ

populate current date from getCurrentDBDate() #OAF

SimpleDateFormat format = new SimpleDateFormat(“yyyy-MM-dd hh:mm:ss.S”);
SimpleDateFormat formatDate = new SimpleDateFormat(“yyyy-MM-dd hh:mm:ss”);
oracle.jbo.domain.Date convertDate = am.getOADBTransaction().getCurrentDBDate();
java.util.Date date = format.parse(convertDate.toString());
String convStr = formatDate.format(date);

System.out.println(“Date from database:  “+convertDate.toString());

System.out.println(“java.util.Date: “+date.toString());
System.out.println(“String date: “+convStr);

ไว้จะมาอธิบายเรื่อง SimpleDateFormat อีกทีนะครับ
สามารถอ่านก่อนได้จาก http://docs.oracle.com/javase/1.4.2/docs/api/java/text/SimpleDateFormat.html

วิธีการติดตั้ง PyDev สำหรับ eclipse

วิธีการติดตั้งผ่านอินเตอร์เน็ตโดยการติดตั้ง PyDev Extensions โดยการใช้ Eclipse Update Manager

ขั้นตอนการติดตั้ง

  1. เลือกเมนู Help > Install New Software
    Image
  2. จากนั้นจะมีหน้าต่าง Available Software ในช่อง Work with ให้เลือกปุ่ม Add  Image
  3. ช่อง Name: ให้ใส่ชื่อ PyDev หรือ PyDev and Pydev Extensions
  4. ช่อง Location: http://pydev.org/updates กด OK
    Image
  5. จากนั้นจะแสดงรายการให้เราเลือกว่าเราต้องการติดตั้ง
  6. เราก็เลือกรายการที่ต้องการติดตั้งจากนั้นกดปุ่ม Next
    Image
  7. จากนั้นจะแสดง Review Licenses ให้เลือก I accept … จากนั้นกดปุ่ม Finish
    Image
  8. ที่เหลือก็รอโหลดจนติดตั้งเสร็จ eclipse จะถามว่าต้องการให้ restart program eclipse หรือไม่
  9. ตอบ Yes ก็ได้ครับหากไม่ได้ทำงานค้างอยู่
  10. เรียบร้อยครับ สามารถตรวจสอบได้โดยการสร้างโปรเจคใหม่ของ PyDev ขึ้นมImage

Changing the Java compiler version for a Java EE project in eclipse

You can change the version of Java used in Java EE project by changing the value of the Java facet.

The Java facet applies only to J2EE projects. To set Java Compiler level of a non-Java EE project, such as a Java project, see Java Compiler

Step to changing Java Compiler version.

  1. In the Project Explorer view of Java EE perspective, right-click the project and select Properties.

  2. Select the Project Facets page in the Properties window. This page lists the facets in the project and their verions.
  3. Click Modify project.
  4. Double click the version number next to the Java facets to select a different level of Java compiler.
  5. Click Finish to close the Modify Faceted Project window and then click OK.

Run Java with argument on Eclipse

JAVA Programming Language เป็นภาษาที่มีจุดเด่นๆ คือ สามารถเขียนโปรแกรมครั้งเดียวสามารถรันได้บนหลายบนหลาย Platform ท่านที่เคยพัฒนา JAVA โดยใช้ Eclipse IDE ในการรันโปรแกรมปรกติก็สามารถคลิ๊กเมนูรันได้ตากปรกติ

แต่หากคุณต้องการรันโปรแกรมที่เขียนพร้อมส่งค่าของ arguments ไปด้วยล่ะจะต้องทำยังไง

วันนี้จะแสดงการรัน JAVA ใน Eclipse พร้อมทั้งส่งค่า arguments ไปด้วย … ทำยังไงนั้น ไปดูกันครับ

วิธีการส่งค่าของ arguments ใน Eclipse IDE

  1. ขั้นตอนแรกทำการเลือกไฟล์ Java class ที่ต้องการจะรัน
    Continue reading

Run java program with arguments in eclipse

JAVA Programming Language เป็นภาษาที่มีจุดเด่นๆ คือ สามารถเขียนโปรแกรมครั้งเดียวสามารถรันได้บนหลายบนหลาย Platform ท่านที่เคยพัฒนา JAVA โดยใช้ Eclipse IDE ในการรันโปรแกรมปรกติก็สามารถคลิ๊กเมนูรันได้ตากปรกติ
แต่หากคุณต้องการรันโปรแกรมที่เขียนพร้อมส่งค่าของ arguments ไปด้วยล่ะจะต้องทำยังไง

วันนี้จะแสดงการรัน JAVA ใน Eclipse พร้อมทั้งส่งค่า arguments ไปด้วย … ทำยังไงนั้น ไปดูกันครับ
วิธีการส่งค่าของ arguments ใน Eclipse IDE
ขั้นตอนแรกทำการเลือกไฟล์ Java class ที่ต้องการจะรัน

จากนั้นไปที่คำสั่ง Run > Run Configurations
เลือกแทบ Arguments เพื่อที่จะส่งค่าของ argument ในการรัน Eclipse
ในช่อง Program argument คุณสามารถระบุค่าของ argument ต่างๆ ได้เหมือนกับการรัน java ผ่าน Command line
จากนั้นกดปุ่ม Apply
รันโปรแกรมที่เขียนไว้ก็สามารถเรียกคำสั่ง Runค่าของ argument ที่ได้กำหนดไว้ในช่อง Program argument จะถูกส่งไปให้กับไฟล์ที่ตั้งค่า argument ทุกครั้งที่รันโปรแกรม
Credit:

PHP Eclipse 3.5 Galileo on Ubuntu Jaunty 9.04

eclipse สามารถใช้ในการ deverlop php ได้
สิ่งที่ต้องมีในการ ติดตั้ง eclipse คือ Sun Java JDK

1. Sun Java JDK
สามารถติดตั้งโดยใช่คำสั่ง

sudo apt-get install sun-java6-jdk

2. ตัวโปรแกรม eclipse สามารถดาวโหลดได้ที่นี่ หรือจาก

http://www.eclipse.org/downloads

เมื่อดาวโหลดโปรแกรมมาเก็บไว้ในเครื่องแล้ว ในที่นี้ขอบันทึกไว้ที่ Desktop
3. ทำการแตกไฟล์ โ้ดยเปิด Terminal แล้วพิมพ์คำสั่งดังนี้

cd ~/Desktop
tar xzf eclipse-php-galileo-linux-gtk.tar.gz (ไฟล์จะถูกแตกไปอยู่ที่เดี่ยวกับไฟล์เริ่มต้น ที่ดาวโหลดมา ในที่นี่คือ Desktop)
sudo mv eclipse /opt/eclipse
cd /opt
sudo chown -R root:root eclipse
sudo chmod -R +r eclipse
cd /opt/eclipse
sudo chmod +x eclipse

4. สร้าง shell สำหรับรันโปแกรม eclipse
โดยเปิด Terminal แล้วรันคำสั่งดังนี้

sudo touch /usr/local/bin/eclipse
sudo chmod 755 /usr/local/bin/eclipse
sudo gedit /usr/local/bin/eclipse

เมื่อใช้คำสั่งสุดด้วยจะเปิดไฟล์ขึ้นมา เมื่อไฟล์ขึ้นมาแล้วให้เพิ่มข้อความด้านล่างลงไปแล้วบันทึก

#!/bin/sh
export ECLIPSE_HOME=/opt/eclipse
$ECLIPSE_HOME/eclipse $*

5. สร้างเมนู เพื่อรันโปรแกรม
โดยเปิด Terminal แล้วรันคำสั่งดังนี้

sudo gedit /usr/share/applications/eclipse.desktop

เมื่อเปิดไฟล์ให้เพิ่มข้อความด้านล่างลงไปแล้วบันทึก

[Desktop Entry]
Encoding=UTF-8
Name=Eclipse
Comment=Eclipse Galileo IDE
Exec=eclipse
Icon=/opt/eclipse/icon.xpm
Terminal=false
Type=Application
Categories=GNOME;Application;Development
StartupNotify=True

6. ทดสอบรัน eclipse
โดยเปิด Terminal แล้วรันคำสั่งดังนี้

/opt/eclipse/eclipse –clean

หรือไปที่

Application>programer>eclipse

Credit : http://techmix.net/blog/2009/07/31/eclipse-35-galileo-on-ubuntu-jaunty-904/