Working with Projects and Libraries

When you are working in Design Studio you are always working with projects and you may have any number of projects open at any time. The purpose of a project is to develop a library containing a collection of robots and the files required by these robots. Typically, you create a project for each separate usage of robots, for example one project for each application in your company that uses robots. Two projects cannot share files, e.g. a type always belongs to one project or in other words the scope of a type is the project it belongs to.

A project is a folder located anywhere in the file system. The project folder can have any name you want, but must contain the following sub-folder:

Library — this folder contains the library of the project

In the Library folder, you should place all robot files, type files, and other files used by the robots, such as files that are loaded from the robot library. You can organize the files in the Library folder in any way you want, using sub-folders as appropriate.

The example below shows a project folder named NewsAndStocksProject for a project that develops a robot library for extracting news from news sites and stock quotes from stock sites.


NewsAndStockProject/
   Library/
      News/
         CNN.robot
         Reuters.robot
         News.type
      Stocks/
         Nasdaq.robot
         NYSE.robot
         Stocks.type

An Example of a Project for News Extraction


As you can see, the project has a Library folder with robot and type files divided into News and Stocks sub-folders.

When you close Design Studio it will remember which projects and files were open and the next time you open Design Studio it will open these again.

Current Project

In Design Studio you can work with many projects, but the other applications in Kapow Katalyst, e.g. RoboServer, always works on a specific project, referred to as the current project. When you install Kapow Katalyst, a default project will be created for you and selected as current. If you open Design Studio the first time this current project will be the only opened project. If you close all projects before you close Design Studio then the next time you open Design Studio again it will open the selected current project.

You can change the current project selection by opening the Settings application, specifying the path to your new project folder in the Current Project Folder property in the "Project" tab, and then clicking OK to close Settings.

Manipulating Robot Projects

To create a new project you simply choose the "New Project..." from the File menu. This will open the New Project dialog as shown below. Here you enter a name and location for your new project. When you press Finish on the dialog a new project will be created in the location you specified where the name of the project folder will be the name you gave for the project. If you entered the name MyProject and the location: C:/KapowProjects then the following folders will be created:

c:/KapowProjects/MyProject
c:/KapowProjects/MyProject/Library

To open an existing choose the "Open Project..." from the File menu and choose the project folder of your existing project in the Open Project dialog that opens up.

To close a project again right click on the project in the Projects View and choose Close from the popup menu. You can also close all projects from the File menu.

Robot Library Files

When you want to distribute and deploy your robot library in a runtime environment, such as RoboServer, you can pack the robot library into a single file called a robot library file. You can do this by choosing Create Robot Library File from the Tools menu in Design Studio. This will pack together all files contained in the robot library of the file in the current editor and save the result as a single file having a name that you choose. Note that you should save all your open files, such as robots and types, before doing this, to get the latest changes into the robot library file. You can then make the robot library file available to RoboServer and execute robots from the robot library. See the RoboServer User's Guide for more information on how to do this.

As mentioned, a robot library may contain files used by the robots. You can load a page from a file in the robot library that the robot belongs to. This is done using the special non-standard protocol named library. For example, if the file MyPage.html is located in the folder MyFolder in the robot library folder, you can load from that file using this URL:

library:/MyFolder/MyPage.html

This will work no matter whether the robot library is represented as a folder or has been packed into a robot library file.