The following directory structure of the Documents area includes not only files for TeamConnect records, but also all files that control the customized design of your application. <CustomObjects> and <UserNames> are placeholders for your system's custom objects and user names.
Note: Depending on the specific TeamConnect product that you are using, your username may be denied access to folders System, Users, Attachments, object definition folders, and subfolders Rules and Screens beneath each object definition folder.
Top Level | |-- /Attachments | |-- /Accounts | |-- /Appointments | |-- /Contacts | |-- /Expenses | |-- /Histories | |-- /Invoices | |-- /Line Items | |-- /Tasks | |-- /<CustomObjects> ... | |-- /System | |-- /Custom Rules | |-- /HTTPRoot | |-- /Icons | |-- /Legacy Rules | |-- /Libraries | |-- /Logging | |-- /Object Definitions | | |-- /Accounts | | |-- /Appointment | | |-- /Contact | | |-- /Document | | |-- /Expense | | |-- /History | | |-- /Invoice | | |-- /Involved | | |-- /Line Item | | |-- /Task | | |-- /<CustomObjects> ... | |-- /Portal | |-- /Screens | |-- /StartUp | |-- /Tools | |-- /Users | |-- /<UserNames> ...
Caution: To avoid causing problems with your system, do not alter the system folders. The only folders that you should delete, move, or rename are subfolders that you created or the folders of custom object definitions.
This section describes the directory structure so that you can properly manage the files and folders related to records and to your system design. It includes the following topics:
- Top Level Folder
- Automatically Created Folders
For specific details about using the Documents area pages, see the User Guide.
Top Level Folder
At the top level of the TeamConnect document directory structure, there is a folder called Top Level. The Top Level folder contains the following folders:
Subfolders under the Documents Top Level Folder
Contains folders that store attached documents for each record in TeamConnect. Attachments to a specific record can also be accessed through the Documents page of the record.
Note: These folders are automatically created when a user accesses the Documents tab of a record for the first time. The folder is created whether or not a user uploads a document to the corresponding record.
For more details about the Attachments folder, see Attachments Folder.
May contain scripts, custom style sheets, or images to be referenced by custom blocks via HTTP. You can create subfolders under this folder to better organize your items. For more details about the HTTPRoot folder, see HTTPRoot Folder.
Contains several folders that store all of the design information for your application including blocks (sections), Document Generator templates, class files for rules, and so on. For more details about these folders, see System Folder.
Contains a folder for each TeamConnect user where personal files may be stored. When a user clicks the Documents tab, the user's individual Documents folder is automatically displayed.
For more details, see Users Folder.
The Top Level/Attachments folder contains automatically-created folders for all system and custom objects in TeamConnect (except for embedded objects, because their records cannot have attached documents).
Each object's folder contains subfolders for every record created for that specific object. The subfolders are named after the records whose attachments they contain, according to these patterns:
- Folders for system object records, such as Accounts, Contacts, and Expenses, are named using the name of the record and its primary key. For example: David_Hendrikson(44).
- Folders for custom object records, such as claims, litigations, and so on, are named using the Unique ID of the record, according to the Unique ID settings in the object definition. For example, if claims are set to auto-numbering, then the folder is named using the number of the claim record.
You can use the Attachments folder to navigate to the specific attachments of a record; however, you may find it easier to open the record and click its Documents tab.
The Top Level/HTTPRoot folder stores scripts, style sheets, and image files that a custom block or block template can reference through HTTP. You can also create subfolders under this folder to organize your files better.
By default, the Top Level/System folder contains the following folders:
- Authentication (requires manual creation)
- Custom Rules
- Legacy Rules
- Object Definitions
If you use an authentication plug-in with TeamConnect, you must manually create the Top Level/ System/Authentication folder.
Afterward, for each authentication plug-in you plan to use, you must manually create the following sub-folders:
The folder specified by <Plug-in_Name> should be the unique four-letter code specified in the plug- in's class file. Upload the authentication plug-in file to the corresponding authentication plug-in subfolder (for example, Top Level/System/Authentication/NTLM).
Use an authentication plug-in's subfolders as follows:
- classes—Stores necessary Java class files
- pages—Stores necessary XML files
For more information about installing plug-ins and a full description of the Authentication folder's contents, see the specific document for your authentication mechanism, which is provided by Mitratech.
Important: Make sure to replace the folder name examples, AuthMechanism1 or AuthMechanism2, with the unique four letter code specified by the plug-in class file used in your environment.
The Top Level/System/Custom Rules folder is a common folder used for storing Java files that are shared by multiple object definitions. Files in this folder can be referenced by:
- Custom action rules
- Scheduled action rules
- Wizard page actions
- Wizard page transition rules
For example, if three different custom objects require the same Java files for their custom action rules, then you can use this folder to upload the necessary Java files for all three custom objects.
Files in the Custom Rules folder do not become available on the Qualifiers or Action tab of rules. The Custom Rules folder can store only supporting files that may be referenced by custom qualifiers or actions for specific object definitions.
The Top Level/System/Icons folder contains images used by various objects in TeamConnect. You can upload images to this folder to be used as icons that appear in the corner of object records and in the button for the record on the TeamConnect task bar.
The images in this folder that are in web-friendly formats (JPG, GIF, and so on) are listed in the Icon Image File drop-down list on the General page of all object definitions.
If no image files are stored in this folder, each object will use its default image.
The Top Level/System/Legacy Rules folder is used for storing any Java class files for rules that were written for TeamConnect version 1.6.x. Previously, each object definition had its own Legacy Rules folder for storing these files. This centralized folder allows the files to be shared by multiple objects, instead of being uploaded to each individual object definition. This folder is not applicable if you do not have any TeamConnect version 1.6.x rules.
The Top Level/System/Libraries folder allows developers to deploy JAR files outside of the TeamConnect.war file or the WEB-INF/lib folder to implement a custom solution. The class loader that loads classes from this folder is the parent of the following types of custom Java code:
- Custom appenders
- Custom Java blocks
- Custom portlets
- Custom tools
- Automated qualifiers
- Automated actions
- Scheduled actions
- Wizard initializers
- Wizard page transitions
The JAR files uploaded to this folder do not override the ones included in the TeamConnect WAR file or those that are present in the application server's classpath.
It is not necessary to restart TeamConnect if new JAR files are uploaded to the Libraries folder because they are automatically added to the class path. However, if JAR files are updated, you must restart TeamConnect in order for the changes to be applied.
The Top Level/System/Logging folder contains any Java class files used for modifying the log level that triggers a log message to be sent via email.
By default, the log defined by an SMTP appender is emailed when an event with the level of Error is generated. However, you can set the appender to email the log at a different log level.
The Top Level/System/Object Definitions folder contains subfolders for each object definitions, including system object and custom object definitions. Each subfolder contains all of the files needed for the corresponding object's design, such as blocks, Document Generator templates, rule class files, and so on. The subfolders for each object are automatically created when the object is saved.
The following folders are found in each system object's folder—Document Templates, Rules, Screens, and Template Folders.
Two additional folders, named after the Involved object, are also found in the folder of any custom object that has these objects defined for it.
Object Definition Subfolders
Contains the document templates that have been created and uploaded for use with the Document Generator.
Contains three subfolders:
Contains all uploaded XML files that can be used for blocks for the corresponding object. They are available on the object definition's Custom Blocks tab.
Contains the directory structures, including all necessary documents, that have been created for use with object templates.
When a record is created using a template or wizard, the directory structure for the template that is stored in Template Folders is automatically added to the Attachments folder of the record.
(Custom objects only) Contains the folders Document Templates, Rules, Screens, and Template Folders for the Involved Object.
The Top Level/System/Portal folder allows you to add custom content to portal panes on your users' home pages. Files placed in this folder can be used to obtain external data to be displayed in a portal pane.
The Top Level/System/Screens folder stores the following files that apply a common look and feel to system and custom blocks:
- template.xml--An XML template that defines the layout of block headers and footers
- global.css--A global cascading style sheet that contains definitions used by template.xml and custom blocks
The Top Level/System/StartUp folder allows developers to deploy class files that should be executed when TeamConnect starts. This can be useful for installation scripts, to initialize TeamConnect using custom code, and to check consistency in the application for the session.
Important: You should limit access to the StartUp folder to prevent the addition of malicious code.
To enable the execution of custom code in the StartUp folder, you must set the app.runStartUp application parameter to YES in the web.xml file.
If you want to stop the execution of all class files in the StartUp folder in the event of any runtime errors or exceptions, you can set the app.runStartUp.failOnError parameter to YES.
TeamConnect finishes its standard initialization before it executes the class files in the StartUp folder. Your custom code can affect TeamConnect's initialization after the standard initialization and before TeamConnect becomes available via a web browser.
This start up functionality only supports Java class files. TeamConnect ignores non-Java class files and any sub-folders to the StartUp folder. However, you can include JAR files and reference to them from your class files. You can also upload Java classes that may be referenced from the executing class.
If multiple class files are present in the StartUp folder, TeamConnect executes them according to the alphabetical order of the file names.
The Top Level/System/Tools folder contains a subfolder for each custom tool that has been uploaded to TeamConnect. Each custom tool's folder contains two subfolders:
- classes—Stores necessary Java class files
- resource—Stores necessary XML files
You must manually create these folders when you create a custom tool.
The Top Level/Users folder contains a <username> subfolder for each user where their personal files may be stored. When a user selects Documents from the Go to menu, their personal Top Level/ Users/<UserName> folder opens by default. Each user can create subfolders in their personal folder, provided that they have been given the rights to do so.