Import Configuration Operations
During the Import process, you can configure whether individual components are imported through the Operations field. This section describes the values that may appear in the Operation field.
- If Discard, then all components are Discard.
- If Create, then all components are Create.
- If Use Existing, then all components are either Use Existing or Discard (if there is no collision).
- If Overwrite, then all components are:
- Overwrite (even if identical), or
- Create (if there is no collision), or
- Discard if the component does not have create privileges or Delete if the component only exists in the project.
Reference components can be set individually.
Use Existing
Specifies that the existing component in the project should be used, and that the component in the import file will not be imported, even if it is the main component being imported.
The operation is valid anytime there is a collision.
Overwrite
Specifies that the information for this component in the Import file should overwrite the information in the project file, as long as overwriting is a permitted operation.
This operation is valid for any collision when the component in the import file is defined:
When the Overwrite operation is selected for a tag, the data that is different is written to the offline project only, even if you are online with the controller. This applies to tags for imported Add-On Instruction components and phase component imports as well.
Create
Specifies that a new component will be created in the project based on the information in the import file, as long as creation is a permitted operation.
This operation is valid for the following:
- import components or reference components with different names (default unless forced to discard by a error condition).
- an imported component or reference component that is the same name as an undefined reference in the project (default).
Discard
In some situations, you might not be permitted to import a component. This can be due to an insufficient security privilege or an incompatibility with an existing component. In these cases, if the component name collides, the operation is Use Existing (to indicate that the existing component remains after the import). If the name does not collide, the operation is Discard (to indicate that the definition in the import file is thrown away).
Even if you are permitted to import a component, you can choose to discard a component. If the imported component is being discarded, the references are still imported as you configure them. For example, this lets you import a data type or Add-On Instruction from an .L5X file containing a program or routine when you do not want the entire program or routine.
This operation is valid anytime the component and its definition exist in the import file.
Undefined
Specifies that a component would be created on import, however, no information (other than its name) was found in the import file from which to create it. This is the case with Routines referenced in JSR instructions, as well as Tags that are used, but were never defined in the source project. The imported logic will not verify as long as there are undefined component references.
This operation is valid when the definition of a referenced component is not found in either the project or the import file.
Delete
Specifies that this component will be deleted from the project upon import. For example, if you are importing a Program and the new definition of the Program does not contain some Tags or Routines that are in the project, these components will have Delete as their operation, a blank import name, and are deleted from the project on Import.
The only import situation where these components are not deleted is if you are importing online and choose not to finalize edits. In this situation, the components are referenced by existing logic, and cannot be deleted as part of the import.
Provide Feedback