ASNA.QSys.Runtime Classes

Estimated reading time: 14 minutes

Remarks

The ASNA.QSys.Runtime assembly contains a collection of classes that are integral to the operation of the ASNA QSys system. These classes provide a range of functionalities, from handling arrays and built-in functions according to RPG semantics, to managing database connections and performing operations on data files.

The classes in this assembly are designed to work together to provide a comprehensive set of tools for interacting with the ASNA QSys system. They encapsulate complex operations into easy-to-use methods, making it easier for developers to build robust and efficient applications.

Here are some key points to remember when working with these classes:

  • Interoperability: These classes are designed to work seamlessly with each other, providing a consistent and predictable interface for developers.
  • RPG Semantics: Many of these classes provide methods that follow RPG programming patterns, making it easier for developers familiar with RPG to use them.
  • Exception Handling: Several classes are dedicated to handling exceptions, providing detailed error information that can help with debugging and error handling.
  • Database Operations: There are classes that manage database connections and perform operations on data files, abstracting the complexities of these tasks away from the developer.

Remember to refer to the individual class documentation for specific details about each class’s behavior, usage, and special considerations.

Type Description
ArrayMethods Contains extension methods for handling Arrays according to RPG semantics.
BadRecordNameException Exception thrown when a bad record name is encountered when constructing a WRF (Wings Record Format).
BuiltInMethods Contains extension methods for handling Built-in functions according to RPG semantics.
BuiltInSupport Contains static methods to perform certain RPG Built In functions.
Call Provides functionality to handle calling a program residing in an IBMi server.
CallDSupport Provides methods to construct Omissible and Optional parameters for CALLD
CannotCallException Exception thrown when trying to use a multidimensional multi data structure in a CALL.
CharacterMethods Contains extension methods for Char (onechar/indicator) conversions.
CharTypeAttribute A non-RPG class may stamp a string member with this attribute to be considered as a fixed-sized character field by a consumer RPG program.
ConnectionNotOpenException File -filename- cannot be opened because a connection to database -database- has not been established exception.
Convert Converts a base data type to another base data type, using RPG type conversion rules.
CurrentFormatException -Format name- is not the current record format in the DataSet exception.
DataAreaManager Handles DataArea operations.
DataAreaNotLockableException DataArea Exception issued when a DataArea fails to Unlock.
Database Handles connections to a Database.
DatabaseCycleFile Database file that participates in the RPG program Cycle. When a Cycle file record is read from the Database,the file buffer values are not immediately copied into the program fields. The RPG cycle explicitly issues a LoadBuffer callat the proper time within the cycle to load the buffer into the program fields.
DatabaseFile Represents a single format Database data file. It contains methods to handle all Input and Output operations on the file.
DatabaseFileBase Common base class for Database data files, single format and multiformat. It contains methods common to both kinds.
DatabaseFileExtensions Defines a collection of extension methods to aid in operating with the file’s dataset.
DataGateException DataGate operation on file -filename- caused -datagate exception- exception.
DataStructure Contains the functionality to support the semantics of a RPG Data Structure with a memory layout.
DateTimeMethods Contains extension methods for handling Date/Time/Timestamp conversions.
DateTimeOps Defines operations with RPG semantics on System.DateTime values.
DateTimeTypeAttribute A non-RPG class may stamp a System.DateTime member with this attribute to be considered as a fixed-sized date/time/timestamp field by a consumer RPG program.
DecimalMethods Contains extension methods for handling RPG operations for decimal numbers.
DecimalOps Provide fixed length decimal storage and operations.
Dim<T1, T2, T3> Defines a 3-digit dimension, from 100 to 999, to be used in the declaration of fixed-length array types.
Dim<T1, T2, T3, T4> Defines a 4-digit dimension, from 1000 to 9999, to be used in the declaration of fixed-length array types.
Dim<T1, T2, T3, T4, T5> Defines a 5-digit dimension, from 10000 to 99999, to be used in the declaration of fixed-length array types.
DimArrayTypeAttribute A non-RPG class may stamp an array member with this attribute to be considered as a fixed-sized array by a consumer RPG program.
DimensionAttribute A non-RPG class, property or field may be stamped with this attribute to indicate a consumer RPG program to consider it as an array with the specified dimension.
DSArrayField Describes a Data Structure field that is an array.
DSCallParm Describes a Data Structure (either single or Multi) as a parameter for a CALL to an IBMi program.
DSDataArea Describes and manages the use of a Data Structure as a Data Area value.
DSField Describes a field in a Data Structure.
DSLengthAttribute A non-RPG class may be stamped with this attribute to indicate a consumer RPG program to consider it as a Data Structure with the specified length.
DSParameter Describes the datastructure parameters sent into an IBMi program call.
DuplicateFieldException Field -field- was specified more than once in -specification- exception.
DynamicCaller Support for CALLD as a dynamic call.
DynamicReferenceAttribute Declares an assembly to be used as a dynamic reference, which will be queried at runtime to find CALLD targets.
EditCode Provides methods for applying and manipulating edit codes, which define output formatting patterns for business numeric data.
EditWord Provides methods for applying edit word parameters to numeric values, including formatting and manipulating the output string based on specified patterns.
EndOperationException Defines the core behavior of the the base class that is thrown to unwind the program call stack.
EndRequestException The exception that is thrown for an EndRequest operation.
FieldNotFoundException -Field name- was not found in format -record format name- of -filename-.
FileAlreadyOpenException File -filename- is already open exception.
FileBase Defines common functionality for files (Database, Printfile, Workstation)
FileNotOpenException File -filename- is not open exception.
FixedArrayMethods Contains extension methods for handling FixedArrays according to RPG semantics.
FixedDateMethods Contains extension methods for handling RPG operations for FixedDate values.
FixedDecimalMethods Contains extension methods for handling RPG operations for FixedDecimal values.
FixedDecimalTypeAttribute A non-RPG class may stamp a decimal member with this attribute to be considered as a fixed-sized decimal field by a consumer RPG program.
FixedStringComparer Provides a comparer for fixed-length strings, allowing for consistent comparison of strings with fixed lengths.
FixedStringMethods Contains extension methods for handling RPG operations for FixedString values.
FixedTimeMethods Contains extension methods for handling RPG operations for FixedTime values.
FixedTimeStampMethods Contains extension methods for handling RPG operations for FixedTimestamp values.
FloatMethods Contains extension methods for handling RPG operations for floating point numbers.
GetObject Class that contains methods to construct certain RPG objects.
GlobalFlagProperty GlobalFlagProperty class.
GlobalFlags Holds the application flags that correspond to RPG’s %ERROR, not %FOUND, %EOF, and %EQUAL. These flags are local per thread.
HexMethods Contains extension methods for handling RPG conversions between character strings and their hexadecimal representation.
InconsistentOpenAttributesException The following Open attributes were inconsistent with the Query File: -attributes- exception.
IndicatorMethods Contains extension methods for handling RPG operations for Indicator values.
IndicatorTypeAttribute A non-RPG class may stamp a char member with this attribute to be considered as an indicator field by a consumer RPG program.
InfSrException Exception that can be thrown from InfSr to return or report an error condition.
IntDigitSize Constants for the size of integers, in digits.
IntegerMethods Contains extension methods for handling RPG operations and conversions for Integer (2, 4, and 8-byte long) values.
InvalidCodePageForVirtualTerminalException Code page 0 is not valid when starting interactive job without server support.
InvalidDataAreaTypeException DataArea Exception issued when the DataArea type is not valid.
InvalidDSFieldsException Exception that is thrown when a data structure contains a field of a not supported type.
InvalidFileOperationException Invalid Operation: -operation- on file: -filename- exception.
InvalidInputAttemptException Invalid input attempt on format : -record format name- on file: -filename- exception.
InvalidKeySpecException Key part -name- is invalid exception.
InvalidRecordFieldsException Record Format contains fields with types not compatible for this operation exception.
InvalidRRNException Invalid RRN Value: -rrn- on file: -filename- exception.
InvalidSourceLengthException Length of source is less than length of data structure exception.
InvalidVirtualTerminalException Virtual Terminal value -mode- is not supported exception.
JobShutDownException The exception that is thrown to end a job.
Len<T1, T2, T3> Defines a 3-digit length, from 100 to 999, to be used in the declaration of fixed-length types.
Len<T1, T2, T3, T4> Defines a 4-digit length, from 1000 to 9999, to be used in the declaration of fixed-length types.
Len<T1, T2, T3, T4, T5> Defines a 5-digit length, from 10000 to 99999, to be used in the declaration of fixed-length types.
LibraryListException There was an error of type -error- while trying to modify the library list.
LocalScopeDS Base class that contains functionality to support locally scoped data structures.
LocalScopeMultiDS<T> Contains functionality to support locally scoped multiple occurrence data structures. A LocalScopeMultiDS object contains an array of LocalScopeDS objects.
MemUnit Defines methods to handle RPG MOVE semantics.
MessageFileReader Provides the contents of a message file.
MissingFormatException The program was compiled to use format -format-, but it was not found in file -filename-.
MODSRankAttribute A non-RPG class may be stamped with this attribute to indicate a consumer RPG program to consider it as a Multiple Occurrence Data Structure with the rankindicated in this attribute.
MultiDataStructure Contains functionality to support multiple occurrence data structures.
MultiFormatDatabaseFile Represents a multiformat Database data file. It contains methods to handle all Input and Output operations on the file.
NetworkBlockingOutputException Network Blocking is not allowed for *OUTPUT if CacheWrites is *NO on file -filename-.
NetworkBlockingUpdateException Network Blocking is not allowed for -filename- because it is opened for *UPDATE.
NonexistentDataAreaException DataArea Exception issued when requesting a non-existing DataArea.
NoPassOmit<T> Encapsulates a *OMIT wnd *NOPASS parameter.
NullCapableFieldAttribute A non-RPG class may stamp a property or field member with this attribute to be considered as a null capable field by a consumer RPG program.
Omissible<T> Encapsulates a *OMIT parameter.
OpenSimpleQueryFileException An invalid QryKeyFlds string format has been entered.
Optional<T> Encapsulates a *NOPASS parameter.
OSExecute This class contains methods to start an external process.
Parameter Describes a parameter sent into an IBMi program call.
ParameterOptions<T> Represents the base functionality of the special RPG parameters *OMIT and *NOPASS
PrintFile Represents a Database print file. It contains methods to handle all Output operations on the file.
PrintFileBase Base class for Database print files. Contains the print file setup information and some output operations.
ProcedureSupport Provides static methods to support finding a class used in dynamic calls (RPG’s CallD).
ProgramEntryAttribute A non-RPG class may use this attribute to indicate which method in it corresponds to RPG’s *ENTRY.
ProgramIndicatorsAttribute For a non-RPG class to be used as the base class of an RPG class (AVR or Encore), this attribute indicates the name of the *INLR, *IN, and *INRT indicators.
QueryFileNotOpenException Query File -filename- is not open exception.
QueryKeyFieldsLengthException Expecting a string in the format: ‘VALUE1 ORDER1 … VALUEn ORDERn’.
QueryKeyFieldsUsageException Expecting: ‘ASCEND’, ‘DESCEND’ or ‘*ABSVAL’ but found -usage- exception.
RecordAlreadyExistsInSubfileException Record already exists in subfile: -subfile record name- exception.
RecordAsBuffer Defines operations to move data between a file record, a row in a dataset, and a string buffer.
RecordFormatAttribute A non-RPG class may stamp a field with this attribute to be considered as a record format by a consumer RPG program.
RequiredOpenConnectionException Operation not available on un-opened Database -database name- exception.
Return RETURN operation is implemented as a long jump using the exception catching C# mechanism.
RowAddedEventArgs Holds information that the RowAddedEvent requires.
RowAddedEventHandler Event raised when a row was added to a subfile.
RowInsertedEventArgs Holds information that the RowInsertedEvent requires.
RowInsertedEventHandler Event raised when a row was inserted in a subfile.
RpgTypeExtensions Provides extension methods for RPG types, including methods for moving and manipulating fixed-length strings and decimal numbers.
RuntimeException Base class for all ASNA QSys Runtime generated exceptions.
StringMethods Contains extension methods for handling RPG operations and conversions for string values.
StringOps Provide fixed length character string storage and operations.
Table<T> Supports RPG’s table type by encapsulating an array and providing it with an implied index through the use of the CurrentElement property.
TableMethods Contains extension methods for handling Table RPG semantics.
TooManySubfileRecordsException Record -rrn- does not fit in subfile -subfile name- on file -filename- exception.
TransactionNotStartedException The transaction has not been started exception.
TypeDigestor Contains methods that aid in the parsing of the generic type arguments of fixed-sized types.
UnlockedDataAreaException DataArea Exception issued when attempting to unlock a DataArea that is not locked.
UpdateWithoutAPriorInputOperationException Update subfile record without a prior input operation.
VaryingLengthFieldAttribute A non-RPG class may stamp a property or field member with this attribute to be considered as a varying length field by a consumer RPG program.
WingsRecordFormat Contains functionality to construct the WRF, an XML representation of a file.
WorkstationDataSet Represents the dataset of a workstation file.
WorkstationFile Represents a Workstation file. It contains methods to handle all Input and Output operations on the file.
WorkstationFileBase Base class for Workstation files. It contains functionality to support common input/output operations on Workstation files.