Wprowadzenie
Rozwój/Implementacja w systemie opiera się na obiektach deweloperskich, które można wprowadzać i zmieniać w aplikacji Obiekty deweloperskie. Większość typów obiektów deweloperskich można edytować bezpośrednio w graficznym interfejsie użytkownika. Typy obiektów przechowywane w plikach, w szczególności klasy Java, można zmieniać tylko za pomocą zewnętrznych edytorów lub środowisk programistycznych Java (Java IDE) m.in. Eclipse. Powiązany obiekt deweloperski jest blokowany przez użytkownika, a następnie przechowywany przez system w folderze roboczym powiązanego zadania deweloperskiego, dzięki czemu można go zmienić. Aby wprowadzić zmiany w klasach Java, skompilować je i przetestować, odpowiednie środowiska programistyczne wymagają dodatkowych informacji. Obejmują one na przykład
- folder, w którym znajduje się używany JDK
- folder, w którym znajdują się biblioteki Java („lib”)
- lista bibliotek Java, które mają być używane w ścieżce klas
- folder, w którym znajdują się odblokowane klasy Java („classes”)
- folder, w którym znajdują się odblokowane źródła Java („source”)
- folder na dodatkowe ustawienia użytkownika lub projektu oraz pliki tymczasowe
- parametry uruchamiania maszyny JVM i serwera aplikacji
Można użyć narzędzia crtdvf, aby utworzyć niezbędne pliki deweloperskie do rozwoju systemu. Informacje na temat obsługiwanych środowisk programistycznych można znaleźć w artykule Środowiska deweloperskie.
Nie można zagwarantować, czy i w jakim stopniu wygenerowane pliki będą mogły być bez ograniczeń wykorzystywane również w nowszych wersjach poszczególnych produktów, ponieważ rozwój w tym zakresie postępuje bardzo dynamicznie.
Oprócz plików deweloperskich, które są bezpośrednio wykorzystywane przez środowiska programistyczne, narzędzie crtdvf generuje także dodatkowe pliki przydatne podczas pracy w systemie Microsoft Windows, takie jak pliki typu „.lnk” (skróty) oraz strukturę folderów, którą można zintegrować z menu Start systemu Windows.
Jeśli katalog dla danej biblioteki istnieje, ale sam plik biblioteki jest nieobecny, zostanie wyświetlony komunikat, a brakujący plik nie zostanie uwzględniony podczas generowania odpowiednich plików deweloperskich. Dzięki temu unika się sytuacji, w której np. środowisko Eclipse zgłasza brakujące pliki, mimo że nie są one potrzebne.
Jeśli jednak podczas uruchamiania serwera aplikacji przy użyciu tak wygenerowanych plików deweloperskich wystąpią błędy związane z brakującymi klasami (np. ClassDefNotFoundError), należy sprawdzić zawartość katalogu semiramis/lib i – po ewentualnym przywróceniu brakujących plików bibliotecznych – ponownie wygenerować pliki deweloperskie.
Grupa docelowa
- Administratorzy systemu
- Konsultanci techniczni
- Deweloper
Opis
Narzędzie służy do tworzenia plików, które są wymagane do programowania w systemie przy użyciu środowisk programistycznych m.in. Eclipse.
Polecenie
Poniżej znajduje się polecenie wraz ze wszystkimi możliwymi parametrami.
| crtdvf | -releasesDir:<text>-localWorkDir:<tekst>[-release:<text>]-system:<id-1> … -system:<id-n> [-jdkDir:<tekst>] [-createEclipseFiles] [-createNetBeansFiles] [-templatesDir:<text>] [-startMenuDir:<text>] [-suffix:<tekst>] [-jvmParameters:<tekst>] | 
Parametry
Parametry polecenia zostały wyjaśnione w poniższej tabeli. Parametry w nawiasach kwadratowych są opcjonalne, podczas gdy pozostałe są parametrami obowiązkowymi. Gwiazdka (*) może być określona jako symbol zastępczy dla niektórych parametrów, aby móc wyświetlić wszystkie możliwe wartości. Nie wszystkie parametry mogą być określone wielokrotnie; tylko te z następującym dodatkiem do zmiennych parametrów są dozwolone do wielokrotnego określenia: <str-1> … <str-n>.
Parametr musi być wymieniony w całości, np. -f<str>, i w kolejności, w jakiej jest używany w poleceniu.
Wszystkie szczegóły folderów w parametrach wymienionych poniżej odnoszą się do folderów w systemie plików odpowiedniego serwera aplikacji. Pisownia dla systemów plików Windows to C:\\semiramis.
| Parametry | Opis | 
| -releasesDir:<tekst> | Folder, w którym istnieją foldery pod techniczną nazwą wydania , np. V4R2M0, które z kolei zawierają ścieżki serwera plików danego systemu. W tym celu zaleca się zdefiniowanie dysku sieciowego, np. R:\. | 
| -localWorkDir:<tekst> | Lokalny folder roboczy, który powinien zawierać wszystkie podfoldery i zawarte w nich pliki deweloperskie podczas rozwoju systemu, np. C:\cee. | 
| [-release:<tekst>] | Techniczna nazwa wydania, np. V4R4M0, która jest używana do tworzenia podfolderu dla każdego wydania w folderze bazowym określonym za pomocą releasesDir. Umożliwia to równoległe zarządzanie różnymi wersjami na dysku sieciowym. Jeśli podfolder nie jest tworzony po wydaniu, specyfikację można pominąć. | 
| -system:<id-1> … -system:<id-n> | Nazwa systemu, dla którego mają zostać wygenerowane pliki deweloperskie. W przypadku projektów Eclipse, nazwa generowanego projektu zależy od właściwości systemowej:com.cisag.sys.repository.tools.EclipseGenerationUseSystemNameW zależności od jej ustawienia, jako nazwa projektu przyjmowana jest albo nazwa systemu, albo nazwa licencji. Należy również zapoznać się z informacjami zawartymi w rozdziale Instrukcje. | 
| [-jdkDir:<tekst>] | Folder, w którym zainstalowany jest JDK, który ma być używany (JAVA_HOME). Jeśli ten parametr nie zostanie określony, zakładany jest standardowy JDK z dostawy ze zwykłym folderem instalacyjnym. W przypadku projektów Eclipse, które mają zostać utworzone, nazwa folderu instalacyjnego (bez pełnej ścieżki) jest używana jako nazwa JDK skonfigurowanego w Eclipse. | 
| [-createEclipseFiles]. | Po określeniu tego parametru, tworzone są również pliki deweloperskie dla Eclipse. Dla każdego określonego systemu tworzony jest podfolder w folderze określonym parametrem templatesDir. | 
| [-createNetBeansFiles] | W przypadku podania tego parametru generowane są również pliki deweloperskie dla środowiska NetBeans. W folderze określonym za pomocą parametru templatesDir tworzony jest podfolder: /templates/NetBeans. Dla każdego zdefiniowanego systemu tworzony jest w nim dodatkowy podfolder zawierający odpowiednie pliki deweloperskie. | 
| [-templatesDir:<text>] | Folder, w którym zapisywane są wygenerowane szablony plików deweloperskich. Może to być folder na dysku sieciowym, z którego pliki są później kopiowane, lub bezpośrednio lokalny folder docelowy. Ten parametr musi zostać określony, jeśli określono parametr createEclipseFiles. | 
| [-startMenuDir:<text>] | Folder, w którym zapisywane są utworzone pliki i podfoldery dla menu startowego Windows. Po określeniu tego parametru tworzone są skróty Windows (pliki „.lnk”), które mogą być używane do otwierania powłoki CMD systemu Windows. Wszystkie niezbędne parametry (ścieżka do JDK, ścieżka do folderu „semiramis”, ścieżka klas) są również przekazywane, aby serwer aplikacji Semiramis mógł zostać uruchomiony bezpośrednio za pomocą skryptu wsadowego „semiramis.bat”. | 
| [-suffix:<text>] | Suffix dla nazw folderów szablonów i menu Start systemu Windows. Jeśli określisz ten parametr, nazwy folderów szablonów i menu Start systemu Windows zostaną rozszerzone o podaną wartość. | 
| [-jvmParameters:<tekst>] | Parametr startowy dla maszyny wirtualnej Java, która ma zostać uruchomiona z Eclipse za pośrednictwem pliku startowego. Jeśli parametr ten nie zostanie określony, zamiast niego używane są parametry JVM wyświetlane w kokpicie systemowym bieżącego serwera aplikacji, na którym wykonywane jest polecenie. | 
Uprawnienia
System pracuje w oparciu o wielopoziomową koncepcję uprawnień. Możliwości i uprawnienia mogą być nadawane na różnych poziomach:
- Na poziomach dla frameworków i aplikacji nadawane jest uprawnienie, z którym można otwierać aplikację.
- Na poziomach dla jednostek biznesowych nadawane jest uprawnienie, z którym można rejestrować lub tworzyć jednostkę biznesową. Uprawnienia związane z jednostką biznesową obowiązują w obrębie wszystkich aplikacji.
- Dla niektórych aplikacji opracowane zostały specjalne możliwości, które odnoszą się do określonych działań i funkcji. Również dla tych możliwości można nadawać uprawnienia. Na przykład, można nadawać uprawnienie dla specjalnej możliwości wydawania zamówienia.
Z koncepcją uprawnień oraz ogólnymi uprawnieniami związanymi z aplikacjami i jednostkami biznesowymi można zapoznać się w artykule Uprawnienia.
Dla ustaleń uprawnień dla aplikacji Tworzenie plików deweloperskich żadna jednostka biznesowa nie jest istotna. Niemniej, na poziomie systemu operacyjnego są potrzebne uprawnienia do odczytu lub zapisu dla używanych folderów źródłowych lub docelowych.
Instrukcje
Instrukcja tworzenia plików deweloperskich została opisana poniżej jako przykład rozwoju na środowiskach deweloperskich z systemem Microsoft Windows. Dalsze przykłady można znaleźć w dokumentacji Podręcznik programowania.
Systemy plików obu systemów są skonfigurowane w następujący sposób w systemie Windows
System CIS620DT jest powiązanym partnerskim systemem testowym.
Ponadto, szablony plików, które będą później potrzebne programistom na ich lokalnych komputerach, są przechowywane centralnie. Można je następnie skopiować do odpowiednich folderów za pomocą prostych skryptów wsadowych utworzonych przez administratora. Szablon takiego skryptu wsadowego można znaleźć w załączniku do niniejszego dokumentu. Zaleca się wywoływanie skryptu wsadowego poprzez wpis w menu start systemu Windows. W ten sposób każdy programista może aktualizować swoje pliki lokalne zgodnie z wymaganiami bez konieczności samodzielnego uruchamiania narzędzia crtdvf.
W przypadku wprowadzenia zmian w konfiguracji, np. jeśli dodatkowa biblioteka z odpowiedniego folderu semiramis/lib musi zostać zintegrowana po zainstalowaniu aktualizacji oprogramowania w CIS620DV, szablony te można aktualizować centralnie. Następnie programiści wykonują odpowiedni skrypt wsadowy za pośrednictwem menu Start systemu Windows.
Narzędzie crtdvf może utworzyć dwa foldery z szablonami:
- R:\system\install\semiramis – szablony lokalnych plików deweloperskich
- R:\system\install\startmenu – szablony lokalnego menu startowego systemu Windows
Zawartość „R:\system\install\semiramis” jest kopiowana ze skryptu wsadowego do „C:\semiramis”. Zawartość „R:\system\install\startmenu” jest kopiowana ze skryptu wsadowego do menu start systemu Windows.
Na komputerach deweloperów należy utworzyć strukturę na dysku C:\, w której przechowywane są powiązane pliki wymagane lokalnie:
- C:\ – Folder dla wszystkich wydań
- C:\semiramis\V4R2M0 – Folder dla wydania V4R2M0
- C:\semiramis\V4R2M0\CIS620DV\semiramis – folder dla CIS620DV
- C:\semiramis\V4R2M0\CIS620DT\semiramis – folder dla CIS620DV
- C:\semiramis\templatesFolder – dla plików deweloperskich
- C:\semiramis\templates\NetBeans – Folder na pliki programistyczne dla NetBeans IDE
- C:\semiramis\workspaceFolder – dla Eclipse Workspace
Lokalne foldery semiramis zawierają inne foldery, takie jak classes, które służą jako foldery robocze dla środowisk programistycznych.
Folder templates zawiera projekty JBuilder oraz, dla każdego systemu, niezbędne pliki Eclipse w podfolderze.
Wszystkie wygenerowane projekty Eclipse używają współdzielonego folderu C:\semiramis\workspace do zarządzania przestrzenią roboczą Eclipse. W ten sposób metadane generowane przez Eclipse dla klas i bibliotek są generowane tylko raz dla wszystkich systemów. Oszczędza to miejsce i czas podczas aktualizacji.
Wywołanie crtdvf w celu utworzenia struktur w pokazanym tutaj przykładzie wygląda następująco:
crtdvf
-releasesDir:R: 
-localWorkDir:C:\semiramis
-release:V4R2M0
-system:CIS620DV 
-system:CIS620DT
-createEclipseFiles
-createNetBeansFiles
-createJBuilderFiles
-jbuilderDir:R:\system\install\JBuilder
-templatesDir:R:\system\install\semiramis
-startMenuDir:R:\system\install\startmenu
Przykład: skrypt wsadowy
Poniżej znajduje się przykład zawartości pliku wsadowego firmy Microsoft, który kopiuje centralnie zarządzane pliki programistyczne i pliki menu Start systemu Windows na dysk lokalny „C:\”. Należy go dostosować do ścieżek i warunków faktycznie używanych w konkretnym przypadku.
rem
rem update.bat – Aktualizuje lokalne wpisy systemu w menu startowym.
rem
title Update – zamknij uruchomione narzędzia deweloperskie
Zamknij Eclipse, jeśli jest uruchomiony.
pause
echo Kopiuj dane.
echo Utwórz menu startowe.
set MENU=”%ALLUSERSPROFILE%\STARTM~1\Semiramis”
del /S/Q %MENU% >NUL: 2>NUL:
set MENU=”%USERPROFILE%\STARTM~1\Semiramis”
del /S/Q %MENU% >NUL: 2>NUL:
xcopy R:\system\install\startmenu-template %MENU% /E /S /K /I /Y /F >NUL:
xcopy R:\system\install\startmenu %MENU% /E /S /K /I /Y /F >NUL:
echo Utwórz lokalne foldery robocze.
xcopy R:\system\install\semiramis C:\semiramis /E /S /K /I /Y /F >NUL:
call R:\system\install\rplsas.bat „C:\semiramis\templates\*.jpr”
 
                        


