This is an old revision of the document!


Duplicate Records Business Mapping

The accepted format is

<map>
	<originmodule>
		<originname>Contacts</originname> {optional}
	</originmodule>
	<relatedmodules>
		<relatedmodule>
			<module></module>
			<relation>m:m</relation> {optional}
		</relatedmodule>
		...
		<relatedmodule>
			<module></module>
			<relation>1:1</relation>
		</relatedmodule>
	</relatedmodules>
	<DuplicateDirectRelations>false</DuplicateDirectRelations> Allowed values: true, false
</map>

This is a workflow configuration map. It permits you to define the related modules that will be duplicated when launching a Duplicate Records workflow task.

The coreBOS application supports mass duplication of records by means of the Duplicate Records workflow task. The idea is that you can duplicate a record and all its related information in one step. The task will do the next set of steps when launched:

  • duplicate the record launching the workflow
  • relate the duplicated record with all the records the main record is related with by m:m
  • create new related records for all the directly related records (1:n), which effectively mass creates many records, duplicates themselves of all the records related to the main record

This map permits us to tune the way we want this duplication to work.

By default, those records which are directly related to the one being duplicated are NOT duplicated. This means, for example, that if we are duplicating a Contact which is related to Account X, the new duplicated Contact will still be related to the same Account X. If we set the DuplicateDirectRelations directive to TRUE, then a new record will be created for each direct relation. In the previous example, the duplicated Contact would be related to a new Account Y which would be a duplicate of Account X.

Also, by default, the mass duplicate task will duplicate all relations of the record. If it is an m:m relation the records will end up being related to both records; the original and the duplicate. If the relation is 1:n, then new records will be created and related to the duplicate record.

Only standard vtlib relations are supported (get_dependents_list and get_related_list)

Using the relatedmodule directives we can limit the relations we want to be duplicated in order to avoid doing more work than necessary and duplicating information that does not need to be repeated.

Duplicating second level records


coreBOS Documentación