Contents
|
Index
|
Search
USoft 9.0 All Help Topics
USoft Approach Guide
Introducing the USoft Approach
Advantages of the USoft Approach
Principles of the USoft Approach
Deliver business conduct
Deliver in short cycles
Deliver specifications and implementations in parallel
Deliver a central repository with distinct application tiers
Phases and subphases in the USoft Approach
Infrastructure
Balancing work between phases
The PLAN Phase
The Business Orientation subphase
The Rapid Analysis subphase
The Project Definition subphase
Roles
The DEFINE Phase
The Structure Definition subphase
The Rule Definition subphase
The Interface Definition subphase
The SPECIFY task type
The IMPLEMENT task type
The TEST task type
Definition of Done
The DELIVER Phase
The Release subphase
The Acceptance subphase
The Maintenance subphase
USoft Authorizer Guide
Introducing USoft Authorizer
Authorization and authentication
Setting up authorization for developers
Setting up authorization for runtime users of your application
USoft Authorizer as a module
USoft Authorizer as a runtime application
Deploying authorization rules
Authorization Concepts
Applications
Application Users
User Groups
How to Assign Users to User Groups
How to Assign Menus to User Groups
Definer User Groups
Menu Conditions
How to Define Menu Conditions
Application Tables
Application Columns
Table Rights
Column Rights
Scope
Restricting Conditions
How to Check Conditions
Deployment Configurations
Deployment Configuration Contexts
Deployment Parameters
Allow_Disable_Constraint
Allow_Set_Manipulations
Auto_Refresh_Constraints
Batch_Loglevel
Cache Size
Lock_Foreign_Keys
Lock_Parent_On_Seqno
Max_Constraint_Depth
Max_Driver_Conditions
Max Prepared Checks
Number_of_Update_Columns
Optimize_Changed_Table
Read_Only_ODBC
Record Facts Cache
Record Facts Cache Size
RDBMS_Connect
Request_Log_Size
Show_Component_Errors
Show_RDBMS_Errors
SQL_Server_Option_Fast_1
Temp_Table_At_Owner
Unique_Key_Check
Update_Supertype_On_Ins
Wait_for_Lock
How to Set a Deployment Parameter
Authorization for Supertypes and Subtypes
How INSERT Statements are Handled
How DELETE Statements are Handled
How UPDATE Statements are Handled
Database Grants
Options for Granting or Revoking Database Grants
How to Grant and Update Access Rights
How to Revoke Database Grants
Authentication and USoft
User Account Mapping
How to Change the Rules Engine Cache Refresh Frequency
Example: Authentication Using Client/Server Login Dialog
Authorizing Users to Change their Password
Changing the User Currently Logged In Run-Time
Installing and Using the PWDCredentials Table Component
PWDCredentials Example 1: The length of a password should be greater than 6 characters
PWDCredentials Example 2: The new password must be different from the old one
PWDCredentials Example 3:New passwords should be encrypted
Installing and Using the CredentialsCheck Table Component
How the CREDENTIALSCHECK Table Component Works
CredentialsCheck Example 1: A password should expire every month
CredentialsCheck Example 2: Warn users that their password will expire within 10 days
CredentialsCheck Example 3: A user should not log in more than 5 times a day
MS SQL Server Authentication
Deploying a Web Service Provider
Importing a Web Service
Creating UDDI Businesses, UDDI Registry, and Publish Accounts
How to Create an UDDI Registry
How to Create a New Publish Account
How to Create or Remove an UDDI Business
How to Publish an UDDI Business
Associating a Web Service Provider with an UDDI Business
Publishing a Web Service
Importing an UDDI Business from the UDDI Registry
Using an Encrypted Password
Generated Files
Miscellaneous Web Service Remarks
Calling a Web Service with SSL
How to Create a Certificate File to be Imported in Authorizer
How to Import a Certificate in Authorizer
How to Delete a Certificate in Authorizer
Server Certificates
TLS/SSL
How Server Certificates Work
A Server Certificate is Domain/Web Site specific
Help with Certificates
How to Configure a Web Server for SSL
Use the Web Server to generate a CSR
Error-Free CSR Generation: Important Information
Example: Generating a Key Pair and CSR
Use the CSR to obtain a Server Certificate via a Certificate Issuer
Configure the Web Server to Use the Obtained Certificate
Self-Signed Certificates and OpenSSL
Step 1: Download and Install OpenSSL
Step 2: Create a Private Key
Step 3: Create a master certificate based on private key
Step 4: Create public key and certificate signing request
Step 5: Self-sign the certificate
Using Self-Signed Certificates with USoft
Activation of TLS/SSL in the Remote Rules Service
Activation of TLS/SSL in the Rules Service
Activation of TLS/SSL in the JDBC Driver
USoft Binder Guide
Introducing USoft Binder
Projects
Project Properties
Project Tab
Database Tab
Content Tab
Project Items
Authorizer Properties
Definer Properties
Windows Designer Properties
Web Designer Properties
BenchMark Properties
Upgrade Tool Properties
Repository Manager Properties
User Application Properties
Batch Runner Properties
Rules Service Properties
Application Timer Properties
Free Object Properties
Create Tables Dialog
Startup options for the USoft Developer platform
Startup options for batch runs
USoft Binder variables
Defining a Separate User Environment
USoft Definer Help
USoft Teamwork Guide
Introducing USoft Teamwork
URequire Studio
USoft Approach
Linear Methods
Iterative Rapid Application Development Methods
Plan Phase
Define Phase
Implement Phase
Prototyping
Time Boxing
Model-Driven Development (MDD)
Before You Start
Preparing Your Project (Project Definition)
Standards, Implementation Types, Repository Definitions and Versions
Setting Up Development Environment Authorization
USoft TeamWork Objects
Object Classification
TeamWork Catalog
Business Rules
Why Use Business Rules?
Guidelines for Writing Business Rules
Easy-to-understand Business Rules
Affirmative and Definite Business Rules
Functional Business Rules
Stand-alone Business Rules
Adding Information to Business Rules
Short Description attribute of Business Rules
Type attribute for Business Rules
Requires Implementation Y/N attribute for Business Rules
Priority attribute for Business Rules
Grouping Business Rules
Grouping Rules by Business Process Step
Grouping Rules by Business Area or Business Object
Grouping Rules by Rule Set
Grouping Rules by Motivation
Grouping Rules by Classification
Grouping Rules by Source
Classify Rules as belonging to other Rules
Splitting Business Rules
Implementing Business Rules
Reporting and Fixing Problems with Business Rules
Tracing a Business Rule's Life-Cycle
Repository Version attribute for Business Rules
Status attributes for Business Rules
Status History for Business Rules
Viewing Business Rules as Business Process Steps
Business Process Steps
Understanding Business Process Modeling in USoft TeamWork
Planning the Best Approach to Business Process Modeling
Approach 1: Work Procedure Handbook
Approach 2: Integrated Processes-and-Rules Base
Approach 3: User Function Coverage
Using an External Business Process Modeling (BPM) Tool
Branching Structures in Business Processes
Defining Business Process Steps
Guidelines for Defining Business Process Steps
Business Areas
Rule Sets
Business Objects
Motivations
Classifications
Sources
Data Contents
Owned vs. Shared Data Contents
Defining Data Contents
Implementations
Implementation Types
Automatically Generated Implementation Types
Manually Entered Implementation Types
Design Documents
Sessions
Notes
Note Sets
Repository Definitions
Repository Versions
Current Version
Test Needs
Export Definitions
Table Export Definitions
Domain Export Definitions
Constraint Export Definitions
Decision Export Definitions
Business Object Export Definitions
Business Area Export Definitions
Menu Page Export Definitions
Index Export Definitions
Site Information Export Definitions
Export Logs
Import Logs
Print Sequence
Workload
Workload at Business Object and/or Business Rule Level
Defining Workload
Monitoring Workload
Change Information
Object Shopping
Quick Walk-Through: Shopping an individual object
Quick Walk-Through: Shopping a business area
File formats for Object Shopping
Inclusion rules for Object Shopping
Inclusion rules for Business Areas
Inclusion rules for Implementations
Inclusion rules for Tables, Views and Relationships
Inclusion rules for Domains
Inclusion rules for Jobs
Merge behavior in Object Shopping
Object shopping via the clipboard (copy-paste)
Importing from URequire
Exporting E/R diagrams to URequire
Using USoft TeamWork
How to Add Data Contents
How to Add Information to Business Rules
How to Analyze and/or Import an Export File
How to Classify Business Rules as Belonging to Other Rules
How to Create an Export File
How to Define Business Areas
How to Define Business Objects
How to Define Business Processes
How to Define Business Rules
How to Define Data Contents
How to Define Export Definitions
How to Define Implementation Types
How to Define Implementations
How to Define Motivations
How to Define Note Sets
How to Define Notes
How to Define Repository Definitions
How to Define Repository Versions
How to Define Rule Sets
How to Define Sessions
How to Define Sources
How to Define Test Needs
How to Define the Current Version
How to Generate an E/R diagram for a Business Area
How to Generate an E/R diagram for a Business Object
How to Group Business Rules
How to Implement Business Rules
How to Monitor Workload
How to Obtain Change Information
How to Report and Fix Problems with Business Rules
How to Split Business Rules
How to Store a Design Document in the Database
How to Trace a Business Rule's Life-Cycle
How to View Export Logs
How to View Import Logs
Note on Log Files
USoft Model and Rules Guide
Introducing USoft Model and Rules
Before You Start
Getting Started
Using the Project Catalog
Catalog Icons
The Definer and Windows Runtime Interface
Info Windows
Info Boxes
Lookup Windows
Related Windows
Subtype Windows
Dialogs
Menus
The Objects List
The Transactions Window
The Picklist
The Workspace
How to Save your Workspace
The Find in Repository Dialog
The Toolbar
Printing in the Production (Runtime) Environment
Data Printing
Using the Definer
Manipulating Records
Querying Data from the Database
How to Define and Execute Queries
How to Use Related Windows when Querying
How to Use Wildcards and Operators
Using Spreadsheet Look
Activating the Spreadsheet Popup Menu
Manipulating Records in Spreadsheet Look
Saving Your Changes
Shortcut Keys
Keys and Options
Options and Keys
Keys Available in Spreadsheets
Mouse Pointer Functions
Key concepts
Domains
Data Types
Display Types
Check Box Display Type
Dropdown List Box Display Type
Option Buttons Display Type
Slider Display Type
Allowed values
Default values
IO Formats
Alternative Input Formats
Default Date Format
Unique Values
Superdomains: Inheritance of Domain Properties
Tables
How to Define a Table and its Columns
Generating Tables
Additional Prompts and Messages
How to Set Up the Table Generator
How to Create or Replace Tables, Indexes, and Sequences
Columns
How to Add Columns to a Table
Default Values for Columns
Joined Columns
Relationships
Good Relationship Design
How to Define a Relationship
Setting Relationship Attributes
The RELATE keyword
Logical Views
Checking Logical Views
Logical View Limitations
Data Manipulation through Logical Views
Logical View column attributes
How to Define Logical Views
Rule-based Logical Views
How to Define a Rule-based Logical View
Rule-based Logical View Example
Constraints
Defining Constraints
Checking Constraints
Single-Record Constraints
Restrictive Single-Record Constraints
Corrective Single-Record Constraints
Restrictive Multi-Record Constraints
Corrective Multi-Record Constraints
Transitional Constraints
The OLD() Function
Transition Properties
Default Transition Properties
Changing Default Transition Properties
Transitional Constraints Without OLD()
Differences Between Transitional and Non-Transitional Constraints
Warning Constraints
Warning Constraint Example: Scheduling Tours to Unstable Destinations
How to Change a Restrictive Constraint Into a Warning Constraint
Recursive Constraints
Example: Recursive Constraint
Time Constraints
The T_APP_TIME Table
The Application Timer
Starting and Stopping the Application Timer
Variable Constraint Messages
Variable Constraint Messages: Example 1
Variable Constraint Messages: Example 2
Variable Constraint Messages: Example 3
Variable Constraint Messages: Example 4
Variable Constraint Messages: Example 5
Variable Constraint Messages: Example 6
Supported Constraint Variables
USoft Rule Language
USoft Rule Language and Table Constraints
USoft Rule Language and Object Name Plurals
USoft Rule Language and Domain Constraints
USoft Rule Language Examples: Simple Constraints
USoft Rule Language Examples: Query Statements With Subquery
USoft Rule Language Examples: Query Statements With Join
USoft Rule Language Examples: Insert Statements
USoft Rule Language Examples: Update Statements
USoft Rule Language Examples: Delete Statements
USoft Rule Language Examples: GROUPED BY Clause
USoft Rule Language Examples: Statements Without Conditions
USoft Rule Language Examples: Variable Constraint Messages
Supertypes and Subtypes
How to Define a Subtype Table
Relationship Inheritance from Supertype to Subtype (RELATE)
Manipulating Supertype and Subtype Records
Selecting Subtype Data
Inserting Supertype and Subtype Data
Deleting Supertype and Subtype Data
Updating Supertype and Subtype Data
Setting Defaults for Supertypes and Subtypes
Setting Delete Super on Delete
Setting Update Supertype on Insert
Constraints on Supertypes and Subtypes
Transitional Constraints on Supertypes and Subtypes
Subtype Definitions
How to Define a Subtype Definition
GUI implementation of subtypes
Decisions
Decision attributes
Decision variables and placeholders
Decision branching and looping
Tuning Your Application
Optimizing Application Performance
RDBMS Performance Hints
Additional Indexes
How to Define Additional Indexes
Referential Integrity
Disabling Total Locking
Postponing Validation
Locking Behavior and Transaction Mode
Deploying Your Application
Setting up a Production Environment
Flat Files for Distribution
Locating Flat Files
Installing Your Application on a Server
How to Install Authorization in a Production Environment
Creating a Production Database
Calculating Oracle Table Spaces
How USoft Developer Calculates Table Space
How Inserts are Handled
How Updates are Handled
How to Define Sites
How to Set Table Space Definitions
How to Define Site Tables
How to Define Site Indexes
How to Calculate Space Requirements
How to Create Installation Files
How to Create Flat Files
How to Generate Files from the Command Line
Miscellaneous Tools
SQL Command Tool
SQL Definer
Modes of Operation
How to Start the SQL Definer
How to Start a New Statement
How to Select Tables
How to Change the Appearance of the From List Pane
How to Specify a WHERE Condition
How to Specify Output Columns
How to Specify Values in INSERT...VALUES and UPDATE...SET Statements
How to Build Subqueries into INSERT or UPDATE Statements
How to Define GROUP BY and ORDER BY clauses
How to Modify or Remove Tables and Other Elements
How to Manually Edit Your Statement
How to Execute Your Statement
How to Save Your Statement
Cross Reference
How to Generate HTML Pages from Your Repository
How to Modify the Reserved Words List
The Bridge Wizard
How to Use the Bridge Wizard
Connecting to and from Other Programs
JDBC Rules Engine Connectivity
The Rules Service
How to Configure the Rules Service on Windows
How to Configure the Rules Service on Unix
How to Start the Rules Service on Windows
How to Start the Rules Service on Unix
Starting the Rules Service from the Command Line
Peer Rules Services
Setting Up the Rules Service Log File
Rules Service Recovery
Methods Supported in the Rules Service
User Authentication When Using JDBC
Making Java Client Programs Connect to a Rules Engine
Java Example Step 1: Loading the USoft JDBC Classes
Java Example Step 2: Opening a Connection to the Rules Engine
Java Example Step 3: Selecting Records
Java Example Step 4: Closing the Connection
JDBC Database MetaData Methods Supported by USoft
allProceduresAreCallable()
allTablesAreSelectable()
getURL()
getUserName()
isReadOnly()
nullsAreSortedHigh()
nullsAreSortedLow()
nullsAreSortedAtStart()
nullsAreSortedAtEnd()
getDatabaseProductName()
getDatabaseProductVersion()
getDriverName()
getDriverVersion()
getDriverMajorVersion()
getDriverMinorVersion()
supportsMixedCaseIdentifiers()
storesUpperCaseIdentifiers()
storesLowerCaseIdentifiers()
storesMixedCaseIdentifiers()
supportsMixedCaseQuotedIdentifiers()
storesUpperCaseQuotedIdentifiers()
storesLowerCaseQuotedIdentifiers()
storesMixedCaseQuotedIdentifiers()
getIdentifierQuoteString()
getSQLKeywords()
getNumericFunctions()
getStringFunctions()
getSystemFunctions()
getTimeDateFunctions()
getSearchStringEscape()
getExtraNameCharacters()
supportsAlterTableWithAddColumn()
supportsAlterTableWithDropColumn()
supportsColumnAliasing()
nullPlusNonNullIsNull()
supportsConvert()
supportsConvert()
supportsTableCorrelationNames()
supportsDifferentTableCorrelationNames()
supportsExpressionsInOrderBy()
supportsOrderByUnrelated()
supportsGroupBy()
supportsGroupByUnrelated()
supportsGroupByBeyondSelect()
supportsLikeEscapeClause()
supportsMultipleResultSets()
supportsMultipleTransactions()
supportsNonNullableColumns()
supportsMinimumSQLGrammar()
supportsCoreSQLGrammar()
supportsExtendedSQLGrammar()
supportsANSI92EntryLevelSQL()
supportsANSI92IntermediateSQL()
supportsANSI92FullSQL()
supportsIntegrityEnhancementFacility()
supportsOuterJoins()
supportsFullOuterJoins()
supportsLimitedOuterJoins()
getSchemaTerm()
getProcedureTerm()
getCatalogTerm()
isCatalogAtStart()
getCatalogSeparator()
supportsSchemasInDataManipulation()
supportsSchemasInProcedureCalls()
supportsSchemasInTableDefinitions()
supportsSchemasInIndexDefinitions()
supportsSchemasInPrivilegeDefinitions()
supportsCatalogsInDataManipulation()
supportsCatalogsInProcedureCalls()
supportsCatalogsInTableDefinitions()
supportsCatalogsInIndexDefinitions()
supportsCatalogsInPrivilegeDefinitions()
supportsPositionedDelete()
supportsPositionedUpdate()
supportsSelectForUpdate()
supportsStoredProcedures()
supportsSubqueriesInComparisons()
supportsSubqueriesInExists()
supportsSubqueriesInIns()
supportsSubqueriesInQuantifieds()
supportsCorrelatedSubqueries()
supportsUnion()
supportsUnionAll()
supportsOpenCursorsAcrossCommit()
supportsOpenCursorsAcrossRollback()
supportsOpenStatementsAcrossCommit()
supportsOpenStatementsAcrossRollback()
getMaxBinaryLiteralLength()
getMaxCharLiteralLength()
getMaxColumnNameLength()
getMaxColumnsInGroupBy()
getMaxColumnsInIndex()
getMaxColumnsInOrderBy()
getMaxColumnsInSelect()
getMaxColumnsInTable()
getMaxConnections()
getMaxCursorNameLength()
getMaxIndexLength()
getMaxSchemaNameLength()
getMaxProcedureNameLength()
getMaxCatalogNameLength()
getMaxRowSize()
doesMaxRowSizeIncludeBlobs()
getMaxStatementLength()
getMaxStatements()
getMaxTableNameLength()
getMaxTablesInSelect()
getMaxUserNameLength()
getDefaultTransactionIsolation()
supportsTransactions()
supportsTransactionIsolationLevel()
supportsDataDefinitionAndDataManipulationTransactions()
supportsDataManipulationTransactionsOnly()
dataDefinitionCausesTransactionCommit()
dataDefinitionIgnoredInTransactions()
getProcedures()
getProcedureColumns()
getTables()
getSchemas()
getCatalogs()
getTableTypes()
getColumns()
getVersionColumns()
getPrimaryKeys()
supportsResultSetType()
supportsResultSetConcurrency()
getConnection()
Connecting to the Rules Service via HTTP
Rules Service SOAP Error Messages
Rules Service SOAP Success Messages
Open Database Connectivity (ODBC)
Dynamic Link Libraries (DLLs)
Connecting Non-Database Users To a USoft Application
Dynamic Data Exchange (DDE)
DDE Characteristics
USoft Developer as a DDE Client
Starting and Finishing DDE Conversations
Requesting and Sending Items
Executing a Command
Running an Advise Loop
USoft Developer As a DDE Server
Using the Field Topic
Using the SQL Topic
Example of DDE in Use
Which Action(s) to Use?
Support for Microsoft Transaction Server (MTS)
Distributed Transactions and the Two-Phase Commit Protocol
The MTS Architecture
Example 1: The Bank Sample Application
Example 2: MTS Component Sample Code
Object Linking and Embedding (OLE)
OLE Containers
OLE Controls (OCX)
Localising Your Application
Application Strings and System Messages
Dynamic Language Switching
Translating Application Strings
Translating System Messages
XML Error Messages
USoft XML Message Format
XSL Transformations for Editing Messages
Switching between End User Messages and Developer Messages
Customizing Messages
XSL Editing Effects on Error Logging
XML Error Message Reference
Common Structure
System Messages with Parameters
Rule Violation Messages
Context Subtree and Execution Stack
Record Information
Constraint-Specific Elements in Rule Violation Messages
RDBMS Messages
RDBMS Specifics
Implementations of USoft Developer
RDBMS Connection Recovery
NULL Values
Concatenation Operators
Set Operators
Start With/Connect By Clause
Outer Joins
RDBMS-Specific SQL Functions
Convertible Data Types
USoft for Microsoft SQL Server
DECODE Function
Isolation Level
USoft for ODBC
ODBC Driver Requirements
ODBC Conformance
ODBC Functions Used by USoft Applications
ODBC SQL Grammar
ODBC Scalar Functions
ODBC Scalar Data Types
USoft for Oracle
USoft for SOLID
USoft for Sybase
Available SQL Functions
Types of SQL Functions
USoft SQL Functions
ADD_DAYS SQL Function
CURRENT_DATE() Function
DATEDIFF_IN_DAYS() SQL Function
ELAPSEDQUERYTRANSACTIONTIME() SQL Function
ELAPSEDTRANSACTIONTIME() SQL Function
SESSION_ID() SQL Function
TIMESTAMP_TO_DATE() SQL Function
TO_CLOB() SQL Function
TRANSACTION_DATE() SQL Function
USERGROUP() SQL Function
RECORDS(n,m) SQL Keyword
Convertible SQL Functions
Non-Convertible SQL Functions
ODBC and SOLID-Only SQL Functions
MS SQL Server- and Sybase-Only SQL Functions
Oracle-Only SQL Functions
User-Defined SQL Functions
Pseudo Columns
XML and the Rules Engine
USoft XML Specification
XML Representation of Application Data
XML Representation of Application Data With Processing Instructions
XML Representation of Queries
Query By Form Definition
XML Representation of Date Values
Document Type Definition (DTD) Specification
XQuery
XQuery Example 1
XQuery Example 2
Rules-Driven Method Invocation (RDMI)
Components
Invoking Components
Possible USoft Contexts for INVOKE
When and How Many Times a Component Is Invoked
INVOKE: Example 1
INVOKE: Example 2
INVOKE: Example 3
INVOKE: Example 4
Component Construction
Stateless Components
Components with Session Lifetime
Components with Transaction Lifetime
Table Components
Parameters
Parameter Data Types
Modes of RDMI Parameters
InList Parameter Mode
How Parameters are Passed To and From Components
Standard Protocol and Query Protocol for Method Calling
When to Use the Query Protocol
How to Associate Methods with the Query Protocol
How the Standard Protocol for Method Calling Works
How the Query Protocol for Method Calling Works
Transaction Support
Error Handling for Transaction Components
Using RDMI
Using RDMI to Perform Calculations or String Operations
Example 1: Invoking a Randomizer
Example 2: Resolving an Email Address
Using RDMI to Check a Restrictive Rule
Example 3: Checking an Email Address
Using RDMI to Trigger External Actions
Example 4: Sending a Mail
Using RDMI to Connect Applications
Using RDMI to Process Multiple Return Values
Using RDMI to Integrate Legacy Data
Using RDMI to Check Complex I/O Formats
COM and DCOM Components (Automation Servers)
How to Define an Automation Server
Java Enterprise (J2EE) Components
Defining J2EE Components
Physical Constructors
Defining a Method
Passing Arguments to Methods
Method Lookup Wizard
Method Invocation Syntax
Limitations
Typecasts
Debugging J2EE Components
dotNet (.NET) Components
Defining a Component Using the RDMI Interface
Defining a Component Using C Sharp Code
Example: Tracing Information from a dotNet Application
Example: Calling a Method from a Library Created in an External DLL
Argument Type Mapping for dotNet
Static members
Application Data in dotNet Components
.NET-USoft Data Provider
RDMI Error Handling
Showing or Suppressing Component Error Messages
RDMI Error Messages
Component Tables
USoft Connector
Constructor SQL
Error Handling for USoft Connector Components
Internal Components
Internal Domain Components
The CheckValue Method of Internal Domain Components
RulesEngine Internal Component
RulesEngine.ExecuteStatement
RulesEngine.GetLastCaughtErrors
RulesEngine.GetLastCaughtErrorsAsXML
RulesEngine.GetProperty
RulesEngine.GetRegistry
RulesEngine.MessageLanguage
RulesEngine.MustExistExecuteStatement
RulesEngine.PreCommit
RulesEngine.RefreshAuthorization
RulesEngine.SetProperty
RulesEngine.SetTransactionMode
RulesEngine.SetUser
RulesEngine.SetUserGroup
RulesEngine.StartCatchingErrors
RulesEngine.StopCatchingErrors
RulesEngine.TranslateMessage
XML Internal Component
XML.CreateDTD
Example: Simple DTD Creation
XML.Export
Example: Simple XML Export
Example: XML Export With DTD Name And IO Formats
Example: XML Export For Update
Example: XML Export in Combination with USFile
XML.GenerateComplexType
XML.Import
Processing Instructions for XML Import
Reading from File with XML Import
Where to Use the XML Import Method?
How the XML Import Method Processes Row Elements
The Returning XML Document
Basic XML Formats for Import
Importing Parent-Child Data with XML Import
Importing Parent-child Data When the Parent Key is a Generated Value
Example: How to Transform a Parent-Child XML Document to the Required Import Structure
Example: Simple XML Import From Application Table
Example: Direct XML Import Verifying the Original Values
Example: Constraint Processing an XML Import
XML.Query
Example: Simple XML Query
Example: XML Query With Order By Attributes
XML.SQL2XML
XML.SQLStatementExport
XML.SQLExport
XML.SQLExport Example
XML.SQLExport Output Description
XML.SQLExport compared to XML.Export
USFile Internal Component
USFile.Close
USFile.EOF
USFile.Open
USFile.ReadBinaryFile
USFile.ReadLine
USFile.ReadTextFile
USFile.Write
USFile.WriteBinaryFile
USFormat Internal Component
USFormat.CharAddIOFormat
USFormat.CharRemoveIOFormat
USFormat.CharToDate
USFormat.CharToDouble
USFormat.CharToLong
USFormat.DateToChar
USFormat.DoubleToChar
USFormat.IsAlphanumeric
USFormat.IsXMLName
USFormat.LongToChar
USMeta Internal Component
USMeta.Tables
USMeta.Columns
USMeta.Relationships
USXSL Internal Component
USXSL.Apply
USXSL.Apply2File
USXSL.Node
USXSL.SetGlobalXsl
USXSL.SetXml
USXSL.SetXsl
USXSL.Value
Off the Shelf Components
Off The Shelf Component Descriptions
BIRT
Step 1: Download and Install BIRT Software
Step 2: Create a BIRT Report Definition File
Step 3: Import and Configure the BIRT Off the Shelf Component
Step 4: Start the USoft Rules Service
Step 5: Call the BIRT Component to Generate the Report
Parameterization of the BIRT Report Definition
Troubleshooting Your BIRT Connection
Calendar
CalendarTable
CredentialsCheck
EJBIIOP
ExcelTable
FileDialog
FilesTable
HTTPCALL
HTTPProxy
JdbcTable
JMSConnector
JVM
LDAP
MailFolder
PlaySound
OraUserTables
Properties
RandomTable
ScriptCall
SendMail
SMTPMAIL
SoapTable
TempTable
TextFile Components
XMLTable
XSL
How to View the Internal Description of an Off the Shelf Component
How to Import an Off the Shelf Component
Registering Off the Shelf Components in a Production environment
Web Service Components
Creating a Web Service Component
How to Import Web Service Definitions
Calling a Web Service Component
Calling a Web Service Using an INVOKE statement
Calling a Web Service Using a Component Table
Using XSL Transformations for Web Service Component Tables
The USoft Component Table XML Format
Finishing Creating a Web Service Component Table
Proxy Server Settings
How to Modify Existing Web Service Components
Web Service Component Details
Setting a Timeout Value when Calling a Web Service
DIME Messages Support
How to Implement DIME Messages
MTOM (Message Transmission Optimization Mechanism Support)
How to Create an MTOM Web Service Component
How to Change the Name of the Received Files
How to Automatically Generate a File Name for Received Files
Debugging Web Service Components
How to Enable BenchMark Profiling for a Web Service Component
The sendSoapMessage Function
Web Services
USoft as Web Service Provider
How to Define a Web Service and its Methods
Defining Parameters
Simple Type and Complex Type Parameters
Examples of Simple Type and Complex Type Parameters
Parameter Values and Domains
Rules For Parameter Values
Examples Of Parameter Values
Checking a Web Service Method
SQL Statement Details of a Web Service Provider Method
Detailed Web Service Settings
Generated Files
Namespaces
How to Define a Namespace for an XML Schema
Run-time Architecture of a Web Service
RPC-oriented Methods versus Document-oriented Methods
Differences Between RPC-oriented methods and Document-oriented methods
Web Service Examples
Web Service Example 1: RPC-Oriented Method with Simple Type Parameters
Web Service Example 1: Define a Web Service Provider
Web Service Example 1: Define a Web Service Component
Web Service Example 1: SOAP request and response messages
Web Service Example 2: RPC-Oriented Method with Simple Type Parameters Based on a Domain
Web Service Example 2: SOAP request and response messages
Web Service Example 3: RPC-Oriented Method with a Complex Type Parameter Based on a Domain with Allowed Values
Web Service Example 3: XML Schema Definition for an AGE type with Allowed Values
Web Service Example 4: Document-Oriented Method with Simple Type Parameters
Web Service Example 4: Step-by-Step Instructions
Web Service Example 4: SOAP request and response messages
Web Service Example 5: Document-Oriented Method with Complex Type Parameters
Web Service Example 5: XML Schema Definition for Scheduled Tours
Web Service Example 5: Step-by-Step Instructions
Web Service Example 5: SOAP request and response messages
Web Service Example 6: RPC-Oriented Method with Complex Type Soap Array Parameters
Web Service Example 6: Transforming Attributes to Child Elements
Web Service Example 6: XML Schema Definition for Scheduled Tours
Web Service Example 6: Step-by-Step Instructions
Web Service Example 7: Component Table with an Output XSL Transformation
Web Service Example 7: Define a Web Service Provider Method
Web Service Example 7: Define a Component Table to Access a Web Service
Web Service Example 7: XML Schema Definition for Tours
Web Service Example 8: Component Table with an Input XSL Transformation
Web Service Example 8: Step-by-Step Instructions
Web Service Example 8: SOAP request and response messages
Web Service Example 9: Web Service Executing a Batch Job
Web Service Example 9: Step-by-Step Instructions
WSDL
Example of a WSDL Document
Troubleshooting Web Services
Web Service Error Messages
Web Service Debugging Tips
Web Service Error Handling
Customized XML Error Messages
Example of a Customized XML Error Message
Example of USoft XML Error Messages
Importing a Web Service Provider from a WSDL Document
Modular Development
Modular Development
Modules
Composing Modular Applications
Running Modular Applications
The Module Field in USoft Binder
Modules as Plug-ins
Interface Providers
Table Interface Providers
Rules for Interface Providers
How To Define a Table as Interface Provider
How To Change an Interface Table into a Database Table
How To Remove a Column as Interface Provider
How To Define or Remove a Domain as Interface Provider
How To Define or Remove a Decision as Interface Provider
How To Define or Remove a Batch Job as Interface Provider
How To View All Interface Providers
Synchronizing Internal Interfaces
How To Import Internal Interfaces
The Travel Agency Application
Travel Agency Data Model
USoft Batch Guide
Introducing USoft Batch
Getting Started
Creating the USoft Batch Repository
Granting Yourself the Appropriate Rights
Starting the Definer
Using the Project Catalog
Project Catalog Batch Tab Page
Catalog Icons
Using SQL Definer
Jobs
Executing a Job from USoft Binder
Executing a Job from the Command Line
Executing a Job from within a USoft Web Application
Executing a Job from within a USoft C/S Application
Executing a Job from another Job
Executing a Job from a Constraint
BatchRunner Internal Component
Job Methods
BatchRunner.RunJob
BatchRunner.StartJob
BatchRunner.GetJobProperty
Predefined parameters for Batchrunner calls
Parameters and Variables
Job Output Parameters
Job Parameters as Import Task Variables
Import Task Set Virtuals Managing Decision Trees
Import Task Set Virtuals in Record-by-Record Computations
Logging
Error handling
Fatal Errors in Batch Jobs
Commit Type and Abort Mode settings
Task-Level Commit vs. Record-Level Commit
Error Handling and Abort Mode
Abort Mode and Commit Type Combinations
Tasks
SQL Tasks
Action Tasks
Export Tasks
Import Tasks
Import Task Status Files
Job Tasks
External Sets
File Formats
FIXED File Format
FIXEDVLE File Format
VARIABLE File Format
Comma-Separated Values (CSV) File Format
Record Separators
How to Compute Set Elements
External Sets for Export Tasks
How to Define External Sets and their Elements
Date Formats and Floating-Point Number Formats
Export Task Child Sets
How to Define HTML Sets
How to Specify HTML Set Attributes
Exporting Data to HTML Files
Layout Style
Navigation Style
Creating a Template
Using more than one layout
Viewing the Results
External Sets for Import Tasks
Driving Sets for Import Tasks
Import Task Set Virtuals
Example of an Import Task Set Virtual
User-Defined Tables for Import Tasks
Preparing to Use User-Defined Tables
Storing External Set Data in Tables
Advanced Techniques
Delayed Processing
Delaying Processing Using a Status Field
Delaying Processing Using Deactivation
Deactivating and Reactivating Checks and Constraints
Messages in SQL Tasks and Import Tasks
Reject tables
Defining a Reject Table
Transferring Error Status Data Into a Reject Table
Importing All Records Via a Reject Table
Detecting and Repairing Expected Import Errors Before Bulk Import
Working with external files
How to Import an XML File within a Batch Job
Recognizing External File Layout
Creating External File Layout
Lining Up Columns in an External File
Producing Header or Footer Lines in an External File
Working with parameters in import tasks
Scheduling
Store Batch Scheduler Information
Executing Jobs Scheduled Within a USoft Application
Scheduling Batch Jobs Using a BenchMark Procedure
Schedule Batch Processing with the Application Timer
Checking if a Job Should Run At All
Using a Decision to Check if a Job Should Run
Performance
Improving Import Task Performance
Improving SQL Task Performance
Disabling Rules
Improving Export Task Performance
Profiling Batch Jobs
The HTML Generator Test Drive
HTML Generator Test Drive
Installation Instructions
Step 1: Loading Sample Application Definitions
Step 2: Loading Sample Application Data
Step 3: Running Sample HTML Batch Jobs
Step 4: Exploring the Generated HTML Reports
Step 5: Exploring the Sample Data Model
Step 6: Defining a Simple HTML Batch Job That Extracts Data from One Table
Step 7: Running the Job and Viewing the Result
Step 8: Exploring the Generated HTML
Step 9: Defining More Complex HTML Batch Jobs That Extract Parent-Child Data
Step 10: Running the Job and Viewing the Result
Step 11: Defining a More Complex HTML Batch Job That Extracts Calculated Data
Step 12: Running the Job and Viewing the Result
Step 13: Customizing the HTML Template
Test Drive Background Information
Why Load Sample Application Definitions?
Why Load Data, and Why Load it by Means of a Batch Job?
Why Run Sample HTML Batch Jobs?
Why Explore the Sample Application Definitions?
Why Explore the Generated HTML?
Why Define More Complex HTML Batch Jobs?
USoft Developer Reference Guide
USoft Developer Reference Guide
Keyboard and Mouse Reference
Key Functions by Key
Key Functions by Function
Key Functions Available in Spreadsheets
Mouse Functions Available in Spreadsheets
Method Reference
Methods by Use Case
Methods for Starting and Stopping Applications
Methods for Performing Queries
Methods for Moving the Cursor between Records
Methods for Manipulating Data
Methods for Manipulating Controls
Methods for Communicating with the User
Methods for Manipulating Windows
Methods for Providing Help
Methods for Working with Files and Folders
Methods for Working with Resources
Methods for Dynamic Data Exchange (DDE)
Miscellaneous Methods
Methods for Communicating with the Operating System
Methods for Push Buttons
Methods for OLE/ActiveX Containers
Methods Supported in the Rules Service
Methods by name
About()
Accept()
ActionAllRows()
ActionControl()
ActionDecision()
ActionDialogApply()
ActionDialogCancel()
ActionDialogOk()
ActionDllExecute()
ActionDoNothing()
ActionRibbon()
ActionSelectedRows()
ActionStartJob()
ApplicationExit()
ApplicationLogin()
ApplicationProgressShow()
ApplicationProgressSet()
ApplicationProgressHide()
ApplicationRefresh()
CallMethod()
ChangeSql()
CommandSystemBackground()
CommandSystemForeground()
CommandWindows()
ComputerBrowse()
ComputeSet()
ControlAllowResize()
ControlDelete()
ControlFixColumn()
ControlSetActiveTab()
ControlSetFocus()
ControlSetInsensitive()
ControlSetSensitive()
ConvertAlternativeFormat()
Copy()
Create()
create-application-text-file()
create-conceptual-file()
create-system-message-file()
CurrentColumn()
CurrentField()
CurrentInfoBox()
CursorFirstRecord()
CursorGotoRecord()
CursorLastRecord()
CursorNextPage()
CursorNextRecord()
CursorPreviousPage()
CursorPreviousRecord()
Delete()
DataCommit()
DataRdbmsStatement()
DataReport()
DataRollback()
DataToClipboard()
DdeConnect()
DdeDisconnect()
DdeExecute()
DdePoke()
DdeRequest()
DdeStartAdvise()
DdeStopAdvise()
Drag()
ErrorRaise()
esi-create-schema-file()
FieldClear()
FieldDuplicate()
FieldPaste()
FieldSelect()
FileEdit()
FileExists()
FileOpen()
FileSaveAs()
FileSearchIn()
FolderBrowse()
FORMULA()
GetValueFromCurrentItem()
GotoCel()
HasFocus()
Help()
HelpOnAccelerators()
HelpOnControl()
HelpOnLastMessage()
HelpOnTable()
HelpRunWinhelp()
HelpWhatsThis()
InsertString()
ExecuteLookupMethod()
LookupAccept()
MenubarSetItem()
MenubarMarkItem()
MenubarAddItem()
MenubarDeleteItem()
MessageError()
MessageInformation()
MessageLanguage()
MessageQuestion()
MessageShowList()
MessageWarning()
Module()
Notify()
OnlineCall()
PageSetup()
PointerShowWaitstate()
PopupEditorDialog()
Print()
PrintDirect()
QueryAbort()
QueryDbCount()
QueryDefine()
QueryExecute()
QueryPrevious()
RdbmsDisconnect()
RecordClear()
RecordClearTable()
RecordClearWindows()
RecordCreate()
RecordDelete()
RecordDuplicate()
RecordRefresh()
RecordScrollTo()
RecordSelect()
RecordSelectAll()
RecordSingleView()
RecordStore()
RecordUndo()
RecordWrite()
RefreshConstraints()
RefreshList()
RefreshTree()
Rename()
ResourceFileUpdate()
RuleProfilerDescription()
RuleProfilerStart()
RuleProfilerStop()
Save()
Self()
Set()
SetDefault()
SetViewMode()
SetProperty()
Sort()
SqlDefiner()
SqlScript()
SQL Command settings
SqlSelect()
teamwork-export()
Unset()
UnsetDefault()
ValidateJob()
WindowArrange()
WindowAtMousePosition()
WindowCentreScreen()
WindowCentreWindow()
WindowClose()
WindowCloseAll()
WindowCreate()
WindowCreateLookup()
WindowCreateLookupDialog()
WindowCreateRelated()
WindowCreateSecondary()
WindowCreateSubtype()
WindowIconize()
WindowMinimize()
WindowObjectList()
WindowRestore()
WindowToClipboard()
WindowTransactions()
Deprecated Methods
ac-rel()
action()
action-other-control()
control-set-values()
set-values()
set-workarea()
Property Reference
Property Names vs Internal Names
Allowed Property Values vs Internal Resource Values
Properties by type
Properties by name
(NULL) Prompt property
Action property
Actions At Startup property
Adjust Change property
After SetUser property
After Usergroup Changed property
Alignment property
Allow Neighbor property
Allow Open Query property
Alternative Input Format property
Auto Expand property
Auto-commit property
Automatic Synchronization property
Auto-resize property
Auto-Tab property
Background Color property
Background Fetch property
Border Color property
Border Type property
Border Width property
Buffer Height property
Button Type property
Caption property
Catalog property
Chart Size (% Of Field) property
Check Count Query property
Check List property
Child Nodes property
Client Edge property
Client property
Column Alignment property
Column Headings property
Column Insertable property
Column Manager Class property
Column Widths property
Context Help property
Create on Demand property
Current Line Color property
Cursor Positioning property
Data Alignment property
Data Length property
Default Bind property
Default Value property
Deletable property
Detail Joined Columns property
Dialog Startup Actions property
Display All Subtype Indicators property
Display Class property
Display Foreign Key property
Display Length property
Display Text property
Display Type property
Displayed property
Double-click Action property
Early Save-local property
Echo property
Edit Method property
Edit Mode property
Expand Tree property
Expansion Level property
Extra Width For Label property
Fast Open property
Fast-Open Priority property
First Field on Create Record property
First Field on Data Manipulation property
First Field on Query property
Fix Column on Display property
Fixed Length property
Floor On Minimum property
Focus Type property
Foreground Bitmap property
Foreign Key Color property
Generate List property
Group Border Title Justify property
Group Border Title property
Group property
Height of Internal Buffer property
Height property
Help File property
Help Popup property
Help Topic ID property
Highlight Current Field property
Highlight Current Record property
Highlight Thickness property
Horizontal Cell Margin property
Horizontal Distance property
Horizontal Scrollbar property
Horizontal Spacing property
Iconic property
Idle Time-out Actions
Idle Time-out On Messages
Idle Time-out Time
Image property
Implement Scrollbar property
Include Subtype Presentations property
Initial Value property
Input Allowed property
Insertable property
Internal Height property
Internal Width property
IO Format property
Joined Columns property
Label Position property
Label property
Label Rotation property
Label Type property
Line Color property
Line Style property
Lock Parent On Sequence property
Lookup Method property
Mandatory property
Max Character Width property
Max Height property
Max No of Records Per Fetch property
Max Width property
Maximize Button property
Maximized property
Maximum No of Resident Windows property
MDI Child property
Menu Page property
Minimize Button property
Minimized property
Minimum Height property
Minimum Width property
Mnemonic property
Modal property
Mouse Pointer Shape property
Name property
No Action property
No of Decimals property
No Of Records Displayed property
No Of Records Displayed property (secondary info boxes)
Node-specific Menus property
Note property
Number Of Columns In Updates Property
Object Name property
On Change property
On Database Error property
On Empty Window property
Open Only Once property
Optimize Joined Column Fetch property
Oracle ROWID property
Order By property
Orientation property
Overlay Condition property
Overlay Image property
Page Title property
Pattern property
Popup Menu Page property
Position property
Post-change property (columns)
Post-change property (info boxes)
Post-close property
Post-create property
Post-delete property
Post-edit property
Post-fetch property
Post-insert property
Post-leave property
Post-open property
Post-rollback property
Post-update property
Pre-close property
Pre-commit property
Pre-delete property
Pre-exit Validation property
Pre-field-entry property
Pre-insert Validation property
Pre-record-entry property
Pre-update Validation property
Primary Key Color property
Primary Key Font property
Prompt For Edit property
Prompt For Fixed property
Prompt For Lookup property
Prompt property
Query Allowed property
Query Mandatory property
Query Some Mandatory property
Range Maximum property
Range Minimum property
Reflect Updates property
Refresh Changed Records property
Related Column property
Related Windows For Menu property
Relationships property
Resize Child property
Root Nodes property
Round Off Monetary Values property
Show Icons property
Show Message Numbers property
Show Root Lines property
Single Selection property
Sizable property
Sort Alphabetically property
SQL Query property
SQL Statement property
Startup Actions property
Static Edge property
Subtype Method property
Subtype Presentations property
Synchronize Lookup property
System Menu property
Tab Order property
Text Color property
Text Font property
Tick Mark Frequency property
Tick Mark Position property
Title property
Tool Window property
Topmost property
Transaction Mode property
Underlying Query property
Uniform Cell Width property
Unit Lines Primary Axis property
Unit Lines Secondary Axis property
Updatable Only if Null property
Updatable property
Uppercase property
Use Static Tables property
Value List Prompts property
Value List property
Values to Query property
Vertical Cell Margin property
Vertical Distance property
Vertical Scrollbar property
Vertical Spacing property
View property
Virtual Color property
WHERE clause property
Width property
Window Edge property
X Position property
Y Position property
Yes Action property
USoft Rules Engine Guide
Introducing the USoft Rules Engine
Business Rules in the Rules Engine
Getting Started with USoft Rules Engine
Rules Engine Behaviour
Transactions
Rules Engine Validation Moments
Row Events
Pre-Store, Store-Record, and Post-Store Operations
Violation List
Domain Checks
Rules Engine Behavior On Insert
Field Validation Before Insert
Group Validation Before Insert
Pre-Store Record Validation Before Insert
Post-Store Record Validation After Insert
Transaction Validation After Insert
Rules Engine Behavior On Update
Field Validation Before Update
Group Validation Before Update
Pre-Store Record Validation Before Update
Post-Store Record Validation After Update
Transaction Validation After Update
Rules Engine Behavior On Delete
Pre-Store Record Validation Before Delete
Post-Store Record Validation After Delete
Transaction Validation After Delete
Rules Engine Parameters
Rules Engine Optimisation Techniques
Lock and Commit Management
Smart Locking
Lock Parent on Sequence
Commit Management
Reasons for SQL Statements
Constraints and Constraint Handling
Overview of Constraints
Correct and Incorrect Constraints
Active and Inactive Constraints
Restrictive Constraints
Corrective Constraints
Impact Tree
Deferred Constraints
Including Comments in Constraints
Domain Constraints
DOMAIN Keyword
Single-Record Constraints
Restrictive Single-Record Constraints
Corrective Single-Record Constraints
Multi-Record Constraints
Restrictive Multi-Record Constraints
Corrective Multi-Record Constraints
Transitional Constraints
The OLD() Function
Transitional Constraint Examples
Transition Properties
Default Transition Properties
Resetting Default Transition Properties
Transitional Constraints Without OLD()
Differences Between Transitional and Non-Transitional Constraints
Points to Remember When Making Constraints Transitional
OLD() Value During Constraint Processing
Current Row Counting
Unwanted New Value Substitution
Recursive Constraints
Example: Recursive Constraint
Example: The OLD() Function and Constraint Recursivity
Time Constraints
The T_APP_TIME Table
The Application Timer
Starting and Stopping the Application Timer
Startup Constraints
When Constraints Are Evaluated
Constraint Evaluation: Overview
Corrective Domain Constraints: When Evaluated
Restrictive Domain Constraints: When Evaluated
Corrective Table Constraints: When Evaluated
Restrictive Single-Record Constraints: When Evaluated
Deferred Corrective Multi-Record Constraints: When Evaluated
Restrictive Multi-Record Constraints: When Evaluated
Constraint Evaluation and Field Validation
Constraint Evaluation, Record Validation and Record Storage
Constraint Evaluation and Commit
How to Define a Domain Constraint
How to Define a Table Constraint
How to Define a Delete Constraint
How to Define a Transitional Domain Constraint
How to Define a Transitional Table Constraint
How to Check Constraints
How to Comment on a Domain Constraint
How to Comment on a Constraint
How to View a Constraint's History
Constraint Handling
Row Checks
Constraint Tests
Tables in Constraints
Update On Self Constraints
Reparations
Constraint Evaluation Order at Record Validation Time
Constraint Evaluation Order: Summary
Pre-Conditions and Post-Conditions
Deactivation Between Constraints
Deactivation Between Incoming Data and Pre- and Post-Conditions
Update On Self Sorting
Driving Tables
How The Driving Table is Determined
Constraint Key Query
Primary Key Substitution of Manipulated Record
Multi-Record Constraint Handling
Relevant Values
Local Evaluation of Changed Record
Prevent Evaluation Twice
Performance and Tuning Tips
Window Startup
Save Workspace
Resident Windows
Fast Open
Fast Open Priority
Remove Automatic Query
Use Gridboxes
Create Tab Pages on Demand
Define properties at the highest possible level
Re-inherit your Settings
Querying
Use Static Tables
Define Additional Indexes
Do Not Allow Open Queries
Query Mandatory
Query Some Mandatory
Check Count Query
Synchronize Lookup
Use Screen Values
Optimize Joined Column Fetch
Remove Columns from Main Query
Limit Query Buffer Size
Data Manipulation
Tune the Number of Columns in Update Statements
When Not to Lock Parent Records
Transaction Mode (Sybase, SQL Server)
Tune Additional Parameters
Unique Key Checks
Record Facts Cache
Record Facts Cache Size
Maximum Prepared Checks
Optimize Changed Table
Query Combining
Change in Functionality With Query Combining
General SQL Tuning Tips
Number of Subqueries
Joins versus EXISTS
WHERE versus HAVING
Avoid Grouping (DISTINCT / GROUP BY)
Group By Parent Columns
Use Table Aliases
Use the SQL Definer
EXISTS versus IN
Used Indexes
Table Components
Extended Query Conditions
The Extended Query Conditions XML Document
Pre-Defined XSL Transformations
Fetching Component Tables
Fetching Component Tables: Example
Order of Querying Tables
Rules Engine Checks
Domain Checks
Field Validation Checks
Group Validation Checks
Record Validation Checks
Transaction Validation Checks
USoft Delivery Manager Guide
Introducing USoft Delivery Manager
USoft Delivery Manager and .Git
Getting started: Quick Walk-Through
Reviewing your development platform
Setting up Delivery Manager
Deciding on a location for Delivery Manager
Delivery Manager concepts
Database accounts
Applications
Computers
Release trees
Release properties
Tasks
Publications objects
Server objects
Deliverables and sections
Upgrade scripts
Processing order
Processing mode
Script status
Attachments
Contexts
Prepare
Release
Merge
Deploy
USoft routines
Utilities
Data management
Result types
Custom XSL
Delivery Manager basic procedures
Initialising a release tree
Creating a new release
Reverting to the previous release
Dropping a release tree
Writing an upgrade script
Archiving an upgrade script
Restoring an upgrade script
Including an attachment
Blocking an attachment
Defining a task category
Defining a task
Defining a task step
Setting a task step parameter
Running a task
Delivery Manager background information
Actions
Environments
Metadata, application data and authorisation data
Folder paths and file paths
Special folders
Path variables
Path variables in task step parameters of type SQL Command
Path variables in upgrade scripts
Path placeholders
Folder management principles
Running from flat files or repository
Best-practice task design
Delivering modules
Upgrade
Pre-upgrade scripts
Database upgrade script
Post-upgrade scripts
Added XSL
Stashing
Tips for testing stashing
Delivery Manager actions by name
Allow disable constraints
Apply custom XSL
Check objects
Clear and import from TDF
Compare appdata files
Copy file
Copy folder
Create flat files
Create folder
Create synchronisation file
Create tables from repository
Drop appdata
Drop file
Drop folder
Drop repository
Export all appdata
Export deliverable appdata
Export metadata
Export to TDF
Extract module names
Extract USoft version
Extract servers
Fill Authorizer tables
Generate create-tables script
Generate grants
Import appdata
Import metadata
Populate jobs list
Populate tables list
Publish publication object
Release create-tables script
Release custom folder
Release deliverable appdata
Release flat files
Release grants
Release metadata
Release publication
Release scripts
Release server
Run SQL command
Synchronize
Validate publication object
USoft Windows Designer Guide
Introducing Windows Designer
Windows Designer Tools
Windows Designer Catalog
Window Sets
Windows Designer Catalog Context Menus
Sharing Catalog Items
Design Views and Object Tree
Property Inspector
Object Activator
Property Sheets
The Find in Repository Dialog
Docking Windows
Concepts
Windows Designer Concepts
Actions
Actions Example 1: Automatic Query
Actions Example 2: Button Opening Related Window
Actions Example 3: Button Leading to Tab Page Sensitivity
Actions Example 4: Check Box Leading to Tab Page Sensitivity
Actions Example 5: Contrasting Field Color Based on Record Data
Actions Example 6: Dynamic Default Value
Actions Example 7: Passing a Value to Embedded Web Browser
Actions Example 8: Automatic Insert in Child Table and Related Box
Actions Example 9: Dialog for Search Conditions
Search Results Window
Search by Start Date Dialog
Actions Example 10: Catalog Node Leading to Data Query
ReservationsFromCatalog Window
Catalog Double-Click Action
Actions Example 11: Window with Separate Search Dialog
Find Existing Reservations Dialog
Reservations Window
Actions Example 12: Generic Search Dialog
Search Dialog
Reservations Window
Reservations Child Box
Base Columns, Column Display Objects, Output Columns and Variable Objects
Controls
Data Synchronization
Related Query Statements
Example: Grandchild Data Synchronization
Decisions for GUI
ESI Flat Files
ESI Reports
External Schema XML Export Files
ESI Sources
Understanding Synchronization
Dependencies Between Conceptual ESI Sources and Data in ESI Tables
Events
Interface Events
Click Button Event
Enter Field Event
Leave Field Event
Enter Record Event
Close Window Event
Open Window Event
Open Application Event
After SetUser Event
After Usergroup Changed Event
Data Events
Lookup-Change Field Event
Query-Change Field Event
System-Change Field Event
User-Change Field Event
User-Change Value Event
Create Record Event
Delete Record Event
Fetch Record Event
Insert Record Event
Update Record Event
Commit Transaction Event
Receive Database Error Event
Rollback Transaction Event
When a Record Is Stored
Event Order
Data Validation Order
Data Validation Failure
Extra Queries
Extra Query Example 1: Dynamic Background Color Change
Extra Query Example 2: Child Box Background Color Dependent on Parent Data
Alternative Keys for Related Objects
Extra Queries for Related Information
Computed Values in Extra Queries
Extra Queries vs Added Controls
FORMULA()
GUI Applications and Templates
Using GUI Applications as Templates
Creating Parallel GUI Applications Against a Data Model
Info Box Class Structure
Method Calls
Method Call Syntax
Method Calls versus Actions
Getting a Property Value Using a Method Call
Setting a Property Value Using a Method Call
Argument Types in Method Calls
Type Mismatches in Method Calls
Syntax of Complex Method Calls
Method Calls Embedded in SQL
Method Calls Between Windows
Permanent Window Interaction
The Created Window Affects the Calling Window
The Calling Window Affects the Created Window
Both Windows Affect Each Other
Clearing the Reference To a Closed Window
Example: Permanent Window Interaction between Bookings and Days
User-Defined Global Variables in Method Calls
System-Defined Global Variables in Method Calls
Modular Development
Calling Windows from Another Module
Modular Development of Application Menus
Multiple Inheritance
Objects
Container Objects
Properties
Development-time and Runtime Properties
Built-In and User-Defined Properties
Re-inheritance
Secondary Info Boxes
Synchronization Between Secondary Info Boxes and Master Info Boxes
SqlScript()
SQL Syntax
SQL Syntax Embedded in Method Call Scripts
Style Guide
Style Sheets and Generic GUI Classes
Controls for Style Sheet Option
Default Style Guide
Advantages of Using a Style Guide
Which Properties to Set in a Style Guide
System Colors
Default Font
Windows
Interaction Between Windows
Working With the Windows Designer
Working With the Windows Designer
How to Start the Windows Designer
How to Start a New GUI Application
How to Open an Existing GUI Application
How to Work with Templates
How to Make or Change a Template's Reuse Selection
How to Work from ESI Flat Files When Developing a GUI
How to Select and Open a Class
How to Select a Base Table Class
How to Delete or Rename a GUI Class
How to Select an Object in the Design View
How to Select the Parent of a Selected Object
How to Select Multiple Objects
How to Group Objects
How to Select Container Objects with the Selection Filter
How to Set Properties with the Property Inspector
How to Reset Properties
How to Open the Object Activator for an Event
How to Open the Object Activator as a Stand-Alone Editor
Using the Object Activator
Selecting an Object to Activate
Selecting a Method or Property to Call
Providing Method Call Parameter Values
Adding a Method Call to a Script
Using the New Property Dialog
How to Delete Method Calls
How to Define a Property
How to Remove a Property
How to Trigger an Action for an Event
How to Run a Window or Dialog
How to Save Your Design Efforts
How to Reset an Object
How to Refresh a Design view
How to Refresh Menu Definitions
How to Open a Property Sheet
How to Make a Class Read/Write
How to Make a Class Read-Only
How to Generate an ESI Report
How to Create an External Schema XML Export File
How to Import an External Schema XML Export File
Prerequisites for Importing an External Schema XML Export File
How to Generate an ESI Flat File
How to Quit the Windows Designer
How to Use the Windows Designer
Using the Windows Designer
How to Design Info Boxes
How to Create Info Box Subclasses
How to Design Dialogs
How to Design Controls
How to Insert Bitmaps
How to Change the Border Color of an Object
How to Change the Border Type of an Object
How to Insert a Close Button
How to Insert Two or More Buttons
Example: Creating a Button Group
How to Call a Lookup Dialog
How to Delete Lookup Buttons
How to Insert Controls
How to Insert a Bar Chart, Pie Chart, or Line Chart
How to Insert a Check Box
How to Insert a Dropdown List Box or Combo Box
How to Insert a List View
How to Add Icons to a List View
How to Set Column Headings and Column Widths in List Views
How to Add Overlay Images to a List View
How to Add or Change a List View's Popup Menu
How to Associate Actions with List Views
Adding Checkboxes to a List View
How to Insert a Slider
How to Insert a Spin Box
How to Insert Option Buttons
How to Insert Tab Pages
Example: Subtype Tab Pages
Tree Views
How to Insert a Tree View
SQL Statements Used in Tree Views
How to Add Icons to a Tree View
How to Add an Overlay Condition to a Tree View
Highlighting a Tree View Entry
Adding Checkboxes to a Tree View
How to Add a Popup Menu and Double-click Behavior to a Tree View
How to Expand a Tree View Initially
How to Add more than One Child Node to a Tree View Node
How to Refer to the Current Item of a Tree View or List View
How to Synchronize a Tree View or List View with an Info Box
How to Open a Window from a Tree View or List View
How to Make a Recursive Tree View
How to Define a Project Catalog
How to Add a Search option to a Tree View
Example: Creating a Project Catalog
How the Travel Agency Project Catalog Was Defined
How the Scheduled Tours Tree View Was Defined
How the Double-Click Action Was Defined
How Icons and an Overlay Condition Were Defined
How Menu Functionality Was Added
How the Persons Tree View Was Defined
How to Make Columns Non-displayed Dynamically
How to Insert Extra Queries
Example: Adding a Computed Column
How to Align Fields into Two or More Columns
How to Change the Order of Fields within Column Boxes
How to Determine the Space between Prompts and Fields
How to Make Fields Non-Displayed
How to Make Non-Displayed Fields Displayed
How to Highlight the Current Record
How to Call Your Own Windows
How to Call Your Own Lookup Windows
How to Call a SQL Command Dialog
How to Pass a Value to Another Window
How to Change the Tab Order of a Window/Dialog
How to Insert Additional Info Boxes
How to Use a Secondary Info box
Example: Secondary Window
How to Insert Joined Columns
How to Insert Related Info Boxes
How to Make an Object Resizable Within a Window or Dialog
How to Change the Orientation of an Object
How to Drag and Drop Objects within Containers
How to Define Spreadsheet Look
How to Change the Properties of Columns in a Spreadsheet
How to Change the Prompts of Spreadsheet Columns
How to Change the Width of All Cells in a Spreadsheet
How to Change the Color of Cells in a Spreadsheet
How to Change the Width of a Column in a Spreadsheet
How to Make a Spreadsheet Resizable
How to Disable Read-Only Color in a Spreadsheet
How to Add an Image to Record Selector Buttons in a Spreadsheet
How to Create a Style Guide
How to Use the Controls for Style Sheet Option
Menu Structure
Menu Structure Concepts
Breadth versus Depth
Different Entry Points for Different User Groups
State Sensitivity
Menus and Menu Options
Menu Catalog
Menu Class Structure
How to Define a Menu Page and its Options
How to Translate the Default Window and Help Menu Options
How to Duplicate a Menu Page
How to Make Menu Options State-Sensitive
How to Add a Button to the Toolbar
Creating a Bitmap
Checking out Which Menu Page and Option to Use
Adding the Button's Data to the Menu Option Definition
Checking out Authorization
Looking at the Result
Menu Conditions
ActiveX Support in USoft Developer
USoft Developer and ActiveX
ActiveX Objects in the Windows Designer Catalog
How to Insert an ActiveX Object
How to Create ActiveX Control Columns
ActiveX Control Property Dialogs
Using Method Calls with ActiveX Controls
USoft Developer and ActiveX: Examples
How to Create a Simple Dialog that Contains an ActiveX Control
How to Pass Values to and from an ActiveX Object
How to Call a Method of an ActiveX Browser Control
How to Create an ActiveX Control Column Bound to Base Column Values
ESI Action Interface
Introduction
Differences between the Windows Designer and the ESI Action Interface
ESI Object Model
ESI Object Model Compared to Other Models
Deducing the ESI Object Model from the Layout Model
Differences in Referring to Properties and Their Values
Implicit Controls vs Explicit Controls
Interface Actions
Executing ESI Actions
Available Actions
esi-add-component()
esi-add-info-window()
esi-add-subclass()
esideleteclass()
esideletecontrol()
esiinsertcontrol()
esi-new-application()
esi-open-application()
esi-save()
esi-set-attribute()
esi-set-class-property()
Notes
Frequently Asked Questions
Linking Help to Your Application
The Default Help
External Help File Types
How to Open a Help File
How to Make Context-Sensitive Help
How to Make a HTML Help File Containing Context-Sensitive Topics
How to Call Context-Sensitive Help from Objects in Your Application
How to Add a Help Button
USoft Web Designer Guide
Introducing Web Designer
Rules-Centred Architecture
A Jump Start: The Default Application
Development Tasks and Team Members
Model-driven, Rapid Application Development
Getting Started
Installing a Web Designer Development Environment On Windows
Installing a Web Designer Production Environment On Windows
How to Register the USoft Page Engine On Windows
Additional IIS and Component Services Settings
If you are Installing on Windows XP with Service Pack 2 (SP2)
Installing a Web Designer Production Environment On Unix
How to Start and Configure the Rules Service
How to Start the Rules Service on Windows
How to Start the Rules Service on Unix
How to Configure the Rules Service on Windows
How to Configure the Rules Service on Unix
How to Start Multiple Peer Rules Services
Rules Service Recovery
How to Run a Publication
Troubleshooting
Defining your Web Application with USoft Definer
Default Application
Default Menu
Default Info Pages
Default Lookup Buttons
Default Lookup Pages
Default Related Pages
Customizing Default Web Pages
Translating Your Application
How to Translate Application Strings
How to Add Translation for the Borrowed Strings
How to Translate System Messages
How to Specify the Language with Which to Run the Application
Configuring your Web Application with USoft Web Designer and CSS
Design-Time Tooling
The Web Designer Tool Interface
The Catalog
The Preview Pane
The Object Tree
The Property Inspector
The Find in Repository Dialog
Basic Design Operations
How to Open a Page From the Catalog
How to Open the Property Inspector
How to Set Properties With the Property Inspector
How to Reset Properties
How to Add a Control to a Page
How to Remove a Control from a Page
How to Access Web Designer Property Help
How to Change the Prompt or Label of an Object
How to Make Fields Non-Displayed
How to Include an Image
Design-time structure
The Object Containment Hierarchy
The Class Inheritance Hierarchy
Container Controls
How to Group Objects in a Container
How to Change the Orientation of Objects in a Container
How to Change the Order of Objects in a Container
Pages
Page Chaining
Page Stacking
How to Add a Navigation Path to a Page
How to Embed a Page in Another Page
Layout areas
Column Controls and Input Controls
Input controls by type
Replicated Columns Control
Data Sources
Embedded Data Sources
Data Source Path Syntax
Life Time Data Source Property
How to Define a Related Data Source
How to Define a Lookup Data Source
How to Insert a User-Defined Data Source
How to Define a Variable Set Data Source
Page and Data Source Constructs
Pattern 1: Search-and-Results on Single Page
Pattern 2: Search-and-Results Across Two Pages
Pattern 3: Save-and-Confirm Across Two Pages
Pattern 4: Master-Detail Form on a Single Page
Pattern 5: Master-Detail on Separate Search-and-Select and Edit Pages
Pattern 6: Re-used Embedded Page
Pattern 7: Customized Lookup Page
Pattern 8: Convert Lookup Page to Dropdown List
Pattern 9: Classic Joined Column
Scripting with Data Sources
The DefaultDataSource Placeholder
The getValue Placeholder
The getSearchValue Placeholder
The getDataSourceAlias, getThisDataSourceAlias and getMainDataSourceAlias Placeholders
The getWhereClause Placeholder
The getSelection Placeholder
The getExpression Placeholder
SQL Statements
SQL-related Properties
Limiting Search Results
Limiting the Number of Records Retrieved by a Query
Grouping Search Results
Sorting Search Results
Querying Data When a Page is Opened
Tree Controls and Tree Node Controls
TreeControl
TreeNodeControl
Grid Controls
Record Identification and Counting in Grid (Edit) Controls
Dialog Controls
Lookup Dialogs
Cascading Style Sheets (CSS)
Style Sheet Rules
How to Apply Style Sheet Rules
How to Define a Style Sheet Rule
Selectors in Style Sheet Rules
HTML Elements as Selector
Web Designer Classes as Selector
Web Designer Domain Classes
How to Add Domain Classes to the Default Class List
Where to Use Domain Classes
Web Designer IDs As Selector
Contextual Selectors
The Style Property specifying a CSS inline style
Example: The BODY Element
Example: The DIV Element
Example: The ButtonControl Class
Example: The InputControl Class
Example: Highlighting Mandatory Fields
Record Coloring in Grid Controls and Grid Edit Controls
Reusing Existing Style Sheets
How to Set the Class List or Id of an Object
How to Set the Default Class of an Object
Example: Setting a CSS Property For a Group of Objects
Example: Attaching One Control to Multiple CSS Classes
Web Menus
Web Menus Quick Start
Reverting to the Default Menu
Defining a Menu
Displaying a Menu in Your Application
Adding Authorization to Menus
Menu Design Issues
Menu ESI Class Structure
How to Use Images in Web Menus
How to Execute a JavaScript function from a Web Menu
How to Include a Non-Clickable Web Menu Item
Location of Files that Affect Menus
Sharing Menu Pages and Controls between Repositories
Messages
How to Include a Message Area
Sharing Catalog Items
How to Display Data as Hyperlink
Setting a Variable Set with the URL Protocol
How to Make a Page Read-Only
Finishing your Web Application with JavaScript
AJAX Technology
Scripting Example 1: The Period Case
Scripting Example 2: Client Check on a Mandatory field
Script scope
How to Add a Script to the Application
How to Add a Script to a Page
How to Add a Script to an Object
Events and Actions
Event Listeners and Actions
How to Insert an Event Listener
How to Insert an Action
How to Change the Parameters of an Action
Calling Info Pages with URL Query Parameters
Special Characters in URL Query Parameters
Host Variables
The caller Keyword
Publishing your Web Application
The Web Designer Stack
Web Publications
Published JSON files
Published XML Files
Published Server Pages (ASP or JSP Files)
Published global.asax File
Cascading Style Sheets
The CustStyle Style Sheet
The WRClasses Style Sheet
The XSLSource Style Sheet
The Combined.xml File
Runtime Server Components
The Web Server
The Page Engine
The Rules Service
Rules Service Start-Up Parameters
Rules Service Configuration Parameters
Peer Rules Services
The Rules Engine
Active Web Browsers
The Initial Document: "application.html"
Contexts
Client Sessions
Frameworks
Supported browser versions
Authentication
Authentication for Client/Server Applications
Authentication for Web Applications
Identifying Users
The Validation Agent for a Web Application User
Web Server Validation of Credentials
Web Application Validation of Credentials
Publication Configurations
The Publication Configuration Window
Publication Attributes
System-Defined Publication Properties
User-Defined Publication Properties
Referring to Publication Settings
Publishing and Page Management
Page Sets
How to Define a Page Set
Page States
How to Create a New Publication Configuration
How to Publish Pages
How to Change an Existing Publication Configuration
How To Apply A Different jQuery Theme
The Alternative Template Folder
Reference Section
USoft DB (UDB) Library
udb Function Object
udb()
.acceptLookupValue()
.cancelWindow()
.checkData()
.checkVersion()
.clearGenericHostVars()
.closePage()
.commit()
.currentPageName()
.currentPageNavigationSource()
.currentPageStackDepth()
.executeInContext()
.executeSQLStatement()
.genericHostVar()
.getContext()
.getMenu()
.groupRequests()
.hostvars
.isCommitted()
.isTransactionChecked()
.login()
.logout()
.mainPageName()
.navigateTo()
.navigateToLookup()
.navigateToRelated()
.off()
.on()
.ping()
.rollback()
.setTimeOut()
.settings
.showLogin()
.status.loggedIn()
.status.logonRequired()
.trigger()
udbMeta Function Object
udbMeta()
.alias()
.children()
.cols()
.currentDataSet()
.dataSetSize()
.each()
.hasChild()
.hasCount()
.hasLookup()
.id()
.initialState()
.isAutoQuery()
.isDefault()
.isDeletable()
.isDistinct()
.isFirstRecordDefaultSelected()
.isInsertable()
.isJoined()
.isLookup()
.isOnEmbeddedPage()
.isUpdatable()
.joins()
.keyCols()
.lifeTime()
.lookupRefs()
.lookups()
.name()
.orphanDataSource()
.pageAlias()
.parents()
.path()
.realDataSource()
.relations()
.sortOrder()
.table()
.type()
DataSourceContainer object
.clear()
.clearQuery()
.createRowSet()
.each()
.executeQuery()
.gotoDataSet()
.meta()
.off()
.on()
.refresh()
.rowCount()
.rowCreate()
.rows()
.rowSet()
.searchCols()
.trigger()
Rowset object
.clear()
.dataSet()
.dataSetIndicator()
.dbCount()
.each()
.execute()
.gotoDataSet()
.indexOf()
.isEmpty()
.isQueried()
.keysString()
.keyValues()
.numberOfDataSets()
.position()
.range()
.rowCount()
.rows()
.select()
.sort()
Rows object
.cols()
.each()
.index()
.isInserted()
.joinedVal()
.keys()
.keysString()
.keysXML()
.mark()
.mark( value )
.refresh()
.rowDelete()
.rowId()
.rowRemove()
.select( options )
.select( "multiple" )
.select( "multiple", value )
.status()
.values()
ColsMeta object
.alias()
.defValue()
.displayLength()
.domain()
.getForeignKey()
.ioFormat()
.isEmbeddedColumn()
.isGroupBy()
.isInputAllowed()
.isKey()
.isMandatory()
.isPrimaryKey()
.isUpdatable()
.label()
.name()
.sortOrder()
.type()
.valueList()
Cols object
.clear()
.each()
.meta()
.val()
UDB UI layer
.title()
.wait()
Data Source Path Syntax Reference
USoft UI Library
GUI Elements (Controls)
Factories
Creating a New Control Factory
Changing an Existing Control Factory
Factory Members
Handlebars
attr helper
preview helper
rule helper
translate helper
now helper
Render
Events
Field Validation
Localisation
Events Reference
Top-level Events
before... events
postcommit event
timeout event
Data Source Events
colpreupdate event
colpostupdate event
dataset event
rowquery event
rowselect event
before... and rowpre... events
Control Events
lookup event
value event
Custom events
USoft 8 Functions (Deprecated)
acceptLookupValue()
callClientScript()
cancelWindow()
checkData()
clearQueryConditions()
closePage()
commit()
createRecord()
deleteRecord()
executeQuery()
executeSQLStatement()
getDataSet()
getRecordCount()
getSearchValue()
getTotalNrOfDataSets()
getTotalNrOfRecords()
getValidateValuesResult()
gotoDataSet()
handleEvent()
login()
logout()
navigateTo()
navigateToLookup()
navigateToRelated()
nextDataSet()
nextRecord()
previousDataSet()
previousRecord()
refresh()
refreshRecord()
rollback()
setFrameURL()
setSearchValue()
setValue()
submitUserAndPassword()
uwa.groupRequests()
validateValues()
Upgrading from USoft 8
USoft Service Definer Guide
Introducing USoft Service Definer
Introducing the USoft Services Platform
Technologies Used in USoft REST
Getting Started: Quick Walk-Through
USoft Service Definer Objects
Servers
Server Administration settings
Server Security settings
Server properties
Applications
Defining an application
Connections
Defining a connection
Multiple connections and Rules Services
REST Services
SOAP Services
Services (Other)
Classes
Structures
SQL Statements
Annotations
CORS Configurations
Using Predefined REST services
Getting Table and Column Information with USoft Table Resource
Retrieving data with USoft Table Resource
Adding data with USoft Table Resource
Updating data with USoft Table Resource
Deleting data with USoft Table Resource
Calling a Batch Job with USoft Job Resource
URL Query Parameters in Predefined REST Services
Designing REST Services with USoft
Setting up your own REST service
Designing REST methods
Designing Input Parameters
Input Parameters in the URL Path
Input Parameters in the URL Query String
Input Parameters as Matrix Parameters
Input Parameters as HTTP Headers
Designing Request Messages
Designing Response Messages
Designing Error Handling
Generating REST Services from SQL
Example: a REST service for retrieving data (SELECT)
Example: a REST Service for adding new data (INSERT)
Example: a REST Service for manipulating data (UPDATE)
Example: a REST Service for returning manipulated data
Example: a REST Service for deleting data (DELETE)
Designing SOAP Services with USoft
Setting Up Your Own SOAP Service
Choosing a SOAP service type
Designing SOAP methods
Designing Service-Specific Interfaces
Modular Service (REST, SOAP) Development
Other topics
Versioning custom REST services
Versioning predefined REST services
Exposing REST services
Calling a REST service without committing
Logging and tracing servers, services and classes
Deriving structures from SQL statements or tables
Java interface for USoft Service Definer
Utility functions for REST and SOAP Default Providers
openConnection()
sql()
Java output classes returned by Sql()
Generic utility classes
USoftService object
USoftService example code
Deprecated functions, classes and methods
USoft BenchMark Guide
Introducing USoft Benchmark
Fully Automated Testing
Recorder
Player
Wizard (BenchMark)
Profiler
Tracer
Test Procedures
Test Procedure Editing
Test Checks
Status Checks
Procedure Checks
Property Step Checks
Note Step Checks
Test Data Management
Automating the Maintenance of Test Data
Reasons for SQL Statements
Violation Reports
Constraint Violation Report Structure
Report Configurations
BenchMark Guidelines
Resident Cache
Transaction Performance
Ignoring Import Errors
Using USoft BenchMark
How to Create the USoft BenchMark Repository
Starting USoft BenchMark
How to Start USoft BenchMark together with Your Application
How to Start USoft BenchMark from within Your Application
How to Start USoft BenchMark from the USoft Binder
How to Generate a Test Procedure with the Wizard
How to Record a Test Procedure
How to Record a Subprocedure
How to Record a Property Step Check
How to Record a Note
How to Define a Test Keyword
How to Edit a Test Procedure
How to Use External File Data within a Test Procedure
How to Define a Test
How to Play a Test
How to Inspect the Log Files from Previous Tests
How to Play a Test at Application Startup
Interpretation of Profiles
Test Profiles
Profile Groups
Preparing a Profile
Execution Elements
Execution Tree
SQL Statements Grouped by Source
Manipulations
View on Manipulation
Manipulation Tree
Statistics
Index Hints
How to Obtain Index Hints from the Test Database
How to Obtain Index Hints via the Test Profiles Window
Using Profiles
How to Make a Profile of Interactive User Actions
How to Make a Profile while Playing a Test
How to Make a Profile using the Stand-alone Profiler for Batch Jobs
For example
How to Make a Profile using the Stand-alone Profiler from Within Another Application
Tracing SQL Statements and Method Calls
Tracer Window: Tracer Tab Page
Tracer Window: Options Tab Page
How to Trace SQL Statements and Method Calls
How to Maintain Application Data for Test Purposes
How to Automate the Maintenance of Test Data
How to Drop Undefined Tables and Sequences
Using Violation Reports
How to Create a Report Configuration
How to Exclude a Constraint from a Violation Report
How to Exclude a Relationship from a Violation Report
How to Create a Violation Report on Relationships or Constraints
How to Create a Column Violation Report
How to View a Violation Report on Relationships or Constraints
USoft Repository Manager Guide
Introducing USoft Repository Manager
How to Prepare for Using USoft Repository Manager
How to Create the USoft Repository Manager Repository
How to Define Folder Locations
How to Load USoft Repository Data
How to Load Sample Templates
Concepts
XML Repositories
Repository Definitions, Versions, and XML Repositories
Repository Versions
How to Define a Repository Definition
How to Define a Repository Version
How to Export a Definer Repository
How to View a Definer XML Repository
How to Export an Authorizer Repository
How to View an Authorizer XML Repository
Comparisons
The XML Difference Report
Comparing XML Repositories
The Generated PDF Difference Report
The Generated USoft Import XML Document
How to Compare Two Definer Repositories
How to Compare two Authorizer Repositories
How to View Comparison Results
Repository Baskets
Repository Baskets
How to Define a Repository Basket
How to Export a Repository Using a Basket
Releases
Releases
How to Define a Release
How to Export a Release
How to Freeze a Release
How to Compare Two Releases
How to Compare a Release With Its Backup
Patches
How to Define and Create a Patch
Application Models, Baskets, and Releases
Application Models
How to Generate an Application Model
How to Change the Export Model of an Application
How to Export an Application
How to View an Exported XML Application
How to Export an Application Table
Application Baskets
How to Define an Application Basket
How to Export an Application Using a Basket
Application Releases
How to Define an Application Release
How to Export an Application Release
How to Compare Two Application Releases
Task Sets
Task Sets
Example of a Task Set
Tasks within a Task Set
How to Define a Task Set
USoft Remote Rules Service API Guide
Introducing USoft Remote Rules Service API
How the USoft Remote Rules Service API Works
Data Sources
Configuring the USoft Remote Rules Service API
Introduction
How to Configure a User or System Data Source (Microsoft Windows Platforms)
How to Configure a File Data Source (Microsoft Windows Platforms)
How to Define Additional Data Sources
Setting Up a Connection in Applications
Troubleshooting
Error Messages
ODBC 3.5 Components
ODBC Reference
Supported ODBC Functions
Supported SQL
ODBC Conformance
ODBC Error Messages
Online Documentation
Additional Information
ADO
ADO
ADO Architecture
Product Requirements for using ADO with USoft
Setting Up the ADO - USoft environment
Scripting an Application Using ADO
Examples
Salary Increase from a Visual Basic Script
Tour Reservation from Active Server Pages
The Remote Rules Service Configuration Dialog
The Remote Rules Service Configuration Dialog
Data Source Name (ODBC)
Data Source Description (ODBC)
Application Name (ODBC)
Hostname or IP
Port
Use TLS
User/Password
Timeout
Single Record Fetch
Tracing
USoft Installation Guide
Installation Overview
Installing the database product
Installing USoft product components
Development Environment
Installing USoft Developer
Installing a USoft Development Repository
Creating USoft Authorizer Tables
Creating USoft Definer Tables
Creating USoft Benchmark Tables
Creating USoft Service Definer Tables
Creating USoft Repository Manager Tables
Authorising Team Members
Production Environment
USoft Production
Application Built with USoft
USoft Application Tables
Installing Your Application on a Server
Running Applications in the Production Environment
Configuring IIS for USoft
Installing the USoft Page Engine
Shutting down the USoft Page Engine
Installing a USoft Rules Service
Silent Installation
Log Files and Temporary Files
USAPI.DLL
USoft License Management
Terminology used in License Management
Installing a Server based License
How to Start and Stop the License Daemon:
How to Start and Stop the License Server as an NT service:
Installing an Evaluation License
Replacing a License File
Checking the Licensed USoft Products
Troubleshooting License Problems
FLEX License Management Software
Three-Server Redundant License Servers
Server Node Configuration
Generating a License File for Redundant Servers
Example
Uninstalling USoft product components
Uninstalling the USoft Page Engine
Uninstalling a USoft Rules Service
Uninstalling USoft Developer
System Requirements
Hardware Requirements: CPU
Hardware Requirements: Distribution Media
Hardware Requirements: Display
Hardware Requirements: Disk Space
Hardware Requirements: Memory
Software Requirements: Operating System
Software Requirements: Environment Variables
Software Requirements: Networking Software
Software Requirements: Checking WRITE Access for TMP and TEMP directories
RDBMS Requirements
Oracle Requirements
Supported Versions of Oracle
Oracle Network Software for Client PCs
Creating USoft Developer Tables in Oracle
Oracle Table Space
Oracle PL/SQL
ODBC Requirements
ODBC Driver Requirements
ODBC Conformance
CONFRMNC.EXE (ODBC)
Microsoft SQL Server Requirements
Supported Versions of Microsoft SQL Server
Microsoft SQL Server Client Utilities
Microsoft SQL Server: Server Installation Notes
Web Designer Users and Microsoft SQL Server
Repository Owner in Microsoft SQL Server
USoft Upgrade Guide
Upgrading to USoft 9
Step 1: Backup
Step 2: Violation reports of source repository
Step 3: USoft 9 installation
Step 4: Action list
Step 5: Upgrade procedure
Step 6: Violation reports of target repository
Step 7: Clean Up After Upgrade procedure
Step 8: Test
Violation reports during upgrade