Library Guideline DOC v10 en PDF
Library Guideline DOC v10 en PDF
Library Guideline DOC v10 en PDF
Library Handling in
TIA Portal
Siemens
TIA Portal V14 SP1 Industry
Online
https://support.industry.siemens.com/cs/ww/en/view/109747503 Support
Warranty and Liability
Note The Application Examples are not binding and do not claim to be complete regarding the
circuits shown, equipping and any eventuality. The Application Examples do not represent
customer-specific solutions. They are only intended to provide support for typical
applications. You are responsible for ensuring that the described products are used
correctly. These Application Examples do not relieve you of the responsibility to use safe
practices in application, installation, operation and maintenance. When using these
Application Examples, you recognize that we cannot be made liable for any
damage/claims beyond the liability clause described. We reserve the right to make
changes to these Application Examples at any time without prior notice.
If there are any deviations between the recommendations provided in these Application
Examples and other Siemens publications – e.g. Catalogs – the contents of the other
documents have priority.
We do not accept any liability for the information contained in this document.
Any claims against us – based on whatever legal reason – resulting from the use of
the examples, information, programs, engineering and performance data etc.,
described in this Application Example shall be excluded. Such an exclusion shall
not apply in the case of mandatory liability, e.g. under the German Product Liability
Act (“Produkthaftungsgesetz”), in case of intent, gross negligence, or injury of life,
body or health, guarantee for the quality of a product, fraudulent concealment of a
deficiency or breach of a condition which goes to the root of the contract
(“wesentliche Vertragspflichten”). The damages for a breach of a substantial
contractual obligation are, however, limited to the foreseeable damage, typical for
Siemens AG 2017 All rights reserved
the type of contract, except in the event of intent or gross negligence or injury to
life, body or health. The above provisions do not imply a change of the burden of
proof to your detriment.
Any form of duplication or distribution of these Application Examples or excerpts
hereof is prohibited without the expressed consent of the Siemens AG.
Security Siemens provides products and solutions with industrial security functions that support the
informa- secure operation of plants, systems, machines and networks.
tion In order to protect plants, systems, machines and networks against cyber threats, it is
necessary to implement – and continuously maintain – a holistic, state-of-the-art industrial
security concept. Siemens’ products and solutions only form one element of such a
concept.
Customer is responsible to prevent unauthorized access to its plants, systems, machines
and networks. Systems, machines and components should only be connected to the
enterprise network or the internet if and to the extent necessary and with appropriate
security measures (e.g. use of firewalls and network segmentation) in place.
Additionally, Siemens’ guidance on appropriate security measures should be taken into
account. For more information about industrial security, please visit
http://www.siemens.com/industrialsecurity.
Siemens’ products and solutions undergo continuous development to make them more
secure. Siemens strongly recommends to apply product updates as soon as available and
to always use the latest product versions. Use of product versions that are no longer
supported, and failure to apply latest updates may increase customer’s exposure to cyber
threats.
To stay informed about product updates, subscribe to the Siemens Industrial Security
RSS Feed under http://www.siemens.com/industrialsecurity.
Table of Contents
1 Introduction
1.1 The type instance concept
1.1.1 Objective of the guideline
This guideline describes the creation of a corporate library by using typified library
elements in TIA Portal.
You have the option to create types or master copies of TIA Portal elements (e.g.
function blocks) (see Figure 1-1: Typification with user libraries).
By using types, they are “instanced” in the project All type instances have a fixed
connection to your type in the library. This is how you can control the version of the
library elements and make changes centrally that are then updated in the complete
project in a system-supported way.
Master copies are independent copies of TIA Portal elements. They have no
connection to your places of use in the project and no option to control the version
in a system-supported way or any central changeability.
Your decision should always be based on these differences, whether you want to
create type or master copies in the libraries.
Figure 1-1: Typification with user libraries
Project Library
Siemens AG 2017 All rights reserved
type instance V2
Based on the following advantages, this guideline recommends the use of types:
Central update function of all instances in the project
Central display of the places of use of the types
System-supported version management of library elements
System-supported change tracking of library elements
Consistent library elements for several users
Typified elements (type instances) are especially highlighted in the project
In order to make optimum use of the advantages of the type instance concept,
there needs to be a defined workflow. The optimum workflow is described in
chapter 2 Creating a Corporate Library.
2
Siemens AG 2017 All rights reserved
1. Project library
– Integrated in the project and managed using the project
– Allows the reusability within the project
2. Global library
– Independent library
– Can be used in several projects
– To distribute ready library versions to other users
A library includes two different types of storage of library elements:
3. Master copies
– Copies of configuration elements in the library (e.g. blocks, hardware, PLC
tag tables, etc.)
– Copies are not connected with the elements in the project.
– Master copies can also be made up of several configuration elements.
4. Types
– Types are connected with your usage locations in the project. When types
are changed, the usage locations in the project can be updated in a
system-supported way.
– Supported types are blocks (FCs, FBs), PLC data types, HMI screens, HMI
faceplates, HMI UDTs, scripts, etc. see chapter
8.2 Overview of all library elements and chapter
8.3 Differences of the types for PLC and HMI.
– Subordinate control elements are automatically typified.
– Types are versioned: Changes can be made by creating a later version.
Blocks can be stored as loose copies in "Master copies" in the "Project library"
using drag-and-drop.
Figure 1-3: Storing blocks as master copies in the project library
Siemens AG 2017 All rights reserved
If you want to store several blocks as master copies in the project library, you can
store the blocks individually or as a group. In order to store several blocks as a
group, when storing using drag-and-drop, you have to press the key "Ctrl" or "Alt".
You can give the group any name. The content of the group is displayed under
"Info".
Figure 1-4: Storing several blocks as master copies in the project library
+ Strg
The "Project library" is used as storage for reusable elements (e.g., blocks) within a
project. The blocks can be added in the device using drag-and-drop.
Figure 1-5: Adding blocks as master copy in the project
Siemens AG 2017 All rights reserved
Blocks can be stored as versionable items in "Types" in the "Project library" using
drag-and-drop. A type has meta data (name, version, author, comment), which can
be updated when creating it.
Figure 1-6: Storing block as type in the project library
Siemens AG 2017 All rights reserved
Note In order to typify safety blocks, they have to be accessed in the F sequence
program. The F program has to be consistent.
Result
All typified blocks are marked with a triangle as type instance in the object icon,
type name and version.
Figure 1-7: Type instances in program
The project library is used as storage for reusable elements (e.g. blocks) within a
project. The typified blocks can be instanced in the program using drag-and-drop.
Figure 1-8: Instancing block as type in the project
Master copies can be stored directly in the global library as described above
and stored using drag-and-drop.
Types always have to be created in the project library before they can be
stored in the global library.
Mater copies and types can be copied from the project library to the global
library using drag-and-drop.
Figure 1-9: Copying master copies/types from the project library to the global library
Note Types that are edited, always require a test environment. This means the type
has to be instanced in a PLC program
Below the info area highlighted in yellow, there is the editor toolbar. The info area
can be closed with a click on the exclamation mark and be opened again.
Once you have completed editing, you can either release the type or discard all
changes.
Figure 1-11: Enabling type
Note In order to typify safety blocks, they have to be accessed in the F sequence
program. The F program has to be consistent.
Note You also have the option to release all types that are [in test] using the command
“Release all".
Recommendation
If it is the first time that you are dealing with libraries in TIA Portal, read the chapter
8 Valuable Information / Basics first.
Note Further information is available in the entry "When starting TIA Portal V13
onwards, how do you get a global library to open automatically and use it as
corporate library, for example? in
https://support.industry.siemens.com/cs/ww/en/view/100451450
and in the help of the TIA Portal in "Using libraries > Using global libraries >
Using global corporate libraries"
2.2 Workflow
The workflow described shows you how you can efficiently create, distribute and
further develop a corporate library. A corporate library is used as central storage for
TIA Portal elements that is published for the users after completion.
This offers the following advantages:
Securing an optimized workflow through
– process-oriented working
– clear assignment of roles integrator, developer, user
consistent library throughout the complete workflow
convenient editing and maintenance
easy use in the plant projects
transfer
library
Developer User Y
developer project(s) plant project(s)
The "integrator" is the head of the developer team. He/she is the central contact
person for the "developer" and has the job to manage the "creation/maintenance"
of the "development library". He/she brings together the delivered "transfer
libraries" of the "developers" to an "integrator project". He/she creates the
"developer library" from the "integrator project".
The developer creates library elements or updates existing ones. Each developer
uses its own "developer project" as development and test environment. Once the
developer has completed the library element, he/she will transfer it to the
"integrator" in a "transfer library". Only the library elements that are to be integrated
in the "development library" are included in the "transfer project".
Note If there is only one "developer", he/she will also take on the role as "integrator".
The "integrator" manages the "development library". It is the basis for all
“developers" and can run through an arbitrary number of development cycles that
are controlled by the "integrator".
The "development library" has the following features:
Global library
It has a total version in which the meta data is entered
It includes library elements with the following features
– only the most current release version of all "developers"
– Meta data (title, comment…) is maintained
Siemens AG 2017 All rights reserved
The "developer" transfers the created library elements to the "integrator" using a
"transfer library". It has the following features:
Global library
It only contains the typified library element that the "developer" creates or
updates.
The library element is in the "released" status.
Integrator
Development / Maintenance
project
develop library
integrator project V1.0
program project global global
V2.0
library library library
V1.0 V1.0 1
V2.0 V2.0 V1.0
6 V2.0 typificated
5 library
element
transfer
library
global
library Developer
V2.0
2
4 developer project(s)
program project
library
V2.0
3
Siemens AG 2017 All rights reserved
V1.0 V1.0
1. The "integrator" provides the "developers" with the current version of the
"development library" as global library.
2. The "developer" updates their "test projects" with the current "development
library".
5. The "integrator" integrates all delivered library element of the "transfer libraries"
in the "integrator project".
6. The "integrator" creates the next version of the "development library" from the
"integrator project".
The development cycle can be changed as often as desired before the "integrator"
performs the "publication" process.
Versioning
When determining the versions of the types, the "integrators" and "developers"
have to agree upon an approach. You have to determine who versions the types
and how the version numbers are maintained. Further information can be found in
chapter 8.6 Version numbers.
transfer
library
Developer User Y
developer project(s) plant project(s)
The "corporate library" corresponds to the "development library" with all its
features. The "integrator" specifies a time when the "creation/maintenance"
process is completed. The integrator then publishes the "development library" as
"corporate library" for the "users".
The "corporate library" is released for the users. It has the following features:
Copy of the "development library" that the "integrator" declares as "corporate
library"
The meta data (creator, date, version, comment…) of the "corporate library" is
updated.
Published as archived file (e.g. zal14, zip).
The "integrator" archives all published "corporate libraries" for later traceability.
Published together with a documentation with the following contents:
– Block description (block function, interface description…)
– Change history (new, changed, deleted library elements)
– Handling instruction for "user", if library elements have been deleted
The documentation is created by the "integrator" using an editable file format
(e.g. docx file).
The documentation is published by the "integrator" in a non-editable file format
(e.g. pdf file).
transfer
library
Developer User Y
developer project(s) plant project(s)
"Users" are people that use a "corporate library" only in their "plant projects". They
do not change library elements or the "corporate library".
The "plant project" is a specific project for a machine. It has the following features:
Includes library elements of "corporate libraries"
Includes plant-specific elements, which are not located in the corporate library
Use only one version of a library element in order to keep a good overview and
delete the version of the library elements that you do not use.
Note If the library elements have to be available for S7-1200 and S7-1500 PLCs,
always use a S7-1200 PLC for their creation.
Note the additional features of know-how protected blocks in chapter 8.7 Know-
how protection.
Note If you want to use the library element with PLCSIM Advanced, enable the
“Support simulation during block compilation” option box for the project.
Detailed information can be found in the following user application in
chapter 2.1 Configuration in the TIA Portal.
https://support.industry.siemens.com/cs/ww/en/view/109739660
Siemens AG 2017 All rights reserved
1. If you have no "integration project" yet, create a new TIA Portal project.
4. Give the FB the name "Container". Use the programming language LAD or
FBD. Confirm the dialog using "OK".
Siemens AG 2017 All rights reserved
7. Open the "transfer library" (here "LGF_Transfer1") that you received from the
"developer".
8. Add the typified blocks from the "Types" folder to the "Container" FB. For a
better overview, add an individual network to each block.
Siemens AG 2017 All rights reserved
10. Create the "Container" block for dummy tag FCs in the temporary or static
area. Connect them to the inputs and outputs of the called FCs.
Result
A new type from the "transfer library" is integrated in the project library of the
"integration project". All typified blocks are called in the "Container" FB.
Repeat the process until all types are instanced in the project. If new types are
added at a later point in time, they have to be instanced the same way.
Siemens AG 2017 All rights reserved
3.1.2 Updating existing library elements in the "integrator project" from the
"transfer libraries"
Preparation
Check the type versions in "TransferLib" and the project library in the "integrator
project".
1. Open the "integrator project".
2. Open the "transfer library" you received from the "developer" with the updated
library elements (here TransferLib).
3. Navigate to the project library of your "integrator project" and compare the
versions of the types.
Siemens AG 2017 All rights reserved
Note If you want to compare the differences of a project library and a global library,
you can use the TIA Openness Library Compare tool:
https://support.industry.siemens.com/cs/ww/en/view/109749141
Result
If the versions of the types are higher in der "transfer library" integrate the
library elements into your "integrator project".
If the versions of the types are lower in der "transfer library" than the type
versions in the "integrator project".
Check with the "developer" to determine how this problem could occur. The
"developer" obviously did not work with the current version of the "development
library".
Updating existing library elements from the "transfer libraries” in the "integrator project"
The following step-by-step instruction shows you the path of integration of a
subordinate type.
2. In order to integrate the updated types of the global "transfer library" into the
"integrator project", right-click on the "Types" folder in the global "TransferLib"
and select "Update > Project".
Siemens AG 2017 All rights reserved
3. Confirm the dialog using "OK". The types that are not used can be deleted in
the project library.
5. Check with the filter dialog whether the types to be updated have higher-level
types. To do this, select "Types with new versions for upgrading other types".
Siemens AG 2017 All rights reserved
The complete filter dialog is described in chapter 8.5.2 Filter dialog in the
library management.
The integration is completed if there are no types with dependencies shown
here. This is where you can stop the step-by-step instruction.
7. All types with the "typeInputDate" type are shown that are in direct or indirect
dependency. Now you have the option to update all dependent types.
8. Select "Compatible with selected test environment" and "PLC_1" and click on
"Start."
Now you have the option to update other types in the project or to release all
types in the status [in test].
10. In order to release all types in status [in test] right-click on the "Types" folder in
the project library and select "Release all".
11. Update the meta data, delete the types not used and confirm the dialog using
"OK".
Siemens AG 2017 All rights reserved
Result
The received type from the "transfer library" was integrated in the "integrator
project". All overlay types have been updated. All types with older versions are
deleted.
Repeat this process until all received types of the "transfer libraries" are integrated
in the "integrator project" and all dependent types have been updated.
Recommendation
Use the filter dialogs in the library management check to check whether all types
are updated and old types have been deleted.
Structure the dummy tags for each block in a Struct tag for a better overview.
Give each network a name of the respectively called block.
Write meta data (developer, date…) in the network comment.
Siemens AG 2017 All rights reserved
1. Create a global library using the "Create new globally library" button.
2. Maintain the meta data (creator…) in the dialog and click on "Create".
Siemens AG 2017 All rights reserved
3. In order to add the types from the "integrator project" in the "development
library", right-click on the "Types" folder and select "Update > Library".
4. Select "Update global library" in the dialog and your "development library".
Confirm the dialog using "OK".
Result
The "development library" includes all types from the "integrator project". All
updated types in the "development library" keep their older versions.
Recommendation
Siemens AG 2017 All rights reserved
4. In order to only keep the latest versions, click the "Clean up library" button.
5. In the dialog, select "Delete old type versions and retain the latest type version"
and confirm using "OK".
Siemens AG 2017 All rights reserved
Result
The "development library" only includes the current version of the respective types.
Now you have a defined version of the "development library" again and you have
two options.
1. You can distribute the current version of the "development library" to the
"developers" for the further editing of library elements.
2. Release the "development library" as "corporate library" for the "users".
Recommendation
Maintain the meta data (developer, version, comment…) of the "development
library".
The "integrator" creates a copy of the global "development library" and declares it
as global "corporate library".
5. Set all options, specify the archive name and the storage path. Click on
"Archiving".
Result
The global "corporate library" is a zipped file and can be published for the "users".
Siemens AG 2017 All rights reserved
Note If the library elements have to be available for S7-1200 and S7-1500 PLCs,
always use a S7-1200 PLC for their creation.
Note If you want to use the library elements with PLCSIM Advanced, enable the
"Support simulation during block compilation" parameter for the project.
Detailed information can be found in the following application example in
chapter 2.1 Configuration in the TIA Portal.
https://support.industry.siemens.com/cs/ww/en/view/109739660
Note The block that is to be created as type has to be compliant with the library.
Siemens AG 2017 All rights reserved
Recommendation
Store your test environment as master copy without types in your "developer
project". This is how you can always bring your "developer project" with the types
of the current "development library" up to date, using drag-and-drop.
For you to always be able to develop the current block, update your "developer
project" with the current "development library".
Case 1
You have not made any changes on your types since you have transferred the last
"transfer library" to the "integrator".
Carry out the step-by-step instruction in chapter 3.1.2 Updating existing library
elements in the "integrator project" from the "transfer libraries".
Use the following terms analogous:
"Transfer library" "Development library"
"Integrator project" "Developer project"
Case 2
You have made changes on your types since you have transferred the last
Siemens AG 2017 All rights reserved
"transfer library" to the "integrator". Always avoid this case as far as this is
possible.
Compare the versions of the types from your "developer project" that you have
changed with the "development library". The changes you have made have to be
checked using the types in the "development library".
2. Identify the types that you have changed in your "developer project" and in the
"development library".
Note If you want to compare the differences of a project library and a global library,
you can use the TIA Openness Library Compare tool:
https://support.industry.siemens.com/cs/ww/en/view/109749141
3. Add the newer types from the "development library" to your "developer project"
using drag-and-drop.
4. Right-click on your type and select "Edit type" in order to apply possible
changes in the following steps.
Siemens AG 2017 All rights reserved
5. Right-click on your type and select "Quick compare > Select as left object".
6. Right-click on the type you have added from the "development library" and
select "Quick compare > Compare with…".
8. Check the changes in the block interface. In this case the overlay type (here
"typeRobotInput") has changed.
9. If you want to apply the type from the "development library" and it has a lower
version than your type, increase the version in the "development library". If the
opposite is the case, proceed with step 11. Right-click on the type in the
"development library" and select "Assign Version".
Siemens AG 2017 All rights reserved
10. Assign a higher version than the type in your "developer project" and confirm
the dialog using "OK".
Note: The overlay block in the "development library" also gets a higher
version. When all blocks have been compared, close the "development library"
without saving it.
11. In order to integrate the changes in the block interface, right-click only the
subordinate type and select "Update > Project" in the "development library".
12. Delete all type versions that are not used and confirm the dialog using "OK".
Siemens AG 2017 All rights reserved
13. Right-click the "Program blocks" folder and select "Compile > Software (rebuild
all)".
17. Then delete the older type versions as described in chapter 3.2.3 Deleting
older type versions in the global "development library".
If you want to create new typified elements for the "development library", proceed
as follows.
2. Create a test PLC using "Add new Device" with which you want to develop the
new block.
4. Assign a name, select the programming language and maintain the meta data
in the dialog in "Additional information".
Siemens AG 2017 All rights reserved
7. Check whether you have programmed the block, compliant with the library.
Right-click the block and navigate to "Compilation > Library conformance".
If the block is not compliant with the library, check whether the block is
programmed in a modular fashion. It must not directly apply a global constant
or a global tag. The data exchange may only take place via the block’s
interfaces.
8. Move the block in the project library to the "Types" folder, using drag-and-drop.
9. Specify the "Name of type", "Version", "Author" and "Comment" in the dialog.
Click on "OK" to close the dialog.
Siemens AG 2017 All rights reserved
Note Types that are edited, always require a test environment. This means the type
has to be instanced in a PLC program
Result
The block is located as type with the "release" status in the project library of your
"developer project". If the block has subordinate elements (block call, PLC data
types), they are also stored as type with its own version in the project library of their
"developer project".
The typified blocks and the subordinate elements are highlighted with a black
triangle in the object icon as type.
Prerequisite
There is a typified library element in your "developer project".
Alternatively, you can also right-click on the block in the project navigation and
select "Edit type".
Siemens AG 2017 All rights reserved
4. The block is in status [in test] (see icon on the block in the program and in the
project library).
5. Edit the block and retain the status [in test] until it is finished.
Note In the status [in test] you can load and test blocks on SIMATIC S7-1200 and S7-
1500 PLCs.
Alternatively, you can right-click on the type in the project library and select
"Release version".
Siemens AG 2017 All rights reserved
7. Maintain the meta data in the dialog. Specify the version and optionally select,
whether all older type versions are to be deleted in the project library and click
on "OK."
Result
The processed block is located as type with the "release" status in the project
library of your "developer project". The version is higher than the original block.
2. Specify the name, path, version, author and comment and click on "Create".
Siemens AG 2017 All rights reserved
2. Only copy the elements created or updated by you from the project library of
your "developer project" into the "Types" folder of your "transfer library" using
drag-and-drop.
Result
The typified block (including subordinate elements) is located in the global
"transfer library".
Repeat the process until all created and changed elements from the project
library of your "developer project" have been copied into the "transfer library".
You can save the global "Transfer library" and supply it to the integrator for
integration in the "corporate library".
Siemens AG 2017 All rights reserved
2. Right-click in the free space in "Global libraries" and select "Retrieve library…".
Siemens AG 2017 All rights reserved
4. Select the storage path for the extracted "corporate library" and confirm the
dialog using "OK". The extracted "corporate library" is opened automatically.
2. Move the typified element (here FB LGF_Astro) to the "Program blocks" folder.
b
Siemens AG 2017 All rights reserved
a. The added block is stored in the PLC program and in the "Project library" in
"Types".
b. If a typified library element has a subordinate type, it is also instanced
(here: "LGF_typeAstroDMS" is a subordinate type of "LGF_Astro").
c. If a typified library element is located in a folder structure in the global
"corporate library", it is applied in the project library.
Prerequisite
Your "plant project" has to contain typified blocks and the global "corporate library"
has to contain a later version of the typified blocks.
2. Navigate to the typified element in global "corporate library" (here "LGF”) that is
to be updated in your "plant project" (here "LGF_Astro").
Siemens AG 2017 All rights reserved
3. Right-click on the typified library element and select "Update > Project".
4. Select all PLCs in the dialog, in which the typified library elements are to be
updated.
Note: For reasons of consistency, always update all PLCs in the project.
5. Select that (older) type versions from the project library of your "plant project"
that are not used, are deleted and confirm the dialog using "OK".
Siemens AG 2017 All rights reserved
Result
All type instances of the selected library element have been updated in the
selected PLCs and in the project library.
Note All typified library elements in the PLCs that are not called or instanced in the
program are deleted from the program when the "plant project" is updated.
In "Common data > Logs" you have the option to trace all processes that are
carried out during an update.
Figure 5-1: Project logs in TIA Portal
Prerequisite
Your "plant project" has to contain typified blocks and the global "corporate library"
has to contain a later version of the typified blocks.
3. Select all PLCs in the dialog, in which the typified elements are to be updated.
Note: For reasons of consistency, always update all PLCs in the project.
4. Select that (older) type versions from the project library of your "plant project"
that are not used, are deleted and confirm the dialog using "OK".
Result
All usage locations of all typified elements that are located in the global "corporate
library" have been updated in the selected PLCs and in the project library of the
"plant project".
Note All typified library elements in the PLCs that are not called or instanced in the
program are deleted from the program when the "plant project" is updated.
Note When updating, all types are copied from the global "corporate library" into the
project library.
Siemens AG 2017 All rights reserved
Recommendation
Use the folder structures for a better overview of your corporate-specific
development library
Create a folder for each basic library in your "corporate-specific development
library".
Development / Maintenance
1 3
base library Integrator corporate-specific
develop library
integrator project
2 4
transfer
library
6
project Developer
developer project(s)
global library
5
1. The "integrator" integrates all or selected library elements of the "basic library"
in the "integrator project". He/she structures all elements in a suitable folder
structure.
Chapter 3.1 Working with the "integrator project"
Siemens AG 2017 All rights reserved
2. The "integrator" integrates all delivered library element of the "transfer libraries"
in the "integrator project".
just as step 1
4. The "integrator" provides the "developers" with the current version of the
"corporate-specific development library" as global library.
5. The "developers" update their "test projects" with the current "corporate-
specific development library". They create or update library elements. The
library elements receives a new version.
Chapter 4.1 Working with the "developer project"
7 Troubleshooting
7.1 Finding solutions for conflicts with same versions
In the following situation there may be version conflicts between typified elements:
Open a global library und copy a type (V1.0.0) into your project.
Edit the type and create a new version (V1.0.1).
Open another global library in which the type has the same version (V1.0.1).
If you try to integrate the type in your project, the TIA Portal will report the
following error.
If you compare the features of the library element in the project with the one in the
Siemens AG 2017 All rights reserved
global library, you will notice that they have the same "Version" but not the same
"Version GUID". This means the two library elements are different.
Figure 7-1: Version conflict of two typified library elements
Solution (integrator)
The "integrator" increases the version of the library element in the project
library of its "integrator project" and then in the global "development library" for
the "developers".
Solution (developer)
The "developer" updates the library element in his/her "developer project" with
the global "development library" that has been updated by the "integrator"
(chapter 4.1.2 Updating the "developer project" using the global "development
library").
Solution (user)
The "user" must not carry out any changes on the types.
The "user" compares the different types in the project library of the "plant
project" in order to determine functional changes. If there are any differences it
is recommended to contact the publisher ("integrator") of the "corporate
library".
The "user" deletes the types in the project library of the "plant project" with its
instances. The deleted types are replaced with the types of the current
"corporate library".
Siemens AG 2017 All rights reserved
Preparation
1. Open the "Library view".
2. Enable the library management with the focus on the project library.
3. Enable the filter "Types with multiple versions".
Case 1: Older type is not used in project nor in the project library
Siemens AG 2017 All rights reserved
2. In the dialog, select "Delete old type versions and retain the latest type
version".
Result
The "RobotControl" type has one only version in the project library and is no longer
displayed in the library management as type with several versions.
Siemens AG 2017 All rights reserved
The two types "MotorControl" and "ValveControl" are still available in several
versions. The reason for this is down to the following cases.
2. Select all PLCs that are to be updated, delete all types that are not used in the
library and confirm the dialog using "OK".
Result
The "ValveControl" type only has one version in the project library and is no longer
displayed in library management as type with several versions.
The "MotorControl" type is still available with several versions. The reason can be
found in the following case.
Solution (integrator)
Note In this case the overlay type has to be updated so that it uses the later version.
Arrange with the "developer" who edits the type how this conflict is to be solved.
2. Carry out the step-by-step instruction in chapter 3.1.2 Updating existing library
elements in the "integrator project" from the "transfer libraries".
3. Carry out the step-by-step instruction in chapter 3.2.3 Deleting older type
versions in the global "development library"
2. Confirm the dialog and select the option that all instances in the project are
also deleted.
3. Navigate to the original types in global library and instance it in your project.
Result
The original type is automatically entered in the project library.
If you accidentally assign a new version to a type that has overlay types, they will
also be reversioned. Therefore, you have to delete the overlay types first.
3. Navigate to the original types in global library and instance them in your
project.
Result
The original type and the overlay types are back in their original state.
2. Navigate to the original type in the project library and instance it in your project.
Result
The element is again instanced as type in your project.
Result
The accidentally deleted type instance is back in your project.
2. Manually delete the types in the project library. If the types are instanced in the
project, also delete them manually.
Result
You only use the types in your project that are located in the current "corporate
library".
Global libraries
Global libraries are independent from a certain project and can be passed on to
other users.
A joint access to global libraries, e.g., to a network drive is also possible when all
users open global library write protected. The TIA Portal manages the global library
automatically. As soon as a later version of an already existing global library is
available, you will get the prompt to update the respective global library to the latest
version.
Created global libraries from earlier versions of the TIA Portal can still be used. To
do this, you have to upgrade them.
Note The handling of global libraries are described in the following entries:
How do you open/upgrade global libraries in the TIA Portal?
Siemens AG 2017 All rights reserved
https://support.industry.siemens.com/cs/ww/en/view/37364723
How can you open a global library with write access rights in STEP 7 (TIA
Portal)?
https://support.industry.siemens.com/cs/ww/en/view/37364723
When starting TIA Portal V13 onwards, how do you get a global library to open
automatically and use it as corporate library, for example?
https://support.industry.siemens.com/cs/ww/en/view/100451450
How do you update corporate libraries in STEP 7 (TIA Portal)?
https://support.industry.siemens.com/cs/ww/en/view/109739199
Master copies
Master copies are elements in the library that are not typified. They have no
connection to the usage locations in the project.
Types
Types are versionable library elements and support a professional further
development. Projects, in which the types are used can be updated as soon as
later versions of the types are available.
Type instances
A type instance is the respective usage location of typified library elements in a
project.
Pop-up screens - X
Slide-in screens - -
HMI tags - X
Scripts X X
Protocols - X
HMI UDT X -
HMI style X -
HMI style sheet X -
User administration: User - X
User administration: Groups - X
4. Right-click on the column header, select "Show/Hide" and enable “Type name"
and "Version".
5. The type information is displayed in the project navigation for all type
instances.
Siemens AG 2017 All rights reserved
The library view shows you the elements of a library in different views and, for
example, in the detail view you will see further features of the individual elements.
Figure 8-1: Library view and library management
Bibliotheksansicht
Bibliotheksverwaltung
6
2 3
4
5
1
7
Siemens AG 2017 All rights reserved
1. Library navigation
2. Buttons
– Open/close library view
– "Library management" button
The library management always opens the respectively set focus in the
library navigation.
3. Buttons
– Update uses
– Clean up library
– Harmonize project
– Expand all entries
– Collapse all entries
4. Filter dialog (see chapter 8.5.2 Filter dialog in the library management)
5. Types that correspond to the filter
6. Tab
– Use in the project
– Use in the library
– Upgrading types
7. Usage location of types that correspond to the filter
The filter dialog consists of several filters, in order to show the types with different
status and mutual dependencies.
Released Types
This filter shows all published types.
of subordinate types.
Recommendation: Check whether overlay types can be updated and make
sure the library is consistent.
See chapter: 3.1.2 Updating existing library elements in the "integrator project"
from the "transfer libraries".
If you renamed the types in the program or if they were renamed automatically by
TIA Portal due to update mechanisms, there is an option to compare the names
and paths of the project library with the programs in the project.
Figure 8-2: Type instance names do not correspond to the type names or folder structure
Solution
You can harmonize all type instances in all devices as follows, using the central
Siemens AG 2017 All rights reserved
2. Right-click on the "Types" folder in the project library and select "Library
Management".
4. Select the PLC in which the type instances are to be harmonized. Select
individually whether the paths and/or the names are to be adapted. Confirm the
dialog using "OK".
Siemens AG 2017 All rights reserved
Result
Type instance names correspond to the type names.
Type instances are in the same folder structure as the types in the project
library.
Note For more information, please refer to the online help des TIA Portals at
"Programming a PLC > Protecting blocks > Protecting blocks".
9 Annex
9.1 Service and support
Industry Online Support
Do you have any questions or need support?
Siemens Industry Online Support offers access to our entire service and support
know-how as well as to our services.
Siemens Industry Online Support is the central address for information on our
products, solutions and services.
Product information, manuals, downloads, FAQs and application examples – all
information is accessible with just a few mouse clicks at
https://support.industry.siemens.com
Technical Support
Siemens Industry's Technical Support offers quick and competent support
regarding all technical queries with numerous tailor-made offers
– from basic support right up to individual support contracts.
Please address your requests to the Technical Support via the web form:
www.siemens.en/industry/supportrequest
Service offer
Our service offer comprises, among other things, the following services:
Product Training
Plant Data Services
Spare Parts Services
Repair Services
On Site and Maintenance Services
Retrofit and Modernization Services
Service Programs and Agreements
Detailed information on our service offer is available in the Service Catalog:
https://support.industry.siemens.com/cs/sc
\9\ FAQ: How can you open a global library with write access rights in STEP 7 (TIA
Portal)?
https://support.industry.siemens.com/cs/ww/en/view/37364723
\10\ FAQ: How do you update corporate libraries in STEP 7 (TIA Portal)?
https://support.industry.siemens.com/cs/ww/en/view/109739199