I have a use case where I plan to use Custom Metadata Types. I would create multiple custom metadata types, each one looking up to its master. First the base product, then product/family, where one extends the other.
Base Product (base_product.mdt), includes two records: Container Name Folder Name
Industry Vertical (industry_vertical.mdt), includes two records:: Industry Container (Extends Base Container) Industry Folder (Extends Base Folder) Using Metadata Relationship
Then I create two custom objects, one that holds containers and one that holds folders. This is where the customer's use begins, creating content from one of the two types referred above.
The user would create records in these custom objects via our interface, which upon "New" asks what "Type" from my custom metadata, then provides the user with the default screen layout for the corresponding custom object, with the ID from the metadata type stored in a parent_id for reference.
It is my understanding custom metadata types are a good candidate for this requirement, because each time I create a new product, the package can simply add new types and I can rely on the data to be there without needing to write/maintain a clumsy post-install script.
The only drawback I see is that I cannot do the lookup from custom object to custom metadata type w/o apex/visualforce.
So my questions are:
- Is Custom Metadata Type the best choice for my (types) scenario?
- Is is true that a Custom Object cannot natively (declaratively) use a Custom Metadata Type for lookup?
- If #2 is true, is it on the roadmap?
- If I proceed with this design, will I run into issues, and if so any examples?
I am sorry if my questions sound silly, but I really want to leverage the platform and its features in the right manner, for the right scenario.
Thank you in advance!