Datamodel
Some extensions are available in the Blaise datamodel.- A Manipula setup can be used in an alien procedure call
and in an alien router call in a datamodel.
Syntax:
ALIEN ( SetupName, ProcedureName)
where SetupName and ProcedureID are both string constants. The extension .msu in SetupName is the trigger for the system to handle the alien as a call of a procedure in a Manipula setup. You are allowed to specify other command line parameters for the setup in the SetupName constant.
PROCEDURE SqrtFormula PARAMETERS A, B, C, Result: REAL ALIEN('Tools.MSU', 'SqrtFormula') ENDPROCEDUREBLOCK BDoublePunch FIELDS Name "What is your name?" : STRING[20] Age "What is your age, ^Name": 0..120 Gender "What is your gender, ^Name": (male, female) ROUTER DoublePunch ALIEN('MySetup.msu /KMetaID=Test', 'DoublePunch') ENDBLOCK
- It is now allowed to have multiple LAYOUT sections in a block. The new syntax is an extension of the old syntax:
LAYOUT [ ( LayoutIdentifier ) ] [ LayoutSpec [ LayoutSpec ... ] ] [LAYOUT ... ]After the reserved word LAYOUT you are now allowed to specify a layout identifier. With the layout identifier you can identify which of the layout sections in the modelib needs to be applied when constructing the pages for the Data Entry Program and the Internet. Having multiple identified layout sections allows you to completely customize your pages for each data collection mode you have.
A small example:
BLOCK Person FIELDS Name "...": STRING[20] Age "...": 0..120 Gender "...": (male, female) Married "...": (yes,no) Children "...": (yes,no) RULES ... LAYOUT (Laptop) AFTER Name NEWPAGE AFTER Married NEWPAGE LAYOUT (SelfInterviewing) AFTER Age NEWPAGE ENDBLOCKIn the example the modelib contains two layout sets: Laptop and SelfInterviewing. Page breaks are inserted at different positions in the datamodel depending on the layout set being used.