Copy record values to a new record in different object

I want my users to be able to create a list of their boat components by selecting components from a catalog. After selecting items, I want the user to be able to modify their components as needed, so I don't want to link the catalog component to a MyComponents list. I actually want to make a copy of the catalog record values in the MyComponents object.

I see how I can almost do this with an action link, but, for some reason I can't really understand, use of the action link is restricted to connected records. I don't really need a connection between the source and the destination. I suppose I could make a zapier webhook, but being navigated to the naked webhook will not be pleasant. Is there a better way?

Right that makes sense Thom.

The only solution I've found works for me is to copy and insert the new records with javascript, much like the table-checkbox-copy-records examples in the community.

A good place to start maybe https://support.knack.com/hc/en-us/community/posts/222365987-API-Example-Simple-record-copy

Thanks Brad, but my need is a bit different. In my case, the catalog of items is historic and not exhaustive. In addition to picking items, my user needs to be able to copy and modify items. Let's say that the Catalog has an alternator that's similar to my own, but not exactly the same. I don't want to input a new item from scratch, I want to start with the near-match item, indicate that it's something I have and then tweak it to match my own. So, I'd like to copy fields from the Catalog record into a new table of MyComponents, and then tweak the copied fields to match my alternator's characteristics. Even if the Catalog items change over time, I wouldn't want a change the MyComponents records since they have been tweaked by the user.

I don't understand why the ability to insert a record is constrained to a connected object. I need to map all the fields anyways, so why can't I just create a new record in any object?

Hi Thom,

I think you need an intermediate object that connects a users order (Order) to the Catalog Items - an Order Items object.

Each Order is connected to many Order Items, and each Order Item is connected to one Catalog Item and could have an Item Number as a number field.

The user creates an order, adds Order items to it selecting one Catalog Item for each and the number as they go.

It'll change how you set up the forms but will be more resilient - e.g. a Catalog Item can't be ordered when out of stock down the track.

Hope that helps.

1 Like