> For the complete documentation index, see [llms.txt](https://brixxbox.gitbook.io/brixxbox-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://brixxbox.gitbook.io/brixxbox-documentation/client-api-reference/functions/copyconfigrecordbyid.md).

# copyConfigRecordById

Creates a deep copy from a config record. Typical example is to create a copy of an "order" record, with a copy of all the "orderLines" from that source "order". brixxbox will use the "Cascade Copy" flag of a grid control, to decide if which referenced records will be copied.

### Parameters

1. configName
2. recordId - the id of the source record
3. additionalValues - json object of values in the target record that should be modified. e.g. an "orderDate" field. Can be null, in this case you get a 1:1 copy except the record id.

### Example Usages

Exact copy:

```javascript
   let newOrder = brixxApi.copyConfigRecordById("customerOrder", 1376);
```

Copy with new date for header data and manipulating two columns of line item data:

```javascript
   let newOrder = brixxApi.copyConfigRecordById("customerOrder", 1376, {
      cordOrderDate: new Date(),
      cordlnOrderQuantity: "1",
      cordlnDeliveredQuantity: null
   });
```
