• Happy

PML Cơ Bản (Phần 1)

Updated: Jan 14

1. PML là gì?

PML (Programmable Macro Language) là một loại ngôn ngữ lập trình dành riêng cho PDMS/E3D. PML là một công cụ cực kì hữu ích giúp tăng hiệu suất, giải quyết các công việc lập đi lặp lại và có thể áp dụng trong mọi module từ Admin/Design/Draft/Paragon.. trong môi trường PDMS/E3D.

PML Cơ Bản

Thời điểm hiện tại PML đã phát triển đến version 2 hay PML2. Trong phạm vi bài viết này, mình muốn tập trung vào PML1 và đây sẽ là nền tảng cơ bản cho những bạn muốn tìm hiểu về PML. Tuy nhiên các bạn cũng cần lưu ý, trong thực tế không có sự phân biệt quá rõ ràng giữa hai vesion PML kể trên, ta có thể kết hợp cả PML1 và PML2 miễn là có thể đáp ứng được nhu cầu của các bạn.

2. Cách lưu trữ file PML

Một cách đơn giản nhất ta có thể gõ từng dòng lệnh trong cửa sổ Command window của PDMS/E3D, tuy nhiên cách này có một khuyết điểm là chỉ sử dụng được các dòng lệnh đơn, không thể sử dụng các cấu trúc Do, if, và handle trong cửa sổ command.

Cách thứ hai là lưu trữ các dòng lệnh liên tiếp trong file macro (.mac). Với cách này chúng ta có thể dễ dàng gọi file macro bằng cách gõ câu lệnh $M/%PATHNAME%\xxx.mac với %PATHNAME% là folder chưa file macro, xxx.mac là tên file.

Ví dụ mình có một file macro tên Helloworld.mac lưu trong ổ D. Mình sẽ gọi file này bằng câu lệnh:

$M /D:\Hello.mac

Goi File Macro

Ngoài file .mac, còn các loại file lưu trữ khác Functions (.pmlfnc), objects (.pmlobj) and Forms(.pmlfrm) mình sẽ giới thiệu ở những bài sau nhé.

Với tất cả các file trên các bạn có thể dễ dàng chỉnh sửa, tạo mới bằng các chương trình text edit như notepad, notepad++ hoặc PML Studio…

3. Biến trong PML

Biến dùng để lưu giá trị tạm thời trên bộ nhớ ram.

Với PML1 dùng lệnh Var để khởi tạo, gán giá trị cho biến. Và biến trong PML1 chỉ chứa dạng chuỗi.

Với PML2 có nhiều loại biến như sau:

• STRING – chuỗi kí tự, trong PDMS chuỗi được giới hạn trong cập dấu ‘….’ Hoặc |…| • REAL – chứa giá trị số • ARRAY – mảng, chứa các giá trị cùng loại.(một chiều hoặc nhiều chiều)

• BOOLEAN – biến luận lý (logic) chỉ chứa hai giá trị true/false.

• ANY – biến loại này có thể chứa giá trị bất kỳ.

Trong PML tên biến không phân biệt chữ hoa hoặc chữ thường và không cần khai báo biến trước khi sử dụng. Tên biến bắt buộc bắt đầu bằng ! hoặc !! và không chứa các ký tự đặc biệt khác.

Ký tự ! hoặc !! giúp phân biệt giữa biến cục bộ (Local) và biến toàn cục (Gobal). Biến cục bộ (bắt đầu bằng !) là biến chỉ sử dụng trong phạn vi file macro của bạn, biến toàn cục (bắt đầu bằng !!) có thể truy xuất trong bất kỳ file macro nào đang chạy trong phiên làm việc hiện hành.

Ta có thể dễ dàng gán giá trị cho biến bằng lệnh var (PML1) hoặc dấu = (PML2)

Ví dụ:

1) Gán chuỗi ‘Toi la Happy’ cho biến A ta có hai cách:

Var !a ‘Toi la Happy’

Như đã nói ở trên lệnh var chỉ dùng để gán giá trị dạng chuỗi cho biến.

Hoặc:

!a = ‘Toi la Happy’

2) Gán biến !b giá trị 2