Theory. Data types. Type-defining configuration objects
Before you start creating documents, let us talk about the data types that are available in the 1C:Enterprise system.
In the previous lesson, when you created catalog or tabular section attributes, you always specified the attribute data type. Those were the primitive data types: Number, String, Date, and Boolean. There are just a few predefined primitive types within the system.
In addition to the predefined types that are available in all configurations, you can define custom data types in your configuration. These are the types that do not exist in a configuration permanently but only appear when specific configuration objects are added.
For example, once you created the Warehouses Catalog configuration object, several new data types related to that catalog became available. These types include, for example, CatalogRef.Warehouses. Now, if you set this data type for some attribute, you can use this attribute for storing a reference to a specific Warehouses catalog object.
Configuration objects that can add new data types are referred to as type-defining objects.
For example, once you created a MaterialsAndServices catalog, the following data types became available:
Again, note that these data types were not supported by the platform initially, they only exist in a specific applied solution.
This brief discussion was required because right when you create your first document, you will have to deal with CatalogRef.Warehouses and CatalogRef.MaterialsAndServices data types, which are available in your configuration because you created the Warehouses and MaterialsAndServices catalogs.