วิธี Convert Object จาก Dynamics NAV 2013 ไปเป็น Business Central

Spread the love

วิธี Convert Object จาก Dynamics NAV 2013 ไปเป็น Business Central ทำอย่างไร

ก่อนหน้านี้เคยมีบทความเกี่ยวกับ การแปลง หรือ การอัพเกรด Code จากเวอร์ชั่นที่เป็น Dynamics NAV (C/AL) ไปเป็น Business Central (A/L) แล้วกับบทความ TXT2AL: How to Convert C/AL to AL ซึ่งจะอธิบายการ Convert Code แบบ Step by Step แต่ตัวอย่างในบทความเป็นการแปลงจาก Dynamics NAV 2018 ไปเป็น Dynamics 365 Business Central แล้วถ้าต้องการแปลงจาก Dynamics NAV 2013 ละ จะทำอย่างไร?

บทความนี้ประกอบด้วย

Overview

อย่างที่รู้กันว่า เราไม่สามารถ Export Object ออกมาเป็น Text File แล้วเอาไปเข้า TXT2AL เพื่อแปลง Code จาก C/AL ไปเป็น AL ได้ แต่เราต้องใช้คำสั่ง ExportToNewSyntax ในการ Export ไฟล์ออกมา และประเด็นมันอยู่ตรงที่ Dynamics NAV ในเวอร์ชั่นที่ต่ำกว่า 2018 นั้นไม่รองรับคำสั่ง ExportToNewSyntax

ดังนั้นสำหรับ Dynamics NAV ตั้งแต่เวอร์ชั่น 2013 เป็นต้นไป จนไปถึงเวอร์ชั่น 2017 จำเป็นจะต้อง Convert ไปเป็นเวอร์ชั่น 2018 ก่อน จากนั้นค่อย Convert ไปเป็นเวอร์ชั่น Business Central

convert-code-from-nav-2013-to-business-central-1

Scenario

สมมติว่าเรากำลัง Implement Business Central ให้กับลูกค้าเจ้าหนึ่งอยู่ แล้วลูกค้ามีความต้องการที่จะได้รายงานตัวนึง และเราจำได้ว่าเรามีรายงานคล้าย ๆ แบบนี้แต่อยู่ในเวอร์ Dynamics NAV 2013 และคุณไม่อยากจะทำรายงานนี้ขึ้นมาใหม่ตั้งแต่ต้น ดังนั้นจึงจำเป็นต้องแปลง C/AL ให้มาเป็น AL

convert-code-from-nav-2013-to-business-central-2

Convert from NAV 2013 to NAV 2018

อันดับแรกคือคุณจะต้องมีโปรแกรม Dynamics NAV 2018 อยู่ หากยังไม่มีสามารถดาวน์โหลดได้ที่ Link นี้

ให้คุณเปิดตัว C/SIDE (Development Environment) ของ NAV 2013 ขึ้นมา

จากนั้นเลือก Report ที่ต้องการ สมมติว่าคุณต้องการแปลง Report 50200 Customer List ตามรูปข้างต้น จากนั้นคลิกที่ File > Export ออกมาเป็น text file หรือ fob ก็ได้แล้วแต่สะดวก

convert-code-from-nav-2013-to-business-central-3

เมื่อได้ Object ที่เป็น Text File ออกมาแล้วก็เอาไป Import เข้า Dynamics NAV 2018

เปิดตัว C/SIDE (Development Environment) ของ Dynamic NAV 2018 ขึ้นมา

convert-code-from-nav-2013-to-business-central-4

จากนั้นไปที่ File > Import

convert-code-from-nav-2013-to-business-central-5

จากนั้นเลือกไฟล์ที่เราเพิ่ง Export ออกมาจาก NAV 2013 แล้ว Import เข้าไปที่ NAV 2018

convert-code-from-nav-2013-to-business-central-6

เสร็จแล้วก็ Compile Object ถ้าไม่มี Error ก็เป็นอันเรียบร้อย สำหรับการ Convert Object จาก NAV 2013 ไปเป็น NAV 2018

บทความที่คุณอาจสนใจ

ขั้นตอนการสร้าง .NET DLL (Library Class) ไว้ใช้งานเอง บน Dynamics 365 Business Central
เริ่มต้นสร้าง Extension แรกบน MS Dynamics 365 BC ตอนที่ 1 – New Table –

Convert from NAV 2018 to Business Central

การ Convert จาก NAV 2018 ไปเป็น Business Central จะเป็นการใช้งาน TXT2AL ซึ่งจะ Import Text File จาก NAV 2018 ไปเป็น ไฟล์ .al

แต่เราจะไม่สามารถ Export Text File ออกมาตรง ๆ เหมือนตอนแปลง NAV 2013 ไปเป็น NAV 2018 ได้ จะต้อง Export ผ่านคำสั่ง Export New Syntax (สามารถดูเหตุผลได้ที่บทความ TXT2AL: How to Convert C/AL to AL)

convert-code-from-nav-2013-to-business-central-7

สามารถทำตามขั้นตอนตามนี้ได้เลย

  1. เปิด cmd ด้วย administrator
convert-code-from-nav-2013-to-business-central-8

2. ใช้คำสั่ง cd เปลี่ยน folder ไปที่ C:\Program Files (x86)\Microsoft Dynamics NAV\110\RoleTailored Client

cd C:\Program Files (x86)\Microsoft Dynamics NAV\110\RoleTailored Client
convert-code-from-nav-2013-to-business-central-9

3. Export Source

3.1 ใช้คำสั่ง ExportToNewSyntax เพื่อ Export Text File ออกมา

finsql.exe Command=ExportToNewSyntax, File="E:\Convert\NAV2018\R50200.txt", Database="NAV2018", ServerName=".\SQL2017", filter=type=report;ID=50200
convert-code-from-nav-2013-to-business-central-10

หลังจาก run คำสั่งเสร็จแล้วจะได้ Source Code ออกมาตามที่เราใส่ Location ไว้

convert-code-from-nav-2013-to-business-central-11

3.2 ใช้ TXT2AL แปลง C/AL (NewSyntax) ไปเป็น AL

txt2al.exe –-Source="E:\Convert\NAV2018" –-Target="E:\Convert\BusinessCentral" –-ExtensionStartId=50200
convert-code-from-nav-2013-to-business-central-12

หลังจากกด Enter จะแสดง Result

convert-code-from-nav-2013-to-business-central-13

และเมื่อไปดูที่ Folder ที่เรา Locate ไว้ก็จะเจอไฟล์ .al

convert-code-from-nav-2013-to-business-central-14

Report ใน Business Central นั้นจะแยกส่วนที่เป็น Code กับ Layout ออกจากกัน ดังนั้นจึงได้ออกมาเป็นสองไฟล์ด้วย .al กับ .rdlc

เพียงเท่านี้ก็เป็นอันเรียบร้อยสำหรับการแปลง Code จาก NAV 2013 ไปเป็น Business Central

บทความที่คุณอาจสนใจ

คู่มือ dynamics 365 business central sales module 1
วิธีเพิ่ม Field ใหม่ผ่าน Extension ให้กับ Business Central

หากไม่สามารถ Export ไฟล์ผ่าน cmd ได้ ให้ตรวจสอบดังนี้

  • เขียนคำสั่งถูกหรือไม่
  • มี Permission ในการเขียนไฟล์ลง Folder หรือไม่
  • ใช้งาน Development License แล้วหรือยัง

แล้วเจอกันใหม่ในบทความหน้า สวัสดีครับ

ERP Consultant ที่อยากแชร์ความรู้เกี่ยวกับการพัฒนาโปรแกรม Microsoft Dynamics NAV / 365 Business Central ทั้งทางด้าน Business และ Technical ให้กับเหล่านักศึกษา, ผู้ที่เริ่มต้นอาชีพนี้ หรือต้องการที่จะเพิ่มเติมความรู้ด้าน ERP ในรูปแบบ blog ที่เป็นภาษาไทย Contact: amaddev90@gmail.com

Leave a Reply

Your email address will not be published. Required fields are marked *