Parameter Types

There are different types of parameters that are distinguished by the nFlags parameter passed to LlSetDefaultProjectParameter(). One of each of the three flag alternatives FORMULA/VALUE, PUBLIC/PRIVATE and GLOBAL/LOCAL needs to be used:

LL_PARAMETERFLAG_FORMULA (default)

The parameter is a formula that is evaluated at print time. The evaluated value is returned with LlPrintGetProjectParameter().

LL_PARAMETERFLAG_VALUE

The parameter is a fixed value. This value is returned with LlPrintGetProjectParameter().

LL_PARAMETERFLAG_PUBLIC (default)

The parameter can be changed within the Designer in the Project>Settings dialog, where the user can enter a formula or value.

LL_PARAMETERFLAG_PRIVATE

The parameter cannot be changed in the Designer.

LL_PARAMETERFLAG_GLOBAL (default)

The parameter is added to the print project parameter list and will be saved to the preview file if applicable (see LlStgsysGetJobOptionStringEx()).

LL_PARAMETERFLAG_LOCAL

The parameter is not added to the print project parameter list and will not be saved to the preview file, as it is only valid for the local user or machine.

If the parameters are passed using LlSetDefaultProjectParameter(), they represent the default values that the user may change according to his needs (if LL_PARAMETERFLAG_PUBLIC is set).

If the project is loaded afterwards (LlDefineLayout(), LlPrint[WithBox]Start()) the passed parameters will be replaced by those saved to the project file, i.e. they are overwritten. Unchanged parameters are not saved to the project file and thus remain with their default values. If required, you may set the LL_PARAMETERFLAG_SAVEDEFAULT to override this behavior. This is especially useful if the project parameter is queried before printing with LlGetUserParameter() to offer report parametrization to the user.

Note: you may not pass multiple parameters with the same name but different types!