A block describes one sequence of data: which object it comes from, which columns are wanted, which rows and in which order. A [[Possible instructions|foreach instruction]] in the template refers to a block by its code and walks the rows the block yields. Blocks have no relations to one another. Data is related by using a field of one block in the filter of another and by placing the repetitions inside one another in the right order; see [[Variable value]]. ## General - "Code": how the block is identified, and what a repetition in the template names. - "Label singular" and "Label plural": the name of the data in ordinary language, singular and plural, used wherever the block is shown to a reader rather than to the modeller. - "Usage mode": whether and how the block may be used. - "Comment": why the block exists, for whoever maintains the model later. ## Facts The facts decide which rows the block yields. - "Business object": the object the data comes from, usually a view or table of the connected platform. - "Select clause": the columns wanted, separated by commas. - "Filter clause": which rows, in SQL. This is where a field of an enclosing block or a parameter goes, so that the block yields only what belongs to the row above it. - "Order clause": in which order the rows are yielded, in SQL. The three clauses are the parts of a `select` statement without the keywords, which the product assembles into a statement for the platform. ## Fields The fields are the columns of the business object and are filled in by the product rather than typed. Per field it shows: - "Name": the name of the column, and what `$F{...}` and a repetition refer to. - "Label singular": the name in ordinary language. - "Data type": the type of the column. - "Maximum length": the number of characters, on a text column. - "Precision" and "Scale": the number of digits and the number of them behind the decimal separator, on a numeric column. - "Documentation": what the column means. The list is refreshed from the platform, so a column added there appears without the model having to be retyped.