Heyyy mọi người,
Hôm nay Gâu Đần sẽ chia sẻ với các bạn cách get và set giá trị biến khi làm việc với hai ngôn ngữ AMPscript và SSJS trong Marketing Cloud. Việc truyền giá trị biến giữa hai ngôn ngữ này sẽ hữu ích khi ta muốn truyền giá trị một biến của ngôn ngữ này sang ngôn ngữ khác để xử lý tiếp.
Trong bài viết này, mình sẽ hướng dẫn các bạn cách làm việc với hàm GetValue và SetValue để truyền giá trị biến đơn giản. Hãy cùng mình khám phá nhé!
Variable object function in SSJS
Cái object Variable trong SSJS này cho phép set và get thông tin chứa trong biến thuộc AMPscript, cho phép ta tương tác giữa SSJS và AMPscript với nhau.
Cách dùng thì rất đơn giản, chỉ cần nhớ là function này thuộc ngôn ngữ SSJS ở object Variable.
Get giá trị từ một biến cụ thể: Variable.GetValue
Variable.GetValue("@myAmpVariable");
Set giá trị đến một biến cụ thể: Variable.SetValue
Variable.SetValue("@myVariable","myValue");
Get AMPscript variable value to SSJS variable
Trong ví dụ bên dưới, mình đã lấy giá trị từ biến của AMPscript truyền sang biến của SSJS:
%%[
/* AMPscript varible @fName */
set @fName = 'Gaudan'
]%%
<script runat="server">
Platform.Load("core", "1.1.1");
//Get value from AMPscript varible @fName
//and populate to SSJS variable firstName
var firstName = Variable.GetValue('fName');
var welcomeMessage = 'Hello ' + firstName + '!<br>';
Write(welcomeMessage);
</script>
Output:
Hello Gaudan!
Set SSJS variable value to AMPscript variable
Trong ví dụ bên dưới, mình đã lấy giá trị từ biến của SSJS truyền sang biến của AMPscript:
<script runat="server">
Platform.Load("core", "1.1.1");
var firstName = 'Gaudan';
// Set value for AMPscript variable @fName
Variable.SetValue('@fName', firstName)
</script>
%%[
/* Welcome message */
Output(Concat('Nice to meet you ', @fName, '!'))
]%%
Output:
Nice to meet you Gaudan!
My opinion based
Vậy rõ ràng là SSJS và AMPscript có thể dùng kết hợp với nhau, chưa kể đến ta có thể lấy giá trị từ ngôn ngữ này truyền sang ngôn ngữ khác để tiếp tục xử lý.
Theo quan điểm cá nhân của Gâu Đần thì để code rõ ràng và tránh sự nhầm lẫn hết mức có thể thì hãy nên chỉ dùng một ngôn ngữ để đảm bảo tính rõ ràng, nhất quán và tránh nhầm lẫn.
Việc sử dụng cùng lúc cả SSJS và AMPscript chỉ nên khi dùng một ngôn ngữ không thể giúp hoàn thành mục đích. Chẳng hạn SSJS có thể xử lý tốt được các lệnh gọi API xử lý JSON, trong khi AMPscript lại có những hàm có thể tương tác tốt với hệ thống Marketing Cloud và Salesforce CRM chẳng hạn CloudPagesURL, CreateSalesforceObject,…
Conclusion
Như vậy là các bạn đã biết cách get và set giá trị biến giữa hai ngôn ngữ AMPscript và SSJS rồi phải không 😊 Mong rằng bài viết sẽ hữu ích cho các bạn trong quá trình làm Marketing Cloud của bạn. Nếu còn thắc mắc gì, đừng ngần ngại hỏi mình nhé. Tiếp tục theo dõi blog của mình để cập nhật thêm nhiều chia sẻ về Marketing Cloud.