Class FSCUSERFORMS@1.1001:UserForm Permanent link for this heading

User form.

Explanation:
By defining your own Forms, enhance documents and other objects with additional fields.

Class Hierarchy

Object > CompoundObject > UserForm

Properties Permanent link for this heading

Type

Property

Name

Content

content

File

LanguageStringList[]

mlname

Multilingual Name

Actions Permanent link for this heading

Return Type

Signature

boolean

AllowNavigateDraftRelease(
  out retval boolean allownavigate,
  optional object template)

boolean

CanReleaseTemplate(
  out retval boolean canrelease)

object

InstantiateTemplateObject(
  optional boolean skipinvalidtextmodules,
  out object[] invalidtextmodules,
  out retval object object)

boolean

IsDraftTemplate(
  out retval boolean isdrafttemplate)

boolean

IsTemplateReleased(
  out retval boolean isreleased,
  out optional object releasedtemplate)

object

ObjectCopy(
  ref optional object placement,
  out retval object object,
  optional string address,
  optional boolean virtualobject)

integer

ObjectFixVersion(
  boolean autofixed,
  string versdesc,
  out retval integer newversnr,
  optional boolean fixcontents,
  optional boolean converttofinalform,
  optional string finalformat,
  optional boolean noautopurge,
  optional datetime verschangedat,
  optional datetime verssavedat,
  optional User versby)

object

ReleaseTemplate(
  out retval object releasedtemplate,
  optional boolean keepoldrelease,
  optional dictionary additionalsettings)

void

RevokeReleasedTemplate(
  optional dictionary additionalsettings)

Properties Permanent link for this heading


File (COOSYSTEM@1.1:content) Permanent link for this heading

Defines the multimedia content of the object and information like the size of the content or the date of the last change.

Explanation:
Defines the content.

Content COOSYSTEM@1.1:content

Additional Information


Multilingual Name (COOSYSTEM@1.1:mlname) Permanent link for this heading

Defines the multilingual name of the object. It stores one name for each supported language.

Explanation:
This field defines the multilingual name of the object.

unique LanguageStringList[] COOSYSTEM@1.1:mlname

Actions Permanent link for this heading


COOTC@1.1001:AllowNavigateDraftRelease Permanent link for this heading

This action is used in the dynamic menu action of the template management to decide if the option to navigate from the draft to the release version and backwards should be available.

boolean COOTC@1.1001:AllowNavigateDraftRelease(
  out retval boolean allownavigate,
  optional object template)

Name

Description

allownavigate

the result

template

the template

COOTC@1.1001:CanReleaseTemplate Permanent link for this heading

Check if the current user is allowed to release a template or to withdraw the release.

boolean COOTC@1.1001:CanReleaseTemplate(
  out retval boolean canrelease)

Name

Description

canrelease

the result;

FSCTEMPLATEMGMT@1.1001:InstantiateTemplateObject Permanent link for this heading

Instantiates a template object and resolve linked text modules. After calling template.InstantiateTemplateObject(), the transaction must be committed before InstantiateTemplateObject() is called again for another template.

object FSCTEMPLATEMGMT@1.1001:InstantiateTemplateObject(
  optional boolean skipinvalidtextmodules,
  out object[] invalidtextmodules,
  out retval object object)

Name

Description

skipinvalidtextmodules

skip invalid text modules

invalidtextmodules

list of invalid text modules

object

the instantiated object

COOTC@1.1001:IsDraftTemplate Permanent link for this heading

Checks if the template is a draft which can be released.

If the release mechanism is to be used for an object class, then this action can be implemented for example with: isdrafttemplate = cooobj.IsUsable() && !cooobj.GetDraftTemplate();

boolean COOTC@1.1001:IsDraftTemplate(
  out retval boolean isdrafttemplate)

Name

Description

isdrafttemplate

the result

COOTC@1.1001:IsTemplateReleased Permanent link for this heading

Check if a template is already released.

boolean COOTC@1.1001:IsTemplateReleased(
  out retval boolean isreleased,
  out optional object releasedtemplate)

Name

Description

isreleased

the result

releasedtemplate

the released template

COOSYSTEM@1.1:ObjectCopy Permanent link for this heading

Creates a new object as the copy of the object. This action called on the source object. This action sets the property objsource on the copied object.

object COOSYSTEM@1.1:ObjectCopy(
  ref optional object placement,
  out retval object object,
  optional string address,
  optional boolean virtualobject)

Name

Description

placement

If specified, the COO store or domain where the object should be copied. If not specified or an object with a different object class is specified, COOSYTEM@1.1:ObjectPlacementGet is called to determine the placement. On output the COO store where the object is copied.

object

The created copy of the object.

address

The object address for the new object. If this parameter is used, it overrides the specified COO store in parameter coost or the automatically chosen COO store, if no COO store was specified.

virtualobject

(deprecated) Copy object as virtual object, living in one kernel instance only. If this parameter is used, it overrides the specified COO store in parameter placement.

COOSYSTEM@1.1:ObjectFixVersion Permanent link for this heading

Defines the current object version of the object with a short description of the version and starts a new version.

For the purpose of migrations, version metadata set by the kernel can be overridden. The implementation attemps to make migration metadata available in both, objversions as well as corresponding properties in associated versions. Kernel values are stored in corresponding backup properties.

The following properties can be overridden:
Version Property Override Mechanism Requirements
verscreatedat objcreatedat Object creation
  objactverscreated Object creation
  ObjectFixVersion parameter verschangedat Subsequent ObjectFixVersion
versby objchangedby ObjectFixVersion before commit
  ObjectFixVersion parameter versby  
verschangedat ObjectFixVersion parameter verschangedat  
verschangedby objcreatedby Object creation
  objchangedby ObjectFixVersion after commit
verssavedat ObjectFixVersion parameter verschangedat  
Limitations:
  • Despite date overrides, the current date and time (coonow / CooRuntime.GetCurrentDateTime) remains unaffected. Undesired values must be handled manually.
  • Despite user overrides, the current user (coouser / CooRuntime.GetCurrentUser) remains unaffected. Undesired values must be handled manually.
To maximize date and user correctness, disable functionality leading to undesired date and time / user values by means of FSCCOLD@1.1001 class and mapping options, configuration changes, and transaction variables.

integer COOSYSTEM@1.1:ObjectFixVersion(
  boolean autofixed,
  string versdesc,
  out retval integer newversnr,
  optional boolean fixcontents,
  optional boolean converttofinalform,
  optional string finalformat,
  optional boolean noautopurge,
  optional datetime verschangedat,
  optional datetime verssavedat,
  optional User versby)

Name

Description

autofixed

If it is true, the new version was started automatically. Otherwise the user started a new version.

versdesc

The version description.

newversnr

The new version number.

fixcontents

If specified and true, a version for the contents of the object is created.

converttofinalform

If specified and true, the object is converted to final form.

finalformat

If specified, the final format of the object used to convert the object to final form.

noautopurge

If specified and true, do not automatically purge versions of the object.

verschangedat

The value to override verschangedat with. The kernel value is stored in versrealchangedat and objrealactverscreated.

verssavedat

The value to override verssavedat with. The kernel value is stored in versrealsavedat. If verschangedat is specified and verssavedat is not, the value is based on verschangedat.

versby

The value to override COOSYSTEM@1.1:verssby with. The kernel value is stored in versrealsavedby. If not specified and objchangedby is set in the current transaction, the value is based on verschangedat. Otherwise, the value is based on the current user (coouser / CooRuntime.GetCurrentUser).

COOTC@1.1001:ReleaseTemplate Permanent link for this heading

Action to release a template. A released template can be instantiated.

object COOTC@1.1001:ReleaseTemplate(
  out retval object releasedtemplate,
  optional boolean keepoldrelease,
  optional dictionary additionalsettings)

Name

Description

releasedtemplate

the released template

keepoldrelease

in case of newly created released template the old release is not deleted

additionalsettings

this dictionary may contain custom informations when calling the action manually to handle user decision e.g to release sub templates

COOTC@1.1001:RevokeReleasedTemplate Permanent link for this heading

Marks an released template as no longer released, so the template can no longer be instantiated.

void COOTC@1.1001:RevokeReleasedTemplate(
  optional dictionary additionalsettings)

Name

Description

additionalsettings

this dictionary may contain custom informations when calling the action manually to handle user decision e.g to withdraw release of sub templates