Wednesday, 9 March 2011

Stadium3 Release : 3.1.1768.3786

Build 3.1.1768.3786  is available for download on Storytracker. It includes:
  • Bug fix for opening of mht files
  • Bug fix for user names with special characters 
  • OpenFile action has new DisplayFileDowloadDialog property - If set to true, file download dialog will always be displayed when opening the file
  • ImageViewer control has new AllowPaging paging - If set to false, it will not display paging controls
  • ReportViewer control has new parameters property - Can be used to pass values to report parameters
  • Third party login functionality - This allows clients to authenticate users using their own internal mechanism by implementing a standard Stadium interface
  • Added functionality to force a first time user to change password

Friday, 4 March 2011

Merge feature explained

Purpose: Allow more than one person to design for the same Stadium application at the same time

Scenario:

Okay, so you are at this major corporate and an application on Stadium3 has just gone live. However you still have to add new pages, make changes for the next version of the same application and you have a team of six implementers.  There is a lot of work to do and all the six implementers need to start implementing the changes, there is one set of files i.e. sap and config file for the application. How do you do this?

Definitions:

Master file: The Stadium application file from which merge feature will be triggered.

Source file: The Stadium application file with the changes, these changes need to be merged with the master file

How:
  • The starting point is the sap and config file of the application in production, in this scenario this is the ‘master’ file.
  • Each  implementer needs to copy both the master sap and config files, the copied files are the ‘source’ files
  • Open the source application in the designer
  • Make the necessary changes/additions and save
  • When finished open the master application
  • Click on Merge toolbar button on the master application
  • Select the source stadium application as the file to merge
  • The merge dialog will highlight the new/modified entities
  • Select the entities you have changed
  • Save the changes
  • Notify the rest of the team you have updated the master file
  • Each team member now needs to update his/her application file with the changed master file. In this scenario each member’s file becomes the master file and the master file the source file.
Please follow below suggested best practices:
  • All components should be named as per their function e.g. if a page displays a list of users, give it a name to indicate the same, do not keep the default name e.g.’ Page10’
  • After merging the changes with the master application, let other team members know that it has been updated. It is ideal that they merge the changes with their local sap files as soon as possible. This way the changes are kept minimal and there is less likelihood of clashes occurring.
  • A page is regarded as the smallest unit of work. If two implementers work on the same page, only changes made by one of them can be maintained. It will best to split the work on a page by page basis.
  • If an entity is deleted in the master file and not in the source file, when merging, it will appear as a new file as this entity does not exist on the master file.  It will be best deletes are communicated to team members.

Monday, 7 February 2011

Thursday, 3 February 2011

Stadium3 Release : 3.1.1745.3738











Build 3.1.1745.3738, first release in 2011  is available for download on Storytracker. It includes:
  • Improved performance significantly
  • Fixed large number of concurrent user issues
  • New DisplayHeader property for filter
  • Fixed IE6 issue with display of filters and menus
  • Fixed IE6 issue with user login name disappearing
  • Integrates with latest version of Linx

Tuesday, 30 November 2010

Stadium3 status update

The last few weeks has been quite hectic and stressful for the Stadium team, thus the silence.
We picked up a large number of concurrency issues during an implementation
at Nedbank.

We currently have a build being tested by Sherryl and Brenna.  If all goes well, we will be back on track toward end of this week or early next week.

Thanks for the patience!

Thursday, 21 October 2010

How to enable logging

Stadium3 uses a third party component 'log4net' for logging.  More details about this component can be found at:
http://logging.apache.org/log4net/

Stadium3 can be configured to log errors or information. Information logging provides stats on pages users have accessed.

It is a very powerful component, and  can be configured to log to the windows event log,  file,  an email address etc.
However because it is so powerful, setting it up and configuration is not very simple.  Below are the steps to follow
to get it working for Stadium3.

By default logging is turned off. In order to turn it on, follow below steps:
  1. Open web.config file, there is a log4Net section as shown below: <log4net>
        <appender name="InformationLog" type="log4net.Appender.FileAppender">
          <file type="log4net.Util.PatternString" value="Logs/InformationLog_%date{yyyyMMdd}.txt"/>
          <appendToFile value="true"/>
          <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%m%n"/>
          </layout>
          <filter type="log4net.Filter.LevelMatchFilter">
            <levelToMatch value="Off"/>
            <acceptOnMatch value="true"/>
          </filter>
          <filter type="log4net.Filter.DenyAllFilter"/>
        </appender>
        <appender name="InformationLogDatabase" type="log4net.Appender.AdoNetAppender">
          <bufferSize value="1"/>
          <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
          <connectionString value="Data Source=localhost\SqlServer2005;Initial Catalog=Northwind;User=xxx;Pwd=xxxxxxxx"/>
          <commandText value="INSERT INTO EventLog ([Application],[Page],[User],[Details],[LogType]) VALUES (@application,@page,@user,@details,@logtype)"/>
          <parameter>....</parameter>
          <filter type="log4net.Filter.LevelMatchFilter">
            <levelToMatch value="Off"/>
            <acceptOnMatch value="true"/>
          </filter>
          <filter type="log4net.Filter.DenyAllFilter"/>
        </appender>
        <root>
          <appender-ref ref="InformationLog"/>
        </root>
      </log4net>

  2. You can configure to log to  a file or database.  Appender 'InformationLog' logs to a file and 'InformationLogDatabase'
    logs to a database. By default it is configured to log to a file.  This is indicated by element:   <root>
          <appender-ref ref="InformationLog"/>
       </root>

  3. By default logging is turned off, in order to turn it on, you have to change value of the appropriate appender's  <levelToMatch> node.

  4. You can change it to 'Info' for information logging or to 'Error' for error logging. An example of error logging will be: <filter type="log4net.Filter.LevelMatchFilter">
               <levelToMatch value="Error"/>
               <acceptOnMatch value="true"/>
     </filter>

  5. Files are created in a 'Logs' folder in 'StadiumServer' folder, first create this folder, then allow the neccessary user access to this folder, or give  'Everyone' access.

  6. If you want to log to database instead, change to following: <root>
            <appender-ref ref="InformationLogDatabase"/>
     </root>

  7. Errors or information will be logged to an EventLog table, you can configure the database as part of the connectionstring element:  <connectionString value="Data Source=localhost\SqlServer2005;Initial Catalog=Northwind;User=xxx;Pwd=xxxxxxxx"/>

  8. You need to run below script to create this table:
    CREATE TABLE [dbo].[EventLog](
     [ID] [int] IDENTITY(1,1) NOT NULL,
     [Application] [varchar](50) NULL,
     [Page] [varchar](50) NULL,
     [Date] [datetime] NOT NULL DEFAULT (getdate()),
     [User] [varchar](50) NULL,
     [EventType] [varchar](50) NULL,
     [LogType] [varchar](50) NULL,
    [Details] varchar(2000) NULL,
    [Link] varchar(2048) NULL,
     CONSTRAINT [PK_EventLog] PRIMARY KEY CLUSTERED
    (
     [ID] ASC
    ) ON [PRIMARY]
    ) ON [PRIMARY]

  9. Then change the 'InformationLogDatabase' appender's LevelToMatch tag to 'Error' or 'Info'.

Thursday, 7 October 2010

Stadium3 Release : 3.1.1659.3550

Build 3.1.1659.3550 is available for download on Storytracker.

Only one new feature:
  • Reloading of application now only takes place when .sap file is uploaded
What this means:
Previously, we were reloading the application whenever the menu item associated with the application was clicked.
This meant if you changed the .sap file, copied it to the right location, any changes you made were immediately reflected  when the application's menu item was clicked.

This behaviour has changed. The .sap file has to be uploaded via Stadium3's web front end before any changes are reflected.
Reason for change:Reloading the sap file everytime user clicks on application's menu item is unneccessary, it only needs to be done if there are changes.
The application designer(user)  knows when there are changes and thus can make the decision when to upload. This results in significant performance gains.