Framework:Transport: Difference between revisions

From CoPlanner 11
Jump to navigationJump to search
Created page with "Das Transportwesen dient zum einfachen Überspielen von Objekten zwischen mehreren Systemen. Dabei werden nur Strukturen übernommen und nicht z.B. Inhalte von Tabellen, Dimen..."
 
No edit summary
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
Das Transportwesen dient zum einfachen Überspielen von Objekten zwischen mehreren Systemen. Dabei werden nur Strukturen übernommen und nicht z.B. Inhalte von Tabellen, Dimensionen, usw..<br>
The Transport is used for a simple transfer of objects between several systems. Only structures are transferred without table content, dimension and so on.  
Vorrausetzung für einen sauberen Transport ist, dass das Entwicklungssystem (Quellsystem) vor den Änderungen gleich ist wie das Produktivsystem (Zielsystem) und am Produktivsystem keine weiteren Objekte angelegt werden.
For a clean transport it is required that the source system equals the target system before the update and that no more objects are created on the target system.


Es gibt für den Import auch die Möglichkeit, diesen als Batch-Job zu starten, um einen Transport auch in der Nacht automatisiert durchführen zu können.
There is also the possibility to start the import as Batch-Job to execute an automatic transport during the night.  


==Konfigurationsparameter==
==Configuration parameter==
===[[Technik:CoPlanner-Server#SvrConfig.xml|SvrConfig.xml]]===
===[[Technics:CoPlanner-Server#SvrConfig.xml|SvrConfig.xml]]===
Die Authentifizierung beim automatisierten Transportwesen erfolgt immer mittels SSPI mit dem Userkontext des Aufrufers. Dieser Benutzer muss aus Sicherheitsgründen in der SvrConfig.xml bei dem Eintrag TransportUserName hinterlegt werden.
Authentication of the automatic transport occurs always using SSPI with user context of the caller. This user has to be entered in the field TransportUserName in SrvConfig.xml due to security regulations.


===[[Technik:CoPlanner_Win-Client#coplanner.exe.config_Datei|Coplanner.exe.config]]===
===[[Technics:CoPlanner_Win-Client#coplanner.exe.config_File|Coplanner.exe.config]]===
Die Sichtbarkeit der Einträge "Transport" und "Clientseitige Checks" im Entwicklermenü am Client kann über den Eintrag ShowTransportEntries gesteuert werden.
Visibility of "Transport" and "Checks on the client side" in developer mode on the client is configured by ShowTransportEntries.




==Aufruf==
==Open transport==
Um das Transportwesen aufrufen zu können, muss man sich im Hersteller, PowerUser oder Partner-Modus befinden.
To open the transport it is necessary to be logged in as Manufacturer, PowerUser or Partner-Mode. You can find the transport in the developer mode accessible  via CoPlanner.
Es gibt hier wenn man über CoPlanner auf das Entwicklungsmenü geht der Eintrag Transportwesen.


[[Image:FW_Aufruf_Transport.png|thumb|center|Framework, Aufruf Transport]]


Über diesen Button öffnet sich dann der folgende Dialog:
[[Image:FW_Aufruf_Transport.png|thumb|center|Framework, Open transport]]


[[Image:FW_Transportwesen_Dialog.png|thumb|center|Framework, Dialog Transport]]
Using this button the following dialog is opened.  


[[Image:FW_Transportwesen_Dialog.png|thumb|center|Framework, Transport dialog]]


===Stichtag festlegen===
Dieser Stichtag wird bei dem Export für die initiale Datumsauswahl, ab wann Objektänderungen für den Transport berücksichtigt werden herangezogen. Dieser Vorschlagswert kann dann im Assistenten übersteuert werden. Den aktuellen Stichtag sollte man auf jeden Fall durchführen, wenn das System gerade von einem Produktivsystem als Entwicklungssystem kopiert wurde.


Um den Stichtag festzulegen, die Schaltfläche bei "Stichtag festlegen" anklicken und auf "Assistent starten" klicken. Danach kommt eine Abfrage, ob man das aktuelle Datum als Stichtag setzen will.
===Set reference date===
Der Stichtag wird später bei jedem Export automatisch auf das Datum und die Uhrzeit des Exports angepasst.
This reference date is used for initial date selection at the export and indicates from which date objects should be considered to transport.  
This suggestion can be overrided using the assistant. It is recommended to execute the actual reference date if the system was just copied as development system from a productive system.
 
To set the reference date click 'set reference date' and 'start assistant'. Afterwards a request is shown if you would like to set the actual date as reference date.  
The reference date will be set at each export automatically to the date and time of the export.  




===Export===
===Export===
Um einen Export zu starten, die Schaltfläche bei Export aktivieren und "Assistent starten" klicken.
To start an export select Export and click "Start assistent". A new dialog will be opened to select the date from which updates should be displayed.  
Es öffnet sich ein Dialog für die Auswahl des Datums, ab welchem Änderungen angezeigt werden sollen. Als Standardwert wird das Datum des festgelegten Stichtages herangezogen, welches entweder über die Option "Stichtag festlegen" vergeben ist oder das Datum des letzten Exports ist. Dieses Datum kann aber auf jedes beliebige Datum gesetzt werden. Mit dem Aktualisieren Button neben dem Datumsfeld kann man das Datum wieder auf den festgelegten Stichtag geben. Mit Strg+Klick auf den Aktualisieren Button wird das Datum auf den 01.01.0001 gesetzt.
Standard value is the date of the reference date which can be set with "Set reference date" or is overtaken by the last export. This date can be set on any date. Using the actualisation button beside the date picker the date can be re-set to the reference date.  
Using Ctrl+Click on the actualisation button the date will be set to 01.01.0001.  


[[Image:FW_Transport_Auswahl_Stichtag.PNG|thumb|center|Framework, Dialog Datumsauswahl bei Export]]
[[Image:FW_Transport_Auswahl_Stichtag.PNG|thumb|center|Framework, Datechoose dialog at export]]


Mit "Weiter" erhält man nun eine Liste von den Objekten, die sich nach dem angegebenen Datum geändert haben. Gegliedert ist diese Liste in Objektverwaltung, BI-Center und Formatvorlagen.
"Next" shows a list of elements which have been changed after the selected date. This list is separated in Object Administration, BI-Center an style sheets. It is not possible to select folders extra because these folders are always exported with the associated object.  
Ordner kann man nicht extra anwählen, diese werden immer für die entsprechend gewählten Objekte mit exportiert.


In diesem Fenster werden die Objekte mit dem Datum der letzten Änderung angezeigt und können für den Export an- und abgewählt werden. Über das Kontextmenü auf der linken Spalte gibt es die Möglichkeit alle Objekte anzuwählen, alle Objekte abzuwählen und einen csv Export der Liste zu erstellen. Bei dem Export werden folgende Spalten exportiert: Name, ObjectType, ObjectTypeDetail, ModDate, ModDateDe, Path.
In that dialog objects are displayed with date of the last change and they can be selected or unselected for the export. The context menu on the left column offers the possibility to select or unselect all objects and to generate a .csv export of the list.  
Im unterem Bereich steht ein Suchfeld zur Verfügung. Per Klick auf die Anzahl der Suchergebnisse werden alle Suchergebnisse für den Export aktiviert.
These columns are exported: Name, ObjectType, ObjectTypeDetail, ModDate, ModDateDe, Path. In the below section a search field is available. A click on the number of search results will activate all search results for the export.


[[Image:FW_Transport_Exportliste.PNG|thumb|center|Framework, Liste bei Export mit Kontextmenü]]
[[Image:FW_Transport_Exportliste.PNG|thumb|center|Framework, List at export with context menu]]


Mit "Fertigstellen" muss man den Speicherort und den Namen für das Exportpaket vergeben. Danach wird das Paket erstellt und es gibt eine Information, wenn der Transport abgeschlossen ist.
"Finish" asks for a storage location and name of the export package. Afterwards the package is created and an information is shown when the transport is finished.  


{| {{Bausteindesign1}}
{| {{Bausteindesign1}}
|-
|-
| <span style="color: darkblue;">'''Hinweis'''</span> &nbsp;Folgende Objekttypen sind vom Export/Import ausgeschlossen:
| <span style="color: darkblue;">'''Hint'''</span> &nbsp;These objects are excluded from export/import:
:* AggMasken
:* AggMasks
:* PDFBerichte
:* PDFReports
|}
|}


Line 56: Line 57:
{| {{Bausteindesign1}}
{| {{Bausteindesign1}}
|-
|-
| <span style="color: darkblue;">'''Hinweis'''</span> &nbsp;Folgende Systemobjekte sind vom Export/Import ausgeschlossen:
| <span style="color: darkblue;">'''Hint'''</span> &nbsp;These system objects are excluded from export/import:
:* tb_Benutzer
:* tb_Benutzer
:* tb_BenutzerGruppen
:* tb_BenutzerGruppen
Line 71: Line 72:


===Import===
===Import===
Um einen Import zu starten, die Schaltfläche bei Import aktivieren und "Assistent starten" klicken.
To start an import select import and click "Start assistent"
 
A new dialog will be opened to select the package which should be transferred.  
 
[[Image:FW_Transport_Import_Auswahl.JPG|thumb|center|Framework, Choose transport package]]


Es öffnet sich ein Dialog, in dem das zu transportierende Paket ausgewählt werden muss. Danach gelangt man mit "Weiter" zum nächsten Schritt.
A List of objects is shown which can be imported. Here you have also the possibility to select or unselect objects. The context menu on the left column offers again the possibility to select or unselect all objects.
Additionally, there exists an option to import only objects which already exist in the system. In that overview you can also see the changes which have been made.
Only field changes and dimensions- respectively Lookup-Changes are shown here. Changes like plan related are not shown separately but imported too.  
If you have selected all appropriate objects you can go further with "Next".


[[Image:FW_Transport_Import_Auswahl.JPG|thumb|center|Framework, Transportpaket auswählen]]
[[Image:FW_Transport_Import_Uebersicht.jpg|thumb|center|Framework, Selection of objects which should be imported]]


Es öffnet sich die Liste der Objekte, welche importiert werden können. Es besteht auch hier wieder die Möglichkeit Objekte an- und abzuwählen. Über das Kontextmenü auf der linken Spalte können wieder alle Objekte gleichzeitig abgewählt und angewählt werden. Zusätzlich gibt es die Option, sich nur Objekte zu importieren, welche schon am System vorhanden sind.  
Now system checks are operated to prove if the import can be executed successfully. If that check was successful the message "The model rigidity check provides no errors or inconsistencies" is shown.  
In dieser Übersicht wird auch dargestellt, was sich geändert hat. Hier werden nur Feldänderungen und Dimensions- bzw. LookUp-Änderungen dargestellt. Änderungen wie Planabhängig, etc. werden nicht extra ausgewiesen, aber sehr wohl importiert.
If inconsistencies exist they are displayed. Finish will execute the import.  
Wenn die entsprechenden Objekte ausgewählt wurden gelangt man mit "Weiter" zum nächsten Schritt.


[[Image:FW_Transport_Import_Uebersicht.jpg|thumb|center|Framework, Auswahl der Objekte die importiert werden sollen]]


Es werden nun Systemchecks durchgeführt, ob der Import sauber ausgeführt werden kann. Ist das der Fall bekommt man die Meldung "Die Modellkonstistenzprüfung liefert keine Fehler oder Inkonsistenzen". Hat man Inkonsistenzen, so werden diese angeführt. Mit "Fertigstellen" kann der Import nun ausgeführt werden.  
{| {{Bausteindesign1}}
|-
| <span style="color: darkblue;">'''Hint'''</span> &nbsp;If a mask is imported which already exists in the system it will be overwritten and all existing user views will be deleted.  
|}




{| {{Bausteindesign1}}
{| {{Bausteindesign1}}
|-
|-
| <span style="color: darkblue;">'''Hinweis'''</span> &nbsp;Wenn man während des Imports die Objektverwaltung/BI-Center offen hat, empfiehlt es sich danach ein Refresh der Objektverwaltung zu machen.
| <span style="color: darkblue;">'''Hint'''</span> &nbsp;If the Object Administration or BI-Center is open during the import it is recommended to make a refresh of the Object Administration.
|}
|}


Line 94: Line 103:
{| {{Bausteindesign1}}
{| {{Bausteindesign1}}
|-
|-
| <span style="color: darkblue;">'''Hinweis'''</span> &nbsp;Wenn man am Quellsystem den Namen von Tabellen, usw. ändert und diese dann in das Zielsystem kopieren will, gibt es den Namen/Id Konflikt. Diese Objekte müssen dann zuerst am Zielsystem auf den Namen angepasst werden, um einen Transport durchführen zu können. Bei einem manuellen Import kann man diese Objekte erst gar nicht für den Import anwählen, sie werden aber zur Info aufgelistet.
| <span style="color: darkblue;">'''Hint'''</span> &nbsp;If the name of tables etc. is changed on the source system and then transferred to the target system a name/id conflict will occur.  
These objects have to be renamed to the new name on the target system to execute a transport. At a manual import these objects are not selectable for an import they are just shown for information purposes.  
|}
|}


Line 100: Line 110:
{| {{Bausteindesign1}}
{| {{Bausteindesign1}}
|-
|-
| <span style="color: darkblue;">'''Hinweis'''</span> &nbsp;Importieren von Tabellen mit berechneten Feldern<br>
| <span style="color: darkblue;">'''Hint'''</span> &nbsp;Import of table with calculated measures <br>
Wenn eine Tabelle neu importiert wird kann es auftreten, dass Warnungen im Log entstehen. Das kommt daher, weil das Aktualisieren der Tabelle erst später gemacht wird und die Felder daher nicht erkannt werden. Nach abgeschlossenem Transport sind diese aber korrekt im System und es treten keine Probleme mit den berechneten Feldern auf.
If a new table is imported it is possible that warnings are raised inside the logging. The reason is that an actualisation of the table will be done afterwards and therefore the fields are not identified.  
After a completed transport these calculated measures are transferred correctly and there are no further errors with that calculated measures.  
|}
|}


Line 107: Line 118:


===Import via Batch-Job===
===Import via Batch-Job===
Man kann einen Import auch über einen Batch-Job anstarten. Voraussetzung für das Durchlaufen solcher Importe ist aber, dass die Modellkonsistenzüberprüfungen, welche vor dem tatsächlichen Import durchgeführt werden, ohne Fehler durchlaufen.
It is possible to start an import via a Batch-Job. For these imports it is required that the model rigidity checks are executed successfully before the import.  


Ein Transport kann mit folgender Syntax gestartet werden:
A transport can be started using this syntax: Coplanner.exe "<ServerAdress>" "<Port>" "Transport=<FullyQualifiedFileNameToTransport>"
Coplanner.exe "<ServerAdress>" "<Port>" "Transport=<FullyQualifiedFileNameToTransport>"<br>
<br>
Beispiel:  
Example:
<source lang="winbatch">Coplanner.exe "localhost" "8964" "Transport=c:\temp\testtransport.zip"</source>
<source lang="winbatch">Coplanner.exe "localhost" "8964" "Transport=c:\temp\testtransport.zip"</source>


Der Übertragungsmodus hier ist immer native und kann nicht eingestellt werden.
Transfer mode is always native and can not be changed.  


Nach dem automatisierten Import wird das "PostTransportMacro" sofern es am System zur Verfügung steht ausgeführt. Das Makro muss an keiner bestimmten Stelle in der Struktur in der Objektverwaltung vorhanden sein. In diesem Makro kann man angeben, dass z.B. ein CreateViews ausgeführt wird.
After an automated import the macro "PostTransportMacro" will be executed if available. This macro has not to exist at an specified position inside the Object Administration. You can specify inside this macro for example that a CreateViews is executed.  


Logzeilen des Imports via Batchfile erhalten den Prefix [TRB].
Log-Rows of an import via Batchfile include the prefix [TRB].




Beispiel für ein Batchfile:
Example of a Batchfile:
<source lang="winbatch">
<source lang="winbatch">



Latest revision as of 08:42, 18 August 2016

The Transport is used for a simple transfer of objects between several systems. Only structures are transferred without table content, dimension and so on. For a clean transport it is required that the source system equals the target system before the update and that no more objects are created on the target system.

There is also the possibility to start the import as Batch-Job to execute an automatic transport during the night.

Configuration parameter

SvrConfig.xml

Authentication of the automatic transport occurs always using SSPI with user context of the caller. This user has to be entered in the field TransportUserName in SrvConfig.xml due to security regulations.

Coplanner.exe.config

Visibility of "Transport" and "Checks on the client side" in developer mode on the client is configured by ShowTransportEntries.


Open transport

To open the transport it is necessary to be logged in as Manufacturer, PowerUser or Partner-Mode. You can find the transport in the developer mode accessible via CoPlanner.


Framework, Open transport

Using this button the following dialog is opened.

Framework, Transport dialog


Set reference date

This reference date is used for initial date selection at the export and indicates from which date objects should be considered to transport. This suggestion can be overrided using the assistant. It is recommended to execute the actual reference date if the system was just copied as development system from a productive system.

To set the reference date click 'set reference date' and 'start assistant'. Afterwards a request is shown if you would like to set the actual date as reference date. The reference date will be set at each export automatically to the date and time of the export.


Export

To start an export select Export and click "Start assistent". A new dialog will be opened to select the date from which updates should be displayed. Standard value is the date of the reference date which can be set with "Set reference date" or is overtaken by the last export. This date can be set on any date. Using the actualisation button beside the date picker the date can be re-set to the reference date. Using Ctrl+Click on the actualisation button the date will be set to 01.01.0001.

Framework, Datechoose dialog at export

"Next" shows a list of elements which have been changed after the selected date. This list is separated in Object Administration, BI-Center an style sheets. It is not possible to select folders extra because these folders are always exported with the associated object.

In that dialog objects are displayed with date of the last change and they can be selected or unselected for the export. The context menu on the left column offers the possibility to select or unselect all objects and to generate a .csv export of the list. These columns are exported: Name, ObjectType, ObjectTypeDetail, ModDate, ModDateDe, Path. In the below section a search field is available. A click on the number of search results will activate all search results for the export.

Framework, List at export with context menu

"Finish" asks for a storage location and name of the export package. Afterwards the package is created and an information is shown when the transport is finished.

Hint  These objects are excluded from export/import:
  • AggMasks
  • PDFReports


Hint  These system objects are excluded from export/import:
  • tb_Benutzer
  • tb_BenutzerGruppen
  • tb_BenutzerGruppenDetails
  • sys_Import_History
  • sys_BenutzerGruppenDimDetails
  • sys_Anwendungseigenschaften
  • autoexec
  • sys_ML_Objects
  • sys_ML_Strings
  • sys_Menue


Import

To start an import select import and click "Start assistent"

A new dialog will be opened to select the package which should be transferred.

Framework, Choose transport package

A List of objects is shown which can be imported. Here you have also the possibility to select or unselect objects. The context menu on the left column offers again the possibility to select or unselect all objects. Additionally, there exists an option to import only objects which already exist in the system. In that overview you can also see the changes which have been made. Only field changes and dimensions- respectively Lookup-Changes are shown here. Changes like plan related are not shown separately but imported too. If you have selected all appropriate objects you can go further with "Next".

Framework, Selection of objects which should be imported

Now system checks are operated to prove if the import can be executed successfully. If that check was successful the message "The model rigidity check provides no errors or inconsistencies" is shown. If inconsistencies exist they are displayed. Finish will execute the import.


Hint  If a mask is imported which already exists in the system it will be overwritten and all existing user views will be deleted.


Hint  If the Object Administration or BI-Center is open during the import it is recommended to make a refresh of the Object Administration.


Hint  If the name of tables etc. is changed on the source system and then transferred to the target system a name/id conflict will occur.

These objects have to be renamed to the new name on the target system to execute a transport. At a manual import these objects are not selectable for an import they are just shown for information purposes.


Hint  Import of table with calculated measures

If a new table is imported it is possible that warnings are raised inside the logging. The reason is that an actualisation of the table will be done afterwards and therefore the fields are not identified. After a completed transport these calculated measures are transferred correctly and there are no further errors with that calculated measures.


Import via Batch-Job

It is possible to start an import via a Batch-Job. For these imports it is required that the model rigidity checks are executed successfully before the import.

A transport can be started using this syntax: Coplanner.exe "<ServerAdress>" "<Port>" "Transport=<FullyQualifiedFileNameToTransport>"
Example:

Coplanner.exe "localhost" "8964" "Transport=c:\temp\testtransport.zip"

Transfer mode is always native and can not be changed.

After an automated import the macro "PostTransportMacro" will be executed if available. This macro has not to exist at an specified position inside the Object Administration. You can specify inside this macro for example that a CreateViews is executed.

Log-Rows of an import via Batchfile include the prefix [TRB].


Example of a Batchfile:

@echo off
start /wait Coplanner.exe "localhost" "8964" "Transport=c:\temp\myTransportPackage.zip"
IF %ERRORLEVEL% EQU 0 (
ECHO Transport finished with Exit Code 0
)
IF %ERRORLEVEL% NEQ 0 (
ECHO A problem occurred. See log for details.
ECHO Error: %ERRORLEVEL%
)
IF %ERRORLEVEL% EQU 5 (
ECHO Detail: Could not establish connection to server after 10 retries.
)
IF %ERRORLEVEL% EQU 11 (
ECHO Detail: Transport was cancelled because previous check was not successful. See server log for details.
)
IF %ERRORLEVEL% EQU 15 (
ECHO Detail: Transport was executed but the check of the target system was not successful. See server log for details.
)
pause