The documentation from version 39.5.17 of PLANTA project can be found in the new PLANTA Online Help.

Server Release Notes

See also: Release Notes: Version Overview
Release Notes of Individual Server Versions:

S 39.5.29 / S 39.5.28 / S 39.5.27 / S 39.5.26 / S 39.5.25 / S 39.5.24 / S 39.5.23 / S 39.5.22 / S 39.5.21 / S 39.5.20 / S 39.5.19 / S 39.5.18 / S 39.5.0 up to S 39.5.17

Beta features BETA are not approved for use in a productive system.

Version S 39.5.29

Attention

  • The installation of Server 39.5.29 requires the configured license file which is stored on the server. See also the first entry under features.

Stable 5

Attention
  • This stable is no overlay but an outright stable. It contains all previous stables and can be installed without having to import another stable first. However, a reversal migration packet must be run after installation. For further information on this, please refer to the readme file for stable 5 in the download directory of server 39.5.29.

Feature

  • Oracle Driver has been updated to OJDBC10. The note in System Requirements for supported DBMS of versions 18c and 19c, that databases for these DBMS versions are to be compatible with jdbc6 therefore is thus omitted. #25355

Bug fixes

  • When using SSL for webservices (ssl_generic_enable =true parameter), the host entered in the web.ini now works correctly. #25358
  • The cause of the javax.persistence.EntityExistsException error message which occurred when deleting resource assignments has been eliminated. #25340

Stable 4

Information
  • For a detailed installation guide for stable 4, please refer to the readme file in the stable 4 download folder.

Bug fixes

  • A class cast exception of PLANTA server thread which occurred during web requests has been fixed.
  • An error which occurred when deleting records which are associated with events, e.g. when deleting particular resources, has been resolved. #25171

Stable 3

Attention
  • The installation procedure for stable 3 deviates from the usual procedure.
  • This stable is a so-called overlay stable. An installation of stable 1 or stable 2 is required for the installation of stable 3 (the basic installation of Server 39.5.29 is not sufficient in this case), which only contains exchange files as well as a migration packet which should be downloaded and run manually.
  • For a detailed installation guide for stable 3, please refer to the readme file in the stable 3 download folder.

Bug fixes

  • Problems with memory leaks, which occurred during the communication of the PLANTA Server via web interfaces, have been resolved. #25003
  • Data events are now also executed when saving via webrequests #25045
  • Manual and automatic reverse postings are now supported in time recording of PLANTA Hybrid in versions from DB 39.5.16 as well. #25220
    • This requires the execution of the AddSuccessorBookingColumn migration packet in the stable 3 folder as well as the exchange of some files.

Stable 2

Bug fixes

  • Installation under Windows no longer fails on some Windows systems if the "Checking if MS C++ Redistributables are valid" step is carried out. #25073

Stable 1

Feature

  • In the case of an exceedance of the license limit, all users are now repeatedly (every 10 minutes) informed on this exceedance by a respective message. #24966

Bug fixes

  • An error, which caused that no data was displayed in the case of some rare, complex file constellations which contained many SQL parameters and a fulfillment in their customizing, has been fixed. #24959
  • In a mere server update (without DB update), it is no longer erroneously presupposed that the system has an outdated customizing which forces Python 3.4.3. #24956

Base

Features

  • The output of license information in the License level field in the System Information module (CTRL+B) now contains specifications on the licensed and currently exhausted volume. If overrun is about to occur, the customer will now be informed on this by respective messages. #7485 #24758 #24737
    • Warning: The components licensed by the customer and their volumes must be specified in the license.conf configuration file and be stored on the server. This step is only obligatory from Server 39.5.29. * If no customer-specific license file is stored, the server accesses the file stored by PLANTA by default with standard values. This file may fall far below the volume licensed by the customer. If you have any questions, please contact your PLANTA consultant.
  • For Linux systems, SAP-dll (nwsaprfcutil.cpython-36m-x86_64-linux-gnu.so) has been added, which is compatible with Python 3.6.0. #24833
  • Greater performance gain in SQL statements and in large amounts of data were achieved. #24894
  • Performance improvement in Drag&Drop operations has been achieved since listboxes are now only checked if they are set to “listbox only”. Incarnations are no longer taken into account. #24936
  • Preparations on the server side for the implementation of the freely programmable events were carried out. They are to offer an option to open arbitrary functions (in Python, Jython, or Java) with fixed parameters and thus to ensure further flexibility of the customizing. #12399

Bug fixes

  • The error, that after closing the client session a thread remains in the storage if the schedule_enabled parameter in the planta_scheduler.conf config file is activated, has been fixed. In the case of Java memory errors, a head dump is now created automatically. #24366
  • In the case of a client crash during scheduling, locks on resources (in the storage & on the database) are reset correctly. #24385
  • Persistent DB sessions are now functional again. #24629 More Information

Migration Packets

Category Packet name Function Type WI
Mandatory packet PortNewLicenseVisualization Enables the visualization of the license information from the license.conf Feature #24758

Version S 39.5.28

Please take the workaround for the problem with persistent database connections into account.

Base

Features

  • The license level information has been extended (used languages, extended specification on PLANTA link and PLANTA portfolio) and outdated information has been removed. #24232
    • In the course of the new database release (DB 39.5.14), the display of the license level has furthermore been included in the System Information module. For further information, click here.
  • The "urllib" Python module can now be used in Jython files. #24082
  • The value range on the DF behavior parameter has been adjusted insofar that symbol 000984 is automatically entered on the respective field and a DF height = 40 is allocated when selecting a DF behavior = "a..." This adjustment serves to optimize the OLE visualization. #23477
  • If you try to install a new server into an existing one, or to carry out a plain DB update installation in a directory which does not contain any server, the installation is now aborted and an error message is displayed. #23836
  • User accounts can temporarily be activated/deactivated by filling the from/to fields. #7193
  • A better error treatment for the installer has been implemented as well as log messages which display precisely when a sub-installer (server/DB, etc.) is terminated. #16511
  • The hibernate version used by PLANTA has been updated. Now version 5.3.8 is used. #23473
  • When inserting a button DI in a data area, the DF behavior of the respective data field is set to "c4" by default. #24128

Bug fixes

  • The input check on the DF behavior field, which is carried out via the value range (due to the removal of input only via listbox in version S 39.5.27), is now complete and correct.
  • If you manually run a migration packet which does not fulfill its dependencies with server 39.5.28, no more error occurs in Venus on Earth or Venus systems < DB39.5.6.
  • If a module which has overwritten its save function is left with unsaved changes and the following Do you want to save?' message is confirmed with Yes, the overwritten save function is opened again instead of the standard save function. #23961
  • No more server error when reading CLOB fields with wrong data. In this case, the data is cut off at the broken character and a log message is written. #24255
  • After recreation of the periods and subsequent replanning, the used values (Used (without child resources) and Used) which were deleted along with the periods are now displayed correctly again.
  • The problem, that when calculating an individual project the free capacity of a resource was not always determined correctly and therefore overload was displayed incorrectly, has been resolved. The successful run of the CreatePeriodOverloadDI migration packet is a requirement for the new, correct calculation to take effect. For details on both the new and the former calculation procedure, see here.
    • If you update to server 39.5.28, a replanning must be carried out mandatorily afterwards in order for the previously saved overload values to be recalculated and the newly implemented field is filled correctly and thus a correct basis for possible further individual calculations.
    • The new calculation procedure can, be turned off in the planta_server.conf durch by setting the DISABLE_SCHED_FIXES = PERIOD_CAPACITY_CALCULATION_INCLUDING_OVERLOADS if required.

Migration Packets

Category Packet name Function Type WI
Mandatory packet CreatePeriodOverloadDI Creates the new DI065353 in DT468 in which overload data is saved Feature #23736

Version S 39.5.27

Please note: If you use a Linux server, version S 39.5.27 GLIB 2.18 or later must be installed when the system is updated.

Please take the workaround for the problem with persistent database connections into account.

Stable 1

Attention
  • The update to server version 39.5.27 Stable 1 does not require a previous update (installation) to the base version. This is already contained in the stable installation.

Bug fixes

  • The problem that web interfaces did not work after the update to server version 39.5.27 Base has been resolved. #23696

Base

Features

  • On the server side, an option to store a mouseover OLE in the Mouseover OLE DI is implemented. The function takes effect for OLEs which are used on buttons (DIs with DF behavior = c1-c5), menu items or on OLE DIs with action (DF behavior = a1-a5). #23192
    • Example: An OLE has been embedded in button xy. Usually the standard OLE stored on the OLE is displayed on this button. If you move the cursor over the button, the mouseover OLE stored on the OLE is displayed.
    • Since the function also contains implementations on the client side, client version S 39.5.26 is required to use this function.
  • On the server side an option to store actions for OLE DIs (DIs with DI class "13"). #23116 #23214
    • This can, e.g., be an alternative for the customizing of buttons with OLEs.
    • Since the function also contains implementations on the client side, client version S 39.5.26 is required to use this function.
    • The customizing required for the function are contained in DB version 39.5.13 by default. With server 39.5.27 the function can also be used in DB versions < DB 13. No values are displayed for selection in the DF behavior listbox. However, they can be entered in the DF behavior field (with the RemoveListboxRestrictionOnDatafieldBehaviour migration packet input only via listbox is disabled for this field) and are interpreted correctly by the program.
  • It is now possible to access ssl encrypted pages (i.e. https://* instead of http://*) in Python via urllib.request.urlopen #21605
  • The hibernate version used by PLANTA has been updated. Now version 5.3.5 is used. #22550
  • The customizing check has been rewritten (due to elevation to hibernate 5.3.5), which speeds up the check during server startup. Furthermore, in the case of systematic errors (many identical errors spread throughout the system) the same errors are only reported up to a maximum of 50 times. #23513
  • The server is now delivered with Python version 3.6.0 by default ( This version does NOT equate to the Python version already existing on the installed system. The Python version in question here is that which is only installed compellingly for the PLANTA server and has no influence on other programs). It requires database version = or > DB 39.5.13. If server 39.5.27 with database < 39.5.13 is installed, the older Python version 3.4.3 is used automatically. #23145
    • In the installer you also have the option to install the server with the older Python version 3.4.3. For this purpose the python.version parameter has been implemented.
  • The auto position is now calculated correctly again if a new record with an auto position is inserted between two existing records. #22369
  • Detailed information on the migration are logged again during installation. This migration information can now be found in an own file in the log directory to enhance the legibility of the actual installer log file #22465
  • In the performance history there are new entries with Event ID = "POSTPROCESS" and Event type = "PP", with the help of which the scheduling afterrun is recorded. In order for the afterrun to be considered in the performance history, the scheduler_enabled parameter must be activated in the planta_scheduler.conf. #22001
  • An extension has been added to the Database Schema does not match System Customizing customizing check message which is displayed when the system is started, in which data tables which have no UUID are listed (if there are any). #22779
    • In the course of this, the problem that the wrong column length in DB: message was not displayed in every case has been resolved.
  • The length of the ppms.ui_set_system_title() parameter for the system title has been increased from 40 to 200. #23135
  • It is now possible to access the web services with encryption (HTTPS). #21645
  • The behavior when filtering on virtual fields with fulfillment rule has been extended. Now you can filter over any desired number of data areas (with real or virtual fields) if they are only connected via & or |. #12373

Bug fixes

  • Debug logging is now possible in the PLANTA web link. #21529
  • Statements generated by the server in MSSQL are now run correctly, also if they contain more parameters than permitted by MSSQL (i.e. more than 2100). #16209 #22780
  • The date delay symbols on the bars are now updated immediately after the calculation of the schedule and not only explicitly after update. #22282
  • The system crash which occurred when trying to structure tasks which are already interlinked has been resolved. Please note that links between summary tasks are not considered. For further information, click here. #22655
  • The Calculation aborted. Reason: resource periods incomplete: resource: x, date: xx.xx.xx is now displayed even if the resource has no periods at all but the Start period and End period fields are filled. #21593
    • Attention: this is a case of data inconsistency which must be resolved actively. For the procedure, see here.
  • The following packets which failed when installing/updating to Venus on Earth have been corrected:

Migration Packets

Category Packet name Function Type WI
Mandatory packet RemoveListboxRestrictionOnDatafieldBehaviour Disables input only via list box for the DF behavior field, to enable the use of listbox values, which have been newly implemented in higher DB versions and are only available from these versions by default, in lower DB versions as well. Feature #23585

Version S 39.5.26

Attention

  • When updating to S 39.5.26 under MSSQL, the AddAndChangeDisLongestPathAndBucketId migration packet is missing, which causes the date scheduling not to work. To resolve the problem,
    • Replace the <server-Verzeichnis>/migration/server/S_39_5_26/WI21970_create_aob_longest_path_di_mssql.sql file by the following file: WI21970_create_aob_longest_path_di_mssql.sql
    • Open customizer.
    • Reload the migration packets in the migration module.
    • Run the AddAndChangeDisLongestPathAndBucketId and AddObjectsForScheduler migration packets again.
    • Restart server.

Stable 3

Bug fixes
  • The auto position is now calculated correctly again if a new record with an auto position is inserted between two existing records. #22369

Stable 2

Bug fixes
  • Under MSSQL, statements generated by the server are now run correctly even if they contain more parameters than permitted by MSSQL. #16209

Stable 1

Bug fixes
  • After running the migration packet RollbackCriticalPathInBar delivered with the stable folder, tasks in schedules are now displayed correctly as critical and uncritical. #22585
  • In case a date field in the SQL parameter is marked as NOT NULL, all NULL values in date fields are treated as if their default value was 0 (which equates to 1/1/1970). #22573

Base

Notes
  • With the S 39.5.26 update packet, the update from Venus on Earth to Venus can be carried out in one step again. #21786 #22147
  • In the installer directory, property templates for different typical installation types (e.g. a reinstallation with existing database or a migration from Venus on Earth to Venus) are made available.
    • These installation types only work in console installations and cannot be used for graphical installation.
    • If they are to be used, please select the appropriate template, copy it to the top area of the installer (overwrite existing .properties file) and then run install_planta_with_template.bat or install_planta_with_template.sh for console installation. #21933

Bug fixes

  • The performance of the scheduling afterrun (scheduler_enabled parameter = 1 in planta_scheduler.conf) has been improved. #21842
  • If no filter is specified for scales, it is now zoomed to the exact point at which all graphical objects (tasks, milestones , links, etc.) are visible. Therefore, a client version C 39.5.16 is required. #17789 #16991
  • The overlappings of tasks of different projects which are connected via soft links is now always displayed. In the course of this, the calculation of DIs 009351, 009352, and 009353 has been removed from scheduling. They are now calculated via value ranges. For this purpose, the VirtualizeOverlappingDIs migration packet must be run. #22195 #21768
  • The incorrect display of links in S 39.5.25 which occurred if the task successor was changed retroactively has been corrected. #21754 #22150
  • If a remaining effort is assigned to a person resource which already has actual effort, (or if an already existing remaining effort is changed), this no longer causes the remaining effort of an assigned department resource to be increased in successive actual postings. Instead, actual postings are subtracted directly from the remaining effort of the person resource as if the person resource had possessed this remaining effort from the beginning. The remaining effort of the assigned department resource is no longer changed by actual postings on this person resource. #22175
  • The error, that when using the MAN load profile manually created actual postings were deleted during scheduling if the resource had an end date and an empty record was inserted between already created loads, has been corrected. #20923
  • The arithmetic overflow error error, which occurred when reporting hours under MSSQL, has been resolved. For this purpose, the FixDT430DT472 migration packet must be run in MSSQL systems. #22183
  • During migration for MSSQL, views are no longer misinterpreted as tables. #22377
  • The error message which occurred when there is no UUID in a data table has now been formulated more specifically. #22276
  • The log message which is displayed when an invalid date is generated during scheduling (later than 12/31/2069), has been formulated in greater detail. #22286
  • The installer now also deletes its manually defined temporary directory if the installation fails. #21640
  • Action IDs of data items which are longer than 8 characters are possible again. For this purpose, the ExtendActionIDinDT411HIS migration packet must be selected. #21977
  • The MaintainIndexOnDt468 migration packet (in S 39.5.25) no longer fails if the index specified in it already exists. #22148
  • The FixPeriodAggregationQuery migration packet (in S 39.5 24) no longer fails when migrating from Venus on Earth. #22053

Migration Packets

Category Packet name Function Type WI
Mandatory packet AddAndChangeDisLongestPathAndBucketId Carries out preparatory changes for the recalculation of the critical path by (BETA feature) Feature #22545
Mandatory packet AddObjectsForScheduler Creates new objects for date scheduling. Feature #22545
Mandatory packet RollbackCriticalPathInBar Resets the calculation of the critical tasks to total float Bugfix #22585
Mandatory packet VirtualizeOverlappingDIs Virtualizes the DIs 009351, 009352, and 009353, which represent the overlappings between tasks with soft links. Bugfix #21768
Mandatory packet ExtendActionIDinDT411HIS Increases the maximum number of characters for DI027481 in DT411_his Bugfix #21977
Mandatory packet FixDT430DT472 Corrects the length of the Position DI in V_DT430_DT472 in MSSQL Bugfix #22183

Version S 39.5.25

Stable 1

Bug fixes
  • Fixed a problem that occurred when processing calendar and resource periods during scheduling, which could lead to an incorrect calculation of durations. #22089

Base

Attention

  • If the update to Server 39.5.25 is to be part of a complete update including database update, the update must not be carried out in one step, but in two individual steps, as described below:
    1. First update the database to the last released DB version, DB 39.5.10 (db.install = yes and server.install = no).
    2. Subsequently update the Server to Release S 39.5.25 (db.install = no and server.install = yes). #21785
Notes
  • The update from Venus on Earth to Venus CANNOT be carried out with the S 39.5.25 update packet.
  • When updating from Venus on Earth to Venus, the first step must necessarily be initiated from the DB 39.5.10 update packet.
  • When updating from Venus to Venus , it is irrelevant whether the two steps are initiated from the DB 39.5.10 or S 39.5.25 update packet. However, the order must be adhered to.

Features

  • BETA the new Longest critical path scheduling parameter, with the help of which tasks are marked which lie on the critical path. For more information, see also the CreateCriticalPathDI migration packet. #21471
  • The new data field behavior *5 for buttons, links, and context menu entries for direct method call of a Python macro module or a module sub-class has been approved. For more information, see also the PortNewDFBehaviourListboxValues migration packet. #21255
  • PLANTA now supports MSSQL Server 2016. See also System Requirements. #21557
  • It is now possible to create links between tasks in different data areas graphically, e.g. between gates and task bars in the project schedule or between program tasks and tasks of the program projects in the program schedule. However, in order to use this option with the mere S 39.5.25 server update, you will have to make customizing adjustments. For further information, see here. #21416
    • The Change bar: link bar parameter must be activated in the following modules:
      • In the Schedule module in data area 052104 for DI061285
      • In the Schedule module in data area 054452 for DI002951
  • Scheduling Performance Improvements #21437
  • By means of keep alive mechanisms with timeout on all connections between the server components, it is avoided that part of a session lasts long beyond its termination. #21054

Bug fixes

  • The sporadically occurring problem, that web interfaces under MSSQL did not use the correct UUID has been resolved. #21528
  • The problem that there were deviating values in Load (Remaining load) and Period (Planned) after replanning has been resolved. This error sporadically occurred in connection with external links if
    • the TA successor had an actual start date,
    • the TA successor had no split, and
    • the link type was SS or ES. #21588
  • Removed the obsolete PortCAPRasterCurves migration packet including the database links. #20794
  • A performance problem in connection with groupings in listboxes has been resolved. #21571
    • Now, an already entered part string is also used as an additional search criterion on these fields in the database query if part string search and copying values are set for different data fields.
    • If copying values is set on the determining data item (DDI) of a grouping area, the part string is passed on to the database query of the source area, given that the source area contains a data field with the DDI of the grouping area.
  • The problem that the FixPeriodAggregationQuery migration packet failed in some source systems when updating to Server 39.5.24 has been resolved. #21476
  • An SQL error which occurred when manually entering the archive_dir interface parameter has been resolved. For a workaround for versions < S 39.5.25, see here. #19622
  • If both a group resource and an individual resource have PM profiles set as load profiles (e.g. PM_MONTH), the posted effort of the individual resources is allocated correctly to the group resource or subtracted from its remaining effort. #21545
  • The crash which occurred during replanning when there was a project that had cycle structures has been resolved. #21646
  • For systems for which the Database changeset field is not filled, no migration is carried out. #21468
  • The problem of deviating values in Load (Remaining load) and Period (Planned) after replanning has been resolved. This problem could occur sporadically in connection with external links if the successor TA had an actual start date or no splitting as well as no SS or ES link type. #21588
  • The DatabaseError: 'de.planta.server.proto.HandlerException: Error while processing request exception has been resolved. #21500
  • When copying records (e.g. via Drag&Drop copying) which contain I-texts, all foreign-language entries are copied as well. #15169
  • Resolved the problem that the server crashed when there were mismatching relations to parent areas and reformulated the error message which occurred in this context in a more informative manner. #21799
  • The problem that under Linux the server is started with the wrong Java version if the start scripts in <Server-Verzeichnis>\yajsw\bat are started from another directory has been resolved. #21242
  • Fixed the Python exception during scheduling which occurred when the checkbox for the Work parameter was activated. #20672

Migration Packets

Category Packet name Function Type WI
Help packet FixLoadPeriodDeviations Corrects possible planned effort deviations between DT472 Load and DT468 Period, which may have come about due to particular constellations when using external links (see also WI19863 in S 39.5.24 and WI21588 in S 39.5.25) . Since the packet uses period summarization and replanning, manual execution should take place within a maintenance window (e.g. following the server update). The packet must be run manually and requires DB 39.5.7. Please consult PLANTA before execution! Feature #21127
Mandatory packet CreateCriticalPathDI Creates new DIs for the longest critical path in DT463 and 824 (DI064921 and DI064924), with the help of which scheduling marks the tasks which lie on the critical path. Feature #21471
Mandatory packet PortNewDFBehaviourListboxValues Adds the new DF behavior *5 to the listbox and to the value range on the DF behavior DI. Feature #21255
Mandatory packet MaintainIndexOnDt468 Adjusts the indexes in DT468 for performance improvement. Feature #21588
Mandatory packet ChangeMissingTrafficlightDialogMessage Corrects the dialog message for missing traffic light DIs. Bugfix #20996
Mandatory packet UpdatePythonIDOfDIsInDT153 Corrects wrong Python IDs in DT153. Bugfix #21191

Version S 39.5.24

Stable 3

Bug fixes
  • Fixed a problem that occurred when processing calendar and resource periods during scheduling, which could lead to an incorrect calculation of durations. #22089

Stable 2

Bug fixes
  • Resolved the observed phenomenon that export/import could not find the JDBC driver for SQL Server. #21935

Stable 1

Bug fixes
  • Resolved the sporadically occurring problem that web interfaces under MSSQL did not use the correct UUID. #21528
  • Functionally corrected the new Critical path parameter. (The newly implemented calculation in the base version on the basis of link float has been reset to the calculation with total float = 0, however, with the exception that single tasks with total float = 0 are not marked as critical.) #19452

Base

Please note

  • When updating with Server 39.5.24 from a Venus-On-Earth system to a Venus system, some migration packets will have to be run again manually. This measure is NOT required for new installations or updates from an existing Venus system to the current server.
  • Therefore, start Server and Client, open the migration module and run the following migration packets (see Completed Packets tab) again manually:
  • Confirm the This packet has already been flagged as completed. Do you really want to run it? message with Yes.
  • Afterwards, in the Server directory delete the target subdirectory and restart the Server.
Features
  • Implemented the option to overwrite menu items. For an example, please see here.
  • Implemented the new Critical Path scheduling parameter with which tasks are marked that are on the critical path. Please also see the CreateCriticalPathDI migration packet.
  • Converted the DB type of Scale to N8 so that decimal places can be displayed. Please also see ChangeDatatypeOfDi001585 migration packet.
  • For new installations, Server migration packets are run by default.
  • From Server version 39.5.24, the DURATION_REM_COUNTDOWN scheduling parameter is activated by default. Thus, the fixed behavior of WI7352 has been rollbacked by setting the DISABLE_SCHED_FIXES = DURATION_REM_COUNTDOWN in the planta_server.conf
    • So now, when using Work reporting date = 0, the remaining duration is reduced for one day everytime scheduling runs.
    • If you do not request this behavior, you can manually deactivate the fix in the planta_server.conf file by commentating the DISABLE_SCHED_FIXES = DURATION_REM_COUNTDOWN line at the end of the file.
  • Server version S 39.5.24 is approved for Windows Server 2016 Core.
  • Optimized the general as well as the scheduling performance due to an optimization of the database interface performance.
  • When installing, you can define whether database synonyms are to be activated or not. Due to performance reasons, these synonyms are deactivated by default. We recommend to keep it that way.
  • Reduced the number of messages sent between Server and Client which may lead to an improved perfomance when starting the Client.
  • Added the new ppms.uvar.context.set_resource_access and ppms.uvar.context.set_project_access Python functions to be able to locally overwrite the variables @32 User's resource (user admin.) and @53 Access rights for cost center structure code.
  • New datafield behaviors for buttons, links and context menu entries allow the direct call of a Python macro module or modul subclass methods.

Bug fixes

  • Fixed the sporadic error of the Client getting stuck when connecting to the Server.
  • Fixed the error that the actual duration of summary tasks was not correctly calculated when using Consider today's date = Checked. The actual duration of summary tasks is now calculated as Actual end minus Actual start or, when there is no Actual end yet, today's date minus Actual start.
  • Resolved the sporadic problem with very high CPU load caused by Java processes (e.g. when canceling the login process of a newly started Client).
  • Colors and symbols in the Symbols module are displayed correctly without the need of filtering again.
  • If there is no filter defined for a link, scheduling uses for the task the calendar which is assigned to the link in order to calculate when a task successor starts.
  • Fixed the error that cyclic task chains have not been recognized and marked anymore since S 39.5.22 but it was scheduled anyway.
  • In case a Java process is terminated unexpectedly under Linux, the planta_components started from it are closed automatically and are not kept in the memory anymore.
  • Fixed an internal error when writing numerous projects during replanning that led to an immense main memory load as loads records were created for a longer period of time in the future as actually defined.
  • If scheduling is terminated for unplanned reasons, e.g. because of an externally forced process interruption or a memory lack, no incomplete data will be written for periods, but all the projects concerned remain in their status as it was before scheduling.
  • Resolved the problem that the remaining effort planned via the WEEK profile was distributed incorrectly in the Planned field in resource period records when there was a link relation to an inactive or archived project.
  • Fixed a memory leak in the Java part of the PLANTA Server when exiting the session which required a server restart.
  • Resolved a problem when exiting a Server session started via headless client.

Migration Packets

Category Packet Name Function Type
Mandatory packet CreateCriticalPathDI Creates DI064739 in DT463 with which tasks are marked by scheduling that are on the critical path. Feature
Mandatory packet FixPeriodAggregationQuery Fixes the problem that when aggregating periods in the SQL statement by the aggregate_periods_from_start_to_end() function it gives out another value than when aggregating by replanning. Please note the following problem und its solution under MSSQL. Feature
Mandatory packet ChangeDatatypeOfDi001585 Converts the DB type of DI001585 in DT406 and DT406_HIS from N2 to N8, so that decimal places are possible now. Feature
Mandatory packet ChangeListboxSecondarySymbolID Corrects the wrong listbox on DI026621 ID secondary symbol. Bug fix
Mandatory packet ExtendActionID Extends the maximum number of characters for DI027481 from 8 to 40. Bug fix

Customizing Hotfix

Migration Packets

Category Packet Name Function Type
Mandatory packet PortMissingTrafficLight Fixes an error regarding the missing DI063727 for systems with C 39.5.X/S 39.5.Y/DB 39.4.4.0 (Venus-On-Earth). Bug fix

Version S 39.5.23

When updating to Server 39.5.23, executing the delivered PortProfilerItexts migration packet will fail. To solve this problem, please execute this packet once more.

Server

Features

  • Implemented a message indicating that when trying to distribute effort of resources with PM load profiles via the Distribute effort function it can only be done manually in the Schedule module.
  • Implemented the option to customize individual date lines (vertically) under the scale. The ChangeUnusedDI026621 migration packet provides the corresponding customizing requirements. For the customizing procedure, please see here.
  • PLANTA Server S 39.5.23 is now approved for the operation systems of Windows Server 2016.
  • Implemented the option to display OLE symbols on the bar. For the required customizing, please see here.
  • Implemented the option to use several values with * for @M variables. Additionally, variables can be solved recursively, which means that in an @G an @M variable can be contained in which @XYZ values can be contained. Both of these features are required to provide certain users per customizing with the access to several departments. If you request such a customizing solution, please get in touch with your PLANTA consultant.
  • When importing data the target directory will be deleted in the server and will be rebuilt according to the newly imported data with the upcoming server restart. This prevents errors caused by probably missing tables/columns, etc. If those errors are found, a message will be displayed at the startup noting that the manual deletion of the target directory may fix this issue.

Bug fixes

  • Fixed session crashes caused by incorrect hyperlink field customizing.
  • Fixed the problem that status reports could not be created after an update to Server 39.5.22. Therefore, please also see ChangeDIsToVirtAndAddVR.
  • Fixed the problem with incorrect utilization diagrams caused by missing values in DI002488.
  • Fixed the problem that changes in the projection DI grid in scale areas led to a crash.
  • Fixed the problem that filtering with manual search list variable did not work reliably.
  • Fixed the problem that the AllowDelayedDurability migration packet could not be executed on MSSQL.

Migration Packets

Category Packet name Function Type
Mandatory packet ChangeUnusedDI026621 Implements a new functionality for DI026621 and executes all the required adjustments. This DI is used to customize individual date lines under the scale. Feature
Mandatory packet ChangeDIsToVirtAndAddVR Converts DI008708 and DI008766 to virtual DIs, adds the required Python value ranges and, thus, fixes the problem that status reports could not be created after an update to 39.5.22. Feature
Mandatory packet PortDistributePMEffortMessage Implements a message which will be displayed when trying to distribute resource effort automatically via a PM load profile. Feature
Mandatory packet MakeSymbolMinWidthServerRelevant Initializes DI001955 Min. width for all symbols on 0 Feature
Mandatory packet SetINITRANS Sets the INITRANS parameter to 5 to prevent ITL shortage deadlocks in Oracle databases. Feature

Customizing Hotfix

Bug fixes

Migration Packets

Category Packet name Function Type
Mandatory packet PortProfilerItexts Adds the missing translations in the Performance Measuring module. Bug fix

Version S 39.5.22

Server

Known issue with workaround

  • Please note: After updating to server S 39.5.22, no more status reports can be created. For problem solution, please click here.

Features

  • New Load Profiles for the manual distribution of effort in time intervals have been implemented. For using the new load profiles, the PortLoadCurves migration packet needs to be executed.
  • The configuration of can be carried out directly via the installer.
  • The monitoring and web service parameters were moved from globals.conf to web.conf.
  • When installing with the help of the installer, an alternative directory is specified for SQL scripts which are carried out when installing the server to assure the launchability of the server.
  • The config_tests.txt file is not required and has been deleted from the subdirectory of the DB installer.
  • For background data fields, the Blank effect type has been added, which causes the margin to be drawn a bit bolder on the left hand side. * This function requires Client version S 39.5.20.
  • Implicit listboxes (DF behavior = li) now behave like explicit listboxes during input (DF behavior = le), i.e. if a manual value only differs with respect to upper/lower case spelling, it is automatically corrected.

Bug fixes

  • The problem, that manual changes to the Remaining load and Planned load fields in the Schedule module affected each other if actual loads were already available or an actual start had already been set, has been resolved.
  • The problem, that in Oracle databases the System Change Number (SCN) could not be read out without access rights to the Oracle DB System View (V$DATABASE), has been resolved.
  • The problem that effort which was posted to summary tasks is not summarized to the project, has been resolved with the EFFORT_AGGREGATION_FOR_COLLECTION_TASKS server fix.
  • ´The error message which was caused by an empty storage DI under MSSQL when unloading hyperlinks has been fixed. The published workaround is no longer required.
  • The error message during installation, system start, or import/export, that in Windows systems without Java installation Javac or Java could not be found, has been resolved
  • To prevent ITL shortage deadlocks in Oracle data bases, the INITRANS parameter was set to 5. As a result, these specific deadlock types can no longer occur and the database performance has been improved slightly, with higher storage allocation in Oracle at the same time.

Migration Packets

Category Packet name Function Type
Optional packet PortLoadCurves Completes the display of new load profiles in the Load Profiles module. Feature
Mandatory packet PortRemainingLoad Ports value ranges for remaining effort to secure compatibility with the new load profiles when using DB 39.4.4.0. Feature
Mandatory packet AddIndexToDt468 Indexes DT468 to improve the performance when this table is accessed. Feature
Mandatory packet MoveDeviationOutOfScheduling Adds value ranges for DI001296 and DI001177 and deletes DIs. Problem in status report creation when using a DB version DB 39.5.9 see Known Issues. Feature
Mandatory packet AddNewEffectTypeBlank Completes the new Blank effect type. Note: This function requires Client version S 39.5.20. Feature
Mandatory packet AllowDelayedDurability Activates the delayed transaction sustainability (DELAYED_DURABILITY) for MSSQL Server up to version 2014. Feature
Mandatory packet CorrectSchemaDefinitionVenus Corrects the TEMP_PERIOD_CHANGES field in the database schema for Oracle, which lead to errors in the processing of the periods when resource names with umlauts were used. Bug fix
Optional packet PortCAPRasterCurves This migration packet is obsolete and will be removed - including all the changes that were made when it has been run - in one of the upcoming Server versions. Feature

Customizing Hotfix

Bug fixes
  • The problem, that in export to Excel percentages were displayed in boolean values, has been resolved.
  • The problem, that the A_ReplaceOldFrameworkCustomizing migration packet did not delete all required data due to a wrong deletion command sequence, has been resolved.
  • The problem, that the system got stuck if several records were to be transferred via PLANTA link under DB 39.4.4.0 and MSSQL Link, has been resolved.

Migration Packets

Category Packet name Function Type
Mandatory packet FixPortfolioModuleCustomizingErrors Resolves problems when opening the Portfolio module under DB 39.4.4.0. Bug fix
Mandatory packet MoveDeviationOutOfScheduling Makes changes which cause the deviation values of DI001296 and DI001177 not to be calculated via scheduling but via the value ranges of these DIs and deletes these DIs from the database. Problem in status report creation when using a DB version DB 39.5.9 see Known Issues. Feature
Mandatory packet LogUnsupportedKoAGrCUVoE Logs all modules that use no longer supported cost type group IDs under DB 39.4.4.0., and fails if some are found. Feature

Version S 39.5.21

The following migration packets fail when updating to version S 39.5.21 with DB 39.5.8: CreateDialogueColumns, AddLogTimestampColumn. The problem will be resolved with DB 39.5.9. Both packets can be set to “completed” manually.

Server

Features
  • The height and width of dialog modules can be set individually.
  • Customizing errors are now also output reliably (Problems in System Customizing module) if individual customizing collides with standard customizing.
  • Update installations (update from 39.4.4.0 and update from 39.5.x with DB 39.4) are now run without the database installer. As a result, new Python files are installed during such updates as well.
  • The automatic installer has been extended by the planta.migration_scripts_to_ignore parameter which offers the option to omit some migration scripts which have been specified for this purpose. This parameter may only be used in consultation with PLANTA.
  • The recording of stack traces has been improved and now also works reliably in the case of storage errors.
  • The Data Dictionary is only created entirely from the database schema if changes are made. As a result, the performance of the server start is improved.
  • New dialog message output type (4) for permanent displays in the status bar as well as a dialog message of this type for restarting the server in order to apply customizing changes which will only be available after server restart, have been implemented. The new type and the dialog message are contained in DB versions from 39.5.9 or after updating the server to S 39.5.21. They are, however, not contained in newly installed 39.5 systems.
  • On auxiliary bar fields, actions can be defined.
  • Regression tests have been outsourced from the customizing and are delivered in their own installer.
  • Changes to system tables of the most current migration iteration from time to time are loaded after the next server start.
  • In the server installation, the headless client is now automatically installed in the <Server-Verzeichnis>\HeadlessClient directory and is operational there.
  • The number of c3P0 helper threads has been increased. In situations in which the database is under load, this can improve the performance of the application.

Bug fixes

  • The problem, that when opening a project multiple times in the same module with scales it was not automatically scrolled to the correct position in the scale, has been resolved.
  • A problem, that occurred when creating data with leading or closing spaces via Python has been resolved.
  • The problem, that the server crashed when saving records from two tables which mutually reference each other via fetch exit, has been resolved.
  • The problem, that the CallOldUuidPacket migration packet failed in some source systems when updating to Server 39.5.20, has been resolved.
  • A possible crash, caused by an invalid customizing of projections and histograms in the same data area, has been resolved. If projections and histograms are customized in the same data area anyway, a Python error message is output when using the module.
  • In Linux systems, no more zombie processes are generated if the PLANTA server directory is deleted by mistake while the server is still running. Note: This procedure is NOT recommended. You should always terminate the PLANTA processes before deleting the server. If the server directory is yet deleted by mistake, despite running server processes, the planta_component process must be canceled manually in master mode.
  • The The server supports a maximum of 2100 parameters... error message that occurred when replanning with more than 2100 projects using MSSQL.
  • The problem, that the client could not be installed when updating to Server 39.5.20, has been resolved. (For a work around, see Known Issues)
  • An XML protocol deviation with regard to message boxes, which could lead to a session blockade of the headless client in the case of customizing errors, has been resolved.
  • The NullPointerException error message that occurred when generating SQL statements, has been resolved.
  • The problem, that the server session sporadically lasted beyond termination of the client, has been resolved.
  • The error message, that occurred when making changes in the Grid field, has been fixed.
  • The problem, that the installation under Windows could be started without administrator rights, has been fixed. Users without administrator rights can start and run the installation correctly via the Run as administrator context menu.

Migration Packets

Category Packet name Function Type
Mandatory packet PortStatusbarMessage Implements a new dialog message output type (4) and the dialog message for the server restart. Feature
Mandatory packet CreateUUIDColumnsInKDB Creates UUIDs in all customer data tables. Feature
Mandatory packet PortNewDialogModuleParameters Ports the dialog module width and dialog module height, to enable individual adjustment of the width and height of dialog modules.
Note: In order to use this feature, Client 39.5.18 is required
Feature
Mandatory packet FixNullValuesInDT447 Corrects NULL values in the OWNER_LICENSE field in DT447 when using DB 39.4.4.0. Bug fix
Mandatory packet AddUUIDColumnsToKDB Adds missing UUIDs in the PLANTA tables DT150-DT154 in the customer database. Bug fix
Mandatory packet UpdatePythonIDofLicenseDIinDT153 Corrects the Python ID of DI008262 License in table DT153 Counter value CDB. Bug fix

Customizing Hotfix

Bug fixes

Migration Packets

Category Packet name Function Type
Mandatory packet FixFixCostAggregation Corrects incorrect I-texts of the SQL statements which have been created with the FixCostAggregation packet. Feature
Mandatory packet FixLicenceLevel Resolves the problem that, when using DB 39.4.4.0, the number of the total used tasks was not calculated correctly in the License Level module if there were projects with Status = 2. Bug fix
Mandatory packet A_PortNewPerformanceHistorySchema Ports schema changes for performance history modules when using DB 39.4.4.0. Feature
Mandatory packet B_PortNewPerformanceHistoryCustomizing Ports the customizing for performance history modules when using DB 39.4.4.0. Feature
Mandatory packet A_PortLatencyToVenusOnEarthSchema Ports schema changes for latency tables when using DB 39.4.4.0. Feature
Mandatory packet B_PortLatencyToVenusOnEarthCustomizing Ports the latency customizing when using DB 39.4.4.0. Feature
Mandatory packet A_PortPythonProfilerToVenusOnEarthSchema Ports schema changes for Python profiler tables when using DB 39.4.4.0. Feature
Mandatory packet B_PortPythonProfilerToVenusOnEarthCustomizing Ports the Python profiler customizing when using DB 39.4.4.0. Feature
Mandatory packet RemoveIncompletePlantaUsers Removes incomplete PLANTA users. Bug fix

Version S 39.5.20

Server

From this server version, there must be a UUID in all data tables. In all existing data tables, these UUIDs are created with the CallOldUuidPacket migration packet.

Features

  • BETA Via the new basic technology for web services, generic REST based interfaces can be accessed.
  • Performance optimizations have been made in various fields, a.o. to the garbage collection, to the schema validation, etc.
  • The behavior of the Reload system customizing menu item and the reload_server() function has been changed and the menu items have been renamed Restart PLANTA service.
    • Note: If you click on the menu item, all open client connections (sessions) are closed. During restart, new client connections are not possible.
  • Automatic numbers, that have been generated but not saved, as well as automatic numbers of deleted records can be used again after resetting the counter.
  • Relational deletion of parent projects in structured projects has been implemented. It is no longer required to resolve the structure (e.g. in a macro), in order to delete a parent project.
  • A Java installation is no longer required, since the PLANTA Server now comes with an own Java version. See also the System Requirements
  • At the end of migration, the migration framework outputs whether all migration packets have run through, or at least one migration packet has failed. In case of critical errors, the installation is canceled.
  • Foreign Key constraints of history tables now have readable names instead of system generated names.
  • Since PLANTA supports Microsoft SQL Server 2014 from S 39.5.19, the MSSQL compatibility mode is set to 100 by the automatic installer upon creation of the DB user.
  • The rights for the installation of the PLANTA user via automatic installer under Oracle has been revised.

Bug fixes

  • The problem, that the installer possibly got stuck when switching back and forth between installation steps, has been resolved.
  • The problem, that the AddServices migration packet erroneously failed, has been resolved.
  • The problem, that errors occurred when installing an MSSQL database under Linux, has been resolved.
  • Code generated data table aliases now use the ID of the data table instead of the variable name. The appended level suffix therefore does not exceed this very limit for variable names that are close to the maximum limit (Oracle: 30 characters). As a result, the ORA-00972: identifier is too long error message no longer occurs in case of long variable names.
  • The Violation of the 'PK_DT503’ PRIMARY KEY restriction. A double key cannot be inserted in the dbo.DT503 object. error message, which occurred when saving module variants in modules that were copied several times, has been fixed.
  • Problems with individual Python packages have been resolved.
  • The input-file parameter in the import scripts of the Customizing Deployment has been removed.
  • The problem, that in special constellations the installation log files were no longer available after installation, has been resolved.

Migration Packets

Category Packet name Function Type
Mandatory packet AddNewDFBehaviours Creates the mi and mo DF behavior in preparation for the next client version. Feature
Mandatory packet CallOldUuidPacket Carries out the CreateUUIDColumnsPacket migration packet, even if it has already been marked as completed in order to finally create UUIDs in all customer tables. Feature

Customizing Hotfix

Features

  • Upon update, the UpdatePeriodAggregationQuery, PortPeriodSchemaChanges, and UpdatePeriodAggregationQuery migration packets now write the current progress in the PlantaServer.log and install.log logfiles.

Migration Packets

Category Packet name Function Type
Mandatory packet RenameMenuitemToRestart Changes the Reload system customizing menu item to Restart PLANTA service. Feature

Version S 39.5.19

Server

Features

  • PLANTA now also supports Java 1.8
  • The use of the MSSQL 2014 version has now been approved (see System Requirements and Platforms).
  • Improved performance through extended indexes in foreign keys.
  • Performance improvement for enquiries with large result sets, e.g. for scheduling via the new hibernate.jdbc.fetch_size and hibernate.jdbc.batch_size parameters that define the number of lines to be transferred for reading or writing.
    • In server update/installation, default values are allocated for these parameters. They can be adjusted individually if necessary.
  • The performance when running migration packets that change large amounts of data, has been improved.
  • During installation (installer), an alternative directory for the migration packets can be specified.
  • When reinstalling a system, no more not-null constraints are created for history tables in Oracle.
  • In a database update, it is no longer the case that all data except that with a customer license is changed, but instead all data with 000 and 011 is replaced.
  • When updating, constraints are first created without validating the data, in order to ensure a complete update. Errors that are detected in the subsequent validation are written in the logfile.
  • Migration packets that are run before a database update are displayed in the Before DB Import area in the Migration packets panel. Migration packets that are run after a database update are displayed in the After DB Import area in the Migration packets panel.
  • The creation of the MIGRATION user and the corresponding person before an update has been improved.
  • The get_data_dictionary() Python function now also processes Python value ranges that only compile error-free within a user session or module construction.
  • For improved identification, DEFAULT constraints in MSSQL now have a name that is readable instead of a name generated by the system.
  • Preparation for configurability of the time fixed up to now from 5min up to disconnection of Server and Client when the user is inactive, in order to enable the specific configuration of the value in an ini file for future Client versions.
  • Numerous improvements have been made to the PLANTA schema generation, e.g. respective names for constraints, generation of drop/create statements for indexes.
  • Improvement of the logging during migration.
  • Service functions now behave more performant if they are opened in a performance-critical loop.

Bug fixes

  • The incorrect CreatePkUuids packet has been corrected.
  • The problem, that the Client did not reconnect after a server crash if the PLANTA Server ran under Windows, has been resolved.
  • The problem, that from S 39.5.16 relogin was no longer possible under Windows after using the Reload system customizing menu item, has been resolved.
  • The crash in connection with the search_record() HQL function, which did not return a string due to a internal customizing error or due to the deletion of the computeSqlValueRange() function, has been resolved.
  • The problem, that migration packets for the current release could not be restarted after the first run if they have previously failed, has been resolved.
  • In the CreatePkUuids migration packet, UUID columns that already exist in the database are ignored and not interpreted as errors.
  • The problem that made it impossible to reconnect to the server after some time has been resolved.
  • The Damage to PRIMARY KEY restriction 'PID472DT472'. A double key cannot be inserted in the dbo.DT472 object. The double key value is (000079, -1638) error message, which occurred in the capacity scheduling of a project with subprojects if one subproject had a higher priority than the main project, has been resolved.
  • The java.io.IOException: The system cannot find the specified path and The "setenv.bat" command is either spelled incorrectly or could not be found. error messages that could occur when installing the monitoring component under Windows have been resolved.
  • The problem, that the server crashed when using HQL with commented out value ranges, has been resolved.
  • A crash that sporadically occurred when the server logfile was activated under Windows has been resolved.
  • The problem, that the session crashed when opening the Utilization by skills module while using MSSQL, has been resolved.
  • The problem, that an update installation failed when using DB 39.4.4.0 under Windows if the installer was stored on another drive than the installed server, has been resolved.
  • The problem, that the end date deviation in the Copy Schedule module is calculated incorrectly, has been resolved.

Migration Packets

Category Packet name Function Type
Mandatory packet UpdateMigrationModuleCustomizing Updates the customizing of the migration packet modules. Feature
Mandatory packet DeleteInvalidNullLicPackage Deletes the invalid migration packet NullLicenseFixGenerator. Bug fix

Customizing Hotfix

Features

Bug fixes

  • The problem, that the FillMigrationruleTable migration packet was displayed twice due to an error in the CleanupPacketData migration packet, has been resolved.
  • The problem, that the FixNotNullConstraints packet failed if tables were contained in the Data Dictionary that did not exist in the database, has been resolved.
  • Database objects that cannot be changed, like e.g. (materialized) views, are skipped in the FixNotNullConstraints migration packet.
  • The following migration packets have been adjusted:
  • The Python error message that occurred after opening Edit Python module subclass on the Python module subclass field in the Modules module if a non-existent path to a Python module subclass was specified, has been resolved.
  • The Caused by: java.sql.SQLDataException: ORA-01841: (entire) year must be between -4713 and +9999 and must not be 0 error message, that occurred when entering hours in a system with two license records, has been resolved.
  • The Python error message that occurred in the Modules module when clicking on the Edit Python macro button, has been fixed.
  • The IE: auto commit behavior was changed when running ServerExecute_11DE45EC, reset is forced! error message that occurred after clicking on the Import from Microsoft Project button and subsequently selecting an XML file in the Microsoft Project module, has been resolved.
  • The problem, that failed migration packets from the Server area were not displayed in the respective module among the failed packets but in the Irrelevant Packets module, has been resolved
  • The problem, that changes of a data field configuration that were made in an external editor were not applied, has been resolved.
  • The problem, that period records were not created correctly after deletion and recreation, has been resolved.
  • The problem, that after deletion, recreation and repeated deletion of periods in the Resource Data Sheet module, the No period records found module was displayed, has been resolved.
  • The problem, that an already checked configuration in the Configuration module of the PLANTA link was checked again after clicking on the Validate configuration button, has been resolved.

Migration Packets

Category Packet name Function Type
Mandatory packet PortPeriodSchemaChanges Ports period schema changes from DB 39.5.7 to DB 39.4.4.0 Bug fix
Mandatory packet PortPeriodCreationDialogMessage Ports the dialog message for the creation of periods when using DB 39.4.4.0 Feature
Mandatory packet PortSubclassMessage Ports the 001827 text constant that is used when creating module subclasses Feature
Mandatory packet FixLoadCreation Corrects the creation of loads when using an Oracle database if more than one license exists Bug fix
Mandatory packet AddMissingAuditDataitems Adds missing DIs for the historization when updating Server releases < S 39.5.11 Bug fix

Warning: Can't find topic CurrentEN.ReleaseNotesS39518 Warning: Can't find topic CurrentEN.ReleaseNotesS3950UpToS39517

         PLANTA project









 
  • Suche in Topic-Namen

  • Suche in Topic-Inhalten
This site is powered by the TWiki collaboration platform Powered by Perl