আমি কোনও সংস্থার বিক্রয়ের জন্য একটি নতুন পয়েন্টে কাজ করছি যা পণ্য মিশ্রণের উপর নির্ভর করে বিভিন্ন দামের পণ্য দেয়।
সমস্ত পণ্য একটি মূল মূল্য আছে।
আমার সমস্যাটি ব্যাখ্যা করতে, আমি নিম্নলিখিত তথ্য ব্যবহার করব:
Product Category Price
A 1 45
B 1 70
Q 2 20
R 2 27
S 2 15
X 3 17
Y 3 22
Z 3 16
সংস্থার প্যাকেজ রয়েছে, উদাহরণস্বরূপ প্যাকেজ "কম্বো": পণ্যের A বা B এর জন্য, আপনি যদি Q বা R এর 1 এবং এক্স, ওয়াই বা জেড এর 1 বেছে নেন তবে আপনি 20 ডলার ছাড় পাবেন।
কেস এ: কখনও কখনও গ্রাহকরা অর্ডার দেওয়ার সময় একটি বেস প্রোডাক্ট যুক্ত করে, উদাহরণস্বরূপ: তারা পণ্য A এর মধ্যে একটিও চায় না, এবং ছাড়ের দাম রয়েছে এমন একটি প্যাকেজ তৈরি করতে তারা পণ্য Q এবং পণ্য পি যুক্ত করে add তারপরে তারা যুক্ত করতে পারেন যে তারা 1 টি আর 1 জেড দিয়ে 1 পণ্য বি চান want
কেস বি: কখনও কখনও গ্রাহকরা 1 এ এবং 2 বি, 2 কিউ, 1 এস, 2 এক্স এবং 1 জেড যুক্ত করবেন "" কম্বো "প্যাকেজ দ্বারা নির্ধারিত নিয়ম অনুসারে, কেবল দুটি কম্বোই আবেদন করবে কারণ এস কম্বো আইটেম নয়।
অন্যান্য প্রচারগুলি পরিমাণের উপর নির্ভরশীল, সুতরাং আপনি যদি বি এর 2 টি কিনে থাকেন তবে আপনি 20% ছাড় পান এবং / বা সময় অনুযায়ী নির্ভর করেন তবে এটি কেবল বৈধ হয় 5 অপরাহ্নের পরে বা 10% ছাড়ার আগে 10 টার আগে। আপনার শেষ ক্রয়টি কখন ঘটেছে বা আপনি যদি ওয়াই টাইমফ্রেমে $ X এর চেয়ে বেশি কিনেছেন তবে অন্য প্রচারটি নির্ভর করতে পারে।
আমার সমস্যাগুলি:
1) আমি টেবিলগুলি কীভাবে গঠন করব যাতে আমি আমার বিভিন্ন প্যাকেজ বা প্রচারগুলি এমনভাবে তৈরি করি যা বিভিন্ন প্রয়োজনীয়তার সাথে বিভিন্ন ধরণের প্রচার যুক্ত করতে খুব নমনীয় হয়?
২) যখন তারা কেস বি (বা কেস এ এবং কেস বি এর মিশ্রণ) এর মতো অর্ডার দেয় আমি কীভাবে আমার ক্যোয়ারিকে কাঠামোগত করব যাতে আমি কীভাবে পণ্য মিক্স (এস) ক্রমানুসারে তা পরীক্ষা করতে পারি এবং সেই অনুযায়ী দাম / বিবরণ আপডেট করতে পারি ? শেষ পর্যন্ত, এই ক্যোয়ারির সেরা ফলাফলটি প্যাকেজগুলি এবং প্রচারগুলির প্রয়োজনীয়তা পূরণ করবে যা গ্রাহককে সর্বাধিক সুবিধা দেয় (অর্থাত্ তারা যা আদেশ করেছিলেন তা পদোন্নতি 1 এবং 3 এর প্রয়োজনীয়তা পূরণ করে, তবে প্রচার 3 কম ব্যয়বহুল This একাধিক প্রচারের সাথে অবশ্যই কাজ করা উচিত)।
সাহায্যের জন্য আগাম ধন্যবাদ!
আপডেট # 1
সমস্যাগুলির আরও ভালভাবে বর্ণনা করার জন্য এবং এগুলি সমাধান করার জন্য এতদূর পর্যন্ত কাজটি আপডেট করার জন্য আমি ইস্যুটিকে প্রভাবিত করে এমন সত্ত্বা এবং বৈশিষ্ট্যগুলিতে সীমাবদ্ধ প্রোডাক্ট মডেলের একটি ইআরডি অন্তর্ভুক্ত করছি (অর্থাত্ ইনভেন্টরিটি এখানে খেলছে না, সুতরাং কোনও জায় নেই) সত্ত্বা উপস্থিত)
আমি এই প্রশ্নকে প্রভাবিত করে এমন সত্তা এবং বৈশিষ্ট্যগুলির নমুনা ডেটাও অন্তর্ভুক্ত করছি (ডেটা পড়া সহজ করার জন্য, আমি বিদেশী কীগুলির জায়গায় নাম / বিবরণ দিচ্ছি):
PRODUCT
---------
ID Name
================================
1 Hamburger
2 Cheeseburger
3 Bacon Hamburger
4 Bacon Cheeseburger
5 Orange Juice
6 Apple Juice
7 Coffee
8 Coke
9 French Fries
10 Onion Rings
11 Soup du Jour
12 Hamburger Combo
13 CheeseBurger Combo
14 Bacon Hamburger Combo
15 Bacon Cheeseburger Combo
16 Combo Side
17 Combo Beverage
18 Small Orange Juice
19 Large Orange Juice
20 Small Apple Juice
21 Large Apple Juice
22 Add Extra Patty
23 Add Avocado
PRODUCT COMPONENT
------------------
productFrom productTo
===================================================
Hamburger Combo Hamburger
Hamburger Combo Combo Side
Hamburger Combo Combo Beverage
CheeseBurger Combo Cheeseburger
CheeseBurger Combo Combo Side
CheeseBurger Combo Combo Beverage
Bacon Hamburger Combo Bacon Hamburger
Bacon Hamburger Combo Combo Side
Bacon Hamburger Combo Combo Beverage
Bacon Cheeseburger Combo Bacon Cheeseburger
Bacon Cheeseburger Combo Combo Side
Bacon Cheeseburger Combo Combo Beverage
PRODUCT FEATURE
----------------
ID Description
=======================
1 Combo Side Option
2 Combo Beverage
3 Juice
4 Orange Juice Size
5 Apple Juice Size
6 Extras
PRODUCT FEATURE APPLICABILITY
------------------------------
product productFeature ProductFeatureApplicabilityType
============================================================================
Hamburger Combo Combo Side Required
Hamburger Combo Juice Flavor Required
Cheeseburger Combo Combo Side Required
Cheeseburger Combo Juice Flavor Required
Bacon Hamburger Combo Combo Side Required
Bacon Hamburger Combo Juice Flavor Required
Bacon Cheeseburger Combo Combo Side Required
Bacon Cheeseburger Combo Juice Flavor Required
PRODUCT FEATURE APPLICABILITY
------------------------------
productFeature product ProductFeatureApplicabilityType
============================================================================
Combo Side Hamburger Combo Required
Combo Beverage Hamburger Combo Required
Extras Hamburger Combo Optional
Combo Side Cheeseburger Combo Required
Combo Beverage Cheeseburger Combo Required
Extras Cheeseburger Combo Optional
Combo Side Bacon Hamburger Combo Required
Combo Beverage Bacon Hamburger Combo Required
Extras Bacon Hamburger Combo Optional
Combo Side Bacon Cheeseburger Combo Required
Combo Beverage Bacon Cheeseburger Combo Required
Extras Bacon Cheeseburger Combo Optional
OPTIONAL FEATURE
------------------
productFeatureFrom Product ProductFeatureTo
=============================================================
Combo Side Option French Fries
Combo Side Option Onion Rings
Combo Side Option Soup du Jour
Combo Beverage Juice
Combo Beverage Coffee
Juice Orange Juice Size
Juice Apple Juice Size
Orange Juice Size Orange Apple Juice
Orange Juice Size Orange Apple Juice
Apple Juice Size Small Apple Juice
Apple Juice Size Large Apple Juice
Extras Add Extra Patty
Extras Add Avocado
সুতরাং, যতক্ষণ না জেনে সম্প্রদায়ের দ্বারা সরবরাহিত গবেষণা এবং সহায়তা দিয়ে আমি সমস্যা # 1 সমাধান করতে সক্ষম হয়েছি। প্রকৃতপক্ষে, আমি সিস্টেমের প্রথম মোতায়েনের ক্ষেত্রে আমি যা করতে পারি তার চেয়ে বেশি নমনীয়তার সাথে এটি করেছি।
যদিও সমস্যা 2 নিয়ে অগ্রগতি হয়েছে, তবুও এটি সন্তুষ্টির সমাধান হয় না। কীভাবে এটি করা যায় সে সম্পর্কে কিছু ধারণা রয়েছে, নীল ম্যাকগুইলান একটি বিরাট প্রশ্ন জিজ্ঞাসা করেছেন রিলেশনাল ডিভিশন (dba.stackexchange.com/questions/45829/ কি-is-the-name-of-this-type- ব্যবহার করে) একটি সম্ভাব্য সমাধানের দিকে নিয়ে অফ-কোয়েরি-এবং-কী-একটি-দক্ষ-উদাহরণ) এবং এই বইটি (www.amazon.com/books/dp/0471380237) অনেক সহায়তা করেছে। তবে বর্তমানে এই সমাধানটি এবং আমি এটি বুঝতে পারি, কেবল একবারে "এক" রেকর্ড (কম্বো) দিয়ে কাজ করে। যদি কোনও গ্রাহক উঠে যায় এবং বলে যে তিনি 2 পিজারবার্গার, 1 হ্যামবার্গার, 1 টি ছোট অ্যাপল জুস, 1 কোক, 1 ফরাসী ফ্রাই এবং 2 টি পেঁয়াজ রিং চান তবে আমার মিশ্রণের মধ্যে কেবল একটি কম্বো রয়েছে তা সনাক্ত করার জন্য একটি উপায় প্রয়োজন এবং অন্যটি যুক্ত করুন বেস দামে পণ্য। যদি একাধিক কম্বো কম্বিনেশন থাকে তবে আমি '
দু'টি সমস্যার সমাধান করার জন্য একটি ধারণা আমি নিয়ে এসেছি হ'ল কম্বোয়ের (যেমন হ্যামবার্গার) প্রধান পণ্যটি পণ্য সংমিশ্রণকে ফ্ল্যাগগিন যুক্ত করা এবং এট্রিবিউট করা। তারপরে দাম নির্ধারণের প্রক্রিয়া চলাকালীন, PRICE COMPONENT টেবিলের দেওয়া ছাড়ের সাথে কোয়েরি সম্পর্কিত এবং "মান" অবতরণ) এবং প্যাকেজগুলির চেকের ক্রম অনুসারে অর্ডারতে কোন পণ্যগুলি "প্যাকেজ" এর প্রধান পণ্যগুলি তা জিজ্ঞাসা করুন আপনি যদি কোনও জিজ্ঞাসা সহ বাকী অ-প্রধান পণ্যগুলির সাথে একটি "প্যাকেজ" তৈরি করতে পারেন এবং কোনও প্রধান পণ্য না পাওয়া অবধি বা বাকি অংশে আর কোনও প্রধান-প্রধান পণ্য না পাওয়া পর্যন্ত প্রক্রিয়াটি লুপ করতে পারেন কিনা তা দেখতে।