Report Designer Server Manager Document: RDServer Manual Creation Date: 2004 /09/30 Last Updated: 2006 /03/03 ㈜엠투소프트 -1- CONTENTS 1. SERVER STARTUP AND STOP ................................................................................................................................................... 4 Manager Port Setting .................................................................................................................................................... 4 Daemon Version Server Startup .................................................................................................................................. 4 Connecting via Editor .................................................................................................................................................... 6 Server Stop ..................................................................................................................................................................... 7 2. MANAGER LOGIN ................................................................................................................................................................... 8 Manager Startup ............................................................................................................................................................ 8 Administrator Login ....................................................................................................................................................... 8 3. SERVER MANAGEMENT WINDOW .......................................................................................................................................... 11 4. STATUS BAR ........................................................................................................................................................................ 14 5. TOOLBAR ............................................................................................................................................................................. 15 6. SCHEDULING........................................................................................................................................................................ 17 Scheduling Server ........................................................................................................................................................ 17 Starting Scheduling Server ......................................................................................................................................... 17 Registering New Scheduling Task ............................................................................................................................. 18 Creating a Template for Scheduling Mail Notification as in HTML ........................................................................ 22 View Scheduling List.................................................................................................................................................... 24 View Scheduling Result Files ...................................................................................................................................... 26 Register Scheduling Files ............................................................................................................................................ 26 Scheduling Tables ........................................................................................................................................................ 29 Control Scheduling Service ......................................................................................................................................... 30 Scheduling Mail Delivery ............................................................................................................................................. 31 Stop Scheduling Server ............................................................................................................................................... 33 7. MONITORING ....................................................................................................................................................................... 34 Memory Usage ............................................................................................................................................................. 34 Information Box ....................................................................................................................................................... 34 Memory Usage Graph.............................................................................................................................................. 35 Concurrent User Monitoring ....................................................................................................................................... 35 Status Blocks ............................................................................................................................................................ 36 Concurrent User Graph ........................................................................................................................................... 36 Connection Monitoring ................................................................................................................................................ 36 Status Blocks ............................................................................................................................................................ 37 Connection Graph .................................................................................................................................................... 37 Service File Monitoring ................................................................................................................................................ 37 Show All ........................................................................................................................................................................ 38 Arrangement............................................................................................................................................................. 38 8. VIEW LOGS.......................................................................................................................................................................... 40 Report User Log ........................................................................................................................................................... 40 Scheduling Log ............................................................................................................................................................. 40 Error Log ....................................................................................................................................................................... 40 Database Connection Log ........................................................................................................................................... 41 9. SYSTEM MANAGEMENT ......................................................................................................................................................... 42 Server Update .............................................................................................................................................................. 42 Update ....................................................................................................................................................................... 42 Update Recovery...................................................................................................................................................... 45 Backup ........................................................................................................................................................................... 47 Backup ....................................................................................................................................................................... 47 Backup Recovery...................................................................................................................................................... 49 ㈜엠투소프트 -2- Data Caching ................................................................................................................................................................ 52 Server Management Table ......................................................................................................................................... 53 Report Security ............................................................................................................................................................ 56 Add Group ................................................................................................................................................................. 56 Add User ................................................................................................................................................................... 57 10. ENVIRONMENT SETTINGS................................................................................................................................................... 59 JDBC Services ............................................................................................................................................................... 59 RDServer Pool .......................................................................................................................................................... 59 WAS Pool................................................................................................................................................................... 63 Scheduling and Other Environments......................................................................................................................... 65 Path ........................................................................................................................................................................... 66 Mail ............................................................................................................................................................................ 67 Web Server ............................................................................................................................................................... 68 Schedule.................................................................................................................................................................... 68 Log ................................................................................................................................................................................. 69 Error Log ................................................................................................................................................................... 70 Report User Log ....................................................................................................................................................... 71 Update and Backup ..................................................................................................................................................... 71 Update ....................................................................................................................................................................... 72 Backup ....................................................................................................................................................................... 73 Caching ......................................................................................................................................................................... 73 Environment ............................................................................................................................................................. 74 File ............................................................................................................................................................................. 74 Scheduling ................................................................................................................................................................ 75 JVM ............................................................................................................................................................................ 75 SAP ................................................................................................................................................................................ 75 Innorules ....................................................................................................................................................................... 76 11. ABOUT & EXIT .................................................................................................................................................................. 78 About ............................................................................................................................................................................. 78 Exit ................................................................................................................................................................................. 78 11. OTHERS (DESCRIPTION ON FUNCTIONS) ............................................................................................................................ 79 Caching Function ......................................................................................................................................................... 79 Tip on improving the Reporting Speed of RDServer............................................................................................... 81 Using the Report Session............................................................................................................................................ 81 ㈜엠투소프트 -3- 1. Server startup and stop Manager Port Setting RDServer can be categorized as daemon and servlet version, which requires a default service port and server manager port (for communicating with the server core) to operate. 8089 is being used for the default manager port, but if it’s used by another application, you may change it from the following file. Daemon Version Modify the port number defined at manager.port from startup (for Windows) or startup.sh (for Unix/Linux) by editing the file. Servlet Version Open RDServer/rdagent.jsp, modify the port number specified at managerport. private static int managerport = 8089; Servlet version server starts automatically by calling the following server-installed URL after booting its WAS. The default service port is the same as the port used by the WAS. http://serverip:port/RDServer/rdagent.jsp The above URL is called when, 1) Attempting to use a server database connection by viewer or editor. 2) Calling http://serverip:port/RDServer/rdagent.jsp via web browser. Note) Running RDServer/bin/startup.sh or startup.bat is only required for daemon version. Running this file when installing a servlet version can result a binding exception of a manager port. Daemon Version Server Startup Can be run automatically once the setup is done by an installer, but you may run RDServer/startup.bat or startup.sh if you want to start manually. The default service port is 8282. (For Unix and Linux: Run RDServer/bin/startup.sh after giving an authority of chmod +x) The following is an example of normal startup. ㈜엠투소프트 -4- Class Path setting and execution option Set as follow by opening the startup.bat or startup.sh: Adding the class path Only the RD Server relevant jar or oracle JDBC driver is added to the class path in the script executing the server, so if you want to access to the other jar or database, you must add in the corresponding jar files to the class path. Following is an example. 1) Copy a class file below the RDServer/lib. 2) Edit the startup.bat or startup.sh scripts as follow: Windows) RDServLib=.;rdserver.jar;rdmaster.jar;rdmanager.jar;%RDServLib%\added class name.jar UNIX, Linux) RDSERVERLIB=$RDSERVER_HOME/lib:./rdserver.jar:./rdmaster.jar:./rdmanager.jar:. ./lib/classes12.jar:$RDSERVER_HOME/lib/added class name.jar Execution option cycle java -Dfile.encoding=EUC_KR -classpath "%RDServLib%" m2soft.rdsystem.server.Server debug server.port=8282 manager.port=8089 oencoding=false userpool=false runschedule=false usesessionkey=false Optional Keys Descriptions Debug Check to see the debugging information when driving and executing the server. server.port Server driving port manager.port Server manager port ㈜엠투소프트 -5- oencoding userpool Whether to encode when patching the data (true or false): Usually it is true if the user environment is set as Hangul O.S and database charset is set as UTF-8 or ASCII (8859_1). Database charset can be set in the db.properties charset. Whether to use the user-defined connection pool (true or false) (default setting: False) runschedule Whether to start the scheduling server when starting the server (true or false) (default setting: False) usesessionkey Whether to check a session when connecting to server from OCX (true or false) (default setting: False) Connecting via Editor Figure (1) Database > Database Connection Dialog Write RDServer installed server IP and port at RDAgent path field like the figure and type in a user ID and password which has an authority of services. If the account information is successfully checked out by RDServer, You may see the list of services at “Registered Service Names” box. Select a service which you want to use and click on “Connect” to see the message, figure (2). Note: Refer to System Management – Report Security for details on adding a user ID ㈜엠투소프트 -6- Figure (2) a message to show the success of database connection. Server Stop For Windows: Server would stop by closing the executing window with a following message. Figure (3) An example of successfully stopping the server. For Unix/Linux: Run RDServer/bin/shutdown.sh after modifying it as chmod +x (Executing mode) > shutdown.sh Running shutdown.sh like above would stop the currently operating server. If it’s not stopped, terminate the server by checking pid from RDServer/demon.pid with a kill command. >kill -9 pid ㈜엠투소프트 -7- 2. Manager Login Manager Startup For Windows: RDServer/bin/admin.bat > admin.bat Figure (1) an example of normal manager startup. For Unix/Linux: Give an authority to RDServer/bin/admin.sh by executing chmod +x then run. >admin.sh Note) Recommended JDK or JRE version. jdk1.3.0, jdk1.4.2_05, jdk1.5 A bug of malfunctioning on shortcut keys with the following JDK version has been found. >> JRE “1.4.2_06” version. (Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_06-b03) Java HotSpot(TM) Client VM (build 1.4.2_06-b03, mixed mode)) Administrator Login To manage RDServer, user must go through the user authentication step. Doubleclicking on a registered RDServer icon from the left server tree would pop up a login window like the figure (2). The default user account is admin/admin (ID/Password), you may change the password of the account from System Management – Report Security – Adding User section. Deleting the admin account is not permitted. On the login dialog, you may check on “Automatic Login” box to avoid typing in the same password every time when you try to log in. ㈜엠투소프트 -8- Figure (2) Checking on an automatic login box If you log in server as an administrator group member, all menus and toolbar icons are enabled, hence become accessible. However, the monitoring and toolbar menus are disabled for user group member. Scheduling menu becomes enabled only when scheduler is set to be active by its setting. Note) scheduling option is referenced on server startup. RD scheduler would be started when it’s set like the following in RDServer/rdagent.jsp in servlet version. Private static Boolean schedule = true; ㈜엠투소프트 -9- Figure (3) first screen when logging in successfully You can cancel automatic login by selecting “Cancel automatic login” from popup menu which would appear by right clicking on a server icon. Figure (4) Cancel automatic login ㈜엠투소프트 - 10 - 3. Server Management Window The left window is a management window for listing servers. Here, you can register and manage servers. Registering server can be either servlet or daemon version. For switching to another server after already logged into some server, simply double click on the server icon you want to log. Figure (1) Server management window Figure (2) when right clicking on a Server icon ㈜엠투소프트 - 11 - Figure (3) Server registration window Note) Manager Port: Independent Server (Daemon Version): Modify a port number defined at manager.port of startup.bat or startup.sh. WAS (Servlet Version): Modify a port number defined at managerport in RDServer/rdagent.jsp file. Service Port: A service port used to access rdagent.jsp. If you would like to directly modify the RDAgent URL path, you can do so by clicking on a “…” button located besides a service port field. ㈜엠투소프트 - 12 - Figure (4) a change in a list after registering a new server Figure (5) Deleting a registered server ㈜엠투소프트 - 13 - 4. Status Bar Status bar informs a user on various information while managing server. Figure (1) a message to show the login success ㈜엠투소프트 - 14 - 5. Toolbar Manager Toolbar is composed by following collections. The toolbar ensures the fast access to some major management functions. The following is the description on each of menu from left to right. 1. View registered scheduling tasks (Only enabled when scheduler is started. The menu can be accessed via “Scheduling – View List.”) 2. Memory monitoring (Monitoring – memory usage) 3. View report user log (View Log – Report User Log) 4. Report user (System Management – Report Security - Group) 5. Server update (System Management – Server Update) 6. View server information You can see the detailed information of currently operating server. It is provided by one of menus on the toolbar. ㈜엠투소프트 - 15 - Various information on type of RDServer and OS, license, report service port and other JVM settings is provided. From the information panel, you can check the current type of RDServer (Either servlet or daemon version), OS type, license, report service port and other JVM settings. 7. Disconnect Disconnect the currently connected server. ㈜엠투소프트 - 16 - 6. Scheduling Scheduling Server Scheduling defines its meaning as a function which produces a data file at a specific time after registering a report created by RDEditor to a RD scheduling server. <Check list before the execution> Check that the installed RDServer IP is not registered as one of spam IP addresses for a use of mail notification function. Confirm that db.properties and rd.properties files are under RDServer/conf directory and all of the database settings are correct. JDK 1.3 at least. (Versions under 1.3 can not run a RD scheduler). <Handling procedures> Scheduling task can be registered through an RDServer Manager – Scheduling menu. Then, the activated scheduling server would handle such registered tasks and produce result files (report and data files) at a specific server location. Mail notification can be configured via a scheduling option. Scheduling Server Creating report files Registering a scheduling task Notifying by email Starting Scheduling Server Servlet version: RD scheduler would be started automatically when rdagent.jsp is first called with schedule=true configured. private static boolean schedule = true; Daemon version: RD scheduler would be started automatically by editing a scheduling flag value in the server startup script. Default is set to false. startup.bat : set RDSERVER_SCHEDULER=true startup.sh: RDSERVER_SCHEDULER=true ㈜엠투소프트 - 17 - Registering New Scheduling Task Choose “Scheduling/New Entry.” Note) if the scheduling menus are all disabled, this means that the current RDServer is a lite version, not configured for RD scheduler to be booted or its service database is not supported for scheduling. Scheduling Name Enter scheduling task name. The maximum input is 40 characters. ㈜엠투소프트 Scheduling Target Document - 18 - Choose one of registered MRD documents for scheduling. You can view the list by clicking on a search button. If no MRD document is registered on server, first upload a MRD document which uses an RDAgent connection via a file registering menu. Executing Parameters * Supported parameters: /rp, /rserverprn, /rpdrv Enter /rp parameter values needed for a scheduling document. The maximum is allowed for 512 characters. Enter series of parameters with a space as a delimiter (Use square brackets [] if data contains a space in itself). Alternatively, you can input a JSP or ASP URL path which throws a value of parameters. An example of /rp parameter Using directly parameters entered Example of input) /rp 20021218 20021230 Example of input) http://server:port/rpparam.jsp Using output result by an user defined JSP or ASP as a parameter value Entering multi-parameters (; delimiter) Output result must be the same form as if it’s inputted directly by a user. JSP example) out.print("/rp 20021218 20021230"); ASP example) Response.Write("/rp 20021218 20021230"); Input example) /rp 1 2;/rp 3 4 Use: use when there is a need for producing different result files by one document for each which applied with a different parameter. If recipients are different for each of result, enter them with ‘;’ as a delimiter. An example of /rserverprn,/rpdrv If you select one of server printers after checking on a server printing check box, the according parameter value would be automatically inserted to an input window (server printing function is only available for Windows). ㈜엠투소프트 - 19 - Name for scheduling result file: Enter a name of result file which would be produced after scheduling. The result file would be created as HTML. <Note> If you want to specify a directory for result files, you can accomplish this by entering the relative path with the name of result file. The maximum value is allowed for 40 characters. eg) /myfolder/myDoc >> A folder “myfolder” would be created with a resulting file “myDoc_<Serial Number>.html” in it. Note) The folder “myfolder” would be created according to JSP root directory as a directory basis. Reference index of executing parameter: When you want to create a scheduled result file with value of parameter added to the name, input parameter index to be referenced at /rp. The index starts with 1 and the maximum value is 99. If you give /rp [1] [myid] as an executing parameter, the resulting file would be created as <Date>_myid.html in case the parameter index was inputted as 2. Server printing Server printing option is valid only when server OS is Windows. By activating the option, you can send scheduled result files to a chosen printer. You can select a printer after you check on a server printing check box. Basis date for scheduling execution (Start date): Input till an hour detail for scheduling start date (24 hours basis). Executing date for scheduling: Execute once at a defined date: Run once at a given date. Execute every week: Run at a given week day and given time of every week. Execute every month: Run at a given day of every month. ㈜엠투소프트 - 20 - Execute every day: Run at a given time of every day from the start date. Execute every hour: Run at a given minute of every hour. Mail delivering option You may input a mail recipient after configuring the mail delivering option for scheduling. If there is more than one recipient, you can list them with a semi-colon (;) as a delimiter. The maximum input value allowed is 512 characters. If a mailing list is brought by calling a JSP or ASP, input a URL path like an example followed. eg) http://ip:port/schedulemaillist.jsp The output result must be the same form as if it’s inputted directly by a user. JSP) out.print("[email protected];[email protected];"); ASP) Response.Write("[email protected];[email protected] "); <Note> for a case of entering multi-parameter value at “Executing Parameters”, use a semi-colon (;) as a delimiter for listing email addresses to its recipient input. Emails would be sent out by mapping each of the addresses to its according /rp value as in the same order. If there is no email address matched with an executing parameter, email for that particular entry would not be sent out. Mail delivery format: Choose HTML, if you want to embed the contents as HTML form or URL LINK to link the location of scheduled result file on mail delivery. - Refer to “Creating scheduling mail notification mail template” (HTML) if you have chosen for URL link. eg) A case when you sent an email as HTML formatted (As it would be shown in Outlook Express by activeX control). ㈜엠투소프트 - 21 - <Note> * If you have chosen to send a notification mail as HTML, the receiver mail program has to be set with a low security level in order to view the contents of the mail. eg) For Outlook Express: Tools/Options/Security – Internet Area (Security level is low and functionality is high) * If the scheduling didn’t run properly, you can restart or pause it via scheduling/service control menu. * Even if the scheduling is already started for a scheduled file, the result file would not be created at once depending on the amounts of query and data. If you go to “Log/Scheduling Logs”, you can see the current progressing status related to the scheduling. Creating a Template for Scheduling Mail Notification as in HTML ① Creating a template Create a HTML template by adding $RDPARAM to a location where scheduling document would be linked. An example of HTML) mailhtm.html <html><body> <table> ㈜엠투소프트 - 22 - <tr><td>RDServer Scheduling – Weekly Sales Report</td></tr> <tr><td><a href="$RDPARAM">Click</a> to view the document!!</td></tr> </table> </body> </html> ② Input an absolute path at ‘Mail Sending HTML Form’ from ‘Environment Settings – Scheduling and Other Environments – Path’ menu. For example, input “C:/mytemplate/mailhtm.html” as an absolute path at the ‘Mail Sending HTML Form’ field. <Note> An example of mail contents on the completion of a scheduled result file on Outlook Express when there is no HTML template. ㈜엠투소프트 - 23 - The following is a result of mail notification, when pre-defined and pre-configured HTML template is successfully applied in Outlook Express. View Scheduling List Choose ‘Scheduling/View List”. ㈜엠투소프트 - 24 - The above shows the list of registered scheduling tasks on server. View You can inquire or control the status of tasks for such as scheduling completion/progression/cancellation. Scheduling Name Scheduling Execution Time You may cancel a progressing or registered task. (Use a cancel menu which appears by right-clicking on an according task box) <Result of canceling the task > ㈜엠투소프트 Modify Modify/Edit a registered scheduling task. Delete Delete a registered task. - 25 - View Scheduling Result Files Choose ’Finished Documents’. It shows the list of scheduled documents. Only the result of the documents which were registered by a currently logged-in user is viewable. View You may view the scheduled document via web browser. It is viewable only on the Windows platform. Delete Delete a scheduled document from a server directory. Register Scheduling Files ㈜엠투소프트 - 26 - Choose ‘Register Files’. Register a MRD document for scheduling. Upload First choose a MRD for scheduling by clicking on ‘Search’ button, and enter its description. (File description is not compulsory) Choose file: Maximum 200 characters are allowed for a input. Directory: Maximum 200 characters are allowed for an input (Even if the directory name is not over 200 characters, it’s not permitted for an absolute server file path value to be exceeded 200 characters) File description: Maximum 20 characters are allowed. ㈜엠투소프트 - 27 - Delete Delete a register MRD file on server. Create, delete and modify directory You can upload and manage files as a directory basis by creating necessary directories. Set directory authority You can set an access authority of each directory after creating them. By default, the creator and the admin user have an access to a newly created directory. You can manually set the directory access authority via authority menu which appears by right-clicking on a target directory. Only the administrator group user can set a directory authority setting. ㈜엠투소프트 - 28 - View all files It shows all the uploaded files on server. Scheduling Tables ㈜엠투소프트 - 29 - Create or delete tables to manage data for scheduling. The scheduling menu is only activated when scheduler is started on its RDServer startup. - Table Description: schedule: Managing the list of registered scheduling tasks. schedulelist: Managing the detailed task list of scheduling. scuser: Manaing the registration information on scheduling users Delete Delete existing managing tables which previously created. This will also result a deletion of all registration information. Recreate Recreate scheduling tables. If the tables were already existed, delete them first before create again. Control Scheduling Service Pause or restart scheduling jobs. Choose ‘Scheduling/Service Control(S)’. ㈜엠투소프트 - 30 - Pause Pause scheduling service (pause the currently operating scheduling job). Restart Start scheduling service. Scheduling Mail Delivery Mail delivery function for scheduling lets a user to choose an existing scheduled file and send it via email. Mails are sent with a predefined mail ID using html files under $RDServerHome/ocxhtm. ㈜엠투소프트 - 31 - Source file: Input a file path where delivering information is contained. The maximum input value allowed is 128 characters. Text file (by defining its absolute path on server) or URL can be used to set the value. An example of inputting a location of source file) For Windows: C:/m.txt For Unix/Linux: /usr/local/RDServer/m.txt The contents of the source file can be defined with a target file location for dispatching and a mail receiver, with a comma (,) as a delimiter. Each record can be defined by a return character. An example of source file) admin/TEST2004120111000011_VINET.html,[email protected] admin/TEST2004120111000011_AROUT.html,[email protected] : A file list of $RDServerHome/ocxhtm directory ㈜엠투소프트 Delivering title: Enter a title for delivery. The maximum title length is within 30 characters. Execution: Start mail delivery by reading a source file. It would not run if there is already some job currently under the operation. The result of the execution would not be returned at once since there would - 32 - be some time for server to handle job. If this is the case, you can refer to “Log – Scheduling Logs” for more information. Pause: Cancel a mail delivering job currently under the operation. Remaining delivering jobs would not be progressed. Start monitoring: Monitoring the delivering process (success or failure) in real time (The first time execution of delivering is when the monitoring would start by default). Stop monitoring: Stop monitoring. Stop Scheduling Server ㈜엠투소프트 Servlet version: stops automatically when WAS shuts down. Daemon version: stops automatically when server shuts down. - 33 - 7. Monitoring Monitoring menu is like the following. Every monitoring window can be zoomed in or zoomed out. Click on a tab or on a title bar for zooming. Memory Usage Memory usage shows the current amount of JVM memory of server where RDServer is currently operating in real time. Figure (1) Figure (2) Memory usage monitoring can be accessed via toolbar. Information Box ㈜엠투소프트 Maximum Memory - 34 - It shows the maximum memory size of JVM. Total Memory (Available Memory) It implies the size of the total memory which JVM has set for all applications which run on the JVM. If more memory space is needed, it takes necessary amounts from the maximum memory. The size of the total memory would be increased accordingly. Used Memory It shows the current amount of memory used by applications which are operating on the JVM. Free Memory It’s the amount of remaining memory not being used by applications out of the total memory. Memory Usage Graph X axis It shows the amounts of memory used and freed out of the total memory as 100 percent in real time. Y axis It shows the flows of the time from right to left. Concurrent User Monitoring The next shows the monitoring for a number of concurrent users in real time. ㈜엠투소프트 - 35 - Status Blocks The right block stack shows the current number of concurrent users instantly and visually. If the number of users is 25 or less, yellow block implies one user. If it’s over, orange block implies ten users. The color of graph line changes from red to blue accordingly to show the current number of concurrent users. The label below the stack always shows the current number. Concurrent User Graph The y axis shows the current number of concurrent users. You can see from the upper right corner that what one unit represents. One unit implies one user by default, implies ten users if the number of users is over 25. The x axis shows the flows of the time as it updates every one second. It starts timing when user chooses to monitor. Connection Monitoring The connection monitoring shows a number of connections being used by RDServer as in real time. It’s possible to monitor WAS or RDServer connection pool depending on a current pool type being used. If WAS connection pool is being used by RDServer, the number showed on screen would reflect the total number of connections which RDServer borrowed from WAS for all JNDI services. Figure (3) RDServer connection monitoring WAS Connection monitoring: it shows the total number of connections borrowed from WAS for all JNDI services. ㈜엠투소프트 - 36 - Status Blocks The right block stack visually shows a number of connections currently being used by RDServer as in real time. If the number of connections is 25 or less, yellow block implies one connection. If it’s over, orange block implies ten connections. The color of graph line changes from red to blue accordingly to show the current number of current connections. The label below the stack always shows the current number. One unit quantity and the maximum allowed connections would be shown above the status block stack. The allowed number of connections is a value defined by maxconn key in db.properties. If the number of the used connections is exceeded the limitation, no more connection would not be created. Connection Graph The service name, which currently being serviced, would be appeared on the upper left corner. The x axis shows the flows of the time. It updates its data on every second. The y axis shows the number of connections currently being used. You can also check this from the upper right corner label. If the number is over 25, the one unit implies ten connections. Service File Monitoring The current number of reports in service would be appeared on the top label, “Service file list.” Information on connected time, IP and file name is shown for each report. ㈜엠투소프트 - 37 - Show All It enables all monitoring in one click. Figure (5) Tile arrangement Arrangement Arrangement option menu would be appeared when you right-click on a monitoring desktop. The default arrangement option is ‘tile’. You may freely change the arrangement type between ‘tile’ and ‘cascade’ from the menu. ㈜엠투소프트 - 38 - Figure (6) Figure (7) The arrangement of monitoring tabs can also be changed depending on the user’s choice of selections like shown in the figure (7). It’s possible for a user to activate some monitoring windows if desired. ㈜엠투소프트 - 39 - 8. View Logs You may check the contents of various logs on server manager without any text editor. The recently added 10KB contents of log would be viewable for each log type. Report User Log Records the information on reported documents or documents which are current under reporting. Log contains information of reporting start time, reporting completion time (second), user IP, computer name, file name, parameters and main query value. Scheduling Log It records the information on start and completion time of scheduling tasks, and scheduling errors. You may check the start time of each task, MRD documents under scheduling and errors which might have been occurred during the execution of queries. Error Log You may check errors on queries and server which might have been occurred while reporting. ㈜엠투소프트 - 40 - Database Connection Log This enables you to check errors which might have been occurred while server tries to connect to database and the information on connections. Detailed information on initializing pool, created connections, closed connections and the excess of number of connections is provided. * Note: If there is no file produced on the server, the following message may be displayed. If there is no file when writing a first log, log would be written after creating a file. If the same error occurs again, check if RDServer is authorized to create a file on the given log path. Note: Environment Setting > Log ㈜엠투소프트 - 41 - 9. System Management Server Update Update You may update RDServer in the real time. Updating takes a place by searching the latest RDServer version (http://m2soft.co.kr/report/RDServerUpdate/...) and downloading files to the installed RDServer directory. Backing up the current RDServer is always performed before the update, hence it is possible to recover even if there was a failure while updating. You may configure settings related to the update via an update tab in ‘Environment Settings > Update and Backup’. Caution) you must restart RDServer on the completion of the update. The each step for updating is described in followings: Step 1. It shows the general information of the updating process. Figure (1) Step 2. It compares the current RDServer version with the latest version and shows its build version number and the date. If the latest version is higher than the current one, it would show the information on new features and references, and the ‘update’ button would be activated for you to proceed. If the latest version is the same or lower than the current one, the updating button would not be activated. ㈜엠투소프트 - 42 - Figure (2) Step 3. It shows the updating process by showing a list files downloaded and a file currently downloading. Figure (4) shows an example of a final result on the completion of the updating process. Once the updating is done, no other function is available before restarting RDServer takes a place. Restart RDServer to apply the updates. ㈜엠투소프트 - 43 - Figure (3) Figure (4) ㈜엠투소프트 - 44 - Update Recovery The update recovery enables a user to recover RDServer to the state before the update. This is useful for cases like a transmission failure due to a server shut-down or a network failure, or a startup failure of the latest version. Settings related to the update recovery can be accessed via update tab of ‘Environment Setup > Update/Backup’ menu. Caution) You must restart RDServer on the completion of the update recovery action. Steps to be taken are like the followings. Step 1. It shows the general information of the update recovery. Figure (5) Step 2. The contents of the updates are displayed by the date and the time. User may choose one of the dates to recover the current RDServer to the chosen state. ㈜엠투소프트 - 45 - Figure (6) Figure (7) Step 3. The following shows an example of a recovering process. It lists the files which are recovered and the file currently downloading for recovering. The figure (9) shows the completion of the update recovery. All other functions would be unavailable until the RDServer is restarted. ㈜엠투소프트 - 46 - Figure (8) Backup Backup The backup enables a user to back up the whole contents of an RDServer folder to a location where user is predefined. Settings for the backup can be found and configured from “Environment Setting > Update/Backup” at backup tab. Step 1. It shows the general information of the backup. ㈜엠투소프트 - 47 - Figure (8) Step 2. Asks whether continue with the backup or not. Figure (9) Step 3. The following shows an example of a backing up process. It lists the files which are backed up and the file currently in a process of backing up. All other functions would be unavailable until the backup process is completely finished. ㈜엠투소프트 - 48 - Figure (10) Backup Recovery The backup recovery enables a user to recover the current RDServer to the chosen previous state if the backing up process was not finished successfully due to some server failure or file corruptions. You can configure settings related to the backup recovery via “Environment Setup > Update/Backup” at backup tab. Step 1. It shows the general information of the backup recovery. ㈜엠투소프트 - 49 - Figure (11) Step 2. A list of the dates and the times when RDServer was backed up would be shown. User may choose one of them to proceed with the backup recovery action. Figure (12) ㈜엠투소프트 - 50 - Figure (13) Step 3. It shows the recovering process. It lists files recovered and a file currently recovering. No other function would be available until the recovering is completely done. ㈜엠투소프트 - 51 - Figure (14) Data Caching Data caching enables users to define the saving time period of data fetched from database. The data would be stored to memory or to file depending on the user’s configuration. The stored data would be transmitted to client directly from server without fetching from database, from the next time when user requests. This results less loads on the database and less time for reporting. Configuring the time period is crucial because the data viewed by users would not necessarily be the latest one. Caching server contains a scheduling function. User can configure when a cached data would be updated by setting the specific time period and the time. Activating the caching scheduler reduces the loads on a first-time user because the user doesn’t have to wait for a server to cache the fetched data before reporting. Figure (15) a message for a case when caching scheduler is not started. ㈜엠투소프트 - 52 - Figure (16) an example of showing the caching information. A ‘Refresh’ button brings the latest information of caching server and updates the information table. A ‘Update’ button updates any changes made in the cache information table to a server. Description on each item Saving type: can be saved to file together with memory or only to file. You can set this from ‘Environment Setup > Cache’ menu. Scheduling option: can be set as no, daily, weekly or monthly. Date (or day): it defines a detailed time period setting according to the defined scheduling option. Time: it defines an executing time on the previously defined updating date. Valid period: it shows a current valid period (updating date). Query: it’s used as a key to represent each case. Server Management Table RDServer creates following five tables required for the management of scheduling. Each table is described as number, name, number of fields, number of records and table information. You may either delete or initialize all the tables. Function of each table is described in the following: ㈜엠투소프트 - 53 - - SCUSER: user table to manage and store user information - SCDIRECTORY: stores the location of stored scheduled files - SCFILEDESC: stores the detailed information of scheduled files - SCHEDULE: used for managing scheduling tasks - SCHEDULELIST: used for managing scheduling tasks Figure (17) Delete Tables If you click on a delete button, all five tables would be deleted as well as the stored information. On an event of deletion or initialization, a dialog box would pop up afterwards to inform user the success or the failure of a requested action. ㈜엠투소프트 - 54 - Figure (18) Figure (19) Initialization Initializing means all the stored information in the tables will be deleted. In other words, all the existing data will be deleted permanently. ㈜엠투소프트 - 55 - Report Security Report security provides functionality that allows only the users who are registered on server have an access to database. User’s ID and password would be asked when he or she is trying to connect to the server via editor or viewer. The server then would return a list of database services (JDBC) which the user has an access to. Hence, only the allowed users may create a report. Add Group There are “Users” and “Administrator” groups defined as default and you may add or delete a new or existing group. The name of group is limited to maximum 30 characters. When adding a user, one of groups has to be chosen from the drop box. The chosen group needs to have an authority of one or more services. Service names are defined and can be found at “Environment Settings – Report – JDBC Services.” - ㈜엠투소프트 Add services: Select a group, press on add button for services and select services to be authorized for the chosen group. - 56 - Add User Click on a user tab to bring the user configuration panel to the front. Enter ID and password of new user then select one of groups from the drop box. Pressing on add button will add a new user as a member of the selected group. The changed user configurations would be applied to server at once without restarting it. Selecting a group as either “Administrator” or “Users” will let the new user to authorize to use and manage the server with a server manager. The following is an example of user authentication step when accessing from editor to server (via “Database – Connect Database”). ㈜엠투소프트 - 57 - ㈜엠투소프트 - 58 - 10. Environment Settings Basic menus of environment settings are as follows: JDBC Services Depending on the connection pool type in use, a different configuration panel would appear. Settings that need to be configured in common are as follows: - Save encoded: the current status of check box shows whether db.properties stored on the server is currently encoded or not. If it’s checked when a JDBC service configuration panel is loaded, this means the db.properties is currently encoded. Un-checking the check box and pressing on OK would decode and save the file. - Log file path: a location where logs on database connections would be stored. All information related to connecting and disconnecting databases would be stored as a file with the name and the location specified at this field. If the defined file does not exist on the given path, a new file is created. - Pool in use: shows the current type of connection pool in use. You may use either WAS or RD connection pool depending on the system. - Service control: you can add a new service from this panel. RDServer Pool The following is a configuration panel for setting connection pool provided by RDServer. Each tab panel represents a service defined in db.properties. User may change and apply settings to server. Services that have failed database connections would be shown with a red colored title on their tabs. ㈜엠투소프트 - 59 - Figure (1) Configurations for RDServer connection pool service. Figure (2) new service dialog. Figure (3) new service wizard. ㈜엠투소프트 - 60 - Figure (4) a message to notify a user no setting is modified. Figure (5) a dialog to ask a user the time to apply the changed settings. Figure (6) a new service is added and applied immediately on server but some of the configurations were incorrect. If an added service has incorrect configurations, the status of the service would show false and the reason of a failure would be displayed in the black text box as shown in the figure (6). ㈜엠투소프트 - 61 - Figure (7) a dialog to ask user for a management of user accounts immediately after adding a new service. Items - Driver Class Name: displays the current JDBC driver class name for a chosen service. - URL: sets the database connection configurations (database server IP and port). - User: sets the user ID of database account. - Password: sets the user password of database account. - Maximum number of connections: sets the maximum number of connections. - Character set: sets the character set used by a database. - Cached Conns: displays the number of connections cached on the service. - Connection status: displays the current status of the service as either true or false. If it’s failed to create a connection instance, a reason of the failure would be displayed underneath. Add Service Figure (2) shows a configuration dialog when pressing add button. User may enter the name of new service at this step. If the entered name already exists, the dialog box would be prompted again for a re-input. On a new service wizard that appears after the service name dialog, user can configure settings of the new service. “The service is not yet connected” message would be shown as default when adding a new service. Figure (5) shows an example of a dialog that asks a user when to apply the changed settings. You may apply at once to retry to connect the service immediately or apply when the server is restarted. ㈜엠투소프트 - 62 - If you select “Apply immediately” RDServer would test a connection for the service and return a result. If it was failed, a reason of a failure would be returned and displayed in the connection status text box. If you select “Apply after restarting server” the tab of the service would be displayed in red to show the service is not connected yet. The connection status text box would say that the service does not exist on server. After restarting the server, RDSever would attempt to connect the service and return its result. Update Pressing on OK will result one of two types of a message box like shown in the figure (4) and (5). Connection reloading dialog box (Figure 4) appears only when there were some configurations changed or the service selected was shown as false. Like it is briefly explained previously, two options, “Apply after restarting server” and “Apply immediately,” are provided for a way of applying configurations to the server. If you choose to apply immediately, all connections that were cached in the connection pool would be closed and a new connection pool instance would be initialized. If you choose to apply later, no action would be taken until the operating server is shut down and restarted. Delete Service If user wants to delete a service, choose a desired service tab then press on delete button. A confirmation dialog box would pop up to confirm the deletion of the selected service. If the user presses OK, the service would be deleted from RDServer core. Configuration values for deleted service would be saved with a comment mark placed in front of each line. #ORA920.url=jdbc:oracle:thin:@192.168.1.6:1521:myoracle #ORA920.user=scott #ORA920.password=tiger #ORA920.charset=KSC5601 #ORA920.maxconn=11 WAS Pool You may choose to use a WAS connection pool if RDServer is operating on WAS (servlet version). RDServer gets a database connection from WAS connection pool by a defined JNDI name. RDServer uses the WAS connection pool when was pool key in /RDServer/rdagent.jsp is set to true. ㈜엠투소프트 - 63 - ie) RDServer/rdagent.jsp private static boolean waspool = true; Figure (8) WAS Connection Pool The above is an example of JDBC service configuration panel when WAS connection pool is being used by RDServer. As shown in the figure (8), a list of JNDI names which are defined at waspools key in db.properties are arranged by tabs. A list of JNDI names can be entered with a space character as a delimiter in db.properties. eg) waspools=jdbc/MyOraclePoolDB jdbc/MyOraclePoolDB1 jdbc/MyOraclePoolDB2 Figure (9) when adding a new jndi name ㈜엠투소프트 - 64 - User may add a new JNDI name by pressing the add button and entering the name in the “New WAS Pool” dialog box. If the entered name already exists in the list, the dialog box would pop up again. Pressing on OK will apply the new name to the RDServer core. Figure (10) When pressing on the delete button Figure (10) is an example of a “Delete WAS Pool” dialog box when pressing on delete. Clicking on yes would cause the selected JDNI name to be deleted from db.properties and the “Connection Reloading” dialog to be popped up again like shown in the figure (5). Scheduling and Other Environments There is an encryption check box on the top. The status of the check box when loading a panel would reflect the current encryption status of rd.proeprties. User may change the status by clicking on the check box then clicking on OK for encoding or decoding the configuration file. Input values except a number type are limited to maximum 200 characters. Figure (10) Settings for ‘Path’ ㈜엠투소프트 - 65 - Path - Absolute path of web home directory: Define a location of web server home directory (absolute path). - OCX CAB(.cab) file location: Define a location of RD report viewer module (rdviewer.cab) installed on the user’s PC. - RDViewer execution path: Set a value if the server OS is Windows (for server printing). - OCX HTML template location: Define a location of OCX template html files for scheduling. - Error log file path: Define a file path for writing error logs of scheduling. Define the value as an absolute path. - MRD file upload path: Define a RDServer relative location where MRD documents would be uploaded - Location of data file after running report: Define a location of data files of report upon the completion of scheduling. - Mail sending html form: Define a location of HTML files to be used as a basis of default form for scheduling mails. - CAB version: Define a version of RDServer/rdviewer.cab (You may find the version number by decompressing the CAB file then referring the FileVersion key in rdviewer40.inf. Only comma (,) and numbers are permitted for an input. The maximum is limited to 15 characters). ㈜엠투소프트 - 66 - Figure (11) Settings for ‘Mail’ Mail Administrator e-mail: define an e-mail address of administrator. SMS server login ID: define a user ID for logging in SMS server. SMS server login password: define a user password for logging in SMS server. SMS sender number: Define a SMS sender number. The value must not contain any hyphen (-) or blank character. The input value is allowed up to 12 characters. - Other environmental settings for rd.properties mailer.dns: Define a domain server IP for finding the host on mail delivering. If the value is not defined, KT domain server would be used by default (168.126.63.1). If the KT domain server is used, it is possible that the following error occurs. Hence, it is important that a usable domain server IP is defined. [2005-1-11 AM 10:18:50] Mail delivering error :(null) -168.126.63.1, find host: m2soft.co.kr : Mailer DNS Exception, dns = mailer.notifydomain: Define a domain name or IP that notifies to the receiving mail server. Figure (12) Settings for ‘Web Server’ ㈜엠투소프트 - 67 - Web Server Server or server name (includes a port): Define a server IP or name eg) 192.168.1.6:8080 Figure (13) Settings for ‘Scheduling’ Schedule Service name: You may directly enter a name of service or choose from the drop box which appears when clicking on the ‘…’ button. The list of service names depends on the current connection pool type. JNDI names for WAS connection pool and RD service names for RDServer connection pool would appear on the drop box. Korean Encoding: If the scheduling server does not support character set, set this to TRUE for the support. Separator for scheduling data files: Define a delimiter for scheduled data files. Language: Define a language. User defined character set: Define a character set of server. Scheduling data file format: Define a format for names of scheduled data files. Names would be created as yyyMMdd for TRUE, yyyMMddhhmmss+serial for FALSE. DM server IP: Define a server IP when uploading files. Only the current IP value is permitted with a maximum 15 characters with any “.” included in count. DM port: Define a server port of DM server. The maximum 15 characters are permitted. ㈜엠투소프트 - 68 - DM context path: Define a context path of DM server if you upload to a web server directory, not to a DM server directory. eg) /RDServerdm DM web service port: Define a web server port if you upload to a web server directory, not to a DM server directory. The maximum 15 characters are allowed for an input. * Note) DM server would service scheduling files, if the context path and the web service port are not set. Figure (14) Settings for ‘Report’ Report Session timeout: Define a session timeout for reporting. The value is based on minutes. Log There is an encryption check box on the top. The status of the check box when loading a panel would reflect the current encryption status of log.proeprties. User may change the status by clicking on the check box then clicking on OK for encoding or decoding the configuration file. You can configure the location of each log type. Restarting server is required for applying the changed configurations. ㈜엠투소프트 - 69 - Error Log You may set the location of error log and the maximum number and size of log files via “Environmental Setup – Log” - Error log saving location: Define an absolute file path where logs would be written. - Error log level: Define a level of writing logs. (Option: debug > info > error > none) - Maximum log file size: Define a size of each log file. - Maximum number of log files: Define a number of log files. - Log file renewal period: Define a refreshing period for viewing logs from servlet version manager. The input value is based on seconds. ㈜엠투소프트 - 70 - - Error output direction: Define a direction of sending logs. Logs can be written to file or console. Report User Log - Writing logs: Define true or false for writing logs. - Log level: Define where logs would be written. Input 0 for file or 1 for database. - Refresh period: Define a monitoring interval as in seconds (only applicable for servlet version). - Log file location: Define a location of monitoring logs. - Log file maximum size: Define a size of each monitoring file. - Maximum number of log file: Define a number of log files (If the limit is exceeded, it will be sequentially overwritten). - Service name: Define a JDBC service name for writing logs if the log level is defined as database (1). Refer to “Environmental Setup – Report – JDBC Service” Update and Backup There is an encryption check box on the top. The status of the check box when loading a panel would reflect the current encryption status of updatebackup.proeprties. User may change the status by clicking on the check box then clicking on OK for encoding or decoding the configuration file. ㈜엠투소프트 - 71 - Update - Server location: Indicates a path where RDServer is installed. - Automatic update: Shows the setting for automatic update. - Automatic update period: Shows the interval of automatic update. - Saving location of backup files in update: Define a location where backup files for update would be saved. - Maximum number of directories in update: Define a number of times for backing up the update. ㈜엠투소프트 - 72 - Backup - Automatic backup: Shows the setting for automatic backup. - Automatic backup period: Indicates the interval for automatic backup. - Saving location of backup files: Define a location where whole RDServer would be backed up. - Maximum number of directories in backup: Define a maximum number of times for backup. Caching User may configure settings for caching server. The caching server initializes its state when a caching request is received by some report. Modifying the configurations requires WAS and the caching server to be restarted in order to apply the changed settings. There is an encryption check box on the top. The status of the check box when loading a panel would reflect the current encryption status of cache.proeprties. User may change the status by clicking on the check box then clicking on OK for encoding or decoding the configuration file. ㈜엠투소프트 - 73 - You may view the help on the configurations of caching server from the bottom text box by clicking on any text field. Environment Caching option: Define a type for caching period. The input value varies from 1 to 3. 1 for a daily based (time), 2 for a weekly based (weekday and time) and 3 for a monthly based (day and time). Update period in days / update date: Input an interval as in number of days when defaultUpdateOption is 1. Input a day of month when defaultUpdateOption is 3 (1~31). Update weekday: It’s only valid when defaultUpdateOption is 2. [1(Sun) 2(Mon) 3(Tue) 4(Wed) 5(Thu) 6(Fri) 7(Sat)] Update time: It’s only valid when defaultUpdateOption is 1,2 or 3. The input value varies from 1 to 24 (based on a hour of day). Query executing interval in minutes: Define an executing term when there are more than 2 queries to update. Input a value as in minutes. Saving location for cached files: Define a physical path where cached files would be saved. Number of files in each caching folder: Define a number of caching files to be stored on each caching folder. File ㈜엠투소프트 - 74 - Scheduling Update scheduler option: Define whether the update scheduler for cache activates or not. JVM JVM option: Define true or false for a use of JVM memory. Memory use on JVM total memory (0~20%): Caching server uses maximum 20% of JVM total memory. The input varies from 0 to 20. For an efficient use of system resources, no more than 20% of the total memory is allocated for caching memory. Define the value as in integer. SAP For creating a report using RFC or tables of SAP R/3, you need to install SAP GUI client on a developer’s PC when you design report forms. RDServer provides a function that fetches the data by connecting to SAP in run time (Classes and libraries of sapjco are needed to be placed at a classpath on server startup). The following is a configuration panel for setting up the server-sided properties. These settings are used to connect to SAP server in run time. There is an encryption check box on the top. The status of the check box when loading a panel would reflect the current encryption status of sap.proeprties. User may change the status by clicking on the check box then clicking on OK for encoding or decoding the configuration file. ㈜엠투소프트 - 75 - - User: Define a user ID registered on the SAP server. - Password: Define a user password registered on the SAP server. - Client: Define a ID of the installed SAP client - Language: Define a language that used by the SAP server. - Maximum number of connections: Define a maximum number of connections. - System number: Define a system number. - Host: Define the name of host or its IP. Innorules It provides a method of creating a report that connects to RBMS (Rule Based Management System). The following is a configuration panel for setting up the server-sided properties. These settings are used to connect to the Innorules system. There is an encryption check box on the top. The status of the check box when loading a panel would reflect the current encryption status of innorules.proeprties. User may change the status by clicking on the check box then clicking on OK for encoding or decoding the configuration file. - Server IP: Define an IP address of Innorules server. - Server port: Define a port number of Innorules server. ㈜엠투소프트 - 76 - - Encoding option: Define an encoding option. - Character set: Define a character set which is set on the Innorules server. ㈜엠투소프트 - 77 - 11. About & Exit About It shows the information related to the current RDServer version. Exit Exit the server manager. ㈜엠투소프트 - 78 - 11. Others (Description on Functions) Caching Function The caching function of RDServer provides a way of sending data by reading it from the cached files upon a request of viewer. User can initiate and run the caching by checking on a query caching check box from the query dialog in Report Designer Editor. Once it is initiated, the fetched data from database would be stored on files. There are two types of cached files. 1. Permanent caching (files would not be deleted). - The contents of files do not changed once the data is fetched from database on a requested time. 2. Impermanent caching (files would be deleted in some point of time). - The data fetched from database will be deleted on a defined day (a specific day to be defined from editor). % Cautions * The caching would be performed on running a viewer. * A query of report becomes a unique key (If one of caching queries changes, the file for the changed query would be created again). * Cached files are managed by monthly folders (Caching folders would be created at a location defined at server.cachefiledir in cache.properties). - How to use from editor 1. Install Report Designer Editor. 2. Connect to server by rdagent, create a query and select on query caching like shown in the below. ㈜엠투소프트 - 79 - The above shows an example of impermanent caching on the query. (Reporting would be done by reading from the cached file for two days from the first viewer run). If query caching period is not checked, the cached files would not be deleted. 3. Run viewer. - A file created from server. If the server.cachefiledir in cache.properties is set as /temp/cache/, /temp/cache/2004121/20041212203112-1-0000-20031220200000.cache (for impermanent caching) or /temp/cache/2003121/20031212203112-0-000000000000000000.cache (for permanent caching) file would be created. The contents of file contain query, field names and result data. This means, the contents of /temp/cache/2003121/20031212203112-1-0000-20031220200000.cache would be like the following. SELECT * from scuser where username='bgso13' ㈜엠투소프트 - 80 - %1|1006|0%5%userid|12|50%username|12|50%useremail|12|50%pass|12|30%use rgroup|12|30%1|1006|0% bgso13|bgso13|bgsokksi@mslkjf2sdi|2188|Administrator| * For checking where the data comes from (file or database), edit the cached file and see the result. Tip on improving the Reporting Speed of RDServer - Set the correct character set of database so the server won’t have to perform the character set conversion. If the conversion doesn’t take a place, you may expect the 3 or 10 times faster reporting speed. If oencoding is set to false in startup.bar or startup.sh, the speed of reporting would increase. If oencoding is set to true in startup.bar or startup.sh, the speed of reporting would decrease. - When you create a form file using a stored procedure, it would take some time to bring the Meta information if there are many stored procedures (more than 100) which the logged in user can access. This may bring a decrease in the speed. - For tuning the speed, configure the authority from the database, so the logged in user won’t have too many stored procedures to search from. Databases which user can run the stored procedure via free editing box are as follows. DB2, Sybase and MSSQL. MSSQL eg) exec CustOrderHist ‘$1’ Using the Report Session It helps with the security by enabling only the reports with a valid session key registered on server. Produced session keys would be deleted once they are used. Session key needs to be created from user’s program on client. Once it’s created, register to server. Java API is provided for creating a session key (RDServer/lib/rdsession.jar, DLL would be provided in the future). Example of embedding an OCX into JSP) __________________________________________________________ <%@ page import="java.io.*,java.util.*,m2soft.rdsystem.server.session.client.*" contentType="text/html; charset=euc-kr" %> <% ㈜엠투소프트 - 81 - //Produce a list of servers to register a valid session SessionInfo[] server_infos = {new SessionInfo("192.168.1.39",8282)}; SessionClient session_client = null; //Client information SessionItem session_item = null; //Session String sessionString = ""; //Session value //Return if any exception occurs. This means that producing a session ID has been failed. //Register on session server when creating a session client. try { session_client = new SessionClient(server_infos); } catch (Exception ex) { out.println("<pre><font size=2>You can’t produce the RD Server session ("+ex.toString()+")<br>"); return; } //Session key producing if(session_client != null) { session_item = session_client.createSession(request.getRemoteAddr()); //Must register the IP address. sessionString = session_item.getSessionString(); } ㈜엠투소프트 - 82 - String mrd_filepath = "http://localhost:8080/RDServer/sample/employee.mrd"; String mrd_param = "/rfn [http://localhost:8282/RDServer/rdagent.jsp]"; %> <html> <head><title>Employees List</title> <META name=VI60_defaultClientScript content=JavaScript> </head> <body onLoad="javascript:rdOpen()" style="overflow-x:hidden;overflow-y:hidden"> <SCRIPT LANGUAGE = JavaScript> function rdOpen() { Rdviewer.SetBackgroundColor(255,255,255); Rdviewer.AutoAdjust=0; Rdviewer.SetReportDialogInfo(1,"","",1,"",""); <!—After setting the session key in the OCX --> Rdviewer.SetSessionInfo("<%=sessionString%>"); Rdviewer.FileOpen("<%=mrd_filepath%>","<%=mrd_param%>"); } </SCRIPT> <OBJECT id=Rdviewer classid="clsid:8068959B-E424-45AD-B62B-A3FA45B1FBAF" name=Rdviewer width=80% height=80% codebase="http://localhost:8080/RDServer/rdviewer40.cab#version=4,0,0,144"> </OBJECT> </body> </html> __________________________________________________________ ㈜엠투소프트 - 83 - The function is only valid for daemon servers. Only the OCX viewers can be used for managing sessions. ㈜엠투소프트 - 84 -
© Copyright 2025 Paperzz