Sepasoft MES Module Suite
copySignatureTemplate(...)
Copies an existing Signature Template into a new, unsaved MESSignatureTemplate object. The copy receives a unique name based on Copy of <original name> and can be edited before saving with system.mes.signature.saveSignatureTemplate.
Syntax
Python |
system.mes.signature.copySignatureTemplate(mesObjectLink) |
Parameters
Parameter | Type | Required | Description |
|---|---|---|---|
mesObjectLink | MESObjectLink | Required | Link to an existing Signature Template to copy. The link must reference an object of type SignatureTemplate. |
Return Value
Type | Description |
|---|---|
MESSignatureTemplate | A new, unsaved copy of the source signature template. Modify it as needed, then pass it to system.mes.signature.saveSignatureTemplate to persist it. |
Scope / Availability
Registered on the system.mes.signature script module.
Gateway: Executes on the runtime gateway.
Designer / Client: Same API; calls are sent to the connected gateway via RPC.
Excluded / Edge Cases
Unsaved result: The returned template is not saved automatically. Use system.mes.signature.saveSignatureTemplate after making any changes.
Link required: Passing None raises an Exception because there is no source template to copy.
Link type: The link must be a SignatureTemplate link. Links to other MES object types raise an Exception.
Runtime and support checks: The operation must run on the runtime server and requires MES signature support to be available.
Example Usage
Minimal Example
Python |
# sourceLink is an MESObjectLink to an existing Signature Template. newTemplate = system.mes.signature.copySignatureTemplate(sourceLink) savedTemplate = system.mes.signature.saveSignatureTemplate(newTemplate) |
Complex Example
Python |
sourceLink = None signatureLinks = system.mes.signature.getSignatureTemplateLinkList( 0, 2147483647, "Operator Approval" ) for link in signatureLinks: if link.getName() == "Operator Approval": sourceLink = link break if sourceLink is None: raise Exception("Signature Template not found: Operator Approval") newTemplate = system.mes.signature.copySignatureTemplate(sourceLink) newTemplate.setName("Supervisor Approval") newTemplate.setDescription("Requires a supervisor to approve the action.") newTemplate.setExpression("{role:Supervisor}") newTemplate.setForce(True) newTemplate.setForceUniqueUser(True) newTemplate.setTimeout(2) savedTemplate = system.mes.signature.saveSignatureTemplate(newTemplate) |
Related Functions
system.mes.signature.createSignatureTemplate(name) — Creates a new unsaved signature template from scratch.
system.mes.signature.saveSignatureTemplate(signatureTemplate) — Validates and saves a signature template.
system.mes.signature.removeSignatureTemplate(mesObjectLink) — Removes an existing signature template.
system.mes.signature.getSignatureTemplate(name) — Returns a signature template by name.
system.mes.signature.getSignatureTemplateLinkList(pageNo, pageSize, searchPattern) — Returns signature template links with paging and wildcard search.
Sepasoft MES Module Suite