Importing an Object
Previous Topic  Next Topic 

Although you can import single specifications and turn them into objects, if you take full advantage of FF&EZ's ability to create assemblies of specs in more complex objects, you will find it very useful to be able to import an entire object with all of its specifications already attached. This function allows you to do that. You can import an object from any other project (note: if you need a copy of an existing object in the current project, just use the Clone function on the Object List screen instead). The Import function is integrated with the Add command on the Object List form and appears when you select that command. 

These command buttons appear after you select the Add command.

Also note that if you need to import many objects (for instance, a whole room full of them), then check out the Add> Import command on the Room List screen.

Importing Objects vs. Importing Specs: Importing an object that has multiple specs attached is always easier with this command. However, if you are creating an object with a single imported spec, use the Add> Import command on the Specifications List screen, since it is easier to assign any Spec ID to it (just be sure to finish by using the Save/Object command to create the matching object).

One important aspect of importing an object is dealing with possible conflicts of Spec IDs between the incoming specs and those already in your project. For instance, your project may have an existing spec that uses the Spec ID CHR001 and the fabric FAB032. The object you are importing may also use CHR001 as its primary spec (in the source project). What if these are the same? What if they are not? FF&EZ makes it easy to deal with these situations (however, doing a little bit of preliminary study of the source object will also help). After you select an object to import, FF&EZ compares all of the incoming specs and shows you any with IDs that conflict. In the example above, it will display the conflicting CHR001 specs. If FAB032 has not been used in your current project, it will not cause a conflict and won't appear on the list (but will be imported). 

If you import an object into a brand new, empty project, you will of course get no conflicts. As you import objects into a project that is full of existing objects, the likelihood of a conflict goes up, especially if the new object is from a very different project where the same Spec ID might be used for different products.

First, keep in mind this point: Existing specs in your project will not be changed in any way. Changes are only made to temporary tables containing the incoming items to allow them to either co-exist with those already in the project or give way to them. A full description of the procedure follows the table of fields and controls.

Object Import Screen Fields and Controls

Choose list options

The list of available objects will normally show all objects in all projects (except the current one). If you instead select one or more of the criteria options, you can limit the items in the list to just a subset of the available ones.

If you specify a project when narrowing down the list, FF&EZ will remember it and use it automatically if you use the Import function again (unless you close the Object List itself). 

Select an object to import

This list displays the available objects. As you click on objects in the list, the system will display more information about that object's primary specification, including its image if one is attached.

Click on the object that you want to import, then click on the Select Object button just below the list of objects (it will be grayed out until you click on an object). You can also double-click the object you want to select it in one step.

When you select an object, FF&EZ creates a temporary file containing the associated specs and then tests to see if any of their original Spec IDs conflict with Spec IDs already used in your project.

Resolve incoming source Spec IDs that conflict with existing Spec IDs:

This is a list of specifications with Spec IDs that conflict with currently existing specs in your project. To resolve a conflict, either 1) put a check in the "Use Current" column (meaning do not import the source spec) or 2) enter a new Spec ID to use. 

Accept Changes (Specs)

  

Clicking this button starts a new cycle of checking for and displaying spec conflicts. Typically you only have to do this once, but if a Spec ID you entered conflicts with a different existing spec, the system will display the new conflict.

If any are found, the list will show them, otherwise it will go blank and you can click on the large Accept button to close the form. 

Accept

Once all conflicts are resolved (one way or another) this button closes the form and passes the incoming object information to the Object List form. When you later save the new object, the contents and associated objects and specs will be imported as specified. 

Cancel

This button closes the form without setting up an object to import. 

Object Import Procedure

The basic procedure to import an object is this:

  1. On the Objects List screen, click on Add. If desired, enter the new Tag (recommended, unless you know that the Tag of the source object is appropriate for the current project) and, if desired, a description appropriate for your project. You can enter any other information if you wish, but anything left blank will be filled with the imported data.
  2. Click on the Import button to display the Object Import screen.
  3. If you want to narrow down the number of objects to pick, you can enter a specific project ID and/or a key word from the object description or any other of the basic filters shown. In the example below, we have used "art" to narrow the list to all artwork objects. As you click or move through the list, the system will display more about your selection.

As you click on an object in the list (or move to it with arrow keys) more information about it will be displayed on the right. When you find the object you want, double-click it or click on the Select Object button.

  1. After highlighting an object, either double-click it or click on the Select Object button below the list of objects. This will display any incoming component specs whose Spec IDs conflict with those already in the current project. 

  1. Resolve Spec ID Conflicts To deal with the conflicts, answer this series of questions: Does the "incoming" specification already exist in the project? If not, it just needs to have a new Spec ID assigned to it. If it does exist, does it still use the same tag or spec ID in the current project? That is, is the "incoming" ART-01 the same as the current one in your project? If yes, we can just use the existing ("current") spec. If it exists under a different Spec ID, we need to point to that spec. These situations are handled in different ways: 
    • If the incoming spec is not the same as the current one, you need to give it a new Spec ID. In the example above, in the source project ART-01 was defined as "Artwork, 'Mississippi Sunset'," while in your current project, it is "Artwork, French Garden Plaque." To enable the source spec to be imported (since the Spec ID "ART-01" is already used in your project), you simply type in a new Spec ID on the conflict list, in this case "ART-25" (this example is shown in the image above).
    • If the old and current specifications are the same items, then you can tell FF&EZ to use the "current" version that is already in your project. For that item, the new object will contain components pointing to the existing product spec(s), using the quantity required by the incoming object. This is the simplest way to resolve the conflict, because it leaves behind the old spec and just records the quantity needed in the new object for the existing spec. However, when importing objects, it is more likely that you are doing so because that object and its spec(s) do not exist in your project yet. So this situation is less likely to occur.
    • It's also possible that another spec (with a different Spec ID) is the same product as the incoming one. If so, enter that existing spec's ID as the "new" Spec ID to use. It will create a new conflict, but on the next round of conflict checking, you can tell FF&EZ to use the other existing spec (again, this is less likely if you are the designer on the project and know that this product is already specified in the project).

6.        Once you have either accepted the substitution of the current spec or changed the Spec ID of the incoming one, click on the Accept Changes button to write the changes to the incoming data (the original object is not changed). If your changes resolve all the conflicts, you will be able to click on the large Accept button. If not, or if you assigned tags that created conflicts with other existing objects, you will see a new (but probably shorter) list of conflicts. Once you resolve all object conflicts, you only need to resolve any remaining spec ID conflicts (if any remain). 

7.        If you get "no conflicts found" message, the large Accept button at the bottom will be enabled. Click on it to save the import setup and return to the object form. The new object will be imported when you click on the Object Form's Save button.

Duplicated Specifications With No Spec ID Conflicts

One situation that the import function cannot detect is when an incoming spec content matches an existing one but there is no conflict in the Spec ID (that is, the products are identical but use different Spec IDs in the two projects). In this situation, the duplicated spec will be imported. 

If this happens and you want to consolidate the duplicated products into a single spec, you can simply edit the newly imported object to switch the incoming duplicate to the existing spec (if the entire object is a duplicate, you can simply substitute the object instead). Please note, though, that this should not happen if you are keeping up with what you have already specified in a project, so the following is included so that you have a procedure for correcting it if a mistake is made.

For instance, suppose you imported a sofa object and found that its FAB021 and the FAB002 used in another project chair are actually the same fabric. For take-off purposes, it may be more useful if we consolidated the total quantity represented by FAB021 into the existing FAB002, generating a single, obvious ordering item instead of two potentially confusing ones.  

There are actually two ways to substitute the existing spec for the imported one. First (if not already done), identify any other incoming specs that are identical to those already in the project. The easiest way to do this is to display the Specification List and sort by Vendor (or by Catalog #) which will make it easier to see identical entries. Then follow one of these two methods to replace the duplicated spec:

Using the Specifications List's Object command

In this method, we select the spec we want to keep and then use it to replace the duplicated spec on the object that is using the latter. Starting on the Specification List screen:

  1. Use Find to locate FAB002 and click on the Object command (note: this is under the "Command" group, not the Objects button under "Views"). 
  2. Select the "Modify the existing object tagged as" option and select the sofa object in which FAB021 is being used.
  3. Select the "Replace this existing component" sub-option and select FAB021 as the component to replace.
  4. When you click on Okay, that use of FAB021 will be replaced by FAB002. 

OR...

Using the Object List's component list controls

Here, we use the Object Component List tools on the Objects screen to accomplish the same result:

  1. Use Find to locate the sofa object in which FAB021 is being used and (if not already highlighted), click on it to highlight it in the main  list at the top. Note that for changes to the component list, you do not have to use the Edit command.
  2. In the Component List for the sofa (near the bottom), highlight FAB021 (this is critical, so FF&EZ knows which item is being changed).
  3. Beneath the list, next to "Attach new or replace existing component," select FAB002 from the drop-down pick list and press the [Tab] key.
  4. Click on the Replace button to finish the change.

You have the option of then deleting the specs that are no longer being used from the Specification List itself, but it's not necessary: All the components in the objects now point to the correct specs.