7/24/2016

Ubuntu : Install flash on Ubuntu.

Ubuntu : Install flash on Ubuntu.
Ubuntu : Install flash on Ubuntu. Web browser up file on RP Online not work.

use :
sudo apt-get install flashplugin-installer
 
ที่มา : http://askubuntu.com/questions/341428/how-to-install-flash-player-on-ubuntu

Axapta : Send mail to zimbra

Axapta : Send mail to zimbra
Job Test

static void Job6(Args _args)
{
 
    SysMailer   mail;
 
    str         strBody = "Test send mail From Axapta. ·´ÊͺÊè§àÁÅì¨Ò¡ Axapta à»ç¹ÀÒÉÒä·Â";
    str         strSubject = "Mail From Axapta.";
    sysMailerCustomHeaders          headers;
    ;
 
    mail = new SysMailer();
    mail.SMTPRelayServers().add("zimbra.sci.com");
    mail.fromAddress("suwit_j@sci.com");
    mail.tos().add("suwit_j@sci.com"); //Send 1
    //mail.tos().add("suwit_j@sci.com"); //Send 2
    //mail.tos().add("suwit_j@sci.com"); //Send 3
    // Set Font Thai.
    headers = mail.customHeaders();
    headers.add('Content-Type', 'text/plain; charset=windows-874');
 
    // Build the Message
    mail.htmlBody(strBody);
    mail.subject(strSubject);
 
    mail.sendMail();
   
box::info("Send Mail Complete.");
 
}
 
*** เครื่อง ที่จะ Run และส่ง Mail ได้ ต้อง Register DSMailer.dll ที่เครื่องก่อน

ถ้าไม่ได้ Register จะ Error : com object of class 'dundas.mailer'
1. ให้ Register file DSMailer.dll โดย Copy ไฟล์จาก C:\AxaptaSP4\Axapta Client\Bin
2. ไปไว้ที่ windows\system32 ถ้า 64bit เข้าไปที่ c:\windows\sysWOW64\
3. เปิด cmd ด้วยสิทธิ์ Admin
4. CD c:\windows\sysWOW64\ หรือ c:\windows\system32
5. run คำสั่ง regsvr32 DSMailer.dll
ถ้าเป็น Windows XP สามารถ Copy ไฟล์ไป แล้วคลิกขวาเลือก Register ได้เลย ไม่ต้องเข้าผ่าน CMD ก็ได้

เพิ่มเติม
Code แนบๆ ไฟล์
- Code  
mail.attachments().add("C:\\Newfolder\\Drw.pdf");
 
แต่ต้องตัด headers.add('Content-Type', 'text/plain; charset=windows-874'); ออก
- ส่งได้เฉพาะภาษาอังกฤษ ภาษาไทยไม่แสดง
- แต่ถ้าไม่แนบส่งภาษาไทยได้

Axapta : The WINAPI class on Axapta

Axapta : The WINAPI class on Axapta
Like most AX developers I use the WINAPI class quite often. Its a very useful class when handling files that need to be accessed outside of the AX environment

 
  static void FO_WinApi(Args _args)
  {
      str     root        = "C:";
      str     path        = "C:\\dionne";
      str     fileName    = "SalesInvoice.pdf";
      str     fileName2   = "SalesInvoice1.pdf";
      str     file        = path + "\\" + fileName;
      str     file2       = path + "\\" + fileName2;
      int     x, y;
      ;
 
      // Does folder exist?
      print WinAPI::folderExists(path);
 
      // Does file exist?
      print WinAPI::fileExists(file);
 
      // Copy file.
      print WinAPI::copyFile(file,file2);
 
      // New file exists?
      print WinAPI::fileExists(file2);
 
      // Delete new file.
      print WinAPI::deleteFile(file2);
 
      // New file still there?
      print WinAPI::fileExists(file2);
 
      // Get current cursor position.
      [x, y] = WinAPI::getCursorPos();
 
      print x;
      print y;
 
      // Get time and date format.
      print WinAPI::getSystemLocaleDateStr();
      print WinAPI::getSystemLocaleTimeStr();
 
      // Gets current computer name.
      print WinAPI::getComputerName();
 
      // Gets total disk space.
      print int2str(WinAPI::getDiskTotalSpaceInKb(root)
             / 1000) + " MB";
 
      // Gets current free space on disk.
      print int2str(WinAPI::getDiskFreeSpaceInKb(root)
             / 1000) + " MB";
 
      // Date when file was last accessed.
      print WinAPI::getFileAccessedDate(file);
 
      // Time when file was last accessed(In seconds).
      print WinAPI::getFileAccessedTime(file);
 
      // Gets path to temp directory.
      print WinAPI::getTempPath();
 
      // Gets a generated temporary filename, prefix "FO_".
      print WinAPI::getTempFilename(path, "FO_");
 
      pause;
 
  }
 
In addition to file information the WINAPI class can execute different file types from within Dynamics AX by of course using the file name as a parameter.

For example lets say you want to launch a PDF file saved in table within AX. WinAPI::ShellExecute() will do this for you.

Alfresco : Add user to Alfresco.

Alfresco : Add user to Alfresco.

1. http://alfresco.sci.com Login by admin permission IT.
2. Click Top Menu Administrator Console.
3. Click Manage User Groups.
4. Select group and add new user.
5. Go to folder example Drawing. Click More Action and click Manage Space Users.
6. Add user and set permission to folder.

Add user to folder or add to group example add user to group DS user have permission all folder Drawing.

Axapta : Step Create And Post Document On Axapta.

Axapta : Step Create And Post Document On Axapta.
DS
1. สร้าง Item Part , Part-s, Valve
- Part , Part-s ชนิดเป็น Item ใส่ Item Group, Model Group และ Dimension Group ให้เรียบร้อย
- Valve เป็น Bom ใส่ Item Group, Model Group และ Dimension
2. สร้าง Bom ให้กับ Valve ใส่ Part และ ค่าจ้างเข้าไป ใส่จำนวน Approve และ Active ให้เรียบร้อย

SS
3. สร้าง SO เปิดขาย Vavle ขายกี่ตัว ราคาเท่าไหร่ Posting Confirmation

WH
4. Shortage ดูรายงานที่ได้ PO PD
5. ทำรับ PO Part ใส่ราคาค่า Part WH, Location, Batch ให้เรียบร้อย Posting ---> Packing list และ Post Invoice (ทำ Post Invoice เลยก็ได้)
6. PO จ้าง -s ใส่ราคาค่าจ้าง WH, Location, Batch Posting ---> Purchase Order
7. ทำเอกสาร Transfer โอนของไปให้ร้าน TIS ใส่ WH Location From , TO จำนวน Batch ให้ครบ แล้วจอง Part ที่จะโอนไปร้าน ในข้อ 5.ที่ทำรับเข้ามา จองของ ใช้ Inventory Reservation หรือ Auto Reserve ก็ได้
8. Post เอกสาร TIS
9. ทำรับ PO -s ใส่ค่าจ้าง แล้ว Post Invoice

PD
PD ประกอบ Part หลายชิ้นมารวมกันถ้ามี (ตัวอย่างที่ทำไม่มี ข้ามไปข้อ 14. ทำ PD ผลิต Valve เลย)
10. PD ต้องไป Update Estimation และ Job Scheduling ก่อน
11. จองของ Part และ -s จากร้านที่ทำรับเข้ามาเพื่อมาทำ Valve จองของที่ Bom ---> Inventory Reservation ทั้งค่าจ้างและ Part
12. Update Start ดูที่ Tab General ต้องติ๊ก 3 ปุ่ม
- Post picking list now คือให้ Post picking list Auto ถ้าไม่ติ๊กต้องไป Post picking list เอง
หรือ ทำ Packing list เองโดยสร้าง Packing list เข้าไปที่ Journals ---> Packing list สร้าง Create new line ขึ้นมา จองของ Reservation แล้ว Post
- Start Production
- Complete picking list journal
13. คีย์ Job Card เพิ่มเติม ค่าแรง Loss คีย์ไม่ได้ไม่เป็นไร ต้องมี Route เอาเฉพาะ part กับค่าจ้าง ที่เป็นต้นทุน
ปกติ ต้องมีการต้องมีการโอนของจากคลังไปโรงงานด้วยเอกสาร TIP ด้วย ก่อนทำ Reports As Finish และ Costing Valve เสร็จก็ต้องมีเอกสารโอน Valve เสร็จคืนคลัง ตามขั้นตอน (ตัวอย่างนี้ไม่ได้สร้างเอกสารใบโอน)
14. ที่ PD Valve ที่เปิดอยู่จาก Shortage Update Estimation และ Job Scheduling Update ---> Start หรือทำ Packing list เองโดยสร้าง Packing list เข้าไปที่ Journals ---> Packing list สร้าง Create new line ขึ้นมา จองของ Reservation แล้ว Post
- Update Report As Finish
- Update Costing

WH
15. คลัง Post ส่งของออก SO ที่ Line ของ SO ใส WH , Location Tab Quantity ใส่ Deliver now จำนวนที่ของออก
16. จองของที่ Line Inventory ---> Reservation แล้ว Posting ---> Packing Slip

IF
17. ที่ Line ของ SO จะมี Invoice remainder ค้าง ใส่จำนวนที่จะ Invoice ที่ช่อง Deliver now แล้ว Posting ---> Invoice ดู Total จะเห็น ต้นทุนและกำไรเท่าไหร่
จบขั้นตอนการขาย

ผจ.
18. การ Adjustment เข้าไปที่ Inventory management ---> Periodic ---> Closing and adjustment คลิ๊ก Adjustment ---> Transactions ---> Select
ใส่ item Part ที่ต้องการ Adjust ใส่ช่อง Edit now(ใส่ค่าต้องการการให้เพิ่มหรือลบ เช่น +50 -50 ต้องการให้ต้นทุ่นเพิ่ม50 หรือ ลดลง 50) แล้ว Post ใส่รายละเอียดเพิ่มเติม

***** หมายเหตุ การ Adjust*****
จะมีผลก็ต่อเมื่อมีการ Recalculation
- เปลี่ยนต้นทุนหมด ทั้ง PO, PD , Valve, Stockcard
- แต่ต้องมีการ Recalculation ด้วย (ถ้าเป็น Valve ต้อง Recalculation part ด้วย Recall เฉพาะ Valve ต้นทุนไม่เปลี่ยน)

แต่ถ้าไม่ Recalculation
- จะเปลี่ยนเฉพาะ PO หรือ PD item นั้น ๆ ที่ถูก Adjust

PHP : SQL set null value to database.

PHP : SQL set null value to database.
Example :
   $query = "INSERT INTO uradmonitor (db_value1, db_value2) VALUES (".
        (($val1=='')?"NULL":("'".$val1."'")) . ", ".
        (($val2=='')?"NULL":("'".$val2."'")) .
        ")";
    $result = mysql_query($query);
 
 
$SQL     = "INSERT INTO sci_rp.RPHeader(RPID, RequestDate, CreateDate, Creator, PREmployee, RPSupervisor, RPManager, PRSupervisor, PRManager, Director, Status, RequestLevel, EndDate) ";
$SQL    .= " VALUES('".$NewID."','".$RequestDate."','".$CreateDate."','".$CreatorEmpId."',".(($PREmployee=='')?"NULL":("'".$PREmployee."'")).",".(($RPSupervisor=='')?"NULL":("'".$RPSupervisor."'")).",".(($RPManager=='')?"NULL":("'".$RPManager."'")).",".(($PRSupervisor=='')?"NULL":("'".$PRSupervisor."'")).",".(($PRManager=='')?"NULL":("'".$PRManager."'")).",".(($Director=='')?"NULL":("'".$Director."'")).",'".$Status."','".$HeaderData["RequestLevel"]."',".(($EndDate=='')?"NULL":("'".$EndDate."'")).")";
$myDB->Update($SQL);
 
Or use this method.
- Create tmp table in database. By copy table to new table by structure only.
- User SQL INSERT(SELECT * FROM ...)
Code Example :
 
$SQL     = "INSERT INTO sci_rp.RPHeader_tmp (SELECT * FROM sci_rp.RPHeader WHERE RPID='".$RPID."')";
$myDB->Update($SQL);
 
$SQL     = "UPDATE sci_rp.RPHeader_tmp SET RPID='".$NewID."' WHERE RPID='".$RPID."'";
$myDB->Update($SQL);
 
$SQL     = "INSERT INTO sci_rp.RPHeader(SELECT * FROM sci_rp.RPHeader_tmp WHERE RPID='".$NewID."')";
$myDB->Update($SQL);
$myDB->Update("DELETE FROM sci_rp.RPHeader_tmp WHERE RPID='".$NewID."'");
 
 

Bat Backup Database Axapta + Document + iXimple

Bat Backup Database Axapta + Document + iXimple
- Opent Notepad Save To .bat
- Run On Server Axapta.

Code
 
@echo off
For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
For /f "tokens=1-2 delims=/:" %%a in ("%TIME%") do (set mytime=%%a%%b)
 
 
set database_name_2015=axdb_2015
set database_name_iXimple=iXimple
 
set backup_file_2015=x:\%database_name_2015%_%mydate%_%mytime%.bak
set backup_file_iXimple=x:\%database_name_iXimple%_%mydate%_%mytime%.bak
 
set list=W1 W2 W3 W4 W5 W6 W7 W8 W9 W10 W11 W12 W13 U1 U2 U3 U4 U5 U6 public
 
OSQL -H Axapta -U sa -P sciadminsql -Q "BACKUP DATABASE %database_name_2015% TO DISK = '%backup_file_2015%'"
OSQL -H Axapta -U sa -P sciadminsql -Q "BACKUP DATABASE %database_name_iXimple% TO DISK = '%backup_file_iXimple%'"
 
IF %ERRORLEVEL% EQU 0 (
    for %%S in (%list%) do (
        echo Checking box %%S
        if exist \\192.168.2.77\%%S\ (
            echo %%S found
 
        xcopy /y %backup_file_2015% \\192.168.2.77\%%S\
        IF %ERRORLEVEL% EQU 0 del %backup_file_2015%   
 
        xcopy /y %backup_file_iXimple% \\192.168.2.77\%%S\
        IF %ERRORLEVEL% EQU 0 del %backup_file_iXimple%
 
        C:\WINDOWS\system32\ntbackup.exe backup "@C:\Documents and Settings\Administrator\Local Settings\Application Data\Microsoft\Windows NT\NTBackup\data\BackUpAxaptaFile.bks" /n "Axapta_.bkf created 9/7/2558 at 9:11" /d "Set created 9/7/2558 at 9:11" /v:yes /r:no /rs:no /hc:off /m normal /j "BackUpAxaptaFile" /l:s /f "X:\Axapta_.bkf"
        IF %ERRORLEVEL% EQU 0 xcopy /y X:\Axapta_.bkf \\192.168.2.77\%%S\
        IF %ERRORLEVEL% EQU 0 del X:\Axapta_.bkf
        GOTO :THEEND
        ) else (
            echo  %%S NOT exist
        )
    )
)
:THEEND
 
 

Thunderbird Email Message Alert แจ้งเตือน

Thunderbird Email Message Alert แจ้งเตือน
http://emailserverhosting.maildee.com/2015/08/thunderbird-mailbox-alert.html

- ติดตั้ง Add-ons เข้า menu Tools --> Add-ons
- ค้นหาคำว่า Message Alert ที่ช่องค้นหา
- พบตามรูปแล้วกด Install

วิธีตั้งค่า Mailbox Alert
1.คลิก Tools > Edit Mailbox Alert

2.เลือก Mailbox alert list จากนั้นกด Edit กรณีต้องการสร้างใหม่กด Add จากนั้นคลิกปุ่ม OK

3. ค่า Default ที่มีอยู่แล้ว เราสามารถแก้ไขได้ตามที่ต้องการ ** อธิบายรายละเอียดท้ายบทความ

4.เมื่อตั้งค่าตามที่ต้องการแล้วให้กด Test these settings เพื่อทดสอบ Alert จากนั้นกด OK

5. คลิกขวาที่ INBOX ของบัญชีอีเมล์ที่ต้องการตั้งค่า
เลือก Mailbox Alert
เลือก Default message ที่เราตั้งค่าไว้

คำอธิยายการตั้งค่าในข้อ 3.

1. ชื่อของ Alert (Optional)
2. ติ๊กที่ Show message คือต้องการแจ้งเตือนเฉพาะ POPUP อย่างเดียว
ถ้าต้องการให้มีเสียงติ๊กที่ Play a sound ด้วย
3. ข้อความที่ปรากฏบน POPUP
สำหรับใส่ Execute a command เป็น macro
ที่สามารถตั้งให้โชว์ชื่อ Senderaddress, จำนวนข้อความ Unread ได้
4. ข้อความที่ปรากฏบน POPUP ในที่หน้าให้แสดงหัวข้ออีเมล์
5. สามารถเปลี่ยน icon ได้

Popup duration ระยะเวลาที่ Popup แจ้งเตือน = 5 วินาที
Position คือ ตำแหน่งที่ต้องการให้ Popup แสดง เช่น ซ้ายบน, ขวาบน, ตรงกลาง, ซ้ายล่าง เป็นต้น
Effect ที่ต้องการให้ Popup แสดง เช่น Fade ขึ้น, Slide ลงมา
On click คือ เมื่อคลิกที่ Popup แล้วให้ Close popup เลย หรือ เปิดข้อความในหน้าต่างเดิม หรือ เปิดข้อความในหน้าต่างใหม่

Program : iXimple ส่งข้อมูลไปกรมศุล

Program : iXimple ส่งข้อมูลไปกรมศุล DB to sql server.
1. ฐานข้อมูลอยู่ MySQLServer 192.168.0.251 db iXimple
2. ตัวโปรแกรมรองรับ Windows 32Bit (Windows 7 Copy ทั้ง Folder CDS ใน Drive C: ไปได้เลย แต่ถ้าเป็น XP ต้องติดตั้ง ผ่าน การ Setup เพราะจำเป็นต้องใช้ไฟล์ .dll บางตัว)
3. ตัวโปรแกรมอยู่ที่ Win7-32Bit (192.168.0.27)
4. Add ชื่อคนที่ต้องการให้ Remote RDP เข้าไป ที่ Manage RDP ของ Windows แล้วสร้าง RDP เข้าไปได้เลย
5. ตั้งค่ารูปแบบวันที่เป็น dd/MM/yyyy ตามรูป


6. Copy Program จาก Drive C:\CDS\iXIMPLE ที่ใน Folder CDS ตามข้อ 2 เอามาไว้หน้าจอ
- iXimpleWin
- iXIMPLEConnect

7. ทดลอง Run Program และตรวจดูข้อมูลว่ามีครบไหม

Mount Hdd From QNAP To Ubuntu Server.

Mount Hdd From QNAP To Ubuntu Server.
1. Use Command interminal
sudo mount -t cifs -o username=****,password=**** //192.168.2.77/backup /BACKUP/BackupToQnap/
 
คำสั่ง Umount
umount //192.168.2.77/backup

2. Edit fstab mount auto when open ubuntu.
nano /etc/fstab
 
Insert  Code.
//192.168.2.77/backup  /BACKUP/BackupToQnap  cifs username=****,password=****
 
3. Delete History Command in terminal.
history -c
 
Other information.
http://www.linuxquestions.org/questions/linux-newbie-8/mount-nas-qnap-to-ubuntu-server-4175498144/

Axapta : Report ไม่ผ่าน Error Serial Number

Axapta : Report ไม่ผ่าน Error Serial Number

เป็นเพราะ Item Set Dimension Group ไว้เป็น WLS คือต้องมีทั้ง WH, Location, Serial Number
Gotomain ที่ item --> General ดูตรง Serial Number Group ว่ามีหรือไม่ ตรวจดูว่าถูกหรือไม่
ถ้าไม่มี ให้เลือก
1. ขึ้นต้นด้วย SN_
2. Item 3 ตัวแรก เช่น 407010609003 จะได้ (407)
3. Item ตัวที่ 5 นับจากหลังสุด นับเอา 2 ตัว เช่น 407010609003 จะได้ (09)
เลือกเป็น SN_40709
ตรวจ ดูว่าถูกหรือไม่ Gotomain ที่ Serial Number Group เลือก Tab General และ Gotomain ที่ Number Sequence ดูเลข Run มีไหม ถ้าไม่มีสร้าง Number Sequence
4. ลอง Post หรือ Validate ดู

ถ้าไม่มี ให้สร้างใหม่
1. ไปที่หน้า Item Tab General Gotomain ที่ Serial number group
2. New ขึ้นมาใหม่ ตั้งชื่อ SN_Code ใหม่ (3ตัวแรก และตัวที่ 5 นับไป 2 ตัว)
3. Copy ชื่อมาใส่ Name ที่ Item Name
4. Tab General + Activation Set ให้เหมือนอันอื่น ๆ
5. ที่ Tab General Gotomain ที่ Number Sequence เลข Run ไปสร้าง เลข Run ด้วย Number , Name ให้เหมือนกับ ข้างนอก ส่วนอื่น ๆ Set ดูตัวอย่างจาก Line อื่น ๆ

Windows Server 2003: Group Policy Auto Set Proxy.

Windows Server 2003 : Group Policy Auto Set Proxy.
1. Remote to Server domain example Server4
2. Oprogram Group Policy Management by enter to Start ---> AdministrativeTools --> Group Policy Management
Expand by step Forest : SCI.COM ---> Domains ---> SCI.COM --> Group Policy Objects ---> Default Domain Policy see image

3. Click right in Default Domain Policy select Edit follow image

4. Enter to User Configuration ---> Windows Settings ---> Internet Explore Main ---> Connection Expand follow step see image.

5. Click right in Proxy Settings and select Properties follow image.

6. Set Proxy and Exceptions by you want. example see image.


**Wanning : After set auto proxy in step finish. On machine client not update now you mush logoff computer or reboot machine client.

Axapta X++ : link type เอา สร้าง Data Source มาแสดงข้อมูล

Axapta X++ : link type เอา สร้าง Data Source มาแสดงข้อมูล
Axapta X++ : link type เอา สร้าง Data Source มาแสดงข้อมูลใน Forms
เช่น
- New Data Sources ที่ Forms CusInvoiceJournal
- ใส่ชื่อ เป็น CustTrans Set Properties ดังนี้
Table เลือกเป็น CustTrans
JoinSource เลือกเป็น CustInvoiceJour
LinkType เลือกเป็น Inner Join

ความหมายของ LinkType :
LinkType : Forms have 3 additional join modes which are use to makes forms more users friendly : Passive, Delay and Active
รูปแบบที่มี 3 โหมดเข้าร่วมเพิ่มเติมที่มีการใช้งานเพื่อทำให้รูปแบบที่เป็นมิตรกับผู้ใช้มากขึ้น: Passive, Delay และ Active

Active: The data source is updated immediately when a new record in the parent data source is selected. Continuous updates consume lots of resources.
Active:  แหล่งข้อมูลที่มีการปรับปรุงทันทีเมื่อสร้างสถิติใหม่ในแหล่งข้อมูลหลักจะถูกเลือก การปรับปรุงอย่างต่อเนื่องใช้ทรัพยากรจำนวนมาก
Passive: Linked child data sources are not updated automatically. Updates of the child data source must be programmed on the active method of the master data source.
Passive: การเชื่อมโยงแหล่งข้อมูลรองจะไม่ได้รับการปรับปรุงโดยอัตโนมัติ การปรับปรุงแหล่งข้อมูลของรองที่ต้องมีโปรแกรมอยู่กับวิธีการใช้งานของแหล่ง ข้อมูลหลัก

Delayed: A pause is inserted before linked child data sources are updated. This enables faster navigation in the parent data source because the records from child data sources are not updated immediately.
Delayed: หยุดก่อนที่จะถูกแทรกการเชื่อมโยงแหล่งข้อมูลรองที่มีการปรับปรุง ซึ่งจะช่วยให้การนำงานได้เร็วขึ้นในแหล่งข้อมูลหลักเพราะข้อมูลจากแหล่ง ข้อมูลรองไม่ได้รับการปรับปรุงทันที

Passive, Delay และ Active จะทำงานเมื่อมีการ Click Forms หรือมีการ Update Line เท่านั้นไม่ได้แสดงผลทั้งหมดเหมือน Mode Join

Mode Join ใช้งานบ่อย

Inner join
Inner join form data source link type displays the rows that match with parent table and child table. For example if the order doesn't has any order details then the order will not be display.
Inner join จาก data source link ชนิดดูแถวที่เหมือนกันกับ Table หลักและ Table รอง สำหรับตัวอย่าง ถ้าข้อมูลไม่มีข้อมูลที่เหมือนกัน จะไม่แสดง


Outer join
Outer join form data source link type will return all parent records and matched child records. It will return all rows in the parent table. Here, Order 4 doesn't has the child records (order details) but it is populating in the order grid. It is the difference between inner join and outer join.

Outer Join ข้อมูล Link ชนิดนี้จะ return ทั้งหมดของ records Table หลัก และที่เหมือนกับข้อมูล Table รอง มันจะ แสดงทั้งหมดทุกแถวใน Table หลัก เช่น ....

Exist join
Exist join form data source link type return matched rows of the parent table. It behaves like inner join but the different is once parent row matched with child records then stop the process and update in the grid, Ax won't consider how many records in child table for the parent row.

Exist join ข้อมูล Link ชนิด แสดงข้อมูลที่เหมือนกันของ Tables หลัก มันมีพฤติกรรมเหมือน Inner join แต่ ต่างกันอย่าง 1 คือ Table หลักแถวเหมือนกับแถวของ Table รอง ถ้าไม่เหมือนกันจะหยุดการทำงานและ update ใน grid , Ax ไม่พิจารณาว่าข้อมูลใน Table รองมีมากและ Table หลัก จะหยุดแค่นั้นที่ข้อมูลไม่เหมือนกัน

Not exist join

Not exist join form data source link type is totally opposite method to exist join. It will return the not matched parent records with child records.
Not exist join ข้อมูล link ชนิดนี้ ทั้งหมดตรงข้ามวิธีของ Exist join. มันจะแสดงของที่ไม่มีเหมือนข้อมูลใน Tables หลัก กับข้อมูลใน Table รอง


ที่มาเพิ่มเติม
https://community.dynamics.com/ax/b/axh ... exist-join

http://axapta4u.blogspot.com/2013/06/jo ... xapta.html

Internet TOT ADSL มีปัญหา

Internet TOT ADSL มีปัญหา


1. ตรวจดูสาย ดู config ต่าง ๆ ว่าถูกต้องหรือปกติหรือไม่
2. แยกเน็ตออกมาจาก Load balance ลองต่อเข้าตรง ๆ กับ Note book เครื่องเดียว
ว่าได้รับ IP ดู Log ว่าเน็ตยังมาปกติหรือไม่
3. ถ้าไม่ได้ตามข้อ 1 และ 2 ให้โทรแจ้ง 1100 จะติดลำบากไม่ค่อยมีใครรับ ให้แจ้งผ่าน Internet ก็ได้จะเร็วกว่า
เข้า Link
http://tel1177.tot.co.th/new_sr.php?lang=th&frmmb=#
- เบอร์/ลายวงจร ใส่ 034490675
- ปุ่มด่านล่างสามารถตรวจสอบสถานะได้

ใส่รายละเอียกที่เน็ตมีปัญหาเข้าไป และเบอร์ติดต่อ เขาจะโทรติดต่อกลับมาเอง

Axapta : Code Check เอกสาร Movement + Transfer ที่ใน Line ไม่

Axapta : Code Check เอกสาร Movement + Transfer ที่ใน Line ไม่
Axapta : Code Check เอกสาร Movement + Transfer ที่ใน Line มีแถวที่มีจำนวน แต่ Amount เป็น 0
ปกติต้อง Post ไม่ผ่าน นอกจากมีการแก้ Code ให้ Post ผ่าน เพื่อปรับจำนวน
Run ใน Job

static void Job5(Args _args)
{
 
    InventJournalTrans      TableInventJournalTrans;
    InventJournalTable      TableInventJournalTable;
    int                     i = 1;
    ;
 
 
    WHILE
    SELECT * FROM TableInventJournalTable
    WHERE TableInventJournalTable.Posted == NoYes::Yes
    {
        WHILE
        SELECT * FROM TableInventJournalTrans
        WHERE TableInventJournalTrans.CostAmount == 0
            && TableInventJournalTrans.Qty > 0
            && TableInventJournalTrans.JournalId == TableInventJournalTable.JournalId
        {
info(strfmt("%1:%2:%3:%4:%5:%6:%7",i,TableInventJournalTable.JournalNameId,TableInventJournalTable.PostedDate,TableInventJournalTable.JournalId,TableInventJournalTrans.ItemId,TableInventJournalTrans.Qty, TableInventJournalTable.PostedUserId));
        i++;
        }
 
    }
 
}

Shortage Error Item is on hold.

Shortage Error Item is on hold.
ตามรูป

คือ
- Item 005018319011 ถูกติ๊ก Stopped Purchase Order ใน Item คือ ไม่ให้เปิด PO ให้ทำเองกลึงเอง

แต่มี PO15-07208 เปิดไว้ 005018319011-S จำนวน 4 ตัวครับ น่าจะเปิดมาเกิน และไม่ได้ระบุ Sales Order ให้มัน
ทำ ให้เวลา Shortage SO15-330 มันวิ่งไปจะจอง PO15-07208 นี้ครับ เพราะช่อง SO ว่างไม่มี Order อื่นเอาไปใช้ ต้องการของอีก 3 ตัว จะเหลือ 1 ตัว

แต่ ทางออกแบบ ได้ติ๊ก Stopped Purchase Order ใน Item คือ ไม่ให้เปิด PO ให้ทำเองกลึงเอง จึงทำให้ Shortage SO15-330 แล้วเกิด Error ครับ

วิธีการแก้คือ
- ผมจะปลด Stopped Purchase Order ให้ และ ให้งานวางแผน Shortage SO15-330
- Shortage เสร็จผมจะไปติ๊ก Stopped Purchase Order ให้เหมือนเดิมครับ

วิธีแก้ถาวรคือ
- เวลา Shortage เอามาใช้กับ Order อะไรควรระบุให้พอดีครับ ถ้าเหลือไม่ระบุ SO Shortage ก็จะวิ่งไปจองแบบนี้อีก
- ถ้าต้องการเปิด PO จ้างเสมอ ต้องให้ผู้ดูแลแหล่งแจ้ง Memo ตามสายงานไปทาง ออกแบบ เหมือนที่เคยปฏิบัติมาครับ


Mail แจ้ง ผจ. :
1.Code ใน Axapta ที่เคยมี Transaction แล้วจะลบไม่ได้
- กรณีที่ Code นั้นเป็น BOM แล้วจะเปลี่ยนเป็นซื้อจะใช้วิธี Stop Explosion เพื่อให้ออก PO ที่ Code นั้นแทนที่จะออกเป็น Production order
- กรณีที่ Code นั้นเป็น Item แล้วต้องการยกเลิกใช้งานจะใช้วิธี Stop Code นั้น ๆ เช่น Code -M, -S เพื่อไม่ให้เอาไปใช้งานอีก (เลือกได้ว่าจะ Stop ที่ Module ไหน PO/Invent/SO)

2.ถ้ามี Order ใหม่ ฝอบ. สามารถสร้าง BOM เป็นแบบทำเองมาได้เลย แต่ถ้าเป็น Code เก่าจะต้องใช้วิธีตามข้อ 2
3.เมื่อ Stop ไปแล้วมีเหตุจำเป็นต้องกลับมาจ้างใหม่ ก็สามารถยกเลิกการ Stop ได้ (หากยกเลิกการ Stop จะต้องแก้ไข BOM ด้วย ไม่เช่นนั้นเวลาตัด Picking list อาจจะลืมตัด -S ทำให้ต้นทุนผิด)

Set Proxy for use internet in sci.

Set Proxy for use internet in sci.
1. Connect Wifi the name is SCI_EMP.
2. Open program web browser internet explorer.
3. Enter to menu Tool follow image.
4. Click tab Connection and Click button LAN Seting follow image.
5. And Check Box Use a proxy server ... And Check Box Bypass proxy server ....
And Enter Address : proxy.sci.com Port : 8080 follow image.

6. Click Ok Two time. And test use Internet and enter username and password in sci for use internet.
7. Go back home or use internet out sci company you must unset proxy by.
follow step 1 - 6 and Uncheck All check box in page Local Lan Settings. follow image.

Zimbra: การใช้งาน Sticky note

Zimbra: การใช้งาน Sticky note
การใช้งาน Sticky note ใน Zimbra ไว้ Note ข้อความที่สำคัญหรืองานที่สำคัญกันลืม

การใช้งาน
1. คลิกที่ Mail ฉบับที่ต้องการทำ Note แล้วคลิกเลือก Sticky note ตามรูป
2. พิมพ์ข้อความที่ต้องการให้แสดง Note เมื่อคลิกเมล์ แล้วกด Save ตามรูป
3.เมื่อ Save เสร็จช่องที่คีย์ข้อมูลจะหายไป ในเมล์ที่คีย์ Sticky note จะมี Tag ขึ้นให้ Auto ตามรูป
4.เมื่อมีการคลิกเมล์ที่มีการทำ Sticky note ไว้จะมี Note เด้งขึ้นมาตามรูป
5. สามารถแก้ไขข้อมูลใน Note เพิ่มเติมได้ แล้วกด Save หรือถ้าไม่ต้องการ Note ก็ให้กดรูปถังขยะ Note ก็จะหายไป
6. ด้านล่าง ตรง Tags จะมี Tags ใหม่ขึ้นมาสำหรับ Sticky note
- สามารถ คลิ๊กเพื่อดูเฉพาะเมล์ที่มี Note อย่างเดียวได้
- เปลี่ยนชื่อ เปลี่ยนสีได้
ตามรูป

สำหรับ Note ก็มีไว้ให้ Note เมื่อติดงานอื่น ๆ อยู่ยังไม่สามารถเคลียร์งานนั้นได้ทำที กลัวลืมก็สามารถทำ Note ไว้ได้

PHP : แปลงตัวหนังสือตัวพิมพ์ใหญ่ให้เป็นตัวพิมพ์เล็ก

PHP : แปลงตัวหนังสือตัวพิมพ์ใหญ่ให้เป็นตัวพิมพ์เล็ก
ด้วย strtolower
เช่น
 
<?php
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = strtolower($str);
echo $str; // Prints mary had a little lamb and she loved it so
?>
 
ตัวอย่าง Code ที่ใช้ ใน RPOnline ตอนเลือกว่าเป็นทรัพย์สินหรือไม่เป็น

ตั้งโปรแกรม Scan Snap ของเครื่อง Scan Fujisu

ไม่ให้ถาม ไม่ต้องค่อยคลิก Save File ที่เครื่อง
1. Profile ตั้งเป็น Standard และเลือก Application เป็น None (Scan to File)
 2. เลือกที่ Tab Save และเลือก Save File โดย Shared Folder นั้นไว้
 
 เท่านี้ก็ไม่ต้องคอยคลิก Save File Scan เสร็จก็จะเข้าไปใน Folder ที่เรา Set ไว้ใน ข้อ 2 Auto

3. การตั้งค่าจะ Scan 2 หน้า เลือกตรงนี้ ตามรูป และใน Option เผื่อเอาหน้าว่างออก

ตั้งโปรแกรม Scan Snap Fujisu ไม่ให้ Show Status Scan

ทำได้โดย
วิธีตั้งไม่ให้ Show Program ให้ Save ไฟล์ลงเครื่องเลย
http://porpramarn.blogspot.com/2016/07/scan-snap-scan-fujisu.html

1. คลิ๊กขวาที่ โปรแกรม Scan เลือก Help ---> Preferences.. ตามรูป
 
2. ไปที่ Tab Status Display แล้วติ๊ก หัวข้อ Notify of ... และ Show the scan ... ออก ตามรูป

PHP : หาว่าหน้าที่อยู่นั้นชื่อไฟล์อะไร เพื่อนำไปใช้งานต่อ

PHP : หาว่าหน้าที่อยู่นั้นชื่อไฟล์อะไร เพื่อนำไปใช้งานต่อ

    <?php
    function curPageName() {
     return substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
    }
     
    echo "The current page name is ".curPageName();
    ?>
     
     
      ที่มา http://webcheatsheet.com/php/get_current_page_url.php

      Axapta : Job Update Cost Center ใน Line ของ GL

      Axapta : Job Update Cost Center ใน Line ของ GL

      ปกติต้องเพิ่มเองแต่ไม่ได้เพิ่มมานาน ถ้าจะเพิ่มเองต้องเสียเวลาคีย์ใหม่
      จึงทำ Code Update ให้ ที่มีใน CustTable แต่ไม่มีใน Table Dimensions
       
      static void UpdataDimensions(Args _args)
      {
          CustTable       custTable;
          Dimensions      dimensions;
       
          ;
       
          WHILE
          SELECT * FROM custTable
          {
              ttsbegin;
                  SELECT * FROM dimensions
                  WHERE dimensions.Num == custTable.AccountNum;
       
                  if(dimensions.Num == ""){
       
                      dimensions.Num = custTable.AccountNum;
                      dimensions.Description = custTable.Name;
                      dimensions.DimensionCode = 1;
       
                      dimensions.insert();
                  }
              ttscommit;
          }
       
      }
       
       

      7/18/2016

      Thunderbird ใส่ highlight เพื่อเน้นข้อความ

      - เข้า menu Tools --> Add-ons
      - ค้นหาคำว่า Highlighter ที่ช่องค้นหา
      - พบตามรูปแล้วกด Install

      - แล้วโปรแกรม Thunderbird จะปิดแล้วเปิดใหม่เอง
      - ทดลองเข้าเขียน Email ใหม่ จะพบ สี Highlight ขึ้นมา

      - พิมพ์ข้อความ แล้วคุมดำที่ข้อความที่ต้องการ Highlight แล้วคลิกเลือกสีที่ Highlight

      Axapta : Error Post Report As Finish SN_

      Error Post Report As Finish SN_

      เช่น SN_70114 และอื่น ๆ เมื่อจะ Reports Valve เสร็จ

      เกิดจาก
      - Item ใส่ Dimension Group เป็น WLS ไว้ คือต้องใส่ WH, Location , Serial number
      - Serial number จะ Set Auto จาก Serial number group ใน Item Tab General ตรง Serial number group

      แก้โดย
      - Go to main ที่ Item ของคำสั่งผลิตที่มีปัญหา
      - ไปที่ Tab General
      - Go to main ที่ Serial number group
      - ไปที่ Tab General ตรงด่านล่าง Number sequence ถ้าไม่มีให้ Copy Number Group ด้านบนมาใส่
      - Go To main Number sequence อีกที ดูตัวเลขตรง Next เป็นเลขที่ 1 ถือว่าถูก
      - กลับไปที่คำสั่งผลิตลอง Post Reports As Finish ดู

      ผ่าน

      7/10/2016

      PHP : หาค่าที่มากที่สุด ใน Array และเอาตำแหน่ง มาใช้งานต่อ

      PHP : หาค่าที่มากที่สุด ใน Array และเอาตำแหน่ง มาใช้งานต่อ

      array_search — Searches the array for a given value and returns the corresponding key if successful

      Description
      mixed array_search ( mixed $needle , array $haystack [, bool $strict = false ] )

      http://php.net/manual/en/function.array-search.php

      ตัวอย่าง
      Array
      $Style = array(1 => $Perfectionist, 2 => $Giver, 3 => $Performer, 4 => $TragicRomantic, 5 => $Observer, 6 => $Questioner, 7 => $Epicure, 8 => $Protector, 9 => $Peacemaker);

      หาค่าที่มากที่สุด และ Search หาตำแหน่ง ของค่าที่จะเอาไปแสดง เช่น ตัวอย่างจะเอา ตำแหน่งที่ 1-9 ไปใช้

      $StyleMax = array_search(max($Style), $Style);


      ตัวอย่างดูได้จากไฟล์ Intranet
      enneagram\result_view.php

      แก้ Windows explorer.exe ปิดเอง ทั้งใน Windows7 และ XP

      แก้ Windows explorer.exe ปิดเอง ทั้งใน Windows7 และ XP
      1. ทดลอง Copy File explorer.exe จากเครื่องอื่นที่ Windows เดียวกัน และ Bit เท่ากัน
      2. Scan virus ให้มั่นใจว่าไม่ติด Virus หรือ Malware
      3. แก้ Regedit โดยทำตามขั้นตอนดังนี้
      3.1. ให้ไปที่ Start > Run ให้พิมพ์คำว่า regedit ตรง Open: ในช่องที่วางอยู่ >
      เสร็จแล้วคลิก OK
      3.2. จะมีหน้า Registry Editor เปิดขึ้นมา ดูที่ช่องซ้ายมือแล้วไล่เข้าไปตามลำดับดังนี้
      HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > WindowsNT >
      CurrentVersion > Winlogon
      3.3. เมื่อคลิกเปิดที่ Winlogon ให้มาดูที่หน้าต่างฝั่งขวามือ ตรง Shell ดังภาพ
      3.4. ดับเบิ้ลคลิกที่ช่อง Shell จะมีหน้าต่าง Edit String ขึ้นมาให้ดูในช่อง Value data.
      ท่านจะพบค่าดังนี้ “Explorer.exe regsvr.exe”
      3.5. ให้ลบตรง regsvr.exe ออกให้เหลือแต่ Explorer.exe เสร็จแล้วคลิก OK
      3.6. เมื่อเสร็จแล้วให้ปิดหน้าต่าง Registry Editor แล้ว Restart เครื่องคอมพิวเตอร์ใหม่
      3.7. กลับเข้า Regedit อีกครั้งไปดูค่า Winlogon Shell ค่า Registry ยังเป็น Explorer.exe เหมือนเดิมหรือไม่
      ถ้าเป็น Explorer.exe เหมือนเดิม แสดงว่า OK ให้ทดลองใช้งาน
      แต่ถ้ากลับมาเป็น Explorer.exe regsvr.exe เหมือนเดิมให้เช็ค Virus ใหม่อีกครั้ง

      Axapta : Update Costing End ไม่ได้ ฟ้อง PJ เลขที่ Run ไปเรื่อย ๆ

      Axapta : Update Costing End ไม่ได้ ฟ้อง PJ เลขที่ Run ไปเรื่อย ๆ

      Update Costing End ไม่ได้ ฟ้อง PJ เลขที่ Run ไปเรื่อย ๆ
      - ถ้า Report เสร็จหมดแล้วไม่ต้องติ๊ก Report ก็ได้ติ๊ก End ได้เลย
      - แต่ถ้ายัง Report ไม่หมดต้อง ติ๊ก Report และ End คู่กันเพื่อจะได้ Report ยอดเพิ่มและ End คำสั่งผลิต
      ดูยอดได้ที่ Tab update ของ Production Order
      - ถ้า Post แล้วไม่ผ่าน ฟ้อง เกิดเลขที่ PJ ใหม่ Run เลขที่ หลังสุดไปเรื่อง ๆ
      ให้เข้าไปที่คำสั่งผลิตนั้น --> Journals --> Report As Finish หรือ Job Card ( มี 2 ที่ )
      - และคลิ๊กดูเข้าไปใน Line ของแต่ล่ะแถว ***จากแถวสุดท้ายจะต้อง ติ๊ก Report ถ้าไม่มีแสดงว่าเขาลืมติ๊ก ทำให้โปรแกรมจะสร้าง Job Card ขึ้นมาเองและ Post ไม่ผ่านเพราะ ยังไม่ได้คีย์ WH Location

      - แก้โดย
      1. ออกมาจากหน้า Line ของ Report As Finish หรือ Job Card
      2. สร้าย Line ขึ้นมา 1 Line โดยคลิกปุ่ม Create Line ใส่ WH Location และจำนวน เป็น 0 (คีย์ไปเลยจะไม่ขึ้นตัวเลข ส่วน Wh Location ดูจากแถวอื่น)
      3. เข้าไปใน Line แล้วติ๊ก Job Is Finished ด้วย

      - Post Job Card แล้วออกมาก Update Costing End คำสั่งผลิตดู จะผ่าน

      Windows Login temporary profile

      1. Log on to the system by using an administrative user account other than the user account that is experiencing the problem.
      2. Back up all data in the current user's profile folder if the profile folder still exists, and then delete the profile folder. By default, the profile resides in the following location:
      %SystemDrive%\Users\UserName
      3. Click Start, type regedit in the Start Search box, and then press ENTER.

      User Account Control permission
      If you are prompted for an administrator password or for confirmation, type your password, or click Continue.
      4. Locate the following registry subkey:
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
      Under the ProfileList subkey, delete the subkey that is named SID.bak.

      Note SID is a placeholder for the security identifier (SID) of the user account that is experiencing the problem. The SID.bak subkey should contain a ProfileImagePath registry entry that points to the original profile folder of the user account that is experiencing the problem.
      5. Exit Registry Editor.
      6. Log off the system.
      7. Log on to the system again.

      After you log on to the system, the profile folder is re-created.

      Axapta : Setup Calendar ปฏิทินการทำงานใน Axapta

      Axapta : Setup Calendar ปฏิทินการทำงานใน Axapta เพื่อใช้คำนวณเวลาในการคีย์ JobCard
      เมื่อขึ้นปีใหม่ต้องตั้งค่าใหม่ โดย
      1. เข้าไปที่ Basic --> Calendar
      2. เลือก Template ถ้ามีหลายอัน แล้วกดปุ่ม Working Time
      3. อันเดิมไม่ต้องลบทิ้งเพราะมันจะ Update ทับ คลิก Compose working times
      4. เลือกช่วงวันที่ที่ต้องการจนถึงสิ้นปี หรือสร้างไปหลาย ๆ ไปก็ได้
      แล้วเลือก Working Time Templates ที่เราสร้างไว้เช่น C-2015 แล้วกด OK
      เสร็จ ขั้นตอนการสร้าง Calendar ในการคำนวณเวลาทำงานใน JobCard

      การสร้าง Template สำหรับคำนวณเวลาทำงานใหม่ถ้าต้องการ ทำได้โดย
      1. เข้าไปที่ Basic --> Setup --> Calendar --> Working time templates
      2. New ขึ้นมาใหม่ หรือแก้ Working Time ตัวเดิมก็ได้
      ใส่ชื่อ ให้สื่อความหมาย
      3. ไปที่ Tab Monday แล้ว New ช่วงเวลาที่ต้องการขี้นมา เช่น
      From To
      08:00 12:00
      13:00 17:40
      หรือ
      From To
      00:30 05:30
      06:00 12:00
      13:00 17:40
      18:00 24:00
      เป็นต้นตามเวลาที่เราต้องการเพื่อนำไปคำนวณเวลาของ JobCard
      4. กดปุ่ม Copy เลือกวันที่ต้องการให้เหมือนกัน เช่น Tuesday , Wednesday ... ไปจนถึง Sunday

      เสร็จการสร้าง Template

      การยื่น ภงด3 ภงด53 ผ่านสื่อ Media


      User : admin
      Password : password
      ทั้ง ภงด3. และ ภงด53.

      ภงด1.
      User : ADMIN
      Password : PASSWORD

      1. เข้าเรียกไฟล์ Text ได้ที่ General ledger ----> Inquiries ---> Withholding tax มี 2 ปุ่ม
      - PND 3 Media (ดึงชื่อแยกกับคำนำหน้าชื่อเพราะออกรายงานถูกเลยไม่แก้)
      - PND 53 Media (ช่องคำนำหน้าชื่อใส่ - แล้วเอาชื่อไปรวมกับชื่อบริษัท เพราะแยกกันแล้วออกรายงานไม่ถูกต้องจึงต้องเอารวมกัน)
      2. ต้องบันทึกข้อมูลบริษัท รหัส ชื่อ ที่อยู่ให้เรียบร้อยก่อน โดยเข้าไปที่ Menu 1 : บันทึก/นำเข้าข้อมูล ---> 1. บันทึกข้อมูลผู้หักภาษี ณ ที่จ่าย
      ถ้าต้องการแก้ไข ก็คีย์ รหัสเดียวกัน แล้วบันทึกทับได้เลย
      3. Import ข้อมูล เข้า Menu 1 : บันทึก/นำเข้าข้อมูล ---> 2. นำเข้าข้อมูล Import
      และ Set รูปแบบ พศ. และวันที่ และเลือกไฟล์ตามรูป

      4. เอาข้อมูลเข้าแล้ว แต่ไม่ถูกต้องการลบ และเอาเข้าใหม่
      4.1 เข้าไปที่ Menu 2 : บันทึกรายการข้อมูล ---> 1. บันทึกข้อมูลการหักภาษี ณ ที่จ่าย กดปุ่มค้นหา --> กดปุ่ม ตกลง --> กดปุ่ม สอบถามข้อมูลแบบนำส่ง ภ.ง.ด. ---> กด ค้นหา เลือกเดือนที่ต้องการ ---> กด ตกลง กลับมาหน้าหลักแล้วกด X สีแดงด้านบนได้เลย แล้วกดบันทึก --> กดปิด อีกครั้งแล้วกดบันทึก
      แล้วค่อย Import ข้อมูลเข้าไปใหม่

      5. เมื่อ Import ข้อมูลแล้ว ต้องเข้าไปที่ Menu 2 : บันทึกรายการข้อมูล ---> 1. บันทึกข้อมูลการหักภาษี ณ ที่จ่าย กดปุ่มค้นหา --> กดปุ่ม ตกลง --> กดปุ่ม สอบถามข้อมูลแบบนำส่ง ภ.ง.ด. ---> กด ค้นหา เลือกเดือนที่ต้องการ ---> กด ตกลง กลับมาหน้าหลักแล้วกดบันทึกก่อน 1 ครั้ง เพื่อให้ข้อมูลขึ้นไม่งั่น ข้อมูลจะไม่ขึ้น

      6. Print1 รายงาน เข้า Menu3 : นำข้อมูลออกสื่อ Print 3 รายงาน คือ Menu1, Menu3, Menu4
      7. เอาข้อมูลใส่ Disk เข้า Menu3 : นำข้อมูลออกสื่อ

      8. ถ้าออกรายงานแล้วมี Error เลขที่ หรือ หัวท้าย ไม่ตรงกัน ให้เข้าไปที่ Menu 2 : บันทึกรายการข้อมูล ---> 1. บันทึกข้อมูลการหักภาษี ณ ที่จ่าย กดปุ่มค้นหา --> กดปุ่ม ตกลง --> กดปุ่ม สอบถามข้อมูลแบบนำส่ง ภ.ง.ด. ---> กด ค้นหา เลือกเดือนที่ต้องการ ---> กด ตกลง กลับมาหน้าหลักแล้วกดบันทึกก่อน 1 ครั้ง เพื่อให้ข้อมูลเพื่อให้ข้อมูลที่ Import ไป update แล้วรองเรียกรายงานดู
      ถ้าไม่ได้ต้องลองแก้สัก 1 รายการเช่นแก้เงื่อนไข ใส่ 0 แล้วใส่ 1 กด Save ให้มันขึ้นบันทึกข้อมูล ปิดหน้าข้อมูลไป รองเรียกรายงานดู

      Axapta X++ : Update Costing Error PD Calculating BOM consumption

      Axapta X++ : Update Costing Error PD Calculating BOM consumption

      - เกิดจาก PD ที่เป็น Valve จะ Costing แต่ มี Part บางตัวยังไม่ได้ Costing ทำให้ Error หรือ Packing list บาง Line ยังไม่ได้ Post
      - ไปที่ PD นั้น ๆ Journal --> Packing list
      - เข้าไปแต่ล่ะ Line ดู แต่ล่ะ Line ของ Item เลือก Inventory ---> Onhand
      - ในหน้า Onhand ดู ที่มี Deducted และ Reserved (เปิดหน้า Onhand ค้างไว้แล้วเลื่อน ๆ Line หน้า Item ดูเอา)
      - เอา Item ไปหา Pd แล้ว Update costing ก่อน ถ้ามีหลายอันค่อย ๆ ทำไป ทั้งหมดแล้วค่อย Costing Valve

      หรือเรียกรายงาน Check PD ดู Sales Order เอา PD ที่ SO เดียวกันไป Update Costing ก่อน แล้วค่อย Costing Valve