মেক ডট কম অটোমেশন জিরো থেকে মাস্টারক্লাস
অ্যাডভান্সড ডাটা ট্রান্সফরমেশন
অ্যাডভান্সড ডাটা ট্রান্সফরমেশন
সাধারণ ডাটা ম্যাপিংয়ের বাইরেও Make.com-এ ডাটা নিয়ে অনেক জটিল কাজ করা যায়। যখন বিভিন্ন মডিউল থেকে ডাটা আসে, তখন প্রায়ই সেগুলোকে সরাসরি ব্যবহার করা যায় না। আমাদের প্রয়োজন অনুযায়ী ডাটা পরিবর্তন বা সাজানোর জন্য কিছু বিল্ট-ইন ফাংশন আর এক্সপ্রেশন ব্যবহার করতে হয়। এই ফাংশনগুলো আপনাকে অটোমেশনে আরও বেশি নিয়ন্ত্রণ দেবে এবং জটিল কাজগুলোকেও সহজ করে তুলবে।
map() দিয়ে কালেকশন হ্যান্ডেল করা
অনেক সময় একটি মডিউল থেকে ডাটা একটি তালিকা বা অ্যারে (Array) হিসেবে আসে। যেমন, একটি RSS ফিড থেকে ১০টি ব্লগ পোস্টের তালিকা আসতে পারে। এই তালিকার প্রতিটি আইটেমের ওপর যদি একই ধরনের কাজ করতে চান, তখন map() ফাংশনটি খুব দরকারি।
map() ফাংশন একটি অ্যারের প্রতিটি আইটেমকে একটি নির্দিষ্ট নিয়ম অনুযায়ী পরিবর্তন করে একটি নতুন অ্যারে তৈরি করে। ধরা যাক, আপনি Pinterest-এর জন্য প্রতিটি ব্লগ পোস্টের শিরোনামের সাথে একটি হ্যাশট্যাগ যোগ করতে চান।
এই এক্সপ্রেশনের আউটপুট হবে একটি নতুন অ্যারে, যেখানে প্রতিটি শিরোনামের আগেই হ্যাশট্যাগ যুক্ত থাকবে। এটি ম্যানুয়ালি প্রতিটি আইটেম এডিট করার ঝামেলা থেকে বাঁচিয়ে দেয়।
টেক্সট ও তারিখ ফাংশন
অটোমেশনে টেক্সট এবং তারিখ নিয়ে অনেক কাজ করতে হয়। split() এবং join() ফাংশন দুটি টেক্সট ম্যানিপুলেশনের জন্য খুব শক্তিশালী টুল।
split() ফাংশন একটি স্ট্রিংকে একটি নির্দিষ্ট ক্যারেক্টারের ওপর ভিত্তি করে ভেঙে একাধিক অংশে ভাগ করে একটি অ্যারে তৈরি করে। যেমন, আপনার কাছে যদি কমা দিয়ে আলাদা করা কিছু ট্যাগ থাকে, সেগুলোকে আলাদা করতে split() ব্যবহার করতে পারেন।
{{split("automation, marketing, tech"; ", ")}}
এর আউটপুট হবে একটি অ্যারে, যেখানে তিনটি আইটেম থাকবে: "automation", "marketing", এবং "tech"।
join() ফাংশন ঠিক এর উল্টো কাজ করে। এটি একটি অ্যারের সব আইটেমকে একত্রিত করে একটি সিঙ্গেল স্ট্রিং তৈরি করে।
{{join(1.tags; " | ")}}
যদি 1.tags অ্যারেতে আগের তিনটি ট্যাগ থাকে, তবে আউটপুট হবে: automation | marketing | tech।
একইভাবে, formatDate() ফাংশনটি তারিখ এবং সময়কে আপনার পছন্দমতো ফরম্যাটে সাজাতে সাহায্য করে। বিভিন্ন সিস্টেম বিভিন্ন ফরম্যাটে ডেট আউটপুট দেয়। সেগুলোকে একটি স্ট্যান্ডার্ড ফরম্যাটে আনার জন্য এটি জরুরি।
কন্ডিশনাল লজিক ও ভ্যারিয়েবল
আপনার অটোমেশনকে আরও স্মার্ট করতে কন্ডিশনাল লজিক বা শর্ত ব্যবহার করতে পারেন। এর মাধ্যমে আপনি বিভিন্ন শর্তের ওপর ভিত্তি করে ভিন্ন ভিন্ন আউটপুট তৈরি করতে পারবেন। Make.com-এ এর জন্য if() ফাংশন ব্যবহার করা হয়।
ধরা যাক, একটি ই-কমার্স সাইট থেকে আসা অর্ডারের পরিমাণ যদি $500-এর বেশি হয়, তাহলে আপনি অর্ডারের স্ট্যাটাস "High Value" সেট করতে চান, আর কম হলে "Regular" সেট করতে চান।
{{if(1.order_total > 500; "High Value"; "Regular")}}
এই ফাংশনটি তিনটি অংশ নিয়ে গঠিত: প্রথমে শর্ত (1.order_total > 500), এরপর শর্ত পূরণ হলে কী হবে ("High Value"), এবং শেষে শর্ত পূরণ না হলে কী হবে ("Regular")।
যখন কোনো একটি মান বা এক্সপ্রেশন আপনার সিনারিওতে বারবার ব্যবহার করার প্রয়োজন হয়, তখন ভ্যারিয়েবল ব্যবহার করা বুদ্ধিমানের কাজ। সিনারিওর শুরুতে 'Set variable' মডিউল ব্যবহার করে একটি ভ্যারিয়েবলের মান নির্ধারণ করে দিতে পারেন। পরে যেকোনো মডিউলে সেই ভ্যারিয়েবলটি ব্যবহার করতে পারবেন। এতে আপনার সিনারিও পরিষ্কার থাকে এবং পরে কোনো মান পরিবর্তন করতে হলে শুধু এক জায়গায় করলেই চলে।
এই অ্যাডভান্সড ফাংশনগুলো ব্যবহার করে আপনি আপনার অটোমেশনকে অনেক বেশি শক্তিশালী ও কার্যকর করে তুলতে পারবেন।