8/24/2013

เปลี่ยน Boot logo และ Boot Animation Android I Mobile I Style Q2 หรือ รุ่นอื่น

***ผมไม่รับรองกับความเสียหายที่จะเกิดขึ้นกับเครื่อง น่ะครับแต่เครื่องผม ทำได้ตามนี้ครับ

1. สิ่งที่ต้องมี โปรแกรม LogoBuilder
2. เครื่องต้อง Root แล้วถึงจะเปลี่ยน Boot Animation ได้
3. ใช้โปรแกรม Flash Tool ในการ flash หรือเครื่องต้องทำการลง Clock Work Mod แล้ว เอาไฟล์ไป Update ผ่าน Zip ก็ได้

มันจะมีอยู่ทั้งหมด 3 ส่วนคือ
1 logo ตัวแรก (ถ้าจะเปลี่ยน ต้องใช้ sp_flash_tool เพื่อทำการเปลี่ยน logo.img )
2 animation ตอนเปิดเครื่อง
3 animation ตอนปิดเครื่อง

ส่วนที่ 1.
 - ดาวน์โหลดโปรแกรม LogoBuilder v1.2 จากที่นี่ http://www.mediafire.com/download/ekrbbwad109haxm/LogoBuilder_v1.2.zip
 - เปิดโปรแกรมขึ้นมาแล้ว กด Create new project เปิดไฟล์ logo.bin จากรอมศูนย์ เช่น  http://www.mediafire.com/?p41t1r8ty1tuczi  ของ I Style Q2 น่ะรุ่นใครรุ่นมัน Up ข้ามรุ่นไม่ได้
 - สร้างโฟลเดอร์ที่เราจะเก็บไฟล์ กด OK
 - กำหนดขนาดหน้าจอรุ่นที่ตัวเองใช้ (อย่างเช่น Q2, q2duo เป็น 480 x 800)  ส่วน Q3 เป็น 540 x 960)  ส่วนรุ่นอื่นก็ดูขนาดจอ ต่างกันออกไป ทำพลาดระวัง Boot ไม่ขึ้นครับ กด OK
 - โปรแกรมจะ preview รูปจากไฟล์ขึ้นมา รูปแรกจะเป็นโลโก้เขียวๆที่เราเห็นประจำ เราจะเปลี่ยนเจ้าตัวนี้แหละ
 - หาไฟล์ภาพนามสกุล .png ที่เราต้องการเปลี่ยน ขนาดเท่ากับหน้าจอของเรา แล้วเปลี่ยนชื่อเป็น img1.png  หรือ โหลดไฟล์นี้  http://www.mediafire.com/?9g90h7mtqqh3nzo
 - นำไฟล์ img1.png ก๊อปไปทับไว้ในโฟลเดอร์โปรเจ็คที่สร้างไว้ทีแรก
 - กด Make รอสักครู่...
 - โปรแกรมจะสร้างไฟล์ขึ้นมาใหม่ 2 ไฟล์ (update.zip และ logo.bin) อยู่ในโฟลเดอร์โปรเจ็คของเรา
 - ไฟล์ update.zip สามารถนำไป Update ผ่าน cwm ได้เลย หรือจะไฟล์ logo.bin ไป flash ผ่าน SP FlashTool ก็ได้

ไฟล์นี้ ทำเสร็จแล้วครับ เอาไป Flash หรือใช้ตัว Zip up date ผ่าน CWM ได้เลย ตัวนี้ใช้ได้ทั้ง I Style Q2ตัวแรก และ Q2 Duo น่ะครับเพราะขนาดหน้าจอเท่ากัน ครับ แตกไฟล์จะได้ 2 ไฟล์ .bin กับ .zip
Download   http://www.mediafire.com/?h19rxv48khpxsc5  
เป็นตัว MIUI ตามตัวอย่างใน Youtube ครับ

กำจัดส่วนที่เป็น Boot Logo สีเขียว ๆ ตอนที่เราเปิดเครื่องแล้วครับ ต่อมา ก็จะเปลี่ยน Boot Animation ที่จะทำงานต่อจาก Boot Logo และผมแถม Shutdown Animation ด้วย

ส่วน Boot Animation สามารถลบทิ้งหรือเปลี่ยนชื่อไฟล์ bootanimation.zip และ shutanimation.zip ไม่ต้องใช้เลยก็ได้มันจะกลายเป็นรุปหุ่น Android เหอะ ลองดูน่ะครับ แต่ถ้าต้องการให้เป็นแบบอื่นต้องหา Download Boot Animation มาครับ ตามส่วนที่ 2 และ 3

ส่วนที่ 2
Download Boot Animation ของ Google น่ะครับตัวนี้ เป็นตัว X  ที่  http://www.mediafire.com/download/wnv01nlg35arlst/bootanimation.zip
- Copy ใส่ โปรศัพท์ ใน SD หรือตัวเครื่องก็ได้ และจำที่อยู่มันไว้
- เข้าไปเปลี่ยนชื่อ Boot Animation เดิมของ I mobile ที่เป็นสี เขียว ๆ ก่อน ถ้าต้องการเก็บไว้ หรือไม่ต้องการก็ ลบทิ้ง ไปเลย แล้วใช้ Root Explorer หรือโปรแกรมอื่นที่สามารถเข้าไฟล์ System ของ Android ได้ Copy ไฟล์  bootanimation.zip ไปว่างไว้ใน /system/media/    อย่าลืม กด Mount จาก R/O เป็น Mount R/W ก่อนน่ะไม่งั่นจะว่างไม่ได้ แล้วก็ Set สิทธิ์ ตามนี้
ส่วนที่ 3 ตอนปิดเครื่องชื่อ shutanimation.zip ก็ทำเช่นกัน 

http://www.mediafire.com/download/t093qmkydk80g18/shutanimation.zip

- Copy ไฟล์  shutanimation.zip ไปว่างไว้ใน /system/media/    อย่าลืม กด Mount จาก R/O เป็น Mount R/W ก่อนน่ะไม่งั่นจะว่างไม่ได้ แล้วก็ Set สิทธิ์ ตามข้างบน bootanimation  เท่านี้ตอนปิดและตอนเปิดเครื่องเราก็จะไม่มีโลโก สีเขียวสว่าง จ้า และหารูป หา Animation ตามที่เราต้องการมาใส่แทนได้ ครับ

ที่ Download bootanimation  สำคัญคือเลือกขนาดหน้าจอให้ตรงกันกับเครื่องเราน่ะครับมันมีหลายขนาดดูดี ดี
http://androidbootanimation.com/


ลองดูน่ะครับรุ่นอื่นก็น่าจะทำได้ แต่ต้องมีไฟล์ logo.bin และเลือกขนาดหน้าจอให้ตรงกันน่ะครับ



Axapta X++ : สร้าง Dialog ใน Method

เรียกใช้ Dialog ได้เลย เช่นใน Method click หรืออื่น ๆ

  1. // Dalog Field.
  2.     Dialog                     dl;
  3.     DialogField             dfl;
  4.     WH_SobmitNo        transWH_SobmitNo;
  5. ;
  6.     dl  = new Dialog("Name Dialog");
  7.     dfl  = dl.addFieldValue(typeId(WH_SobmitNo),transWH_SobmitNo);
  8.     dfl.label("Name Show Label");
  9.  
  10.     if(dl.run()){
  11.          Print dfl.value();
  12.          pause;
  13.     }

Axapta X++ : ข้อมูล Enum แต่ต้องการแสดงตัวหนังสือ

ใช้คำสั่ง enum2str

เช่น   oRange.SetString(enum2str(TableInventTrans.TransType));

Mail : Setting Hotmail sand mail by other address.

1. login to hotmail
2. Click Seting and select by image.




3.ตั้งค่า 2 ที่คือ บัญชีอีเมล์ของคุณ และ แออเดรสในการตอบกลับ
4.เข้าไปใน บัญชีอีเมล์ของคุณ เลือก เพิ่มบัญชีส่งเท่านั้น


5.ใส่ชื่อเมล์ที่เราต้องการให้เป็นชื่อส่งออก คลิกส่งเมล์และตรวจสอบ จากนั้นเข้าไป login mail ที่เราใส่เพื่อยืนยัน


6.กลับมาที่หน้า ตั้งค่า Outlook เลือก แอดเดรส ด้านล่างที่จะให้เป็นตั้งเมล์ที่ใช้ส่งออกเริ่มต้น


7.ตั้งค่าส่วน แออเดรสในการตอบกลับ เป็นส่วนที่จะให้เมล์ที่เราตั้งไว้ขึ้น อัตโนมัติเมื่อผู้รับคลิกตอบกลับ หรือ Reply


JavaScript : Reset form

<script>
function formReset()
{
document.getElementById("frm1").reset();
}
</script>

Axapta X++ : บันทึกข้อมูลก่อน ปิดโปรแกรม Libre calc

oDocument.store(); //ให้ Save ก่อน
oDocument.dispose(); // ให้ ปิดโปรแกรม

Ubuntu : Install Alfresco 4

1. Install Ubuntu server 10.04 64 bit Or copy file ova for other computer.
2. Open program Virtualbox. Menu file import choose file Ubuntu 10.04-4 X64.ova
3. Next set ram up to 1024
4. Set network Bridged Adapter
5. Start Ubuntu in Virtualbox
5. ถ้าไม่ได้ IP หรือ Ping ไป Ip อื่นไม่ติด ให้ดู mii-tool ดู lan ที่เราใช้งานอยู่เป็น eth0 หรือ eth1
6. ลง Time server
  1. apt-get install ntp
และแก้ ntp
  1. nano /etc/ntp.conf
change server to 192.168.2.252 << NTP Server IP
7. Set proxy for Update
  1. nano /etc/apt/apt.conf
พิมพ์ Acquire::http { Proxy "http://192.168.2.252:9999"; }; เสร็จก็บันทึก update and upgrade ได้เลย
8. Downlosd from Alfresco http://wiki.alfresco.com/wiki/Download_and_Install_Alfresco Or Wget เอา แล้ว
  1. chmod 777 alfresco-community-4.2.c-installer-linux-x64.bin
9. Install by
  1. ./alfresco-community-4.2.c-installer-linux-x64.bin
7. If error stop and install packed
  1. sudo apt-get install libice6 libsm6 libxt6 libxrender1 libfontconfig1

8. Read and follow by step.
9. finish test http://192.168.0.184:8080/alfresco/

Android :: JSON SQL ภาษาไทย

ในการดึงข้อมูลจาก MySQL ในฝั่ง Server นั้นจะใช้ PHP ในการดึงข้อมูลและเปลียนให้อยู่ในรูปแบบของ JSON เพื่อสามารถที่จะนำมาใช้กับ Android ได้ ต้องดึงข้อมูลเป็น UTF 8 เท่านั้นถึงจะแสดงภาษาไทยได้

Code ในส่วนของฐานข้อมูล MySQL ต้องเป็น (utf8_general_ci) :

ที่ไฟล์ติดต่อ ฐานข้อมูล PHP
//ดึงข้อมูลออกมาในรูปแบบ UTF 8
  1. mysql_query("SET NAMES UTF8");
  1. // connecting to db
  2. $db = new DB_CONNECT();
  3. mysql_query("SET NAMES UTF8");
  4. $result = mysql_query("SELECT *FROM products") or die(mysql_error());

http://thaidroiddev.blogspot.com/2011/07/database-mysql-php-json.html

Edit โปรแกรมเงินเดือน(BplusPayroll)

Step install program.
1. setup program Payroll version 4.1 by mount Image file .iso
2. Open program and create database.
3. In manu tools select นำสำเนาข้อมูลกลับมาใช้งาน and enter user name password. Download file zip from zimbra. File zip extra file befor import.
4. After import program use user name and password new.

Step edit report in program.
1.Enter to manu report and select register reports.
2.Select report we must and click right select สำเนารายงาน
3.Click right select edit rename report and rename file report (by insert -SCI append.)
4.Enter to folder Report in "C:\Program Files\EBP\BplusPayroll\Report" and rename file follower number 3.
5.Open report in number 4. By program Seagate Crystal Reports (version 8.)
6.Enter to menu Insert > Database Field..., Parameter Field... แล้วแต่กรณี
7.Drag field insert to report. If not field you must create field by click right and select new. Set name and other field finish click save.
8.Click right for setting format field... follower format we use.
9.Test report by select date 14/6/2556 - 14/6/2556 and insert taxid13. if show in report ok finish step edit report.

Ubunt : Software RAID 5 + LVM

Example link and other information. open http://intranet.sci.com/blog.php?u=3&b=775
Step software raid 5.
1. Install Ubunt 10.04 server 32bit
2. Install time server
  1. apt-get install ntp
  2. nano /etc/ntp.conf

change server to 192.168.2.252 << NTP Server IP
3.Set proxy for Update
  1. nano /etc/apt/apt.conf
พิมพ์ Acquire::http { Proxy "http://192.168.2.252:9999"; }; finish save file and update and upgrade.
4.
  1. Install apt-get install mdadm lvm2

5. Shutdown ubuntu and add hdd in setting storage tree drive.
6. Start Ubuntu
7. Check disk
  1. fdisk -l
  2. fdisk /dev/sdb
Create partition
8. Create partition:
  1. mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc2 /dev/sdd3
9. Check :
  1. mdadm --detail /dev/md0
10. Save file in config for use startup next time.
  1. mdadm -Es | grep md  >>/etc/mdadm/mdadm.conf
11. Test remove hdd on partition and start ubuntu.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Step software LVM. use ubuntu old in software raid 5.
1. Create partition Physical Volume.
  1. pvcreate /dev/md0
2. Create Volume Group.
  1. vgcreate vg1 /dev/md0
  2.     vgdisplay
3. Create Logical Volume (xxxxx is mean Total PE number in number 5 example 4094 )
  1.    lvcreate -l xxxxx -n lv1 vg1 /dev/md0
  2.     lvdisplay
4. Format to ext4 or other type partition.
  1. mkfs.ext4 /dev/vg1/lv1
5. Create directory and mount. by edit file /etc/fstab and add.
  1. /dev/vg1/lv1       /DATA            ext4        defaults        0        0
6. Command mount partition.
  1.    mkdir /DATA
  2.     mount -a
7. Check partition.
  1. df -h /DATA
Finish step software LVM.

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Step software LVM is not set raid. use ubuntu old in software raid 5.
1. Add hdd in virtualbox 3.
2. Start ubuntu and fdisk -l see disk. Example sde , sdf , sdg
3. Create disk by use commad
  1. fdisk /dev/sdb
And create disk in step by step.
4. Fdisk -l for see disk. Example sde1 , sdf2 , sdf3.
5. Create Physical Volume :
  1. pvcreate /dev/sde1
6. Create Volume Group :
  1. vgcreate lvm /dev/sde1
And test display
  1. vgdisplay
7. Add disk to Volume Group by use command :
  1. vgextend lvm /dev/sdf2
And
  1. vgextend lvm /dev/sdg3
 And test display :
  1. vgdisplay

8. Create Logical Volume (xxxxx is mean Total PE in number 7.)
  1.    lvcreate -l xxxxx -n lv1 lvm
  2.     lvdisplay

9. Format to ext4 or other type partition.
  1. mkfs.ext4 /dev/lvm/lv1

10. Create directory and mount. by edit file /etc/fstab and add.
  1. /dev/lvm/lv1       /DATALVM           ext4        defaults        0        0

11. Command mount partition.
  1.    mkdir /DATALVM
  2.     mount -a

12. Check partition.
  1. df -h /DATALVM
Finish step software LVM formate hdd is not set raid.

Axapta X++ : Create and Delete Template in Axapta.

1. Create by go to menu Inventory management --> Items and select item is prototype and click right select Record Info. Show dialog box.

1.1 Create template for all user in company click button Company accounts template. And set name template.
1.2 Create template for one user is mean is not show template all user. By click button User template and set name template.
Finish step create template.

2. Delete template. have two method.
2.1 Template is create by User template. We can delete by go to menu Inventory management --> Items and click new item. Show dialog box template you can choose template and click button delete in menu bar.
2.2 Template is create for all user in company it can't delete follow in step 2.1
If you must delete template follow step by.
Go to menu Basic ---> Setup ---> Record templates and click tab Templates. And choose template we must delete. Then click delete button in menu bar. Finish step delete template for all user company.

8/22/2013

Axapta X++ : StrFind in axatata.

int StrFind (str text,str characters,int position,int number)

Examples
StrFind("ABCDEFGHIJ","KHD",1,10) //จากตำแหน่งที่ 1 นับไปข้างหน้า 10 ตัว ในช่วง 10 ตัวนั้นมี ค่าที่ให้หาเจอตัวแรก Return ตำแหน่ง
returns the value '4' (the position where "D" was found).
StrFind("ABCDEFGHIJ","KHD",10,-10) //จากตำแหน่งที่ 10 นับย้อนหลัง 10 ตัว ในช่วง 10 ตัวที่นับย้อนหลังไปนั้นมี ค่าที่ให้หาเจอตัวแรก Return ตำแหน่ง
returns the value '8' (the position where "H" was found).

Return ตำแหน่ง ในที่นี้ จะนับจากตัวแรกตำแหน่งที่ 1 เสมอ
ใส่ - คือนับย้อนกลับ ใส่ค่า + คือนับตามปกติ เท่ากับจำนวนตัวที่ต้องการ