Saturday, January 18, 2014

AS/400 Library

A library (*LIB) on the AS/400 is an object that is used as a system directory to keep track of other objects. 
OR
In AS/400 a library is an object that can contain other objects (executable objects, source files, etc.).
Library is used to find other OS/400 objects in the database. To find an OS/400 object you need the name of the library and the name of the object.  

The AS/400 identifies objects by their qualified name, which takes the form of LIBRARY/OBJECT.  

Some important Points:

  • The AS/400 library is organized as a single-level hierarchy.
  • An object can exist in only one library.
  • Two or more objects can have the same name but they must be different types of objects.
  • A library cannot reference other libraries except for the library called QSYS. This is the only library that can access other libraries.

Certain types of the AS/400 object (database file, storage areas and executable program objects) can be compiled, copied, and stored into/from many different libraries concurrently, with the Library List hierarchy determining which instance of the object to use during execution of any application that utilizes that object name. 

Generally speaking all libraries created by IBM for use by the operating system begin with the letter 'Q'.

Some IBM Standard Libraries:

QSYS -          System Parent Library
QSYS2 -        System Library for CPI's
QHLPSYS -  Online Documentation Library for Users
QTCP -          TCP Connectivity Utilities
QAFP -          Advanced Function Printing
QGPL -         General Purpose Library
QTEMP -      Job specific temporary Library (deleted when the job ends)


References:

  • http://en.wikipedia.org/wiki/AS/400_library
  • http://pic.dhe.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Frbam6%2Frbam6objects.htm

Thursday, January 16, 2014

Predefined values and default library / directory locations for AS/400 Object Types

Objects can stored in libraries and integrated file system’s directories.
Some objects stored only in a specific Default library.
Some type of object allow the user to specify the library name at the time of object creation. If library name is not provided by the user then object will be created in current library *CURLIB by default.
One can change the current library by using the command CHGCURLIB
In case there is no current library in effect at the time of object creation then QGPL library will be used.
The other types of objects, identified by N/A (not applicable) in the Default user library column, cannot be stored in libraries or directories.
With the exception of the Dump System Object (DMPSYSOBJ) command, you cannot specify the object type in the format shown in the hexadecimal format column with commands.
  
Value
Object type
Default user library or directory
*ALRTBL
Alert table
*CURLIB
*AUTL
Authorization list
QSYS
*BLKSF
Block special file
Current directory
*BNDDIR
Binding directory
*CURLIB
*CFGL
Configuration list
QSYS
*CHRSF
Character special file
Current directory
*CHTFMT
Chart format
*CURLIB
*CLD
C/400 locale description
*CURLIB
*CLS
Class
*CURLIB
*CMD
Command
*CURLIB
*CNNL
Connection list
QSYS
*COSD
Class-of-service description
QSYS
*CRG
Cluster resource group
QUSRSYS
*CRQD
Change request description
*CURLIB
*CSI
Communications side information
*CURLIB
*CSPMAP
Cross-system product map
*CURLIB
*CSPTBL
Cross-system product table
*CURLIB
*CTLD
Controller description
QSYS
*DDIR
Distributed file directory
N/A
*DEVD
Device description
QSYS
*DIR
Directory
Current directory
*DOC
Document
QDOC
*DSTMF
Distributed stream file
N/A
*DTAARA
Data area
*CURLIB
*DTADCT
Data dictionary
library with same name as data dictionary
*DTAQ
Data queue
*CURLIB
*EDTD
Edit description
QSYS
*EXITRG
Exit registration
QUSRSYS
*FCT
Forms control table
*CURLIB
*FIFO
First-in-first-out special file
Current directory
*FILE
File
*CURLIB
*FLR
Folder
QDOC
*FNTRSC
Font resources
*CURLIB
*FNTTBL
Font mapping table
*CURLIB
*FORMDF
Form definition
*CURLIB
*FTR
Filter
*CURLIB
*GSS
Graphics symbol set
*CURLIB
*IGCDCT
Double-byte character set (DBCS) conversion dictionary
*CURLIB
*IGCSRT
Double-byte character set (DBCS) sort table
*CURLIB
*IGCTBL
Double-byte character set (DBCS) font table
QSYS
*IMGCLG
Image Catalog
QUSRSYS
*IPXD
Internetwork packet exchange description
QSYS
*JOBD
Job description
*CURLIB
*JOBQ
Job queue
*CURLIB
*JOBSCD
Job schedule
*CURLIB
*JRN
Journal
*CURLIB
*JRNRCV
Journal receiver
*CURLIB
*LIB
Library
QSYS
*LIND
Line description
QSYS
*LOCALE
Locale
*CURLIB
*MEDDFN
Media definition
*CURLIB
*MENU
Menu description
*CURLIB
*MGTCOL
Management collection
NA, or QPFRDATA if library specified using QYPSCSCA API
*MODD
Mode description
QSYS
*MODULE
Compiler unit
*CURLIB
*MSGF
Message file
*CURLIB
*MSGQ
Message queue
*CURLIB
*M36
AS/400® Advanced 36 machine
*CURLIB
*M36CFG
AS/400 Advanced 36 machine configuration
*CURLIB
*NODGRP
Node group
*CURLIB
*NODL
Node list
*CURLIB
*NTBD
NetBIOS description
QSYS
*NWID
Network interface description
QSYS
*NWSCFG
Network server configuration
QUSRSYS
*NWSD
Network server description
QSYS
*OUTQ
Output queue
*CURLIB
*OVL
Overlay
*CURLIB
*PAGDFN
Page definition
*CURLIB
*PAGSEG
Page segment
*CURLIB
*PDFMAP
Portable Document Format map
*CURLIB
*PDG
Print Descriptor Group
*CURLIB
*PGM
Program
*CURLIB
*PNLGRP
Panel group definition
*CURLIB
*PRDAVL
Product availability
QSYS
*PRDDFN
Product definition
QSYS
*PRDLOD
Product load
QSYS
*PSFCFG
Print Services Facility™ configuration
*CURLIB
*QMFORM
Query management form
*CURLIB
*QMQRY
Query management query
*CURLIB
*QRYDFN
Query definition
QGPL
*RCT
Reference code translate table
QGPL
*SBSD
Subsystem description
*CURLIB
*SCHIDX
Search index
QGPL
*SOCKET
Local socket
N/A
*SPADCT
Spelling aid dictionary
QGPL
*SQLPKG
Structured Query Language package
*CURLIB
*SQLUDT
User-defined SQL type
*CURLIB
*SQLXSR
SQL XML schema repository
*CURLIB
*SRVPGM
Service program
*CURLIB
*SSND
Session description
QGPL
*STMF
Bytestream file
Current directory
*SVRSTG
Server storage space
QUSRSYS
*SYMLNK
Symbolic link
Current directory
*S36
System/36 machine description
QGPL
*TBL
Table
*CURLIB
*TIMZON
Time zone description
QSYS
*USRIDX
User index
*CURLIB
*USRPRF
User profile
QSYS
*USRQ
User queue
*CURLIB
*USRSPC
User space
*CURLIB
*VLDL
Validation list
*CURLIB
*WSCST
Workstation user customization object
*CURLIB

AS400 Objects / Object Type


Objects

Objects are the building block of AS/400. 

Almost each and everything in the AS/400 is an object. These include Library, commands, data files, compiled programs, user profiles, queues etc.

The AS/400 is sometimes described as an object based system because objects are a fundamental part of the design of the system.

An OS/400 object is a named unit that exists (occupies space) in storage, and on which operations are performed by the operating system.

Objects provide the means through which all data processing information is stored and processed by OS/400.

The most common examples of objects are files and programs. Other types of objects include commands, queues, libraries, and folders.

Objects on the system are identified by object name, object type, and the library in which the object resides. Each object on the system can be secured.

Object Types
The number of object types is huge and a small subset of them are available to users. The human readable form of the object type is always a three to six character mnemonic preceded by an asterisk. Following is a short list of the commonly used objects and their mnemonics:
  • *LIB: Library.
  • *PGM: Program (for compiled languages: CL, RPG-IV, C, C++, COBOL, etc.).
  • *MODULE: Module.
  • *SRVPGM: Service program .
  • *BNDDIR: Binding directory (holds a list of modules and service programs and is used when creating programs).
  • *CMD: Command (an object used for calling programs that allows users to prompt for their parameters; can be created with the Command Definition language).
  • *MENU: Menu.
  • *FILE: File.
  • *DTAARA: Data area.
  • *DIR: Directory.
  • *JRN & *JRNRCV: Journal and journal receiver.
  • *USRPRF: User profile.
  • *JOBQ: Job queue.
  • *DTAQ: Data queue.
  • *MSGQ: Message queue.
  • *OUTQ: Output queue.
You may found a complete list of Object types with Predefined values and default library here.
[Last Update 18/01/2014]

Wednesday, January 15, 2014

EBA - Equation Branch Automation system - Something Extra

Equation Branch Automation is designed to support customer-facing staff (for example: Cashier) within a retail branch banking environment. 

The Equation Branch Automation system is very tightly integrated with the Equation core banking server and provides ready-to-run functionality to support cashiers, personal bankers and relationship managers.

The Equation Branch Automation system is a comprehensive multi-language and multi-currency platform to support operations at branch level. 

It is a PC-based client/server system, with an open architecture based on Microsoft’s NT. The system provides an integrated desktop environment for all customer-facing staff.

Workstations can be configured with the Cashier System application which provides a full range of teller functions, with the Relationship Manager application which is intended for personal bankers, loan officers and sales staff, and can access the bank’s own intranet.

Equation Branch Automation is built with the application of DBMS Microsoft SQL Server based on the distributed structure of the bank’s division’s data base and on-line synchronization with the central server.

The mechanisms of the client’s session depicting the information about the client's products and all available transaction are implemented in Equation Branch Automation. 

Equation Branch Automation system includes the following functional modules:
  • Cash Transactions - Debit/ Credit of amounts. A transaction that involves the immediate exchange of cash for an asset.
  • Cash vault - Cash that a bank keeps in its vault for daily transactions, such as check cashing or cash withdrawals. It is considered part of a bank's reserve obligation to the Federal Reserve Bank.
  • Collection - The conversion of accounts receivable into cash.
  • Accounting of Western Union and Visa Travel Money transactions - Processing of Western Union or other related Transactions.
  • Accounting of individual depositary transactions – Deposit of Amount in One’s Personal Account.
  • Community Charges/ Bill Payments – Posting of charges/fees and collection of Utility Bills.
  • Intra-banking transfers. Intra-bank fund transfer
  • Automated initial input of the payment orders. – Creating the Pay Orders
  • Salary projects – Posting of Salary to Employees. 
  • Processing of the banking cards requests – Such as ATM Card, Debit Cards
  • Currency exchange transactions
  • Non-cash conversion – Such as depreciation or write-offs
  • Purchase and sale of the memorable coins and small bars 
  • Cash reportingThe Daily Cash Reporting is used to assist in the preparation of the Daily Cash Report at Day End.