GL Tech Guide

Download as pdf or txt
Download as pdf or txt
You are on page 1of 300

Infor FMS Infinium

General Ledger
Technical Guide
Copyright © 2009 by Infinium® Software, Inc. and/or its affiliates
All rights reserved. The word and design marks set forth herein are trademarks and/or registered trademarks of
Infinium Software, Inc. and/or its affiliates. All rights reserved. All other trademarks listed herein are the property of
their respective owners.
Important Notices
The material contained in this publication (including any supplementary information) constitutes and contains
confidential and proprietary information of Infinium Software, Inc.
By gaining access to the attached, you acknowledge and agree that the material (including any modification,
translation or adaptation of the material) and all copyright, trade secrets and all other right, title and interest therein,
are the sole property of Infinium Software, Inc. and that you shall not gain right, title or interest in the material
(including any modification, translation or adaptation of the material) by virtue of your review thereof other than the
non-exclusive right to use the material solely in connection with and the furtherance of your license and use of
software made available to your company from Infinium Software, Inc. pursuant to a separate agreement (“Purpose”).
In addition, by accessing the enclosed material, you acknowledge and agree that you are required to maintain such
material in strict confidence and that your use of such material is limited to the Purpose described above.
Although Infinium Software, Inc. has taken due care to ensure that the material included in this publication is accurate
and complete, Infinium Software, Inc. cannot warrant that the information contained in this publication is complete,
does not contain typographical or other errors, or will meet your specific requirements. As such, Infinium Software,
Inc. does not assume and hereby disclaims all liability, consequential or otherwise, for any loss or damage to any
person or entity which is caused by or relates to errors or omissions in this publication (including any supplementary
information), whether such errors or omissions result from negligence, accident or any other cause.
Publication Information
Release: Infinium General Ledger Release 14.0
Publication Date: May 2009
Document Number: 20090407080045
Table of Contents

About This Guide .......................................................................................................................... 1

Chapter 1 Introduction................................................................................................................... 1-1


Course information..................................................................................................................... 1-2
Infinium GL system overview ..................................................................................................... 1-5
Major components...................................................................................................................... 1-6
Concepts and terminology ......................................................................................................... 1-9

Chapter 2 Defining Control File Attributes................................................................................... 2-1


Entity controls overview, GLPET................................................................................................ 2-3
Sequential numbering overview ............................................................................................... 2-24
Company controls overview, GLPCN....................................................................................... 2-25
Chart of accounts overview, GLPCT ........................................................................................ 2-43

Chapter 3 Converting the Chart of Accounts .............................................................................. 3-1


Basic information about the chart of accounts conversion program ........................................... 3-3
Chart of accounts conversion program structure, GLGCCT....................................................... 3-5
Chart of accounts conversion program flowchart, GLGCCT ...................................................... 3-6
Create chart of accounts record subroutine, CRTCT ................................................................. 3-7
Check for existence of dependent components subroutine, CHKDC ......................................... 3-8

Chapter 4 Loading Journal Input Files ......................................................................................... 4-1


Journal file structure................................................................................................................... 4-3
Creating or displaying a journal.................................................................................................. 4-5
Program flow for GLGFSI......................................................................................................... 4-13
Program flow for XXGGLI ........................................................................................................ 4-28
Program flow for XXGFSIA and XXGFSIB............................................................................... 4-30
iv | Table of Contents

Chapter 5 Journal Posting Process.............................................................................................. 5-1


Accept and post overview .......................................................................................................... 5-2
Accept and post process............................................................................................................ 5-3
Post and close period processing .............................................................................................. 5-6
Batch user exits.......................................................................................................................... 5-8
Journal processing data flow.................................................................................................... 5-10
Journal structure after posting.................................................................................................. 5-11
File descriptions ....................................................................................................................... 5-12
Accept and post error recovery ................................................................................................ 5-13
Understanding the walkback process....................................................................................... 5-16

Chapter 6 Validating Data from Non-Infinium Subsystems........................................................ 6-1


Using the API, Application Program Interface, Manager ............................................................ 6-2
Parameters required by GLGAPI ............................................................................................... 6-4
Resolve/edit account number, reference code 01 ...................................................................... 6-6
Resolve account by page number, reference code 02 ............................................................... 6-7
Create generic account, reference code 03 ............................................................................... 6-8
Chart of account validity date, reference code 04 ...................................................................... 6-9
Check account activity, reference code 05............................................................................... 6-10
Resolve/edit generic account, reference code 06 .................................................................... 6-14
Account/company level security, reference code 07 ................................................................ 6-15
Read account under mask, reference code 08 ........................................................................ 6-18
Resolve/edit company number, reference code 09 .................................................................. 6-19
Sample program code.............................................................................................................. 6-20

Chapter 7 Performing Supervisory Functions............................................................................. 7-1


Assigning account level security ................................................................................................ 7-3
Assigning application and account security................................................................................ 7-7
Recalculating account balances and resetting transcoded journals ......................................... 7-17
RECALCAB processing ........................................................................................................... 7-20
RTJ processing ........................................................................................................................ 7-22
Creating a training database .................................................................................................... 7-24
Table of Contents | v

Chapter 8 Infinium Report Writer Considerations ....................................................................... 8-1


Overview of Infinium RW files .................................................................................................... 8-3
Macro rebuild program flow........................................................................................................ 8-4
Rebuilding account macros........................................................................................................ 8-5
Recreating all macros ................................................................................................................ 8-9

Chapter 9 Understanding Budget Processing............................................................................. 9-1


Budget journal structure ............................................................................................................. 9-3
Interactive budget entry.............................................................................................................. 9-4
Budget journal processing........................................................................................................ 9-10
Budget journal processing data flow ........................................................................................ 9-16
Budget journal structure after posting ...................................................................................... 9-17
Converting budgets .................................................................................................................. 9-19
Budget journal conversion program structure, GLGCBJ .......................................................... 9-21
Budget journal conversion program flowchart, GLGCBJ.......................................................... 9-22
Budget master file conversion program structure, GLGCBX.................................................... 9-23
Budget master file conversion program flowchart, GLGCBX ................................................... 9-24

Chapter 10 Managing Disk Space............................................................................................... 10-1


Managing disk space ............................................................................................................... 10-3
Purging files ............................................................................................................................. 10-4
Purging the chart of accounts audit log .................................................................................... 10-9
Purging batch prompt data..................................................................................................... 10-11
Purging journal audit data ...................................................................................................... 10-13
Clearing selected physical files .............................................................................................. 10-15
Reorganizing files................................................................................................................... 10-16

Chapter 11 Interfacing with Client Access System i ................................................................. 11-1


Prerequisites ............................................................................................................................ 11-3
Setting up your system............................................................................................................. 11-4
Formats for uploading and downloading files........................................................................... 11-7
vi | Table of Contents

Appendix A Field Values Assigned by Program GLGFSI .......................................................... A-1


Overview ....................................................................................................................................A-2
Batch Control file, GLPBT ..........................................................................................................A-3
Input Journal Header file, GLPGH .............................................................................................A-4
Input Journal Detail file, GLPGX ................................................................................................A-6
Currency Distribution file, GLPCD..............................................................................................A-7

Appendix B Sample Programs for Calling GLGFSI.................................................................... B-1


Program XXGFSIA.....................................................................................................................B-2
Program XXGFSIB...................................................................................................................B-23
Exception report .......................................................................................................................B-47
Proof Input Journals report.......................................................................................................B-48
Accepted Input Journals report ................................................................................................B-49
Posting report...........................................................................................................................B-50
About This Guide

This section focuses on the following information:

 Intended audience
 Purpose of this guide
 Organization of this guide
 Conventions used in this guide
 Related documentation

Intended audience

This guide is for the Infinium General Ledger (Infinium GL) technical
personnel who perform system management tasks.

Purpose of this guide

Use this guide as a reference at your site and also to complement the
instructor’s presentation during a portion of the Infinium GL Technical course.

Organization of this guide

This reference and training document combines the technical information into
parts. Each chapter includes the following:

 Overview information and in-depth details on the topics covered in the


technical course
 Additional related topics not covered in the course curriculum

Conventions used in this guide

This section describes the following conventions we use in this guide:


2 | About This Guide

 Fonts and wording


 Function keys
 Prompt and selection screens
 Promptable fields
 Infinium applications and abbreviations

Fonts and wording

Convention Description Example

Italic typeface Menu options and field Work with company


names controls
The guide uses the same Use Max Lnth to specify
abbreviations as the the maximum length of
screen. alpha user fields.
Bold Used for notes, cautions Caution: You must ensure
standard and warnings that all Infinium GL users
typeface are signed off before
reorganizing and purging. If
there are jobs in the queue,
those files will not be
reorganized.

Bold Characters that you type Type A to indicate that the


monospaced and messages that are position is alphanumeric
typeface displayed and type N to indicate that
the position is numeric.
The following message is
displayed:

Company not found

F2 through Keyboard function keys Press F2 to display a list


F24 used to perform a variety of available function keys.
of commands.
F13 through Function keys higher than Press F14 to expand the
F24 F12 require you to hold accounting location.
down the Shift key and
press the key that has the
number you require minus
12.
About This Guide | 3

Convention Description Example

Select Choose a record or field Select Work with journals


value after prompting. and press Enter.
Select M (monetary
account), S (statistical
account), B (both), N
(non-posting account), U
(user fields) as the
account use value.
Press Enter Provide information on a Press Enter to save your
screen and when you have changes and continue.
finished, press Enter to
save your entries and
continue.
Exit Exit a screen or function, Press F3 to return to the
usually to return to a prior main menu.
selection list or menu. May
require exiting multiple
screens in sequence.
Cancel Cancel the work at the Press F12 to cancel your
current screen (page) or entries.
dialog box, usually to
return to the prior screen
(page).
Help To access online help for Press Help for more
the current context (menu information about the
option, screen or field), current field.
press Help (or the function
key mapped for help).
To move through the other
applicable levels of help,
press Enter at each help
screen. To return directly
to the screen from which
you accessed help, exit the
help screen by clicking Exit
or by pressing F3.
4 | About This Guide

Convention Description Example

[Quick Access Quick access codes Select Work with company


Code] provide direct access to controls [WWCC].
functions. Most quick
access codes in Infinium
FA consist of the first letter
of each word of the menu
option name.
Quick access codes are
listed on the menu tree
and in the path for each
task next to the executable
function.
Publication Unless otherwise stated, Infinium General Ledger
and course titles refer to Infinium Technical Guide is
titles applications and use referred to as Infinium GL
standard name Technical Guide.
abbreviations.

Function keys

Infinium AM function keys and universal Infinium GL function keys for the
IBM System i are described in the following table. All Infinium GL function
keys are identified at the bottom of each screen.

Function key Name Description

F1 Help Displays help text


F2 Function keys Displays window of valid function keys
F3 Exit Returns you to the main menu
F4 Prompt Displays a list of values from which
you can select a valid entry
F10 Quick Access Enables you to access another
function from any screen
Type the quick access code in Level.
You can change the application
designator, such as PA, GL, IC and so
forth, by selecting another application.
F12 Cancel Returns you to the previous screen
F22 Delete Deletes selected item(s)
About This Guide | 5

Function key Name Description

F24 More keys Displays additional function keys at


the bottom of the screen

Prompt and selection screens

A prompt screen, similar to Figure 1, is the screen in which you type


information to access a record or a subset of records in a file.

A selection screen, similar to Figure 2, is the screen from which you select a
record or records to perform an action.

When we first explain a task in this guide, we fully document how you access
a prompt and selection screen. If a related task uses that prompt or selection
screen, we include the prompt and selection steps in that task. However, we
do not include the screens again.

Figure 1: Work With Recurring Journals prompt screen


6 | About This Guide

Figure 2: Work With Recurring Journals selection screen

Promptable fields

A plus sign displayed next to a field indicates that you can choose your entry
from a list of possible values. Place the cursor in the field and press F4 to
display a list of values.

To select an entry perform one of the following:

 Position the cursor at the desired value, type 1 and press Enter.
 Type the value in the appropriate field.

Infinium applications and abbreviations

The table below lists Infinium names and the corresponding product
abbreviations that are associated with this product.

Application Abbreviation

Infinium Application Manager Infinium AM


Infinium Application Manager Extended Infinium AM/X
Infinium Financial Management Suite Infinium FM
Infinium Accounts Receivable Infinium AR
Infinium Currency Management Infinium CM
About This Guide | 7

Application Abbreviation

Infinium Financial Products Infinium FP


Infinium Fixed Assets Infinium FA
Infinium General Ledger Infinium GL
Infinium Global Taxation Infinium GT
Infinium Income Reporting Infinium IR
Infinium Payables Ledger Infinium PL
Infinium Project Accounting Infinium PA
Infinium Purchasing/Payables Exchange Infinium PX
Infinium ReportWriter Infinium RW
Infinium Human Resources Suite Infinium HR
Infinium Flexible Benefits Infinium FB
Infinium Human Resources Infinium HR
Infinium Human Resources/Payroll Infinium HR/PY
Infinium Human Resources International Infinium HR/UK
Infinium Payroll Infinium PY
Infinium Training Administration Infinium TR
Infinium Materials Management Suite Infinium MM
Infinium Cross Applications Infinium CA
Infinium Electronic Exchange Infinium EX
Infinium Inventory Control Infinium IC
Infinium Journal Processor Infinium JP
Infinium Order Processing Infinium OP
Infinium Purchase Management Infinium PM
Infinium Process Manufacturing Suite Infinium PR
Infinium Advanced Planning Infinium MP
Infinium Formula Management Infinium PF
Infinium Laboratory Management Infinium LA
Infinium Manufacturing Control Infinium MC
Infinium Regulatory Management Infinium RM
8 | About This Guide

Related documentation

For further information about Infinium GL, refer to the following documents:

 Infinium GL Guide to Controls


 Infinium GL Guide to Processing and Reporting
 Infinium GL Guide to Currency Processing
 Activating the Infinium GL to Infinium PY Walkback
 Infinium GL Guide to ReportWriter
 Infinium GL Mass Journal Entry Quick Reference Card
 Infinium GL Ledger Menu Tree
 Online help text
Chapter 1 Introduction
1

This chapter includes an introduction to the Infinium GL Technical Training


course. It includes an overview of the course content and basic information
on Infinium GL that prepares you for the technical concepts covered
throughout the course.

The chapter consists of the following topics:

Topic Page

Course information 1-2


Infinium GL system overview 1-5
Major components 1-6
Concepts and terminology 1-9
1-2 | Chapter 1 Introduction

Course information

Purpose of the course

The purpose of this course is to provide you with basic technical information
that will assist you with establishing, converting, customizing, and
maintaining your Infinium GL system.

Objectives

After completing this course, you should be able to:

 Understand control files and their relationship to Infinium GL processing


 Convert a non-Infinium general ledger system to Infinium GL
 Maintain Infinium GL journal files
 Create Infinium GL journals from non-Infinium systems
 Understand the journal posting process
 Validate Infinium GL data from non-Infinium subsystems
 Maintain system security within Infinium GL
 Rebuild Infinium GL account macros
 Convert a budget to Infinium GL
 Maintain disk file space in Infinium GL
 Understand the basic technical information required for configuring IBM’s
Client Access

Course descriptions and schedules are available by accessing Infor365.


Course information | 1-3

Course agenda

Introduction

Control files
Entity Controls
Sequential Numbering Overview
Company Controls
Chart of Accounts Controls

Converting the chart of accounts


Basic Conversion Information
Shell Conversion Program

Loading journal input files


Journal Structure
Creating or Displaying a Journal
Journal Entry API, GLGFSI

Journal posting process


Accept and Post Processing
Post and Close Period Processing
Batch User Exits
Journal Processing Data Flow
Accept and Post Error Recovery
Walkback Process

Validating data from Non-Infinium subsystems


Application Program Interface Manager, GLGAPI

Performing supervisory functions


Account Level Security
Application and Account Security
Recalculating Account Balances
Resetting Transcoded Journals
1-4 | Chapter 1 Introduction

Infinium RW considerations
Infinium RW Files
Macro Rebuild Program Flow
Rebuilding Account Macros
Recreating All Macros

Budget processing
Budget Journal Structure
Budget Processing
Budget Journal Processing Data Flow
Converting Budgets

Managing disk space


Purging Files
Clearing Selected Physical Files
Reorganizing Files

Interfacing with client access System i


Establishing the PC Environment for Client Access
Setting Up Your System
Considerations

Summary
Infinium GL system overview | 1-5

Infinium GL system overview

In fin iu m G en eral L ed g er A p p lic atio n


O v e rv ie w

C o n tro l
P r o c e s s in g R e p o rts
F ile s

J o u rn a l S ta n d a rd
E n ti ty
P ro c e s s i n g R e p o rts

B ud g e t In fi n i u m
C odes
P ro c e s s i n g R e p o rt W ri te r

A llo c a ti o n
C o m p a ny In fi n i u m Q u e ry
P ro c e s s i n g

C o m p a ny C u rre n c y
G ro u p s P ro c e s s i n g

C h a rt o f In tra c o m p a n y
A c c o u n ts P ro c e s s i n g

P a re n t In te rc o m p a n y
A c c o u n ts P ro c e s s i n g

G e n e ri c P e ri o d E n d
C o m p o n e n ts P ro c e s s i n g

Ye a r E n d
S e c u ri ty
P ro c e s s i n g

T ra n s c o d i n g

Figure 1-1: Infinium GL System Overview


1-6 | Chapter 1 Introduction

Major components

As illustrated in the previous diagram, the Infinium GL system is composed of


three major components:

 Control files
 Processing
 Reports

Control files

Control files are used to set up the basic structure of the Infinium GL system.

Entity controls
Entity controls define global defaults and controls.

Code values
System codes define various system attribute values.

Company controls
Company controls define the companies within the Infinium GL system.

Chart of accounts
The chart of accounts is the account hierarchy used within Infinium GL.
When you convert an existing system to Infinium GL, it creates a translation
table for referencing the old system's accounts to the Infinium GL accounts.

Company groups
A company group is a grouping of Infinium GL companies that are processed
as a unit.

Security
Security is established to control access to the companies, accounts and
fields within Infinium GL.
Major components | 1-7

Processing

Processing includes the normal day-to-day and period-specific processing of


the Infinium GL system.

Journal processing
Data is entered into journals either manually through the Infinium GL system
or from a foreign subsystem. If a foreign subsystem interfaces with Infinium
GL, the data is converted through a user-modified Infinium conversion
program.

Posting
Journal entries are posted to the ledger as either monetary or statistical
entries.

Recurring journals
Journal entries that are entered on a recurring basis can be included at pre-
determined times during journal processing.

Budget processing
You can create, modify and list various types of budgets. Budget processing
files are available to Infinium RW.

Allocation processing
You can create journals for allocating amounts from one account to other
accounts based on percentages and/or ratios.

Currency processing
Infinium CM is used for foreign currency processing. Infinium GL can
maintain balances in multiple currencies.

Uploading from spreadsheet


You can upload journals to Infinium GL for inclusion in the ledger or for
budget processing.
1-8 | Chapter 1 Introduction

Reports

A variety of reporting methods for both standard and customized reports are
available in Infinium GL.

Standard reports
Infinium GL provides the capability to automatically generate a variety of
standard reports.

Infinium RW
Infinium RW is a report generator that is provided with Infinium GL for
creating customized reports, such as consolidated reports for your Infinium
GL companies.

Interface with Client Access


Infinium GL supports the IBM Client Access file transfer system for
downloading data to PC applications.

Infinium QY
Infinium QY provides the capability to create and generate reports using any
Infinium files.
Concepts and terminology | 1-9

Concepts and terminology

This section contains Infinium and Infinium GL concepts and terminology that
you should be familiar with before proceeding to the remaining parts. These
terms and concepts are used throughout the Infinium GL system.

Control files
Control files contain various user-defined default values and system
parameters that are required to operate the Infinium GL system.

Entity
Entity refers to information and controls that are applicable to the entire
Infinium GL database. You define entity controls once, regardless of the
number of companies defined in your database.

An example of an entity control value is the date format that Infinium GL


uses. Because the date format is defined at the entity level, it is used by all
companies within Infinium GL.

Code types and code values


A code type is a three character, system-defined designator that Infinium GL
uses to identify system attributes for validation purposes. An example of a
code type is AYR, which represents the accounting year.

For each code type, you can assign one or more valid code values.
Examples of code values that you might assign to the code type AYR are the
accounting years 2005, 2006, and 2007.

Infinium provides the code types. In most cases, users define the code
values. A few code values, such as those for account use, are defined by the
system.

Chart of accounts, COA


The chart of accounts is a hierarchy of accounts that represents the various
account levels and their relationships. For example, account levels may
consist of company, division, and department.
1-10 | Chapter 1 Introduction

Parent accounts
Parent accounts are used specifically to build an account hierarchy. Once
defined, a parent account is attached to each general ledger account on the
chart of accounts.

For example, if you have a parent account called Cash, you would have that
parent account on all of your general ledger cash accounts to group all of
your bank accounts together.

Masking
Masking is a technique for selecting multiple accounts for a function. You
enter specific values to define the basic elements of your selection criteria
and use asterisks as wildcards to specify that Infinium GL is to select all
occurrences of the masked components.

For example, a masked value of 001.*.*.020.* indicates that Infinium GL is to


select all records for Company 001 with a department number of 020
regardless of the values in the other components.

Infinium GL reads through the appropriate records in the Chart of Accounts


file to select all occurrences of the masked values.

Range
A range is a group of consecutive accounts that has a beginning and ending
point. The beginning and ending points are inclusive.

Macro
A macro is a logical grouping of accounts used in Infinium RW for account
selection. Macros are often created using masks or ranges.

User fields
User fields are fields that Infinium GL provides to help meet your specific
processing needs.

 Account user fields

Account user fields are user-defined fields that can be attached to


individual accounts. The user fields can aid in grouping unassociated
accounts together to create a macro.

 Transaction user fields

Transaction user fields are user-defined fields that can be attached to


individual transaction records to provide additional detail.
Concepts and terminology | 1-11

Translation tables
Infinium GL uses translation tables to associate non-Infinium GL accounts
with Infinium GL accounts.

 Infinium GL-generated translation tables

Infinium GL generates a translation table during the conversion process.


This table contains the accounts to translate, the associated Infinium GL
accounts and the associated internal system page numbers.

 User-generated translation tables

You can create a user-generated table that contains the accounts to


translate from the non-Infinium general ledger system and their
associated Infinium GL accounts. During the interface process, Infinium
GL uses this table to translate non-Infinium general ledger account input
to Infinium GL accounts.

Journal
A journal is a grouping of detailed transaction records that must be in
balance. Each journal consists of one header record and an unlimited
number of detail records.

Batch
A batch is a grouping of journals that includes data for the same time period.

Currency processing
Infinium GL provides the ability to process and report financial information in
foreign currencies. The system provides functions that revalue financial
balances, translate financial data, and remeasure financial data. The Infinium
CM system is used to provide translation information.

Multi currency
Multi currency allows a company to maintain transactions in currencies other
than the base or secondary currency. Currencies that are other than the base
or secondary currency are referred to as foreign currencies.

Revaluation
Revaluation is the process of recalculating the value of a foreign balance at
the current exchange rate. Infinium GL automatically posts gain/loss values
to the revaluation gain/loss account.
1-12 | Chapter 1 Introduction

Dual currency
Dual currency allows you to maintain two ledgers in two different currencies
per company. You can enter journals in either currency. Typically, the system
automatically converts the base currency to the secondary currency or
converts the secondary currency to the base currency. Optionally, you can
choose to enter a currency to one ledger without updating the other ledger.

Remeasurement
Remeasurement is a feature of dual currency processing that allows you to
recalculate account balances from the base currency into the secondary
currency or from the secondary currency into the base currency at period
end. Infinium GL posts gain/loss values to remeasurement gain/loss
accounts.

Optionally, you can attach a remeasurement provision account to each


general ledger account so that the gain or loss adjustment is automatically
posted to the provision account.

Translation
Translation is the process of converting the currency balances of one
company to another company with a different currency. Account balance
translation translates the account balances at the end of a period.

You can create a translation set to link the GL company and the translation
company and to identify the translation adjustment account. You can
translate monetary and/or statistical amounts. Budget translation is not
supported.

Transcoding
Transcoding is used to post financial information from one or more
companies to another company called the transcode company. This can be
used to satisfy governmental regulations that require reporting based on legal
companies, to accommodate different account structures, or to consolidate
accounts for management reporting. Multiple accounts can be transcoded to
a single transcode account.

Transcoding creates journal entries that go through the same accept and
post process as regular journal entries.

Allocation processing
Allocation processing distributes an origin amount to one or more target
accounts based on appropriate percentages or ratios. The allocation process
creates journal entries that use the same accept and post process as regular
Concepts and terminology | 1-13

journal entries. Allocations are used for monetary and/or statistical amounts
and can also be used with budgets.

Intracompany processing
Intracompany processing involves transactions within one company.
Intracompany processing allows for divisional accounting by maintaining
multiple sets of balanced books within a single company. Intracompany
processing creates journal entries that use the same accept and post
process as regular journal entries.

Intercompany processing
Intercompany processing involves transactions between two or more
companies for the purpose of keeping the companies in balance.
Intercompany processing creates journal entries that use the same accept
and post process as regular journal entries. Infinium GL can be set up to
automatically balance journals using a predefined table.

Note: Intracompany and Intercompany processing are mutually exclusive.


1-14 | Chapter 1 Introduction

Notes
Chapter 2 Defining Control File
Attributes
2

This chapter includes a brief overview of the major control files that define the
basic components of the Infinium GL system. This information is included in
the course to make you aware of the control file settings that often lead to
user questions.

The chapter consists of the following topics:

Topic Page

Entity controls overview, GLPET 2-3


Sequential numbering overview 2-24
Company controls overview, GLPCN 2-25
Chart of accounts overview, GLPCT 2-43
2-2 | Chapter 2 Defining Control File Attributes

Objectives

After completing this chapter you will be familiar with:

 The controls that must be defined before you can use the Infinium GL
system
 Company definitions
 The chart of accounts hierarchy
Entity controls overview, GLPET | 2-3

Entity controls overview, GLPET

Entity controls are global attributes for the Infinium GL system that define and
control various system components.

These attributes are used throughout Infinium GL and include:

 Base data, such as:


 System warnings
 PC file transfer system selection
 Search thresholds
 Date formats
 Internal counters
 Account user fields
 Transaction user fields
 Journal controls
 User exit programs
 Chart of reporting controls
 Currency controls
 Infinium RW entity control
 Transcoding controls
 Allocations controls
 Weekly reporting controls
 Balance controls
 Project accounting controls
 Parent account controls

You define one entity control record per Infinium GL database.

The entity control attributes are stored in the Entity Control file, GLPET.

Note: Entity controls must be defined before you can process data in Infinium
GL.
2-4 | Chapter 2 Defining Control File Attributes

Program

Entity Control Maintenance program, GLGETM

Files updated

Entity Control file, GLPET

Infinium RW Entity Control file, FNPEN

Code Type file, GLPCE

Menu option

Menu Level 1: Control File Functions

Menu Level 2: Entity

Menu Level 3: Work with entity control [WWEC]

Figure 2-1: Work With Entity Control GL System Definition selection screen
Entity controls overview, GLPET | 2-5

You should define the entity control attributes in the sequence they appear
on this screen. This ensures that all attribute considerations have been
addressed.

Type 5 in the appropriate Opt field to select the attribute that you want to
display or modify.

Note: After entity controls have been initially set up, Infinium GL displays the
attribute screens in protected mode. To update the fields on an attribute
screen, you must press F23 once that screen is displayed.

Figure 2-2: Work With Entity Control Base Data screen

The Base Data screen is used to specify basic information about your
Infinium GL system.

Unposted journals warning?

If the Unposted journals warning? field contains a value of 1, Infinium GL


warns the user of any unposted journals or recurring journals that are
encountered when they submit a report in Infinium RW.

Default currency code

This is the currency code that Infinium GL uses as a default for all companies
on the system. The currency code must exist as a value in the code table for
code type CUR.
2-6 | Chapter 2 Defining Control File Attributes

If currency processing is enabled on the Currency Controls screen of this


function, you can use the Work with company controls function to override
the currency code for a specific company.

PC file transfer method

The value in the PC file transfer method field determines the type of file
transfer method that Infinium GL uses to upload and download data. Infinium
GL supports only IBM Client Access AS/400.

Unmatched Records Search Threshold

Infinium GL uses the values in the Unmatched Records Search Threshold


fields to place a limit on the number of data records read during the
Interactive Trial Balance and Chart of Accounts Inquiry functions when the
selection criteria is not met.

 The Minimum records scope field specifies the number of records in the
Chart of Accounts file, GLPCT that Infinium GL reads to locate records
that satisfy the selection criteria.
 The Maximum percentage scope field specifies the percentage of the
Chart of Accounts file, GLPCT that Infinium GL reads to locate records
that satisfy the selection criteria.

When reading records, Infinium GL uses the larger of the two options and
displays a window if the scope value is reached. The window gives the user
the option to continue or stop searching.

Date format

The date format specified in this field is used throughout the Infinium GL
system.

Edited date

Two month formats are available:

0 The month displays as a number.

1 The month displays as a 3 character abbreviation.

WARNING! Once you specify a date format, it cannot be changed. The


format should match the date format used by other systems that interface
with Infinium GL.
Entity controls overview, GLPET | 2-7

Last Used Numbers

The values that Infinium GL displays in these fields are system-maintained


internal numbers that you should not change unless you are reinitializing the
system.

Figure 2-3: Account User Fields screen

Account user fields are alphanumeric fields that you can use to group specific
accounts in Infinium RW macros.

Account user fields provide the ability to select accounts that cannot be
selected with either masks or ranges.

You can define up to four account user fields.

Example

To produce a report that lists all accounts associated with product ABC:

1 Define an account user field called Product, as in the above screen.

2 Type the value ABC in the Product user field for each account that is to be
included in the macro.

3 Create an Infinium RW macro that selects accounts with a value of ABC in


the Product user field.
2-8 | Chapter 2 Defining Control File Attributes

4 Create an Infinium RW report that uses the macro created in Step 3.

Min/Max

These fields control the length of the data values that the user can type into
the account user fields. The user must type at least the minimum number of
characters, but cannot exceed the maximum number of 10 characters when
entering data into the fields.

 The value in the Min field cannot be less than 1 or greater than the Len
field.
 The value in the Max field is fixed at 10 characters.

User Exit Pgm

This field identifies a user-defined program that Infinium GL calls to edit data
that a user enters into the account user field. Infinium GL performs the edit
when the user types a value and presses Enter on the Work with chart of
accounts screen.

The Account User Field Exit program, GLGUFF, is a shell program provided
by Infinium for user-generated account user field exit programs. You can
modify this program to meet your specific needs.

Code Value Edit?

A value of 1 in this field instructs Infinium GL to verify that the values typed
into the user field match code values established for that field.

These codes are set up using the Work with code values function.

The code types for account user fields are A01 through A04.

Required Field?

A value of 1 in this field instructs Infinium GL to verify that the user types a
value into this user field when adding an account record.
Entity controls overview, GLPET | 2-9

Figure 2-4: Transaction User Fields screen

Transaction user fields provide the capability to add user-defined data to


each transaction record.

Seven fields are available:

 4 alphanumeric
 2 numeric
 1 date

Infinium RW can access only the numeric fields.

Examples

An alphanumeric field called Salesperson could be defined to identify the


salesperson associated with each sales related transaction.

A numeric field called Units could be defined to accumulate the number of


units sold.

A date field called Sales-date could be defined to identify the date that a sale
is made.
2-10 | Chapter 2 Defining Control File Attributes

Len

You can specify a value into the Len field for alphanumeric fields only.
Numeric and date fields are fixed length fields. The following field lengths
apply to transaction user fields:

 Up to 10 positions for alphanumeric fields


 13 positions (fixed length) for numeric fields
 8 positions (fixed length) for date fields

Dec

This field applies to numeric fields only and is fixed at 2 decimal positions.

Min/Max

These fields control the length of data values that a user types into the
alphanumeric transaction user fields. A user must type at least the minimum
number of characters, but cannot exceed the maximum number of 10
characters when entering data into the fields.

 The value in the Min field cannot be less than 1 or greater than the Len
field.
 The value in the Max field is fixed at 10 characters.

User Exit Pgm

This field identifies a user-defined program that Infinium GL calls to edit data
that a user enters into the transaction user field. If a user exit program is
specified, Infinium GL performs the edit when a user types a value and
presses Enter during journal entry and also during proof processing.

The Transaction User Field Exit program, GLGUFE, is a shell program


provided by Infinium for user-generated transaction user field exit programs.
You can modify this program to meet your specific needs.

Code Value Edit?

A value of 1 in this field instructs Infinium GL to verify that the values typed
into the user field at journal entry time match code values established for that
field.

These codes are set up using the Work with code values function. The code
types for transaction user fields are U01 through U04. Code values can be
assigned to alphanumeric fields only.
Entity controls overview, GLPET | 2-11

Required Field?

A value of 1 in this field instructs Infinium GL to verify that the user types a
value into this user field when adding a transaction record.

Transaction user fields that are specified as required can be overridden at


the account level as not required.

Figure 2-5: Journal Controls and User Exit Programs screen

The Journal Controls and User Exit Programs screen provides the capability
to:

 Control the processing of invalid or inactive journal entries.

Journal entries that contain invalid or inactive account numbers can either
be posted to a suspense account or the posting process can be halted.

 Specify whether reversals for auto-accruals will be:


 Posted automatically in the following period when the original journal
is posted, or
 Created as accepted journals in the following period when the original
journal is accepted or accepted and posted
 Specify how the system handles zero dollar transactions. The system can
either:
 Post zero dollar journal detail lines encountered during the accept
process
2-12 | Chapter 2 Defining Control File Attributes

 Remove zero dollar journal detail lines encountered during the accept
process
 Specify how the system handles journal auditing. Specify whether the
system:
 Does not perform journal auditing
 Audits only header changes
 Audits both header and detail changes
 Assign user-defined programs that perform special processing at the
following points within the journal processing procedure:
 Before a journal is accepted
 Before posting occurs
 After posting occurs

Post to suspense account?

A value of 1 in this field indicates that invalid journal entries are posted to a
suspense account.

A value of 0 in this field indicates that posting of a batch is halted when


Infinium GL encounters an invalid entry. This prevents the acceptance of an
entire batch even if there are other journals in the batch that are valid.
Infinium GL produces an error report.

Post auto-accrual reversals automatically?

A value of 1 in this field indicates that the reversal journal created by an


accrual journal should be accepted and posted in the period following the
accrual.

A value of 0 in this field indicates that the reversal journal created by an


accrual journal should be accepted only in the period following the accrual.
Use the Post journals & close period menu option to post the accrual reversal
entries.

Post zero dollar transactions?

A value of 1 in this field indicates that zero dollar journal detail lines
encountered during the accept process should be posted.

A value of 0 in this field indicates that zero dollar journal detail lines
encountered during the accept process should be removed.
Entity controls overview, GLPET | 2-13

Audit journal changes?

A value of 0 in this field indicates that the system should not keep audit
records for additions, changes, and deletions to journals.

A value of 1 in this field indicates that the system should create audit records
for journal header additions, changes, and deletions.

A value of 2 in this field indicates that the system should create audit records
for journal header and for detail additions, changes, and deletions.

Accept pre-execute program

This field specifies a user-defined program to be executed before the Accept


program runs.

Posting pre-execute program

This field specifies a user-defined program to be executed before the Post


program runs.

Posting post-execute program

This field specifies a user-defined program to be executed after the Post


program runs.

The following are examples of the types of tasks that can be performed with
user exit programs:

 Special calculations
 Additional validation procedures
 Routines for writing to a non-Infinium subsystem
 Generation of special data files for reporting purposes

User exit programs are optional.


2-14 | Chapter 2 Defining Control File Attributes

Figure 2-6: Chart of Reporting Controls screen

Chart of Reporting is a report generation technique that is based on a


hierarchy of reporting components.

Enable chart of reporting?

A value of 0 in the Enable chart of reporting? field prohibits the use of chart of
reporting hierarchies.

Last used id

The Last Used id is an internal counter that displays the last component
identification number that Infinium GL assigned to a new reporting
component in the chart of reporting hierarchy.

Caution: This is an internal, system-maintained counter. To avoid the


possibility of duplicate component (node) numbers, you should not alter this
field.
Entity controls overview, GLPET | 2-15

Figure 2-7: Currency Processing screen

The currency processing function works in conjunction with Infinium CM to


provide you with the ability to:

 Convert foreign currency transactions


 Revalue foreign balances
 Translate account balances
 Remeasure base and secondary balances

Enable currency processing?

If you type 0 in the Enable currency processing? field, currency processing


fields and screens do not display throughout Infinium GL.

You can type 1 in the Enable multi-currency processing? or Enable dual


currency processing? fields only if you type 1 in the Enable currency
processing? field.

Enable multi-currency processing?

A value of 1 in this field allows you to enable multi-currency processing in


your companies.

Enable dual currency processing?

A value of 1 in this field allows you to enable dual currency processing in


your companies.
2-16 | Chapter 2 Defining Control File Attributes

Note: If you enable currency processing at the entity and company levels,
you must use Infinium CM.

Figure 2-8: Infinium RW Entity Control screen

This screen defines controls related to Infinium RW processing.

Last report number

The Last report number field displays the report number that Infinium GL
assigned to the last report created in Infinium RW. Infinium GL uses this
number to track reports.

Caution: This is an internal, system-maintained counter. To avoid the


possibility of duplicate report numbers, you should not alter this field.

Use dynamic storage?

This field controls whether or not the system uses dynamic storage in the
Rebuild account macros function, as follows:

 If this field is specified as 1, the Rebuild account macros function reads


each macro definition once, stores all macro definitions in memory, and
then processes account changes. This improves run time for the rebuild
function but can slow down the system for other users and/or jobs.
 If this field is specified as 0, the Rebuild account macros function reads
each macro definition as it processes account changes. This requires
more database access but uses less memory to process the job.
Entity controls overview, GLPET | 2-17

For more information on rebuild processing, please refer to the “Infinium RW


Considerations” chapter.

Figure 2-9: Transcoding Controls screen

You can use transcoding to post financial information from one or more
companies to another company called the transcode company. This can be
used to satisfy governmental regulations that require reporting based on legal
companies or to consolidate accounts.

Enable transcoding?

If you type 1 in the Enable transcoding? field, transcoding fields and prompts
will display throughout Infinium GL.

WARNING! Once you have enabled transcoding and have posted any
journals, do not disable transcoding. Disabling transcoding after journals
have been posted may result in corrupted data.

Post to transcoded suspense account?

If you type 0 in the Post to transcoded suspense account? field, invalid


transcode accounts place the journal in error. If you type 1 in this field, invalid
transcode accounts are posted to the transcode company's suspense
account.
2-18 | Chapter 2 Defining Control File Attributes

Transcoded journal option

This determines whether transcode journals are automatically created when


the GL journal is accepted. A value of 0 is valid only if the Enable transcoding
field is set to 0. Values 1, 2, and 3 are valid only if the Enable transcoding
field is set to 1.

Figure 2-10: Allocation Controls screen

The Allocation Controls screen determines the handling of accept and post
activity for allocation journals.
Entity controls overview, GLPET | 2-19

Figure 2-11: Weekly Reporting Controls screen

Key points

Weekly reporting provides the capability to maintain weekly balances in


addition to period balances for Infinium GL accounts.

Weekly processing is available in:

 Journal Processing
 Budget Processing
 Infinium RW
 Query Interface Reports

Infinium GL updates the following files with weekly reporting data:

 Actuals, GLPWA
 Budgets, GLPWB

Only Infinium RW macro reporting accesses these files.

Note: If you elect to use the weekly reporting feature, this could have a
considerable impact on disk space utilization.
2-20 | Chapter 2 Defining Control File Attributes

Figure 2-12: Balance Controls screen

The Maintain debit/credit balances? field specifies whether or not separate


debit and credit balances can be maintained in addition to monetary
balances.

Setting this field to 1 allows you to enable debit/credit balances in your


companies and enable user security for debit/credit entry.

Note: If the Maintain debit/credit balances? field is set to 1 and at least one
company is set to 1 for the corresponding debit/credit field, Maintain
debit/credit balances? cannot be changed back to 0.
Entity controls overview, GLPET | 2-21

Figure 2-13: Project Accounting Controls screen

If you use Infinium PA, you ordinarily enter all project-related transactions in
Infinium PA. You can then transfer the transactions to Infinium GL as
described in the Infinium PA documentation.

You can also enter project-related transactions in Infinium GL, and transfer
these transactions back to Infinium PA.

Activating the project accounting controls in the Infinium GL entity controls


affects the journal details job code field. This is a field for which you define a
label such as Project in company controls. If you activate Infinium PA, the
system performs the following:

 Accepts only valid Infinium PA project IDs and related project values
during regular journal entry, mass journal entry, uploading journals from a
spreadsheet, and entry of recurring journals. Refer to the Infinium GL
Guide to Processing and Reporting.
 Displays project accounting data in the Infinium GL interactive trial
balance
 Prints project accounting data on the following reports:
 Proof Input Journals
 Accepted Input Journals
 M-T-D General Ledger
 Y-T-D General Ledger
2-22 | Chapter 2 Defining Control File Attributes

 Processed Journals
 Selective G/L Ledger
 Job Costing Analysis
 General Ledger Report (Query Interface)
 Job Costing Analysis (Query Interface)

Caution: Once you activate the interface with Infinium PA, Infinium GL uses
only Infinium PA project identifiers (job code values) and no longer uses any
existing Infinium GL job code values. In addition, project related data that you
enter or update in an Infinium GL journal is not passed back to Infinium PA
unless you type 1 in the Transfer to PA field.

If you associate a transaction with a project, ensure that the transaction


currency is the same as the Infinium GL company’s base currency.

For more information about using Infinium PA with Infinium GL, refer to the
Infinium GL Guide to Controls, Infinium GL Guide to Processing and
Reporting, and the Infinium PA documentation.

Figure 2-14: Parent Account Controls screen

Infinium GL allows you to use parent accounts in your chart of accounts. If


you enable the use of parent accounts, you can:

 Access the Parent field in Work with chart of accounts


 Access the Parent account field in Mass change chart of accounts
Entity controls overview, GLPET | 2-23

 Access the Parent account field in Mass add chart of accounts


 View the parent account assigned to a general ledger account in Display
chart of accounts
 Print the parent account if the value in Output format is Long in Print
chart of accounts
 Print a chart of accounts report in parent account order using Print chart
of accounts
 Define an account hierarchy for use with Infinium Financial Manager
powered by Cognos® Finance (Infinium Financial Manager)

You use Work with parent accounts to create, maintain and delete parent
accounts. Parent accounts are defined specifically for use with Infinium
Financial Manager.

You use Display parent accounts to view parent account information.


2-24 | Chapter 2 Defining Control File Attributes

Sequential numbering overview

Infinium FP is an application that you can optionally use to do the following:

 Sequentially number specific types of documents within your financial


applications
 Establish and maintain financial calendars that identify your accounting
years and periods, so that the year and period are included in the
sequential number

Infinium FP interfaces with the following Infinium applications:

 Infinium GL
 Infinium PL
 Infinium AR

In conjunction with Infinium FP, Infinium GL provides you with the ability to
sequentially number monetary journals for auditing purposes. If you use this
feature, the system assigns a unique number to each monetary journal when
it is posted.

You set up sequential numbering by defining one or more number series. A


number series is a set of sequence numbers that you associate with
document types defined by Infinium. Infinium FP is designed to give you the
flexibility of numbering your documents by using either:

 A single series for all of your financial applications, companies and


document types
 Multiple series that can be shared by financial applications, companies
and document types in any user-prescribed manner

The particular needs of your organization determine how you implement this
feature.

For Infinium GL, you can set up sequential numbering for monetary journals
only. The document type for monetary journals is MJRNL. In addition, you
can specify journal source code values as subtypes.

For further information about this feature, refer to the Infinium GL Guide to
Processing and Reporting.
Company controls overview, GLPCN | 2-25

Company controls overview, GLPCN

The company controls function provides the capability to define the attributes
for each company in the Infinium GL system. These attributes include:

 Base data, such as:


 Company name, identifier and description
 Current accounting period
 Current accounting year
 Account structure
 Report controls
 Budget controls
 Journal controls
 Purge history inquiry
 Period controls
 Intracompany controls
 Currency controls
 Transcoding controls
 Weekly controls
 Sequence number relationship controls

The Company Controls file, GLPCN, consists of one record per company.

Program

Company Control Maintenance program, GLGCNM

Files updated

Company Controls file, GLPCN

Company Currency file, GLPCC


2-26 | Chapter 2 Defining Control File Attributes

Company Groups file, GLPCG

Accounting Periods Control file, GLPDA

Week Control file, GLPWC

Menu option

Menu Level 1: Control File Functions

Menu Level 2: Companies

Menu Level 3: Work with company controls [WWCC]

Figure 2-15: Work Company Controls Prompt screen

This screen identifies the company to be defined or modified.

Company

Type a three character company identifier to identify the company to be


created or modified.
Company controls overview, GLPCN | 2-27

Figure 2-16: Work With Company Controls attribute selection screen

To select an attribute, type 5 in the Opt column next to the appropriate


attribute(s) and press Enter.

You should define the attributes in the sequence that they appear on this
screen. This will ensure that all attribute considerations have been
addressed.

If you select multiple attributes, Infinium GL displays all selected attribute


screens before returning to this screen.

Note: Currency and Weekly controls are displayed on this screen only if they
are enabled in entity controls.
2-28 | Chapter 2 Defining Control File Attributes

Figure 2-17: Base Data screen

The Base Data screen is used to define basic attributes of a company.

Active?

If you type 0 in this field, Infinium GL cannot post to this company.

Number of accounting periods

Either 12 or 13 accounting periods are available. Infinium GL reserves period


fourteen for the year end close.

Number of accrual periods

This field is used to control the allowable periods in which Auto accrual
journals can reverse. Either 12 or 13 accrual periods are available.

If a company has 13 accounting periods, the number of accrual periods can


be 12 or 13, depending on whether you want period 12 journals reversed in
period 1 of the next year or period 13 of the current year.

Note: If a company has only 12 accounting periods, the number of accrual


periods must also be 12.

Current accounting year Current accounting period

The Current accounting year and Current accounting period fields contain the
default year and period that Infinium GL uses for any input batches created
Company controls overview, GLPCN | 2-29

for the company. Infinium GL uses these fields in journal processing and user
security.

You can perform year end processing only for the current year specified in
this field. The year must exist as a value in the codes table for code type
AYR.

Suspense account

Infinium GL uses this suspense account only if suspense account processing


is enabled on the Entity Control record.

Infinium GL uses the suspense account in the Accept and Post process when
an invalid account is encountered.

You must enter a suspense account even if suspense processing is not


enabled.

The suspense account must exist in the chart of accounts before it can be
entered on this screen.

Retained earnings account

You type the retained earnings account in this field after defining it in the
chart of accounts. Infinium GL cannot perform a year end close if a value is
not entered in this field.

Job code name

The value entered in the Job code name field is displayed as a prompt on the
Journal Entry screen. Infinium GL uses the job code to group transactions by
specific jobs or projects.

Intercompany processing?

A value of 1 in this field indicates that intercompany processing can be


performed for this company.
2-30 | Chapter 2 Defining Control File Attributes

Figure 2-18: Account Structures screen

The Account Structure screen is used to define the account structure that
Infinium GL uses for a company.

The maximum account length is 36 positions, including break characters.

The account structure can contain up to nine components. The first


component must be the company and therefore, should be 3 characters in
length to match the length of the company fields in the Infinium GL database.

Note: Once your account structure and accounts are defined, you cannot
change the structure.

Fill Char

The fill character specifies the character that Infinium GL uses when
resolving account numbers that are typed using a keying shortcut.

Adjust

The Adjust field determines the character adjustment of the component when
Infinium GL resolves the account number from a keying shortcut. The first
component is always right justified.
Company controls overview, GLPCN | 2-31

Generic Combination

This field specifies if and how accounts from the chart of accounts can be
combined with generic accounts, from the Generic Accounts file, to
automatically create new accounts at journal entry time.

Alternate Sequence

The Alternate Sequence fields allow you to define two alternate reporting sort
sequences for your chart of accounts.

Note: Once you have set up alternate sequences for a company, the only
way to change them is by using the option Mass change alternate sequences
within the chart of accounts control file functions.

Figure 2-19: Report Controls screen

The Report Controls screen specifies the totaling options for various reports
that are based on the account components.

Print Heading

A value of 1 in the Print Heading field instructs Infinium GL to print break


headings and totals.

The totaling function applies to month-to-date and year-to-date trial balance


and general ledger reports.
2-32 | Chapter 2 Defining Control File Attributes

Normal Sequence, Alternate Sequence A, Alternate Sequence B

You specify totals for the normal account sequence and alternate sequence
A and B. For each sequence, you specify whether the system should
maintain totals by account component for the specific type of account, A, L, I,
E (Assets, Liabilities, Income and Expenses).

Figure 2-20: Budget Controls screen

The budget names entered in the Current budget, Current plan and Current
forecast fields are existing budgets. You can enter variables in Infinium RW
reports to use the values entered on this screen.

The specified budgets must be defined in the Work with budgets function.

Budget Quarter Controls

The Budget Quarter Controls allow you to budget by quarter. For each period
you specify the appropriate quarter.
Company controls overview, GLPCN | 2-33

Figure 2-21: Journal Controls screen

You can use this screen for the following purposes:

 To define the source and reference information for the journals that
Infinium GL creates for this company from Infinium RW and/or Lotus
 To activate debit/credit support for this company

Maintain debit/credit balances?

If you specify 1 in this field, the system maintains debit and credit balances in
addition to monetary balances for this company. To activate this field, the
Maintain debit/credit balances? field on the Balance Controls screen of Work
with entity controls must be set to 1.

Note: If the Maintain debit/credit balances? field is set to 1 for a company


and debit and/or credit balances exist for that company, this field cannot be
changed back to 0.
2-34 | Chapter 2 Defining Control File Attributes

Figure 2-22: Purged History screen

You can use the Purged History screen to display purged history data for a
company.

Infinium GL stores history data in the Purged History file, GLPPH.

Figure 2-23: Period Controls screen


Company controls overview, GLPCN | 2-35

You can use the Period Controls screen to define and monitor period and
posting information.

On this screen, Infinium GL displays records from the Accounting Periods


Control file, GLPDA.

Figure 2-24: Intracompany Processing Controls screen

You can use the Intracompany Processing Controls screen to define the
intracompany accounts for a company.

Intracompany processing refers to creating balancing entries within one


company.

Note: An additional field, Secondary currency rounding accounts, displays if


Secondary currency is enabled in the Currency Controls screen.
2-36 | Chapter 2 Defining Control File Attributes

Figure 2-25: Currency Controls screen

You can use the Currency Controls screen to define currency information for
a company. Infinium GL displays this screen only if currency processing is
enabled on the Entity Control record.

Note: If you enable currency processing for any company, you must use
Infinium CM.

Historic rate type

The Historic rate type field refers to an exchange rate type that is defined
within Infinium CM. This field identifies the rate type that Infinium GL uses to
translate the balance of an account, which has the Translation method field in
the Chart of Accounts record set to 1, into a reporting currency used by the
company.

Current rate type

The Current rate type field refers to an exchange rate type that is defined
within Infinium CM. This field identifies the rate type that Infinium GL uses to
translate the balance of an account, which has the Translation method field in
the Chart of Accounts record set to 2, into a reporting currency used by the
company.

The revaluation process also uses this rate to revalue an account that has
the Revalue field in the chart of accounts set to 1.
Company controls overview, GLPCN | 2-37

Average rate type

The Average rate type field refers to an exchange rate type that is defined
within Infinium CM. This field identifies the rate type that Infinium GL uses to
translate the balance of an account, which has the Translation method field in
the Chart of Accounts record set to 3, into a reporting currency used by the
company.

Figure 2-26: Multi-Currency Controls screen 1 of 2

This screen and the screen on the next page define control information for
multi-currency processing.

Infinium GL displays these screens only if Enable multi-currency processing?


is set to 1 on the previous screen.

Journal entry rate type

The Journal entry rate type field refers to a rate type that is defined in
Infinium CM. This field identifies the rate type that Infinium GL uses to
convert foreign journal entries into the base currency during journal
processing.
2-38 | Chapter 2 Defining Control File Attributes

Figure 2-27: Multi-Currency Controls screen 2 of 2

On this screen you can press F6 to create a record for each currency that
you want to revalue.

Within each record you specify the revaluation gain and loss accounts for
each foreign currency entered.
Company controls overview, GLPCN | 2-39

Figure 2-28: Dual Currency Controls screen

This screen defines control information for dual currency processing.

Infinium GL displays this screen only if a Secondary currency is specified on


the Currency Controls screen.

Figure 2-29: Transcoding Controls screen


2-40 | Chapter 2 Defining Control File Attributes

The Transcoding Controls screen contains the controls that Infinium GL uses
during the transcoding process for this company.

Transcoded company?

The Transcoded company? field identifies this company to Infinium GL as


either a GL company or as a transcoded company. Infinium GL transcodes
GL company data to a transcoded company.

Transcode to company

The Transcode to company field is identified for GL companies only. The


company specified in this field must be defined as a transcode company.

Figure 2-30: Weekly Reporting screen

Infinium GL uses this screen to define the weekly reporting format for this
company.

Infinium GL displays this screen only if weekly reporting is enabled on the


Entity Control record.

You assign each week to a period on this screen.


Company controls overview, GLPCN | 2-41

Figure 2-31: Work with Document Assignments screen 1 of 2

This screen displays sequence number relationship controls from Infinium


Financial Products. This screen allows you to work with number series
assignments for your documents.

Figure 2-32: Work with Document Assignments screen 2 of 2


2-42 | Chapter 2 Defining Control File Attributes

This screen lists the characteristics of the document selected for display on
the previous screen. You use this screen to assign a number series to this
document type.
Chart of accounts overview, GLPCT | 2-43

Chart of accounts overview, GLPCT

Program

Chart of Accounts Maintenance program, GLGCTM

Files updated

Entity Control file, GLPET

Chart of Accounts file, GLPCT

Chart of Accounts Audit Log file, GLPCU

Account/Rate Type Relationship file, GLPAR

Input Journal Header file, GLPGH

Menu option

Menu Level 1: Control File Functions

Menu Level 2: Chart of Accounts

Menu Level 3: Work with chart of accounts [WWCOA]


2-44 | Chapter 2 Defining Control File Attributes

Figure 2-33: Work with Chart of Accounts screen

You use this screen to define the account hierarchy.

A dependent component cannot be defined unless the previous hierarchical


component level is defined.

Posting limits

You can establish posting limits for both debits and credits entered to this
account.

Restricted to journals

You can restrict accounts to specific journals.

Account user fields

You can enter values for the account user fields that are defined on the Entity
Controls record. If an account user field is defined as required, you must
enter a value on this screen.

Valid from year/period and Valid to year/period

You can use these fields to specify a time period for which this account is
valid. If both of these fields are blank, the account is always valid.
Chart of accounts overview, GLPCT | 2-45

Permit Intercompany?

A value of 1 in this field specifies that this account can be used in an


intercompany journal.

Account use

The following values are valid for this field:

 Monetary (M)
 Statistical (S)
 Both (B)
 Non-posting (N)

Account type

The following values are valid for this field:

 Asset (A)
 Liability (L)
 Income (I)
 Expense (E)

Permit budgets?

A value of 1 in this field specifies that this account can be used in budgets.

Permit generics?

A value of 1 in this field specifies that this account can be combined with
generic accounts to create new accounts.

Active?

You can deactivate an account to eliminate it from Infinium GL processing.

Currency

The Currency field can contain a currency code from Infinium CM to


denominate the account in a specific currency if you are using currency
processing.

If this field is blank, Infinium GL uses the base currency.

If you specify a currency code that is not the base or secondary currency,
Infinium GL restricts the account to journals of the specified currency. You
cannot change the currency code after entries have been posted to the
account.
2-46 | Chapter 2 Defining Control File Attributes

Translation method

The Translation method field should contain one of the following values:

0 Do not translate this account

1 Use the historic rate type specified on the Company


Controls record to translate this account.

2 Use the current rate type specified on the Company


Controls record to translate this account.

3 Use the average rate type specified on the Company


Controls record to translate this account.

Revalue?

A value of 1 in this field specifies that this account can be revalued.

Only foreign accounts can be revalued. A foreign account is an account that


is denominated in a currency other than the base or secondary currency of
the company.

Figure 2-34: Work with Chart of Accounts screen with Dual Currency Details
window

If dual currency is enabled for the company of the account, Infinium GL


displays the above window after you press Enter.
Chapter 3 Converting the Chart of
Accounts
3

This chapter includes information on the shell program that Infinium provides
for converting the chart of accounts data from your existing general ledger
system to Infinium GL.

The chapter consists of the following topics:

Topic Page

Basic information about the chart of accounts conversion program 3-3


Chart of accounts conversion program structure, GLGCCT 3-5
Chart of accounts conversion program flowchart, GLGCCT 3-6
Create chart of accounts record subroutine, CRTCT 3-7
Check for existence of dependent components subroutine, CHKDC 3-8
3-2 | Chapter 3 Converting the Chart of Accounts

Objective

After completing this chapter you should have a basic understanding of the
chart of accounts conversion process.
Basic information about the chart of accounts conversion program | 3-3

Basic information about the chart of accounts


conversion program

Program

Chart of Accounts Conversion shell program, GLGCCT

Files updated

Chart of Accounts file, GLPCT

Chart of Accounts Audit Log file, GLPCU

Translation Tables file GLPXL

Entity Control file, GLPET

Infinium provides the Chart of Accounts Conversion shell program, GLGCCT,


for the purpose of converting your current, non-Infinium GL chart of accounts
data to Infinium GL.

Caution: GLGCCT is only a shell program; therefore, you must provide the
technical information that describes your data and special processing
instructions to Infinium GL. Do not modify this or any program directly in the
GL2000 program library. Copy it to the Infinium GL Custom library, GLCUST,
for modification. You cannot compile GLGCCT in its current state.

Note: Infinium GL system upgrades may include new fields that relate to the
conversion of the chart of accounts. Therefore, you should compare the
GLPCT file layout in the Defining Control File Attributes chapter to the
GLGCCT program to be certain that all fields are initialized properly and are
included in the program as needed.
3-4 | Chapter 3 Converting the Chart of Accounts

Conversion considerations

The conversion process is a coordinated effort between you and your users.
Before modifying the conversion shell program, you must know basic
information about the conversion including the following:

 How will the new account records be created?


 By manual entry
 By conversion program
 If the records are created through a conversion program, how will the
input file be created?
 By a user-generated translation table; for example, a table created
and uploaded from Lotus
 Programmatically from an existing Chart of Accounts file in a non-
Infinium general ledger system
 Is the structure of the existing account number changing? If so, can the
new accounts be logically derived from the old accounts?
 How will the field values for each GLPCT record be determined? For
example:
 How will the account type be identified (asset, liability, income,
expense)?
 How will the account use be identified (monetary, statistical, both,
non-posting)?

Post-conversion recommendation

When all accounts are successfully converted, you can use the Purge chart
of accts audit log function to purge records from the GLPCU file. This
function is discussed in the “Managing Disk Space” chapter.
Chart of accounts conversion program structure, GLGCCT | 3-5

Chart of accounts conversion program structure,


GLGCCT

INZPGM

BGNPGM

OVRFLW

INZCT

CHKCT
Performed
for each
Input CRTCT
record

CRTCU

CRTXL

PRTCT CHKDC

ENDPGM CRTDC

Figure 3-1: Chart of Accounts Conversion Program Structure


3-6 | Chapter 3 Converting the Chart of Accounts

Chart of accounts conversion program flowchart,


GLGCCT

Start
B

Initialize Yes
program Error
variables on input?

No
Read input Execute
record subroutine
CRTCT

No
Valid Print detail
C
Company? line on report

Yes

Print report Read next


heading input record

Re-initialize No
GLPCT fields End of file? A

C Yes
Validate
input account Print end
of report

B End

Figure 3-2: Chart of Accounts Conversion Program Flowchart


Create chart of accounts record subroutine, CRTCT | 3-7

Create chart of accounts record subroutine, CRTCT

S ta rt A

C re a te ne w W ri te /up d a te
a c c o unt fro m e ntry to
o ld a c c o unt tra ns la ti o n ta b le

D e te rm ine p a g e
num b e r fro m
GLPET E xe c ute s ub ro utine
C HK D C

D e te rm ine fie ld
va lue s fo r End
GLPC T

Yes
D oes
U p d a te G L P C T
G L P C T re c o rd
re c o rd
e xi s t?

No

W ri te G L P C T
re c o rd

Ini tia li ze a nd w rite


G L P C U re c o rd

Figure 3-3: Create Chart of Accounts Record Subroutine, CRTCT


3-8 | Chapter 3 Converting the Chart of Accounts

Check for existence of dependent components


subroutine, CHKDC

Start B

Copy account to Initialize and


work account write GLPCU
record
A
C
Blank out last
component of GT 1
work account Number of
components in A
work account?

Yes 1
Does
GLPCT record C
exist? End

Determine page
number from
GLPET

Determine field
values for
GLPCT

Write GLPCT
record

Figure 3-4: Check for Existence of Dependent Components Subroutine, CHKDC


Chapter 4 Loading Journal Input Files
4

Journal processing involves the process of entering, proofing, accepting and


posting journals. This chapter includes information on the technical aspects
of loading journal input files.

The chapter consists of the following topics:

Topic Page

Journal file structure 4-3


Creating or displaying a journal 4-5
Program flow for GLGFSI 4-13
Program flow for XXGGLI 4-28
Program flow for XXGFSIA and XXGFSIB 4-30
4-2 | Chapter 4 Loading Journal Input Files

Objectives

At the conclusion of this chapter you should:

 Have a basic understanding of loading journal input files


 Be familiar with the files involved and their relationships
Journal file structure | 4-3

Journal file structure

Batch Control
GLPBT

Input Journal
Header
GLPGH

Long Journal
Journal Totals Journal Exchange Description
GLPJT Information GLPJE GLPJD

Input Journal
Detail
GLPGX

Distribution
Currency Detail
GLPCD

Figure 4-1: Journal File Structure


4-4 | Chapter 4 Loading Journal Input Files

File Description

GLPBT Batch Control file


One record per batch
Unique by batch number (BTBNBR)
GLPGH Input Journal Header file
One record per journal
Up to 9,999 records per batch
Unique by journal number (GHJRNL)
GLPJT Journal Totals file
Used in journal balancing
Created during Mass Journal Entry and Proof processing
Deleted during Accept processing
Holds journal totals by processing currency (JTTYP = 1)
Holds journal totals by company/currency (JTTYP = 0)
GLPJE Journal Exchange Information file
One record per currency pair used in a journal
Created during Mass Journal Entry and Proof processing
Deleted during Accept processing
GLPJD Long Journal Description file
One record per journal header
Contains up to 800 character description of journal
Created when user enters long description
Linking field to journal header is JDJRNL
GLPGX Input Journal Detail file
One record per detail transaction
Offsetting records must balance
Linking field to the journal header record GXJRNL
Does not contain the batch number
GLPCD Currency Distribution file
Minimum of one record per transaction currency
Maximum of 3 records per transaction
Linking fields to the journal detail record are CDJRNL,
CDSEQ
Creating or displaying a journal | 4-5

Creating or displaying a journal

Program

Journal Maintenance program, GLGGHM

Files updated

Entity Control file, GLPET

Batch Control file, GLPBT

Input Journal Header file, GLPGH

Input Journal Detail file, GLPGX

Journal Exchange Information file, GLPJE

Journal Totals file, GLPJT

Long Journal Description file, GLPJD

Distribution Currency Detail file, GLPCD

Note: The Work with journals function does not create GLPCD records; they
are created during accept processing. However, the Work with mass journal
entry function does create GLPCD records.

Menu option

Menu Level 1: Journal Processing

Menu Level 2: Journal Entry

Menu Level 3: Work with journals [WWJ]


4-6 | Chapter 4 Loading Journal Input Files

Figure 4-2: Work With Journals Batch List Page 1 of 6

This screen displays records from the Batch Control file, GLPBT. Each
record that Infinium GL displays on this screen represents one batch. You
can press F6 to create a new batch.

Batch

Infinium GL derives the batch number from the Last Batch Number field,
ETBNBR, in the Entity Control file, GLPET.

Journal count

The number in the Journal count field specifies the number of journals that
are included in the batch.

M/S

A batch must be either monetary or statistical. An account that is defined as


both must be posted separately for each journal type.

Sts

A status value of SBM or ACT indicates that another user is working with the
batch. A blank status value indicates that the batch is available.
Creating or displaying a journal | 4-7

Err?

A value of ERR in this field indicates that the batch contains errors that will
prevent it from being accepted and/or posted.

Note: The Work with Journals function is limited to displaying journals with
fewer than 9,999 journal details. To work with journals that contain more than
9,999 journal details, you can use the Work with mass journal entry function.

Figure 4-3: Work with Journals Batch Header Page 2 of 6

This screen displays the fields on the Batch Control file, GLPBT.

Reference

The Reference field identifies the batch.

Accounting Year/Period/Week

Specify the accounting year, period, and week (if weekly reporting is
enabled) that this batch will update.

You can specify any year, period, and week for which your user ID has
authority.

Manual Tape

You can type manually calculated totals for the batch in the Total journal and
Dr/Cr totals fields to validate the totals that Infinium GL generates. If the
4-8 | Chapter 4 Loading Journal Input Files

system-calculated totals do not match the manually entered totals, the batch
is placed in error.

Figure 4-4: Work with Journals Journal List Page 3 of 6

To select a journal to display or work with, type 5 in the Opt field and press
Enter.

You can perform other options on this screen, as follows:

 Type 7 in the Opt field and press Enter to copy a journal to a recurring
journal.
 Press F6 to create a new journal
 Press F5 to copy/reverse an existing journal into the batch
 Press F7 to copy a recurring journal into the batch
Creating or displaying a journal | 4-9

Figure 4-5: Journal Header Page 4 of 6

Infinium GL uses the data entered on this screen to create a record in the
Input Journal Header file, GLPGH.

The Reference, Source code, and Description fields are required.

If you press F17 to add a long description, the description is stored in the
Long Journal Description file, GLPJD.
4-10 | Chapter 4 Loading Journal Input Files

Figure 4-6: Journal Header 2 Page 5 of 6

This screen displays the system-calculated totals for the journal. Optionally,
you can enter manual totals for the Total distributions and Dr/Cr total
amounts.

Infinium GL places the journal in error if the manual tape and system
calculated totals do not match.
Creating or displaying a journal | 4-11

Figure 4-7: Journal Details Page 6 of 6

The Journal Details screen is used to display or update data on the Input
Journal Detail file, GLPGX.

The job code name, defined as “Project” on the Base Data screen of the
Work with company controls function, is used for the Job Costing Analysis
report.

You can define the transaction user fields (in this example, Invoice,
Customer, Units, Vendor, Salesperson, Commission, and Contracted) in the
Work with entity control function.

Using the journal entry API, GLGFSI

The Foreign Subsystem Journal Interface program, GLGFSI, transfers


accounting information from a subledger to Infinium GL. Infinium
recommends that you use GLGFSI to create batches and journals within the
Infinium GL system from your subledgers.

You can access GLGFSI for the following purposes:

 Converting history
 Interfacing from Infinium and non-Infinium subledgers
4-12 | Chapter 4 Loading Journal Input Files

The diagram below illustrates the process for transferring history or


subledger data to Infinium GL journal files.

GLGFSI Transfer to Journal Files

Batch
Control
GLPBT

Input Journal
Header
GLPGH

Foreign
Subledger Subsystem
Subledger Long Journal
Data Progam Journal Interface Description
Call GLGFSI GLPJD
GLGFSI
Pass data
via 9
parameters

Input Journal
Detail
GLPGX

Distribution
Currency Detail
GLPCD

Figure 4-8: Subledger Transfer Flow diagram


Program flow for GLGFSI | 4-13

Program flow for GLGFSI

Start B

Initialize No Create
program new batch?
environment (BTBNBR=0
Parm 1)
Yes
Yes Perform Program
QQEND = 1? Create Batch
Shut-down
(Parm 9) Header
(Diagram #6)
(Diagram #2)

No
No Create
Yes Create new journal?
new batch? (GHJRNL=0
(BTBNBR=0 Parm 2)
Parm 1)
Yes
No Create Journal
Header
Restore saved (Diagram #3)
batch header
fields to GLPBT
Create Journal
Detail
(Diagram #4)
Yes Create
new journal?
(GHJRNL=0 Save copy of
Parm2) records/numbers
for batch &
No journal header

Restore saved
journal header Return control,
fields to GLPGH leaving program
and files open

B End

Figure 4-9: GLGFSI Program Flow - Diagram #1


4-14 | Chapter 4 Loading Journal Input Files

GLGFSI Program Flow - Diagram #2


Create a New Batch

Start A

No
Yes
First Auto Run proof
batch to be B accept on? (Parm 7) for last
processed? Journals exist? batch

Yes
B
Yes First Run proof,
journal to be accept and post
processed? for last batch

B
No
Retrieve next
Update last available batch
journal header number
GLPBH

Initialize & fill


GLPBT record
(Parm 1)
Set BTSTS
to 'S'

Set BTSTS
to 'E'
Update last
batch header
GLPBT
Write
batch header
GLPBT
A

Return

Figure 4-10: GLGFSI Program Flow - Diagram #2


Program flow for GLGFSI | 4-15

GLGFSI Program Flow - Diagram #3


Create a New Journal

Start A

Yes No Long
First
journal descr.
journal to be
entered?
processed?
(Parm 4)

Update last Initialize & write


journal header long description
GLPGH GLPJD

Retrieve next Write


available journal journal header
number GLPGH

Initialize & fill Return


GLPGH record
(Parm 2)

Figure 4-11: GLGFSI Program Flow - Diagram #3


4-16 | Chapter 4 Loading Journal Input Files

GLGFSI Program Flow - Diagram #4


Create a Journal Detail Record

Start

Initialize & fill


GLPGX record
(Parm 3)

Write
journal detail
GLPGX

Increment batch
and journal
header counters

S
What
batch type? A

M
No
Converted
amount? A
(CDCNT>0

Yes

Create Currency
Distributions
(Diagram #5)

A
Return

Figure 4-12: GLGFSI - Diagram #4


Program flow for GLGFSI | 4-17

GLGFSI Program Flow - Diagram #5


Create Currency Distribution Records

Start

Initialize GLPCD
record based on
GLPGX

Write GLPCD
record

Yes
CDCNT=0?
B
(Parm 6)

A No

Retrieve next
converted amount
array element
(Parm 5)

Initialize GLPCD
with converted
amount

Write GLPCD
record

Yes
More
converted amts A
to process?

B No

Return

Figure 4-13: GLGFSI Program Flow - Diagram #5


4-18 | Chapter 4 Loading Journal Input Files

GLGFSI Program Flow - Diagram #6


Perform Program Shut-Down

Start A

Yes No
First Auto
journal to be Run proof
accept on? (Parm7)
processed? for last batch
Journals exist?

No B
Yes

Update last Run proof,


journal header accept and post
GLPGH for last batch

Set *INLR to '1'


Set BTSTS (last record)
to 'S' to shut down
program

End
Update last
batch header
GLPBT

Figure 4-14: GLGFSI- Diagram #6


Program flow for GLGFSI | 4-19

Parameters

GLGFSI contains nine parameters, which must be passed between the


calling program and GLGFSI.

 Parm 1: GL Batch Record


 Parm 2: GL Journal Header Record
 Parm 3: GL Journal Detail Record
 Parm 4: GL Journal Long Description Record
 Parm 5: GL Converted Amount Record
 Parm 6: Number of Converted Amounts
 Parm 7: Auto Post Flag
 Parm 8: Error Flag
 Parm 9: End Processing Flag

These parameters:

 Control the processing of GLGFSI


 Pass the necessary information from the subledger to Infinium GL

Parameters 1, 2, 3, and 5 are defined in externally defined data structures


within the GL2000 library. Data is transferred from a subledger into selected
fields in these data structures. The remaining parameters are internally
defined within the subledger program and are used to control processing in
GLGFSI.

To use this API, you must be sure that your calling program contains code for
the following:

 Input specifications for the four externally defined data structures and for
the Journal Long Description record
 An initialization of the control fields as required for the current session, for
example initializing field BTBNBR with zeroes to create a new batch
 A detail data transfer loop that contains initialization of appropriate
parameter fields and a call to program GLGFSI, passing the nine
parameters
 When the transfer is complete, a final call to program GLGFSI to shut
down GLGFSI and the Infinium GL files. To shut down GLGFSI, move 1
to QQEND, Parameter 9, before calling GLGFSI.
4-20 | Chapter 4 Loading Journal Input Files

Sample data specifications

Your program should contain the following data specification definitions:


5716PW1 V3R7M0 961108 SEU SOURCE LISTING
SOURCE FILE . . . . . . . #KSMLIB/QRPGSRC
MEMBER . . . . . . . . . GLFSISAMP
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7
100 * GL Batch Header Record (physical file)
200 D BTRCD E DS 256 EXTNAME(GLPBT)
300
400 * GL Journal Header Record (physical file)
500 D GHRCD E DS 512 EXTNAME(GLPGH)
600
700 * GL Journal Detail Record (physical file)
800 D GXRCD E DS 512 EXTNAME(GLPGX)
900
1000 * GL Currency distributions - converted amounts (physical file)
1100 D CDRCD E DS 128 EXTNAME(GLPCD)
1200
1300 * GL Long Journal Description
1400 D JDRCD DS 800

The file sizes specified in the input specifications allow for record size
expansion in future releases.

Sample call to GLGFSI

Your program should call GLGFSI, as shown below:


C RUNFSI BEGSR
C CALL 'GLGFSI'
C PARM BTRCD Batch header
C PARM GHRCD Jrn header
C PARM GXRCD Jrn desc
C PARM JDDESC Jrn desc
C PARM CDS Conv Amts
C PARM CDCNT 20 CD COUNT
C PARM QQAUTO 1 AutoPost?
C PARM QQERR 1 Error?
C PARM QQEND 1 End?

Supplying parameter field values

As shown in the sample input specifications on the previous page, your


calling program should initialize the records that are passed to GLGFSI.

The following tables illustrate specific field values that your calling program
can pass to GLGFSI. Program GLGFSI assigns values for all other fields,
ignoring values passed by your program. To see the values that GLGFSI
assigns, refer to the “Field Values Assigned by Program GLGFSI” appendix.
Program flow for GLGFSI | 4-21

Parameter 1 - Externally defined data structure for batch header, GLPBT

Input specification: IBTRCD EIDSGLPBT 256

Field name Usage Description Entries

BTBNBR OPT Batch number Enter zero to create a new batch


(GLGFSI determines the batch number by
accessing the ETBNBR field in file GLPET)
BTMORS OPT Monetary/Statistical M = Monetary batch, default if not entered
S = Statistical batch
BTDESC OPT Description of batch Enter description
Default if not entered: Input Journal
BTCO REQ Company number Valid company number
BTYEAR REQ Batch year Valid accounting year
BTMNTH REQ Batch period Period of transactions within batch
BTREF OPT Reference code Your internal reference code if used
BTFS OPT Foreign subsystem ID Identifies the batch origination subsystem
Used in walkback process
BTFSP OPT Foreign subsystem Program to call if walkback feature is used
program Default if not entered: calling program
BTFSL OPT Foreign subsystem Library containing program specified in
library BTFSP field
Used in walkback process
BTWEEK OPT Week number Valid week number if using weekly reporting

Parameter 2 - Externally defined data structure for journal header, GLPGH

Data specification: D GHRCD E DS 512 EXTNAME(GLPGH)

Field name Usage Description Entries

GHJRNL OPT Journal number Enter zero to create a new journal


(GLGFSI determines the journal number by
accessing the ETJRNL field in file GLPET)
GHDESC OPT Journal description Enter a description to identify the journal
Default if not entered: Input Journal
4-22 | Chapter 4 Loading Journal Input Files

Parameter 2 - Externally defined data structure for journal header, GLPGH

Data specification: D GHRCD E DS 512 EXTNAME(GLPGH)

Field name Usage Description Entries

GH8DAT OPT Journal date Enter the 8-digit journal date


Default if not entered or if invalid date entered:
system date
GHSRC REQ Journal source code Valid source code
GHREF REQ Journal reference Your internal reference code for this journal
code
GHACRU OPT Accrual 1 = Reverse entries in next period
Default if not entered: 0
GHCO OPT Journal company Valid journal company
Default if not entered: BTCO value
GHIAT OPT Intercompany table Valid intercompany table or blank, default
GHTRCD OPT Transcode? 1 = Transcode this journal
0 = Do not transcode this journal, default
GHRVAL OPT Revaluation journal 1 = Revaluation journal
0 = Not a revaluation journal, default
GHCUR OPT Journal currency Used for monetary batches only
Valid currency
Default if not entered: Base currency of BTCO
GHEDTH OPT Exchange date Hundred year format
Default if not entered: system date
GHZERO OPT Single ledger journal 1 = Single ledger journal
0 = Not a single ledger journal, default

Parameter 3 - Externally defined data structure for journal detail, GLPGX

Data specification: D GXRCD E DS 512 EXTNAME(GLPGX)

Field name Usage Description Entries

GXACCT REQ, Account Valid posting level account


optional if If invalid or not entered, GLGFSI determines by
GXPAGE accessing GLPCT using GXPAGE
entered
Program flow for GLGFSI | 4-23

Parameter 3 - Externally defined data structure for journal detail, GLPGX

Data specification: D GXRCD E DS 512 EXTNAME(GLPGX)

Field name Usage Description Entries

GXPAGE OPT, Internal page Used by GLGFSI if GXACCT is blank or invalid


required if number If not entered, GLGFSI determines by accessing
GXACCT GLPCT using GXACCT
not
entered
GXJOB OPT Job code Valid job code
GXDESC OPT Transaction Description to identify the transaction
description
GXFAMT OPT Amount in Processing amount
processing currency
GXAF01* OPT Transaction user Value for alphanumeric user field 1
field
GXAF02* OPT Transaction user Value for alphanumeric user field 2
field
GXAF03* OPT Transaction user Value for alphanumeric user field 3
field
GXAF04* OPT Transaction user Value for alphanumeric user field 4
field
GXNF01 * OPT Transaction user Value for numeric user field 1
field
GXNF02 * OPT Transaction user Value for numeric user field 2
field
GXSN1 OPT Walkback code 1 Data to be sent to the subledger Walkback
program
GXSN2 OPT Walkback code 2 Data to be sent to the subledger Walkback
program
GXCUR OPT Currency of Valid currency code
transaction Default if not entered: value from GHCUR
GXCO OPT Account company Company of account
Default if not entered: company of GXACCT
4-24 | Chapter 4 Loading Journal Input Files

Parameter 3 - Externally defined data structure for journal detail, GLPGX

Data specification: D GXRCD E DS 512 EXTNAME(GLPGX)

Field name Usage Description Entries

GXDRCR OPT Debit/credit D = Debit


C = Credit
Default if not entered: D if GXFAMT greater than
0; otherwise C
* Transaction user fields are required if the Required Field? is set to 1 in the Entity Control record
and on an individual GLPCT record. GLPFSI does not recognize the transaction date user field.

Parameter 4 - Internally defined data structure for long journal description

Data specification: D JDDESC DS 800

Field Name Usage Description Entries

JDDESC OPT Long journal Additional 800 bytes to further identify the
description journal

Explanation of parameters 5 and 6

If your subledger contains multiple amounts in accounts that contain multiple


currencies, you can use parameters 5 and 6 to process the converted
amounts.

Parameter 5 is an array consisting of 10 occurrences of data structure


CDRCD. Currently, GLGFSI can process up to 2 occurrences; the 10
occurrences allow for expansion in future releases. Parameter 6 indicates the
number of CDRCD occurrences being passed in Parameter 5.

The following table summarizes the GLPCD records GLGFSI creates based
on the number of CDRCD occurrences passed in Parameter 5.

Number of CDRCD
occurrences in parameter 5 GLPCD Records created by GLGFSI

0 1 record created with amounts from GLPGX


1 1 record created with amounts from GLPGX
1 record created with amounts from first occurrence of CDRCD
Program flow for GLGFSI | 4-25

Number of CDRCD
occurrences in parameter 5 GLPCD Records created by GLGFSI

2 1 record created with amounts from GLPGX


1 record created with amounts from first occurrence of CDRCD
1 record created with amounts from second occurrence of CDRCD

Note: If multiple currency is enabled in Infinium GL but converted amounts


are not available in your subledger, the proof process creates GLPCD
records as applicable.

For information on using Infinium CM, please refer to the Infinium CM Guide
to Setup and Processing.

Parameter 5 - Externally defined data structure for converted amounts, GLPCD

Data specification: D CDRCD E DS 128 EXTNAME(GLPCD)

Field name Usage Description Entries

CDAMT REQ Amount Converted amount


CDFCUR REQ From currency Currency converting from
CDTCUR REQ To currency Currency converting to
CDRATE OPT Exchange rate Exchange rate used to convert
Default if not entered: 1
CDRPER OPT Rate per Rate per used to convert amounts
Used in conjunction with exchange rate
Rates are expressed in multiples of this number
Default if not entered: 1
CDRTYP OPT Rate type Rate type used to obtain exchange rate
Default if not entered: blank
CDMTHD OPT Exchange rate 1 = Direct, default if not entered
quotation method
2 = Indirect
CDEDTE OPT Exchange date Exchange date of rate
Default if not entered: system date
4-26 | Chapter 4 Loading Journal Input Files

Parameter 6 - Internally defined data structure (converted amounts)

Field name Usage Description Entries

CDCNT REQ Number of Number of times CDS parameter passed


converted amounts Set to zero if Parameter 5 not used

Parameter 7 - Internally defined data structure (auto post flag)

Field name Usage Description Entries

QQAUTO OPT Auto Post 1 = Perform auto post processing


Blank = Do not perform auto post processing

Parameter 8 - Internally defined data structure (error flag)

Field name Usage Description Entries

QQERR REQ Error flag 0 = Transaction successful


1 = Transaction failed

Parameter 9 - Internally defined data structure (end flag)

Field name Usage Description Entries

QQEND REQ End flag 0 = Create transaction using information passed


1 = Close program, do not write current
information

QQEND should be passed with a value of 1 as a stand-alone parameter after


all detail transactions have been processed.

Sample programs

Infinium provides you with the following sample programs that illustrate
methods for calling GLGFSI:

 XXGGLI - This program contains code similar to the code used to


interface subledgers from the Infinium HR Accounting Transactions file,
PYPAC, to Infinium GL.
Program flow for GLGFSI | 4-27

 XXGFSIA - This program demonstrates the use of GLGFSI for creating


single currency or non-currency journals.
 XXGFSIB - This program demonstrates the use of GLGFSI for creating
dual or multiple currency journals.

The pages that follow contain flow diagrams for these programs as well as an
overview of the recovery procedure contained in program XXGGLI.

Please refer to the “Sample Programs for Calling GLGFSI” appendix for
source code listings of these sample programs.

You can pattern your programs after these sample programs as appropriate
for your subledgers.

WARNING! Do not change program GLGFSI. Modify a shell program to


interface with program GLGFSI. Remember to copy the shell program to the
Infinium GL Custom library, GLCUST, for modification.
4-28 | Chapter 4 Loading Journal Input Files

Program flow for XXGGLI

B
Start c

New No
INZPGM No
company,
Initialize fields month or NEWBCH=0?
year? (new batch)

Yes
Yes
Read Move zeroes
input record to BTBNBR, Send message
GHJRNL, and batch/journal
NEWBCH creation in
progress
A

SETBT D
Yes
End Initialize batch
of E header fields
Read next
file?
input record

No SETGH
Initialize
journal header A
Validate record fields
for inclusion in
End of File Processing
transfer

SETGX
E
Load journal
detail fields
No
*
Transfer D Call GLGFSI to
RUNFSI
to GL? close files
Call GLGFSI to
(QQEND=1)
transfer data to
Yes GL files

B
End
C

Figure 4-15: Program Flow for XXGGLI

*See the “Recovery Procedure” section for additional information


Program flow for XXGGLI | 4-29

Sample recovery procedure

Program XXGGLI is designed to perform data recovery for the following


scenarios:

 To recover data from an abnormal transfer


 To recover all batches

This recovery approach uses field XXCODE in the subledger file to identify
whether data transfer has already been attempted or completed. XXCODE
can contain the following values:

0 Data has not yet been transferred

1 Data has been transferred normally and is eligible for


recovery. Data is not eligible to be purged.

2 Data has been transferred normally but is no longer


eligible for recovery. Data is eligible to be purged.

The following table summarizes processing for normal


transfers and for the two types of recovery processing.

Type of How
request identified How processed: XXCODE/action

Normal transfer XXTYPE other than blank or 0 Update XXCODE to 1


1 or 2 Transfer to GL
1 Update XXCODE to 2
2 Do not process
Recovery from XXTYPE = 1 Other than 2 Update XXCODE to 1
abnormal transfer Transfer to GL
2 Do not process
Recovery of all XXTYPE = 2 2 Transfer to GL
batches
Other than 2 Do not process
4-30 | Chapter 4 Loading Journal Input Files

Program flow for XXGFSIA and XXGFSIB

Start A

INZPGM CKACCT
Initialize Validate
B
account
program
variables (call GLGAPI)

No
INZDTA
Initialize Account Write error
B
test data valid? message

Yes
B
BGNPGM SETGX
Begin Load journal
processing detail fields Yes
More journal
B
details?

SETBT * SETCD No
Initialize batch Set up
header fields converted
amounts
Move '1' to
QQEND

SETGH RUNFSI
Initialize Call GLGFSI to
journal header transfer data to
fields GL files RUNFSI
Call GLGFSI to
close files
A
B

* Note: SETCD is performed in End


program XXGFSI2 only.

Figure 4-16: Program Flow for XXGFSIA and XXGFSIB


Chapter 5 Journal Posting Process
5

Journal processing involves the process of entering, proofing, accepting and


posting journals. This chapter includes information on the technical aspects
of the journal posting process.

The chapter consists of the following topics:

Topic Page

Accept and post overview 5-2


Accept and post process 5-3
Post and close period processing 5-6
Batch user exits 5-8
Journal processing data flow 5-10
Journal structure after posting 5-11
File descriptions 5-12
Accept and post error recovery 5-13
Understanding the walkback process 5-16
5-2 | Chapter 5 Journal Posting Process

Accept and post overview

Ac c e p t
G L G 3 P c a lls A c c ept
P r o c e s s in g P ro o f No
P re -a c c e p t P ro g ra m E nd
( D r iv e r P r o g r a m P ro g ra m E rro rs ?
U s e r E x it G LG G HA
G LG G H A1 ) G LG G HP A
P ro g ra m
Y es
E nd

P o s t P r o c e s s in g G L G 1 P c a lls P o s t in g G L G 2 P c a lls
(J o b C o n tro l P re -p o s t U s e r P ro g ra m P o s t -p o s t U s e r E nd
D e t a il s ) E x it P ro g ra m G L G TH M E x it P ro g ra m

Tra n s c o d e T ra n s c o d e
Y es G L G 3 P c a lls P re - No
P r o c e s s in g J o u rn a ls P ro o f P ro g ra m a c c e p t U s e r E x it E rro rs ? A
A c c ept?
( D r iv e r P r o g r a m P ro g ra m G LG G HP A P ro g ra m
G LG G H A2 ) G L G TR C
Y es

E nd E nd

P u rg e
A c c ept G L G 1 P c a lls P o s t in g G L G 2 P c a lls
Ye T ra n s c o d e d
A P ro g ra m P os t? P re -p o s t U s e r P ro g ra m P o s t -p o s t U s e r E nd
s B atc hes
G LG G HA E x it P ro g ra m G L G TH M E x it P ro g ra m
G L G TB P
No

E nd

Figure 5-1: Accept and Post Diagram


Accept and post process | 5-3

Accept and post process

The Accept & post journals process consists of three steps:

 Accept processing - includes proof processing, which validates


transactions, and moves data from input files to transaction history files
 Post processing - updates all balance files
 Transcode processing - performed if transcoding is enabled; performs
transcode, proof, accept, and post processing

Accept processing

Accept processing is controlled by the Journal Acceptance Processing driver


program, GLGGHA1. This program calls the following programs:

 The Proof Input Journals program, GLGGHPA, performs the following for
each batch:
 Edits the batch header, journal headers and journal details
 Deletes system generated journal details created in the balancing
routine of a previous proof
 Updates journal totals as appropriate
 If suspense processing is enabled, creates a suspense record for
each journal detail in error if applicable
 Edits currency distribution records, GLPCD, and creates records as
applicable
 Balances monetary journals including the following, as appropriate:
 Verifies journal balance by processing currency
 Creates intercompany balancing entries in GLPGX
 Verifies journal balance by company/currency combinations,
including base and secondary currencies
 Verifies intracompany balances
 Creates intracompany balancing entries in GLPGX if specified in
company controls
 Creates exchange rounding entries in GLPGX
5-4 | Chapter 5 Journal Posting Process

 Verifies journal balance by company/currency combinations,


including original and system generated details
 Sets BTERR to 1 if any errors are detected within a batch
 Produces a proof report
 The Call Acceptance Pre-Execution program, GLG3P, program calls the
pre-accept user exit program, if specified in the Entity Control record.
 The Accept Input Journals program, GLGGHA, processes each batch as
follows:
 Processes only those batches that pass proof processing, ignoring
batches for which BTERR is 1
 Sets BTSTS to P, indicating the batch has been accepted
 Creates a transaction header record, GLPTH, for each input journal
header, GLPGH, and deletes the input journal header record
 Creates a transaction detail record, GLPTX, for each input journal
detail record, GLPGX, and deletes the input journal detail record

Note: If the value in the Post zero dollar transactions? field on the entity
controls is 0 and the transaction is a zero dollar transaction, the program
does not create the transaction detail record, GLPTX, and the program
deletes the input journal detail record, GLPGX.

 Sets CDSTS to 1, for each currency distribution record, GLPCD,


associated with the transaction detail records
 Completes any other required journal processing such as recurring
journals or auto accrual processing
 Deletes input journal detail records, GLPGX, and input journal header
records, GLPGH
 Produces an accept report

Post processing

Post processing is controlled by job control details that call the following
programs:

 The Call Posting Pre-execution program, GLG1P, calls the posting pre-
execution user exit program, if specified in the Entity Control record.
 The Post program, GLGTHM, processes each batch as follows:
 Sets CDSTS to 2, for each currency distribution record, GLPCD,
associated with a posted transaction detail record
Accept and post process | 5-5

 Updates the posting flag, TXPOST, to P for each transaction detail


record, GLPTX
 Updates the posting flag, THPOST, to P for each transaction header
record, GLPTH
 Updates balances in the Account Balance file, GLPGL
 Updates balances in the Weekly Account Balance file, GLPWA, if
weekly reporting is enabled
 The Call Posting Post-execution Program, GLG2P, calls the posting post-
execution user exit program, if specified in the Entity Control record.

Transcode processing

Transcode processing is controlled by the Transcode Journal Acceptance


Processing driver program, GLGGHA2. This program performs the following
processing:

 Calls the Transcode Batches program, GLGTRC, if transcoding is


enabled in the Entity Control record, ETTRLJ is 1, 2, or 3. This program
transcodes each journal for which transcoding is specified on the journal
header.
 Performs accept processing, as described on the previous pages, if the
transcoding field in the Entity Control record specifies accept processing,
ETTRLJ is 2 or 3.
 Performs post processing, as described on the previous pages, if the
transcoding field in the Entity Control record specifies post processing,
ETTRLJ is 3.
 Calls the Purge Transcoded Batches program, GLGTBP, if Purge
transcoded journals? is set to 1 for the transcode company. This program
deletes the transcoded batches, leaving only the balances.
5-6 | Chapter 5 Journal Posting Process

Post and close period processing

The Post journals & close period function performs post processing as
described earlier in this chapter, with the following exceptions:

 The Post program, GLGTHM, selects data based on the accounting year
and period, and optionally on the company, instead of by batch.
 Program GLGTHM closes the period based on the postings fields defined
on the company controls, as described below.

Note: Auto reversal entries must be posted through the Post journals & close
period function.

Menu option

Menu Level 1: Control File Functions

Menu Level 2: Company Controls

Menu Level 3: Work with company controls [WWCC]

Figure 5-2: Work With Company Controls Period Controls screen


Post and close period processing | 5-7

Infinium GL displays this screen when you select the Period Controls
attribute from the Attribute Selection screen in Company Controls.

The posting fields on this screen:

 Keep track of the number of postings that occur within a period


 Can control the rolling forward of the period to the next period

Postings per period

You can define the values in the Postings Per Period fields to specify the
number of times you anticipate running the Post journals & close period
function for each period.

If you do not want to use the Postings Per Period fields to control rolling the
period forward, set this field to 35 for each period. In this case, you can use
one of the following methods to roll the period forward:

 You can use the Work with company controls function to manually roll the
period forward.
 You can use the Mass change company controls function within the
Company Control File Functions to programmatically roll the period
forward.

Postings to date

The Postings To Date field displays the number of times Infinium GL has
performed the Post journals & close period operation for this company.

When the value in the Postings To Date field equals the value in the
Postings Per Period field, Infinium GL rolls the current period on the
Company Control forward to the next period.

Direct postings

The Direct Postings field indicates the number of Accept and Post operations
performed within the period for this company.
5-8 | Chapter 5 Journal Posting Process

Batch user exits

The journal posting process executes accept and post user exit programs as
well as user exit programs for transaction user fields.

Accept and post user exit programs

The following batch user exits are available with respect to accept and post
processing:

 Pre-accept
 Pre-post
 Post-post

The names of these exit programs are specified on the Entity Control User
Exit Programs screen.

Task coupling key

Batch user exit programs must accept the key for the Task Coupling file,
GLPLC, as a parameter.

 Standard CPF Object, SEJOBN


 Job Number, SEJBNQ
 Date, SEDTEQ
 Standard Time, SETIMQ

Batch errors

If a user exit program encounters an error in a batch, you can post all but the
batch in error by using the batch number fields LCBNB1 through LCBNB6 on
the Task Coupling file. To eliminate a batch that is in error, blank the batch
number in the appropriate field. Be sure that your batch user exit programs
check all six of the batch number fields.

The Task Coupling file has only six batch number fields. To submit more than
six batches to post, write more records to the Task Coupling file. Each job on
the job queue will have six batches.
Batch user exits | 5-9

Post and close period

Your exit programs may not have the same effect when they are called by
the Post journals & close period function. This is true because Post journals
& close period is not submitted by batch number.

Transaction user exit programs

During mass journal entry processing or any function that performs proof
processing, the transaction detail validation program, GLGVGX, calls user
exit programs defined in Entity Controls for your transaction user fields.

Note: Your user exit programs can update any of the transaction user fields
as applicable. However, changes to any other transaction fields are ignored.

If your transaction user exit program returns an error to the calling program,
the journal is marked in error. In this case, the journal detail is not eligible for
suspense.
5-10 | Chapter 5 Journal Posting Process

Journal processing data flow

Enter Accept Post


Journals Journals Journals

Update
Batch Batch Status *
Batch Batch
Control Control Control
GLPBT BTSTS = E GLPBT BTSTS = P GLPBT

Input Create Update


GLPTH Journal Posting Flag Journal
Journal
Header Header
Header Delete THPOST = P
GLPTH GLPTH
GLPGH GLPGH**

Input Create Update


GLPTX Journal Posting Flag Journal
Journal
Detail Detail
Detail Delete TXPOST = P
GLPTX GLPTX
GLPGX GLPGX**

Distribution Update Status Distribution Update Status


CDSTS = 1 CDSTS = 2 Account
Currency Currency
Balance
Detail Detail
Update GLPGL
GLPCD GLPCD
Balances

Weekly
Account
Interactive Balance
Trial Balance GLPWA
Proof Input
Journals

Trial Balance and


General Ledger Interactive
Trial Balance,
Reports Trial Balance
General Ledger, and
ReportWriter Reports

* When the batch is submitted for processing, BSTS is set to S.


When the proof program begins processing the batch, BTSTS is set to E.
** Records are not deleted until journal processing is complete.

Figure 5-3: Journal Processing Data Flow


Journal structure after posting | 5-11

Journal structure after posting

Batch Control
GLPBT

Transaction
Header
GLPTH

Transaction Long Journal


Detail Description
GLPTX GLPJD

Distribution
Currency Detail
GLPCD

Figure 5-4: Journal Structure After Posting


5-12 | Chapter 5 Journal Posting Process

File descriptions

The table below summarizes files updated as a result of accept and post
processing.

File Description

GLPTH Transaction Header file


One record per journal from GLPGH
Unique by journal number, THJRNL
GLPTX Transaction Detail file
One record per detail transaction from GLPGX Offsetting
records must balance
Linking field to the journal header record, TXJRNL
GLPCD Currency Distribution file
One record per transaction currency
Maximum of 3 records per transaction
Linking fields to the journal detail record are CDJRNL,
CDSEQ
GLPGL Account Balance file
One record for each accounting type, currency and year
A record can be updated by multiple GLPTX records
Used by Infinium ReportWriter
Includes:
Account
Year
Type, Monetary or Statistical
Balance types for numeric user fields
Balance currency
GLPWA Weekly Account Balance file
One record per account balance record if the Enable
weekly reporting? field on the Weekly Reporting screen in
the Work with entity control function is set to 1.
GLPSP Suspense Postings file
Used if suspense processing is enabled
Contains information for transactions in error if applicable
Created during proof processing
Used during accept processing
Accept and post error recovery | 5-13

Accept and post error recovery

The Batch Control record contains the Batch status field, BTSTS, which
indicates the current status of the batch and prevents concurrent update of
the batch.

Possible values for BTSTS are:

blank Available for selection for update or acceptance

A Active in journal entry

S Submitted for acceptance or proofing and awaiting


processing

E Executing in the accept or proof process

P Accepted

If a problem, such as a power failure, program failure, or operating system


failure, occurs during processing, you can use the following function to reset
the BTSTS flag and make the batch available for processing.

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: GL Functions

Menu Level 3: Update batch control flags [UBCF]


5-14 | Chapter 5 Journal Posting Process

Figure 5-5: Update Batch Control Flags screen

If a batch was executing when the problem occurred, journals may have
been partially updated. This function uses the value in the Delete flag field,
GHDLT, to determine whether journals were partially updated and must be
reset.

 A value of 0 in GHDLT indicates that accept processing has not begun. In


this case, no action is performed.
 A value of 1 in GHDLT indicates that the accept program was in the
process of reading GLPGX records and writing GLPTX records. In this
case the function resets journals as follows:
 Deletes records from the GLPTH and GLPTX files
 Resets CDSTS to 0
 Resets BTSTS to blank
 Deletes auto accrual journals if applicable
 A value of 2 in GHDLT indicates that the accept program had read all
GLPGX records and created all the necessary GLPTX records. In this
case the function resets journals as follows:
 Deletes records from the GLPGH and GLPGX files
 Resets CDSTS to 0
 Resets BTSTS to blank
Accept and post error recovery | 5-15

After the Update batch control flags function resets journals in a batch, you
can complete the batch recovery by running the Accept & post journals
option or the Post journals & close period option, as follows:

 Rerun the Accept & post journals option if the batch displays in the
selection list for Accept & post journals.
 Run the Post journals & close period option if the batch does not display
in the selection list for Accept & post journals.

WARNING! Exercise care when resetting the batch control flag. Changing
the flag so that it does not match actual circumstances will lead to
unpredictable results.

You should change a status value of E to blank only if the batch was
abnormally interrupted during processing. Never change a status of P to
blank, because this status indicates that the batch has completed posting.
5-16 | Chapter 5 Journal Posting Process

Understanding the walkback process

Programs

Detail Journal Inquiry, GLGTHI, through Interactive Trial Balance

Journal Inquiry, GLGTXI

Overview

Infinium GL provides the capability to return to a foreign subsystem to view


the details of a transaction.

Infinium GL enables the selection of Foreign Subsystem Inquiry based upon


the following conditions:

 THPOST is a non-blank value.


 At least one of the following fields must be non-zero:
 TXSN1
 TXSN2

When you select Foreign Subsystem Inquiry, Infinium GL executes a


program to display the detail transactions. Infinium GL identifies the program
from the following GLPBT file information:

 Foreign subsystem identifier, BTFS


 Program to execute, BTFSP
 Library to execute program from, BTFSL

Example

Infinium PL, Infinium AR, Infinium PA, and Infinium FA are set up for the
Foreign Subsystem Inquiry function. The fields are set as follows:
Understanding the walkback process | 5-17

Infinium PL

Field Value

THPOST Contains a non-blank value


TXSN1 Contains the PL expensing number, VDNMBR
Used for detail close only
TXSN2 Contains the PL transfer number, VDTRNN
BTFS PL
BTFSP PLGXGL

Infinium AR

Field Value
THPOST Contains a non-blank value
TXSN2 Contains the GL closing sequence number from the Infinium
AR field, GTGLCN, in the ARPGT file
BTFS AR
BTFSP ARGXGL

Infinium PA

Field Value

THPOST Contains a non-blank value


TXSN1 Contains the GL audit number, TDGAUD
BTFS PA
BTFSP PAGXGL

Infinium FA

Field Value

THPOST Contains a non-blank value


TXSN1 Contains the FA audit number, HTAUGJ
5-18 | Chapter 5 Journal Posting Process

Infinium FA

Field Value

TXSN2 Contains the GL company, HTC


BTFS FA
BTFSP FAGXGL
Chapter 6 Validating Data from Non-
Infinium Subsystems
6

This chapter includes information on technical considerations for using the


Application Program Interface Manager, GLGAPI, as an interface between a
subledger or custom program and Infinium GL.

The chapter consists of the following topics:

Topic Page

Using the API, Application Program Interface, Manager 6-2


Parameters required by GLGAPI 6-4
Resolve/edit account number, reference code 01 6-6
Resolve account by page number, reference code 02 6-7
Create generic account, reference code 03 6-8
Chart of account validity date, reference code 04 6-9
Check account activity, reference code 05 6-10
Resolve/edit generic account, reference code 06 6-14
Account/company level security, reference code 07 6-15
Read account under mask, reference code 08 6-18
Resolve/edit company number, reference code 09 6-19
Sample program code 6-20
6-2 | Chapter 6 Validating Data from Non-Infinium Subsystems

Using the API, Application Program Interface,


Manager

The API Manager, GLGAPI, provides an interface between a subledger or


custom program and nine Infinium GL API programs that provide access to
and/or verification of information within Infinium GL. This single interface
approach eliminates the need for you to learn how to use multiple APIs.

Application programs that access the API Manager are less likely to be
affected by subsequent releases of Infinium GL than if they access the
specific APIs directly. To access new information in an Infinium GL release,
you simply recompile the application program over the new release.

Other than providing a means for creating generic accounts, the API
Manager does not provide for adding, changing or deleting information in
Infinium GL.

Note: If you create interfaces to Infinium GL, your user profile should be a
member of the S2KOBJOWNR group profile or should have *USE rights to
S2KOBJOWNR objects. This ensures that any objects you create have the
proper authority to access Infinium objects.

Overview diagram

As illustrated on the following page, the API Manager passes parameter


information from a subledger application program to the appropriate API and
returns the requested data to the calling program.
Using the API, Application Program Interface, Manager | 6-3

Application Program Interface Manager overview

Application Program Interface Manager Overview


Initiate Request Route Request Process Request

Resolve/edit
account number
GLGCTC2

Resolve account
by page number
Subledger GLGCTC3
Application
Create generic
account
Infinium
GLGCTK1
Accounts
Receivable API Manager
Chart of account
validity date
GLGVDC1

Check account
Infinium Fixed
GLGAPI activity
Assets
GLGCAA1

Resolve/edit
generic account
GLGGAC1
Other/Custom
Application Account/company
level security
GLGALS1

Read account
under mask
GLGMC2

Resolve/edit
company number
GLGCNC1

Figure 6-1: Application Program Interface Manager Overview


6-4 | Chapter 6 Validating Data from Non-Infinium Subsystems

Parameters required by GLGAPI

The following two parameters are passed between the subledger program
and the API Manager.

Parameter Size Size attributes

Control data structure, GLSCTL 256 bytes Constant


Contains reference and status
information, including a reference code
that identifies the function to be
performed
A general data structure that contains 1024 bytes Variable
the information requested by the
subledger. Usually linked to an
externally defined physical file.
These parameter lengths allow for future expansion of file sizes.

The Control Data Structure, GLSCTL, remains the same regardless of the
information that is being accessed. The general data structure varies
depending on the particular request.

Note: The lengths of the data structures in your subledger programs must
match the API Manager data structure lengths to avoid overwriting program
storage.

Control data structure fields, GLSCTL

The fields in data structure GLSCTL are illustrated in the following table.

Control data structure fields, GLSCTL

Start/end field Field


position name description Values

1 3 QZRM Release and Release and modification of the Infinium GL


modification system
Parameters required by GLGAPI | 6-5

Control data structure fields, GLSCTL

Start/end field Field


position name description Values

4 5 QZREF Reference code 01 GLGCTC2 Resolve/edit account number


02 GLGCTC3 Resolve account by page number
03 GLGCTK1 Create generic account
04 GLGVDC1 Chart of account validity date
05 GLGCAA1 Check account activity
06 GLGGAC1 Resolve/edit generic account
07 GLGALS1 Account/company level security
08 GLGCM2 Read account under mask
09 GLGCNC1 Resolve/edit company number
6 7 QZCND Reference Reference condition control. See the specific API
control reference for the defined codes.
8 8 QZSM Send message Should GLGAPI send the error message to the
program message queue? (0 = no, 1 = yes)
9 9 QZRMT Retrieve Should GLGAPI return the message in QZMID
message text and QZMSG? (0 = no, 1 = yes)
10 19 QZPGM Calling program What program should receive message?
(blank = *PRV)
20 29 QZUSER Calling user User profile that message is sent to if it is not sent
to the calling program
30 30 QZRET Return code Status of API Manager request. This is a one byte
code (0 or 1). Refer to the specific API reference
for the defined status.
31 32 QZRES Reason code Further defines the return code. See the specific
API reference for the defined codes.
33 34 QZTYPE Reason code 2 Further defines the reason code. See the specific
API reference for the defined codes.
35 41 QZMID Message ID Returned message ID (if QZRMT = 1)
42 121 QZMSG Message text Returned message text (if QZRMT = 1)

The tables on the following pages explain how to populate these fields for
each type of request.
6-6 | Chapter 6 Validating Data from Non-Infinium Subsystems

Resolve/edit account number, reference code 01

The table below provides additional detail about the API Manager parameters
for reference code 01.

Account Checker, GLGCTC2, reference code 01

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 01 - Resolve/edit account number


Structure
GLPCT Chart of CTACCT Account number to be checked
Accounts record

Returned values in GLSCTL

Field Description Value/explanation

QZRET Return Code 0 Account is valid (no errors)


1 Account is invalid (errors encountered)
QZRES Reason Code 00 Account is valid
01 Account is invalid
02 Company is invalid
03 Input is valid but is not an account
04 Account is valid but is non-posting
05 Account is valid but is inactive
06 Company component is valid but is not an account
QZTYPE Reason Code 2 Identifies the method used to resolve the account number:
00 Input string is an account
01 Input string is an acronym (short name)
02 Resolved using a translation table
03 Resolved using the user's default account
04 Input string is a masked account
QZMID Message ID Returned message ID if applicable (if QZRMT = 1)
QZMSG Message text Returned message text if applicable (if QZRMT = 1)
Resolve account by page number, reference code 02 | 6-7

Resolve account by page number, reference code


02

The table below provides additional detail about the API Manager parameters
for reference code 02.

Account checker by page number, GLGCTC3, reference code 02

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 02 - Resolve account by page number


Structure
GLPCT Chart of CTPAGE Page number of account to be checked
accounts record

Returned values in GLSCTL

Field Description Value/explanation

QZRET Return Code 0 Account is valid (no errors)


1 Account is invalid (errors encountered)
QZRES Reason Code 00 Account is valid
01 Page number not found
02 Account not active
QZMID Message ID Returned message ID if applicable (if QZRMT = 1)
QZMSG Message text Returned message text if applicable (if QZRMT = 1)
6-8 | Chapter 6 Validating Data from Non-Infinium Subsystems

Create generic account, reference code 03

The table below provides additional detail about the API Manager parameters
for reference code 03.

Generate generic accounts, GLGCTK1, reference code 03

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 03 - Create chart of account from


Structure generic controls
GLPCT Chart of CTACCT Account to be generated
accounts record

Returned values in GLSCTL

Field Description Value/explanation

QZRET Return Code 0 Account created (no errors)


1 Account not created (errors encountered)
QZRES Reason Code 00 Account created
01 Account number invalid
02 Account company invalid
03 Input valid but account does not exist
04 Account exists but is non-posting
05 Account exists but is inactive
06 Company component valid but not an account
07 Account already exists
QZMID Message ID Returned message ID if applicable (if QZRMT = 1)
QZMSG Message text Returned message text if applicable (if QZRMT = 1)
Chart of account validity date, reference code 04 | 6-9

Chart of account validity date, reference code 04

The table below provides additional detail about the API Manager parameters
for reference code 04.

Validity date checker, GLGVDC1, reference code 04

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 04 - Chart of account validity date


Structure
GLPCT Chart of CTACCT The account for which date is to be
accounts record verified
CTVFYR Year to check the accounts validity date
CTVFPR Period to check the accounts validity
date

Returned values in GLSCTL

Field Description Value/explanation

QZRET Return Code 0 Account is valid for this date (no errors)
1 Account is not valid for this date (errors encountered)
QZRES Reason Code 00 Date is valid
01 Year is less than valid year
02 Year is greater than valid year
03 Period is less than the valid period for the year
04 Period is greater than the valid period for the year
QZMID Message ID Returned message ID if applicable (if QZRMT = 1)
QZMSG Message text Returned message text if applicable (if QZRMT = 1)
6-10 | Chapter 6 Validating Data from Non-Infinium Subsystems

Check account activity, reference code 05

The table below provides additional detail about the API Manager parameters
for reference code 05.

Account activity checker, GLGCAA1, reference code 05

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 05 - Check account activity


Structure
GLSCAA Check account Q1ACCT Account number to check against the
activity data files, the company identifier which is
structure being referenced

Returned values in GLSCTL

Field Description Value/Explanation

QZMID Message ID Returned message ID if applicable (if QZRMT = 1)


QZMSG Message text Returned message text if applicable (if QZRMT = 1)

Returned values in GLSCAA

Field Description Value/explanation

Q1COA Returned to calling program to 1 Record exists


indicate whether the input account 0 Record does not exist
exists in the GLPCT file
Q1SC Returned to calling program to 1 Sub-components exist
indicate whether sub components for 0 Sub-components do not exist
the input account exist in the GLPCT
file
Q1ACT Returned to the calling program to 1 Activity exists - This value is set in
indicate whether the input account conjunction with the remaining fields
has had activity in this table. Those fields describe
the nature of the activity.
0 Activity does not exist
Check account activity, reference code 05 | 6-11

Account activity checker, GLGCAA1, reference code 05

Returned values in GLSCAA

Field Description Value/explanation

Q1BAL Returned to the calling program to 1 Account balance record exists


indicate whether the input account 0 Account balance record does not
has a balance record in the GLPGL exist
file
Q1BUD Returned to the calling program to 1 Budget balance record exists
indicate whether the input account 0 Budget balance record does not
has a balance record in the Budget exist
Detail file, GLPBX
Q1IJN Returned to the calling program to 1 Input journal detail record exists
indicate whether the input account 0 Input journal detail record does not
has a record in the GLPGX file exist
Q1AJN Returned to the calling program to 1 Exists in the accepted journals file
indicate whether the input account 0 Does not exist in the accepted
exists in at least one GLPTX record journals file
Q1RJN Returned to the calling program to 1 Exists in the recurring journals detail
indicate whether the input account transactions file
exists in at least one recurring 0 Does not exist in the recurring
journal record, GLPRX journals detail transaction file
Q1BJN Returned to the calling program to 1 Exists in the budget journals detail
indicate whether the input account transaction file
exists in at least one budget journal 0 Does not exist in the budget journals
record, GLPBK detail transaction file
Q1TRL Returned to the calling program to 1 Exists in a translation table
indicate whether the input account 0 Does not exist in any translation
exists in at least one translation table
table, GLPXL
Q1SPS Returned to the calling program to 1 Specified on a company control
indicate whether the input account is record as a suspense account
specified on a Company Control 0 Does not exist on a company control
record, GLPCN, as a suspense record as a suspense account
account
Q1RET Returned to the calling program to 1 Specified on a company control
indicate whether the input account is record as a retained earnings
specified on a Company Control account
record, GLPCN, as a retained 0 Does not exist on a company control
earnings account record as a retained earnings
account
6-12 | Chapter 6 Validating Data from Non-Infinium Subsystems

Account activity checker, GLGCAA1, reference code 05

Returned values in GLSCAA

Field Description Value/explanation

Q1ICT Returned to the calling program to 1 Account exists in an intercompany


indicate whether the input account table
exists in at least one intercompany 0 Does not exist in an intercompany
table, GLPIT table
Q1TSM Returned to the calling program to 1 Account exists in a translation set
indicate whether the input account 0 Does not exist in a translation set
exists in at least one translation set,
GLPTS
Q1IPY Returned to the calling program to 1 Specified on a company control
indicate whether the input account is record as an intracompany payable
specified on a Company Control account
record, GLPCN, as an intracompany 0 Does not exist on a company control
payable account record as an intracompany payable
account
Q1IRC Returned to the calling program to 1 Specified on a company control
indicate whether the input account is record as an intracompany
specified on a Company Control receivable account
record, GLPCN, as an intracompany 0 Does not exist on a company control
receivable account record as an intracompany
receivable account
Q1ERA Returned to the calling program to 1 Specified on a company control
indicate whether the input account is record as an exchange rounding
specified on a Company Control account
record, GLPCN, as a rounding 0 Does not exist on a company control
gain/loss account record as an exchange rounding
account
Q1OFA Returned to the calling program to 1 Exists in the allocation target detail
indicate whether the input account file or in the allocation target header
exists in at least one allocation target file
detail record, GLPOX, or allocation 0 Does not exist in the allocation target
target header record, GLPOH detail file or in the allocation target
header file
Q1UEA Returned to the calling program to 1 Exists in the user control file
indicate whether the input account 0 Does not exist in the user control file
exists in at least one user control
record, GLPUE
Check account activity, reference code 05 | 6-13

Account activity checker, GLGCAA1, reference code 05

Returned values in GLSCAA

Field Description Value/explanation

Q1RGA Returned to the calling program to 1 Specified on a company currency


indicate whether the input account is record as a gain account
specified on a Company Currency 0 Does not exist on a company
record, GLPCC, as a gain account currency record as a gain account
Q1RLA Returned to the calling program to 1 Specified on a company currency
indicate whether the input account is record as a loss account
specified on a Company Currency 0 Does not exist on a company
record, GLPCC, as a loss account currency record as a loss account
Q1RRA Returned to the calling program to 1 Specified on a company currency
indicate whether the input account is record as an exchange rounding
specified on a Company Currency account
record, GLPCC, as a rounding 0 Does not exist on a company
account currency record as an exchange
rounding account
Q1PRV Returned to the calling program to 1 Exists in the account currency file
indicate whether the input account 0 Does not exist in the account
exists as a provision account in at currency file
least one account currency record,
GLPAR
6-14 | Chapter 6 Validating Data from Non-Infinium Subsystems

Resolve/edit generic account, reference code 06

The table below provides additional detail about the API Manager parameters
for reference code 06.

Check generic account format, GLGGAC1, reference code 06

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 06 - Resolve/edit generic account


Structure
GLPCT Chart of CTACCT The generic account string to be
accounts record checked

Returned values in GLSCTL

Field Description Value/explanation

QZRET Return Code 0 Generic account format is valid (no error)


1 Generic account format is invalid (errors encountered)
QZRES Reason Code 00 Generic account format is valid
01 No separator characters were found on the input string
02 No account was passed through CTACCT
03 Account string passed does not match the generic
definition for the account
QZMID Message ID Returned message ID if applicable (if QZRMT = 1)
QZMSG Message text Returned message text if applicable (if QZRMT = 1)
Account/company level security, reference code 07 | 6-15

Account/company level security, reference code 07

The table below provides additional detail about the API Manager parameters
for reference code 07.

Check security, GLGALS1,-reference code 07

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 07 - Account/company level security


Structure
GLSALS Referenced SCO Company
Information Data SACC Account
Structure SCCS Check company security?
SCAS Check account security?
SRR Request to read?
SRW Request to write?
SRU Request to update?
SRD Request to delete?
SSM Send message?
SRM Retrieve message text?
SGN Get next company/account?
SPGM Program
SUSER User (if left blank, current user assumed)

Returned values in GLSCTL

Field Description Value/explanation

QZRET Return Code 0 Authorized (no errors)


1 Not Authorized (errors encountered)
6-16 | Chapter 6 Validating Data from Non-Infinium Subsystems

Check security, GLGALS1,-reference code 07

Input parameters

Parameter Description Required fields Value

QZRES Reason Code 00 Authorized


01 Not authorized to read company
02 Not authorized to write company
03 Not authorized to update company
04 Not authorized to delete company
05 Not authorized to read account
06 Not authorized to write account
07 Not authorized to update account
08 Not authorized to delete account
09 Not authorized to access this company
10 Not authorized to access this account
11 Company number required
12 Account required
QZMID Message ID Returned message ID if applicable (if QZRMT = 1)
QZMSG Message text Returned message text if applicable (if QZRMT = 1)

Returned values in GLSALS

Field Description Value/explanation

SNHC Next highest


company
SNLC Next lowest
company
SNHA Next highest
account for
company, SCO
SNLA Next lowest
account for
company, SCO
SGRP Security group
SALS Secured at the 1 Secured
account level? 0 Not secured
(Global)
SCLS Secured at the 1 Secured
company level? 0 Not secured
(Global)
Account/company level security, reference code 07 | 6-17

Check security, GLGALS1,-reference code 07

Input parameters

Parameter Description Required fields Value

SSTM Secured to a 1 Secured


mask for 0 Not secured
company, SCO
SSTR Secured to a 1 Secured
range for 0 Not secured
company, SCO
SAD Total account 1 Account definitions are defined
definitions? 0 Not defined
SFT Secure type for 1 From
company, SCO 2 To
SRET Return Code 1 Authorized
0 Not authorized - this value is set in
conjunction with the SRES field.
SRES Reason Code 01 Not authorized to read company
02 Not authorized to write company
03 Not authorized to update company
04 Not authorized to delete company
05 Not authorized to read account
06 Not authorized to write account
07 Not authorized to update account
08 Not authorized to delete account
09 Not authorized to access this company
10 Not authorized to access this account
11 Company number required
12 Account number required
6-18 | Chapter 6 Validating Data from Non-Infinium Subsystems

Read account under mask, reference code 08

The table below provides additional detail about the API Manager parameters
for reference code 08.

Read under mask, GLGCM2, reference code 08

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 08 - Read chart of accounts under mask


Structure
QZCND Condition for fulfilling the API call:
00 = Start searching for match at
beginning of GLPCT file
01 = Close program and files
02 = Continue searching for match at
current pointer position
GLPCT Chart of CTACCT Masked account value
accounts record Used in conjunction with QZCND values
00 and 02

Returned values in GLSCTL

Field Description Value/explanation

QZCND Condition Code 00 No match was found


02 Next match has been returned

Program GLGCM2 is designed to remain active and leave files open when it
returns control to the calling program. The calling program can use the
QZCND parameter to specify whether to search from the beginning of the
GLPCT file or from the current record in GLPCT. When processing is
complete, the calling program can use QZCND to close program GLGCM2.
Resolve/edit company number, reference code 09 | 6-19

Resolve/edit company number, reference code 09

The table below provides additional detail about the API Manager parameters
for reference code 09.

Company validation, GLGCNC1, reference code 09

Input parameters

Parameter Description Required fields Value

GLSCTL Control Data QZREF 09 - Resolve/edit company number


Structure
GLPCN Company CNCO Company identifier for the company
control record being referenced

Returned values in GLSCTL

Field Description Value/explanation

QZRET Return Code 0 Company is valid (no errors)


1 Company is not valid (errors encountered)
QZRES Reason Code 00 Company is valid
01 Company does not exist
02 Company is not active
03 User is not authorized to company
QZMID Message ID Returned message ID if applicable (if QZRMT = 1)
QZMSG Message text Returned message text if applicable (if QZRMT = 1)
6-20 | Chapter 6 Validating Data from Non-Infinium Subsystems

Sample program code

The following coding segments illustrate input specifications, field


initialization, and the call to GLGAPI to resolve and edit an account number.

This example illustrates a request using reference code 01. The parameters
are data structure GLSCTL, which is defined as QQCTL, and the general
data structure parameter, which uses file GLPCT and is defined as QQCTC.
**
** Define control data structure
D QQCTL E DS 256 EXTNAME(GLSCTL)
**
** Resolve/Edit GL account
**
D QQCTC E DS 1024 EXTNAME(GLPCT)
.
.
.

** Accept account number from user.


** Call the API manager to resolve and edit the account.
**
C MOVE CHKACT CTACCT
C MOVE '01' QZREF
C CALL 'GLGAPI'
C PARM QQCTL
C PARM QQCTC
C*

Figure 6-2: Reference Code 01 Request

After GLGAPI returns control, the QQCTC data structure contains the
account number information for the requested account.

Sample program

Infinium provides you with a sample API calling program, XXGAPI.

Program XXGAPI illustrates the following:

 Input specifications for all data structures used by GLGAPI


 An example of the initialization requirements for each type of request
handled by GLGAPI
 An example of the CALL statement for each type of request handled by
GLGAPI
Sample program code | 6-21

You can pattern your program requests for GLGAPI services by copying the
sections of code that pertain to the specific function to be performed.
6-22 | Chapter 6 Validating Data from Non-Infinium Subsystems

Notes
Chapter 7 Performing Supervisory
Functions
7

This chapter includes technical information on performing supervisory


functions within Infinium GL.

The chapter consists of the following topics:

Topic Page

Assigning account level security 7-3


Assigning application and account security 7-7
Recalculating account balances and resetting transcoded journals 7-17
RECALCAB processing 7-20
RTJ processing 7-22
Creating a training database 7-24
7-2 | Chapter 7 Performing Supervisory Functions

Objectives

At the conclusion of this chapter you should:

 Be able to apply application and account level security to your users


 Be familiar with the function for recalculating account balances
 Be familiar with the function for resetting transcoded journals
Assigning account level security | 7-3

Assigning account level security

You can use account level security to restrict users from or to specific
accounts. Assigning account level security is a two part process:

1 Define Security Groups

2 Assign the Security Groups to the appropriate user profiles

Note: Infinium GL Security Groups are separate and distinct from Group
User Profiles in Infinium AM. A Group User Profile assigned to a Security
Group will not grant security to its member user profiles.

Programs

Maintain Security Definition program, GLGS1M

Check Account Level Security, GLGALS

Check Account Level Security, GLGALS2

Files updated

Account Security Group Definition, GLPS1

Account Security - Company Definition, GLPS2

Account Security - Account Definition, GLPS3

Menu option

Menu Level 1: Control File Functions

Menu Level 2: Groups

Menu Level 3: Work with security groups [WWSG]


7-4 | Chapter 7 Performing Supervisory Functions

Figure 7-1: Work With Security Groups screen

Type the name of the security group that you want to display or modify.

Figure 7-2: Work With Security Groups description screen

A security group must be active to be included in security processing.


Assigning account level security | 7-5

Figure 7-3: Work With Security Groups selection screen

This screen displays the companies included in the security group.

You add companies to the group by pressing F23, placing a character in the
Opt field of each company to include, and pressing Enter to add the selected
companies to the security group.

To define or modify specific account level security for a company, type 5 in


the Option field for the company and press Enter.
7-6 | Chapter 7 Performing Supervisory Functions

Figure 7-4: Work With Security Group Accounts screen

The value in the Secured from or to field specifies the type of account
security for users in this security group.

1 Users are restricted from using an account or group of


accounts.

2 Users are restricted to using only a specific account or


group of accounts.

When you restrict users to To- or From-accounts, type an individual account,


a single masked account, or a range of accounts in the From Account or
Mask field and in the To Account fields.

After you create the security group, you assign the security group to the
appropriate users.
Assigning application and account security | 7-7

Assigning application and account security

Overview

You implement application security within the Infinium GL system at the user
level. Security information is stored in the Infinium GL User Definition file,
GLPUE.

How to set up application security

If you have access to the Work with user security controls function, you can
maintain application security for any other user that has:

 A lower authority level than your current user profile


 Authorization to the Infinium GL system

The security level of a user is maintained in the Infinium AM User Control file,
AMPUD.

Restricting access

You can restrict access as follows:

 All functions
 By company, if security groups are set up
 By account
 Journal and budget maintenance only
 By current period
 By a specific number of preceding months (0 - 13)
 By a specific number of succeeding months (0 - 13)
 By certain source and/or reference codes
7-8 | Chapter 7 Performing Supervisory Functions

Program

User Security Control Maintenance program, GLGUEM

File updated

User Definition file, GLPUE

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: User Security

Menu Level 3: Work with user security controls [WWUSC]

Figure 7-5: Work With User Security Controls user selection screen

Type 5 in the Option column next to the appropriate user and press Enter to
select the user for which you want to apply security.
Assigning application and account security | 7-9

Figure 7-6: Work With User Security Controls attribute selection screen

Key points

Type 5 in the Option column next to the appropriate attribute(s) and press
Enter to select the type of security you want to apply.

You should define the security attributes in the sequence they appear on this
screen.
7-10 | Chapter 7 Performing Supervisory Functions

Figure 7-7: Work With User Security Controls - Base data screen

You define a default account number and default translation table on this
screen. In addition, you specify whether to enable AutoPost at Mass journal
entry and whether to display account descriptions in journal entry.

These are not security-related fields.

Default account

The default account is used as a keying short cut for entering account
numbers during journal entry.
Assigning application and account security | 7-11

Figure 7-8: Work With User Security Controls - Company & account screen

On this screen you assign a security group to which the user is restricted.

The security group contains the companies and/or accounts for which the
user has authority.

Figure 7-9: Work With User Security Controls - Chart of reporting screen
7-12 | Chapter 7 Performing Supervisory Functions

On this screen you can restrict the user to a reporting company group.

A reporting company group contains the reporting company(s) for which the
user has access when using Infinium RW Component Reporting, also known
as Chart of Reporting.

Figure 7-10: Work With User Security Controls - Accounting period screen

On this screen, you restrict the user's access to specific accounting periods
for journal entry purposes.

Restrict to periods?

Type 1 to restrict the user to the periods specified in the Preceding periods
and Succeeding periods fields.

Type 0 to specify that the user has no accounting period restrictions.

Preceding Periods
Succeeding Periods

The values you type into the Preceding periods and Succeeding periods
fields are based on the current period value in Company Controls. They must
refer to periods within the same accounting year.

Type a value from 0 to 13 to restrict a user to the specified number of


preceding or succeeding periods.
Assigning application and account security | 7-13

If you type 1 in the Restrict to periods? field and type 0 in these fields, the
user is restricted to the current period.

Figure 7-11: Work With User Security Controls - Journal security screen

On this screen you can enable the user to override journal processing
restrictions that otherwise apply to this user in the assigned security group.
You can also specify restricting the user to processing journals that have
specified source and reference codes, and you can indicate the user's mode
of entry for debits and credits.

If either of the following bypass fields is set to 1, the user can view and select
accounts from the entire chart of accounts when prompting for account
numbers in Infinium GL journal-related functions.

Bypass for journal maintenance?

If this field is set to 1, the user can create and update journals bypassing the
company and account security defined in the security group assigned earlier
in these controls. The user is still subject to security set within a specific
account such as year and period limits.

The following functions and options are affected by this field: Work with mass
journal entry, Work with journals, Work with recurring journals and, within the
first two of these, the Copy to recurring journal option.
7-14 | Chapter 7 Performing Supervisory Functions

Bypass for journal posting?

If this field is set to 1, the user can proof, accept, and post journals bypassing
the company and account security defined in the security group assigned
earlier in these controls. The user is still subject to security set within a
specific account such as year and period limits.

The following functions are affected by this field: Proof input journals, Accept
and post journals, and Accept input journals.

Source Code Restriction


Reference Code Restriction

You can use masks and ranges; however, you cannot use masking when
specifying a range.

Debit/Credit Entry

This field determines how the user can enter debit/credit amounts in journal
entry functions and whether the user can make correcting debit/credit entries.
This field is accessible only if the Maintain debit/credit balances? field on the
Balance Controls screen of Work with entity controls is set to 1.

If this field is set to 1, the user can enter debits and credits during journal
entry for the following functions:

 Work with mass journal entry - If debit/credit entry is enabled, a D/C


column is displayed next to the amount. The user can type D or C to
indicate a debit or credit amount.
 Work with journals - If debit/credit entry is enabled, each transaction in
the subfile is displayed with D or C to indicate a debit or credit amount.

Setting this field to 1 also allows the user to enter normal debit and credit
entries as positive amounts and enter correcting debit and credit amounts as
negative amounts in the above journal entry functions.
Assigning application and account security | 7-15

Figure 7-12: Work with User Security Controls - Intercompany screen

On this screen you restrict the user to an intercompany group and define a
default intercompany table.

The Journal Balancing Options determine the way in which Infinium GL


handles access to intercompany transactions.

These restrictions are in effect at journal entry time only. They do not apply to
posting.
7-16 | Chapter 7 Performing Supervisory Functions

Figure 7-13: Work with User Security Controls - Infinium RW security screen

On this screen you define reporting security and defaults.

If you set the Allow user to change field to 1, the user can override the default
run option.
Recalculating account balances and resetting transcoded journals | 7-17

Recalculating account balances and resetting


transcoded journals

The Recalculate account balances and Reset transcoded journals functions


are designed to help you recover corrupted data, with the guidance of
Infinium Customer Support Center personnel.

WARNING! Many local factors can affect how to perform a successful recovery.
Before using either Recalculate account balances or Reset transcoded journals,
do the following:

1. Review the information in this section.

2. Always contact Customer Support for guidance in performing either function.

Recalculate account balances

If the account balances for a company become corrupted, you can run the
Recalculate account balances function, RECALCAB, to recreate monetary,
statistical, numeric, user field, debit, and credit balances.

Caution: This function uses existing TX (transaction) records for the


recalculations. If a company has no TX records, RECALCAB resets the
company’s balances to zero. A company has no TX records under
circumstances such as the following:

ƒ Balances were converted directly into file GLPGL

ƒ Transaction records were purged by use of the Purge journal & summary
files function

ƒ Balances were created or updated by use of the Update prior year


balances function

ƒ Company is a translation company

ƒ Company is a transcode company for which the system is set to purge


transaction records during the posting process
7-18 | Chapter 7 Performing Supervisory Functions

Reset transcoded journals

If the account balances for a company become corrupted, and if your


transcoded journals have been purged, you must run the Reset transcoded
journals function, RTJ, to make journals available again for transcoding.
Under most circumstances, you can then run the Recalculate account
balances function to recreate the balances.

Quick reference table

The following quick reference table shows six different scenarios for
recalculating a company’s account balances and, if applicable, for resetting
that company’s transcoded journals.

Recalculating account balances and resetting transcoded journals - quick reference

Scenario If you are... And if the... Then you should...

1 Not General ledger Run RECALCAB on that company.


transcoding or company’s balances
translating are corrupted
2 Transcoding General ledger Run RECALCAB on the transcode
with transcode company’s balances company.
company’s TX are OK, but the
This clears the balances in the transcode
records set to transcode company’s
company, and then either (1) resets the
be purged balances are
transcode company’s balances to zero, or
corrupted
(2) recalculates the balances from any of
the transcode company’s TX records
created by direct posting.
Run RTJ on the general ledger company to
make the previously transcoded journals
available again for transcoding.
Run Transcode journals (standalone
transcoding) on the general ledger
company, period by period.
This re-transcodes, accepts, and posts
journals for the transcode company (if your
entity controls specify accepting and
posting for this transcode company),
updates the transcode company’s
balances, and then purges the new TX
records.
Recalculating account balances and resetting transcoded journals | 7-19

Recalculating account balances and resetting transcoded journals - quick reference

Scenario If you are... And if the... Then you should...

3 Transcoding General ledger Run RECALCAB on the general ledger


with or without company’s balances company only.
transcode are corrupted, but
company’s TX the transcode
records set to company’s balances
be purged are OK
4 Transcoding Balances are Run RECALCAB on the general ledger
with transcode corrupted for both company to restore the balances.
company’s TX the general ledger
records set to company and the Perform the steps in Scenario 2.
be purged transcode company
5 Translating Translation Retranslate each period to rewrite the
company’s balances balances.
are corrupted, but
the general ledger
company’s balances
are OK
6 Translating Balances are Run RECALCAB on the general ledger
corrupted for both company.
the general ledger
company and the Retranslate each period from the general
translation company ledger company to the translation
company.
7-20 | Chapter 7 Performing Supervisory Functions

RECALCAB processing

The Recalculate account balances function, RECALCAB, uses the Balance


Recovery Processor program, GLGBRF1, to perform the recovery procedure
and to update transaction and account balance files.

Program

Balance Recovery Processor program, GLGBRF1

Files updated

Transaction Header file, GLPTH

Transaction Detail file, GLPTX

Account Balance file, GLPGL

Weekly Account Balance file, GLPWA

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: GL Functions

Menu Level 3: Recalculate account balances [RECALCAB]


RECALCAB processing | 7-21

Figure 7-14: Recalculate Account Balances screen

This function clears balances in the GLPGL and GLPWA files and calls the
Post program, GLGTHM, to rebuild balances from the GLPTX file. If
transcoding is enabled, this function also performs transcode processing by
calling program GLGGHA2.

You can use this function to create debit and credit balances for a company.
7-22 | Chapter 7 Performing Supervisory Functions

RTJ processing

The Reset transcoded journal function, RTJ, uses the Reset Transcoded
Files program, GLGBRF2, to reset the Transcode Complete flag in the
Transaction Header file, GLPTH.

Program

Reset Transcoded Files program, GLGBRF2

File updated

Transaction Header file, GLPTH

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: GL Functions

Menu Level 3: Reset transcoded journals [RTJ]


RTJ processing | 7-23

Figure 7-15: Reset Transcoded Journals screen

This function resets the Transcode Complete field, THTCMP, to 0 for the
journals that match the criteria you specify on this screen. A field value of 0
makes journals available again for transcoding.
7-24 | Chapter 7 Performing Supervisory Functions

Creating a training database

The Create training database option enables you to create a training


database by copying a portion of your production database. You can specify
companies and years as well as the type of data to copy.

The program copies the following to the new database:

 Code values in which the Company field is blank


 Code values for the company that you specified

Once the program creates the new database, you must create a new version
in Infinium AM that accesses the new library.

You must then perform the following in the new database:

 Run the Recreate all macros option


 Compress and expand all Infinium RW reports
 Run the Populate chart of reporting option

Note: The person submitting this function must have authority to use the
CRTLIB command.

Programs

Batch prompter, GLGGLB

Create training database, GLGCRTD

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: System Functions

Menu Level 3: Create training database [CTD]


Creating a training database | 7-25

Figure 7-16: Create Training Database screen

The system defaults the current library in the From database library field. You
must complete the To database library field with the library you want to
create. The new database library must not exist because the program
creates it.

All other fields are optional. However, to copy only a portion of the production
database, Infinium recommends that you copy by company group or
company.

Note: When using transcoding you should use a company group to include
both the GL and transcoded companies.
7-26 | Chapter 7 Performing Supervisory Functions

Notes
Chapter 8 Infinium Report Writer
Considerations
8

Infinium RW uses the accounts contained in account macros to select and


process balances for reports.

This chapter includes information on rebuilding and recreating account


macros. This is done to maintain valid macros after accounts are added or
modified.

The chapter consists of the following topics:

Topic Page

Overview of Infinium RW files 8-3


Macro rebuild program flow 8-4
Rebuilding account macros 8-5
Recreating all macros 8-9
8-2 | Chapter 8 Infinium Report Writer Considerations

Objectives

At the conclusion of this chapter you should:

 Understand the macro rebuild process


 Know how to maintain the efficiency of the rebuild process
Overview of Infinium RW files | 8-3

Overview of Infinium RW files

The following table summarizes files related to Infinium RW processing that


you should understand.

File Description

GLPCU Chart of Accounts Audit Log file


One record per chart of accounts change
FNPMP Macro Definition file
One record per macro
Unique by macro identifier, MPNAM
FNPME Macro Explosion file
One record per macro account
Linking fields to the macro definition record are MPNAM
and MPACCT
FNPHD Report Hold Data file
Populated when a report is run
One record per line per report
Report identified by group, HDGRP, group sequence,
HDGSEQ, report, HDRNAM, and user, HDUSER
8-4 | Chapter 8 Infinium Report Writer Considerations

Macro rebuild program flow

Macro Rebuild Program Flow


Submit Map
Rebuild
GLCFMR

Rebuild
Account Macros
FNIRAM

Read Chart of Chart of


Accounts Audit Accounts Audit
Log record Log GLPCU
GLPCU

Yes New Account


EOF on
Re-explosion
GLPCU? GLGFMR

No

Read Macro
Definition record Macro Definition
FNPMP FNPMP

Account Yes
in FNPMP Write/delete
Macro Explosion Macro Explosion
Macro? FNPME
record FNPME

No

No
EOF on
FNPMP?
Yes

Figure 8-1: Macro Rebuild Program Flow Diagram


Rebuilding account macros | 8-5

Rebuilding account macros

The Rebuild account macros function incorporates changes for accounts that
were created or modified in the Work with chart of accounts function into
existing macros. Infinium GL writes these new or modified accounts to the
Chart of Accounts Audit Log file, GLPCU.

The program that Infinium GL uses to rebuild macros is the Rebuild Account
Macros program, FNIRAM. To rebuild account macros, Infinium GL does the
following:

 If Use dynamic storage? is set to 1 on the ReportWriter Entity Control


screen, FNIRAM reads the Macro Definition file, FNPMP, and stores the
macro definitions in memory. Otherwise, FNIRAM reads each macro
definition as it processes account changes.
 Processes each record for which the CUPOST field is blank (not
processed) in the Chart of Accounts Audit Log file, GLPCU.
 Compares each GLPCU record to each macro definition in the Macro
Definition file, FNPMP, as follows:

If an account is used in a macro definition, FNIRAM writes a record to or


deletes a record from the Macro Explosion file, FNPME, based on the
value in the CUACTN field.

If an account is not used in a macro definition, FNIRAM reads the next


FNPMP record.

After all FNPMP records have been processed for the current GLPCU
record, FNIRAM enters a value of A in the posting field, CUPOST, in the
Chart of Accounts Audit Log file.

 After all GLPCU records have been processed, the New Account Re-
explosion program, GLGFMR, reads the GLPCU file. For records that
have an A in the CUPOST field, GLGFMR changes the value to P.

Identifying the account maintenance type

The Rebuild Account Macros program, FNIRAM, uses the CUACTN field to
identify the account maintenance type as new, changed or deleted, as
follows:
8-6 | Chapter 8 Infinium Report Writer Considerations

1 Add account

2 Delete account

3 Change account

Macros excluded from the rebuild process

The rebuild program excludes a macro from the rebuild process if it meets
any of the following criteria:

 Multi-select macro - macro type, MPTYP, is M


 Fixed macro - macro type, MPTYP, is F
 Indirect macro - macro type, MPTYP, is I
 Explode at run-time? field, MPRTEX, is 1
 Last explosion date, MPEXDT, is greater than the date (CUDATH) of the
last record in the GLPCU file

Note: To assure optimum rebuild efficiency, you should rebuild your macros
daily during off-hours.

Program

Rebuild Account Macros program, FNIRAM

Files updated

Chart of Accounts Audit Log file, GLPCU

Map Explosion file, FNPME

Menu option

Menu Level 1: Infinium ReportWriter

Menu Level 2: Account Macros


Rebuilding account macros | 8-7

Menu Level 3: Rebuild account macros [RAM]

Figure 8-2: Rebuild Account Macros screen

To submit the Rebuild account macros function, press Enter.

Caution: During the rebuild process, Infinium RW and the Chart of Accounts
functions should not be used. However, you can run the various Journal
Processing functions and Accept and Post functions.

Considerations

When you run the macro rebuild process, consider the following:

1 The Rebuild account macros function may run for an extended period of time.
The duration depends upon the following factors:

 The number of records in the GLPCU file in which the CUPOST field is
blank
 The number of macros
 How frequently you run the Rebuild account macros function

The Rebuild account macros function should be run nightly for optimum
efficiency.

 The use of company group security


8-8 | Chapter 8 Infinium Report Writer Considerations

If you have a large number of macros that access accounts associated


with company group security, processing time may increase
considerably.

 The setting for the Use dynamic storage? field in the ReportWriter Entity
Control screen

Specifying 1 in this field results in improved run time for the rebuild job
but can slow down the system for other users.

Specifying 0 in this field results in more database access but uses less
memory to process the rebuild job.

2 If you add account user fields to your Chart of Accounts file, be sure to create
the macros that use these user fields before running the Rebuild account
macros function.

Notes:

 If you stop the rebuild process or if it is interrupted abnormally, when you


restart the rebuild function, processing begins at the point of termination.
It does not restart at the beginning.
 You can use the shell program, GLCSBM, to submit Infinium GL and
Infinium RW jobs during off-hours.
Recreating all macros | 8-9

Recreating all macros

You can run the Recreate all macros function from the Supervisor Functions
menu to recreate your account macros if they become misaligned as a result
of any of the following:

 Multi-threading of unauthorized jobs occurred


 New accounts were loaded directly into the Chart of Accounts file,
GLPCT

Infinium GL uses program FNCMER to recreate macros. To recreate macros,


FNCMER does the following:

1 Clears all accounts from the Macro Explosion file, FNPME, except for multi-
select macros (METYP value of M)

2 Calls program FNGMER to rebuild multi-select records in the FNPME file

3 Calls program FNIMER to recreate all macros. FNIMER performs the


following tasks:

a Reads the Macro Definition file, FNPMP

b Reads the Chart of Accounts file, GLPCT, to find all of the accounts that
qualify for each FNPMP macro definition read

c Builds each record in the FNPME file

d Places a P in the CUPOST field for every record in the Chart of Accounts
Audit Log file, GLPCU

Caution: If you cancel this job, it re-executes from the beginning when you
restart the recreate function.

Program

Recreate All Macros program, FNCMER


8-10 | Chapter 8 Infinium Report Writer Considerations

Files updated

Macro Explosion file, FNPME

Macro Definition file, FNPMP

Chart of Accounts Audit Log file, GLPCU

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: RW Functions

Menu Level 3: Recreate all macros [RAAM]

Figure 8-3: Recreate All Macros Confirmation Panel Page 1 of 1 screen

This function recreates all of your account macros.

WARNING! Use this function only when necessary because it could possibly
run for days. The run time is a function of the total number of macros, records
in FNPMP, the total number of Infinium GL accounts, records in GLPCT, and
the complexity of each macro.
Recreating all macros | 8-11

Caution: Infinium RW and the Work with chart of accounts function should
not be used during the recreate macros process. However, you can run the
various Journal Processing functions including Accept and Post functions.
8-12 | Chapter 8 Infinium Report Writer Considerations

Notes
Chapter 9 Understanding Budget
Processing
9

Infinium GL provides the capability to create budgets.

The chapter consists of the following topics:

Topic Page

Budget journal structure 9-3


Interactive budget entry 9-4
Budget journal processing 9-10
Budget journal processing data flow 9-16
Budget journal structure after posting 9-17
Converting budgets 9-19
Budget journal conversion program structure, GLGCBJ 9-21
Budget journal conversion program flowchart, GLGCBJ 9-22
Budget master file conversion program structure, GLGCBX 9-23
Budget master file conversion program flowchart, GLGCBX 9-24
9-2 | Chapter 9 Understanding Budget Processing

Objectives

At the conclusion of this chapter you should understand the following:

 Budget processing
 Converting budgets
 Files involved and their relationships
Budget journal structure | 9-3

Budget journal structure

Budget Batch
Control
GLPBB

Budget Input
Journal Header
GLPBJ

Budget Input
Journal Detail
GLPBK

Figure 9-1: Budget Journal Structure diagram

File Description

GLPBB Budget Batch Control file


One record per batch
Unique by BBBUDB
GLPBJ Budget Input Journal Header file
One record per journal
Unique by BJBUDJ
GLPBK Budget Input Journal Detail file
One record per account transaction
Associated by BKBUDJ
9-4 | Chapter 9 Understanding Budget Processing

Interactive budget entry

During interactive budget entry, the system updates budget files, as follows:

 Creates the Budget Header file, GLPBH


 Updates the Budget Balance Master file, GLPBX, directly

Interactive budget entry is done through the Work with budgets option, which
is the only function that creates a budget header.

Work with budgets does not provide an audit trail of budget updates.

Program

Budget Maintenance program, GLGBHM

Files updated

Task Coupling Data file, GLPLC

Chart of Accounts file, GLPCT

Budget Header file, GLPBH

Budget Balance Master file, GLPBX

Weekly Budget Balance file, GLPWB

User Definition file, GLPUE

Reporting Company Control file, GLPRC

Menu option

Menu Level 1: Budget Processing

Menu Level 2: Work with budgets [WWB]


Interactive budget entry | 9-5

Figure 9-2: Work With Budgets Page 1 of 6

Type the company for which you want to view or modify the budget.

Figure 9-3: Work With Budgets Page 2 of 6

Type 5 in the Opt column next to the appropriate budget and press Enter to
select the budget to display or modify.
9-6 | Chapter 9 Understanding Budget Processing

Press F6 to create a new budget.

Figure 9-4: Work With Budgets Page 3 of 6

This screen displays when you press F6 from the previous screen.

On this screen, you can create a new budget header record, GLPBH.
Interactive budget entry | 9-7

Figure 9-5: Work With Budgets Page 4 of 6

This screen displays the Budget Header record, GLPBH.

Freeze from update?

If you type 1 in this field, the Work with budgets function allows no changes
to dollar amounts for the budget. However, the Work with budget journals
function can be used to make changes to the budget's dollar amounts.
9-8 | Chapter 9 Understanding Budget Processing

Figure 9-6: Work With Budgets Page 5 of 6

Select the budget detail that you want to display or modify. Specify whether
you want to work with budget records for a year, period, or week (if weekly
reporting is enabled at the entity level).

Figure 9-7: Work With Budgets Page 6 of 6


Interactive budget entry | 9-9

This screen displays budget detail information for the account selected on the
previous screen.
9-10 | Chapter 9 Understanding Budget Processing

Budget journal processing

You can perform budget journal processing to:

 Update budgets using an audit trail


 Update a frozen budget

Program

Budget Journal Maintenance program, GLGBJM

Files updated

Entity Control file, GLPET

Budget Batch Control file, GLPBB

Budget Input Journal file, GLPBJ

Budget Input Journal Detail file, GLPBK

User Definition file, GLPUE

Menu options

Menu Level 1: Budget Processing

Menu Level 2: Budget Journals

Menu Level 3: Work with budget journals [WWBJ]


Budget journal processing | 9-11

Figure 9-8: Work With Budget Journals Page 1 of 5

The posting process used in Budget Journal Processing is similar to Journal


Processing.

A user is limited to processing one period at a time.

You must create a budget header before you can perform Budget Journal
Processing.

Type 5 in the appropriate Opt field and press Enter to select the Budget
Journal with which you want to work.
9-12 | Chapter 9 Understanding Budget Processing

Figure 9-9: Work With Budget Journals Page 2 of 5

Enter batch control information on this screen.

Reference code

The Reference code is an optional field that further identifies the budget
batch.

Manual tape

You can type a manually calculated total for the batch in the Manual tape
field to validate the totals generated by Infinium GL.

Accounting year/Period

You can type any accounting year and period to which you have authority.
The batch is posted to the specified year and period.
Budget journal processing | 9-13

Figure 9-10: Work With Budget Journals Page 3 of 5

Press Enter to create a new budget journal.

Type 5 in the Opt column next to the appropriate journal to modify an existing
budget journal.

Type 4 in the Opt column to delete a budget journal.


9-14 | Chapter 9 Understanding Budget Processing

Figure 9-11: Work With Budget Journals Page 4 of 5

Each budget journal header record has an 800 byte Expanded description
field.

Infinium GL displays manual and system generated totals on the lower third
of the screen.

Budget code

Type the name of an existing budget to be updated by this journal. To create


the budget header record for this budget, you can use the Work with budgets
function.
Budget journal processing | 9-15

Figure 9-12: Work With Budget Journals Page 5 of 5

Type budget journal amounts on this screen.


9-16 | Chapter 9 Understanding Budget Processing

Budget journal processing data flow

Work with
Post Budgets
Budget Journals

Budget Batch Budget Batch


Control Control
GLPBB GLPBB

Create Budget
Budget Input GLPBO Transactions
Journal Header
Header
GLPBJ Delete
GLPBO
GLPBJ

Create Budget
Budget Input GLPBQ Transactions
Journal Detail
Detail
GLPBK Delete
GLPBQ
GLPBK

Budget Balance
Master
GLPBX

Weekly
Reporting
Budget
GLPWB

Figure 9-13: Budget Journal Processing Data Flow diagram


Budget journal structure after posting | 9-17

Budget journal structure after posting

Budget Batch
Control
GLPBB

Budget
Transactions
Header GLPBO

Budget
Transactions
Detail GLPBQ

Budget Balance
Master GLPBX

Figure 9-14: Budget Journal Structure after Posting

File Description

GLPBO Budget Transactions Header file


One record per journal
Unique by BOBUDJ
GLPBQ Budget Transactions Detail file
One record per account transaction
Associated by BQBUDJ
9-18 | Chapter 9 Understanding Budget Processing

File Description

GLPBX Budget Balance Master file


A GLPBX record can be updated by multiple GLPBQ records
Key
Company
Year
Budget
Account (by page number or account number)
Type - M, S, 1, or 2
GLPWB Weekly Reporting Budget file
One record per account transaction if weekly processing was
activated in the Work with entity control function.
Converting budgets | 9-19

Converting budgets

You can convert budgets into Infinium GL using one of the following
methods:

 By converting into the Budget Batch Control file, GLPBB, Budget Input
Journal Header file, GLPBJ, and the Budget Input Journal Detail file,
GLPBK and then posting to the Budget Balance Master file, GLPBX.

Infinium provides shell conversion program GLGCBJ for converting non-


Infinium GL budget data to an Infinium GL budget journal. This program
also produces a conversion report.

 By converting directly into the Budget Balance Master file, GLPBX.

Infinium provides shell conversion program GLGCBX for converting non-


Infinium GL budget data to the Infinium GL Budget Balance Master file.
This program also produces a conversion report.

GLGCBX reads each record in the input file and creates one Budget
Balance Master record per account number. If multiple input records exist
for the same account number in the same budget, this program updates
one record instead of creating a new record for each input record.

The Budget Balance Master file supports budget information for 13


periods and also holds a total amount for the account number being
budgeted.

For each budget account, enter 1 in the Budget used field, CTBUSD, in
the Chart of Accounts file, GLPCT. You must do this to use the account in
Infinium ReportWriter.

 By uploading budgets from a PC spreadsheet such as Lotus 1-2-3 or


Excel.

For more information on uploading budgets from a PC, refer to the


Interfacing With PC Support part.

Note: If you are converting a budget, you should use the Work with budgets
function to manually create a budget header record (GLPBH) in Infinium GL
before converting the budget.
9-20 | Chapter 9 Understanding Budget Processing

Conversion considerations

The conversion process is a coordinated effort between you and your users.
Before choosing and modifying a shell conversion program, you must know
the following:

1 How will the budget data be entered?

 Manually
 Programmatically with a conversion program

2 If entering data programmatically, which approach will you use?

 Convert into budget journals using GLGCBJ


 Convert directly into the Budget Balance Master file using GLGCBX

Flow diagrams are provided on the following pages for each budget
conversion shell programs.

3 If converting into budget journals, each period must be converted individually.


Perform the Proof and post budgets function for each period.

Note: Programs GLGCBJ and GLGCBX are only shell programs. Before
making any modifications, copy the shell program to the Infinium GL custom
library GLCUST, where you can modify it to match your input data and
processing needs.

Caution: Infinium GL system upgrades may include new fields that relate to
the conversion of budget data. Therefore, you should compare the file
layouts at the end of this chapter to the conversion program to be certain that
all fields are initialized properly and are included in the program as needed.
Budget journal conversion program structure, GLGCBJ | 9-21

Budget journal conversion program structure,


GLGCBJ

INZPGM

BGNPGM

INZBB

INZBJ

INZBK
Performed
for each
Input CHKBK
record

CRTBK

PRTBK

ENDPGM

Figure 9-15: Budget Journal Conversion Program Structure diagram


9-22 | Chapter 9 Understanding Budget Processing

Budget journal conversion program flowchart,


GLGCBJ

Start B

Initialize program Load data, write


variables GLPBK record

Read input record Increment totals


GLPBB, GLPBJ
C
Initialize GLPBB Print detail line on
record report

Initialize GLPBJ
record Read next input record

Initialize GLPBK fields No


End of
A
file?
Validate input
transaction Yes

Write GLPBB, GLPBJ


Translate old account records
via conversion table

Print end of report


Yes
Errors
C
on input?

End
No

Figure 9-16: Budget Journal Conversion Program Flowchart


Budget master file conversion program structure, GLGCBX | 9-23

Budget master file conversion program structure,


GLGCBX

INZPGM

BGNPGM

INZBX

CRTBX

Performed
for each
Input
CKACC1
record

PRTBX

ENDPGM

Figure 9-17: Budget Master File Conversion Program Structure diagram


9-24 | Chapter 9 Understanding Budget Processing

Budget master file conversion program flowchart,


GLGCBX

Start
B

Initialize key fields for No


General Ledger 2000 Valid
files account C
number?

Yes
Read input record
Update budget detail
fields GLPBX
Yes
End of No
D Does Write
file?
GLPBX record GLPBX
exist? record
No Yes
No
Valid Update GLPBX record
D
Company?
C
Yes
Print detail line on
No report
Budget
header exist? D
(GLPBH)
Read next input record
Yes

Print report heading No


End of
A
A file?
Initialize budget detail
record GLPBX Yes
D

Print end of report


Validate input account

B End

Figure 9-18: Budget Master File Conversion Program Flowchart


Chapter 10 Managing Disk Space
10

This chapter includes information on various techniques for reducing disk


space requirements and processing run times.

The chapter consists of the following topics:

Topic Page

Managing disk space 10-3


Purging files 10-4
Purging the chart of accounts audit log 10-9
Purging batch prompt data 10-11
Purging journal audit data 10-13
Clearing selected physical files 10-15
Reorganizing files 10-16
10-2 | Chapter 10 Managing Disk Space

Objectives

At the conclusion of this chapter you should be familiar with various


techniques and functions for managing your system's use of disk space. You
should be able to tune your system to optimize performance.
Managing disk space | 10-3

Managing disk space

Overview

To utilize disk space efficiently, you should periodically perform the following
maintenance procedures:

 Purge files
 Clear selected physical files
 Reorganize files

Note: To avoid file or resource contention problems, perform the above


maintenance when no one is using the Infinium GL system.
10-4 | Chapter 10 Managing Disk Space

Purging files

Purging journal and summary files

To purge Infinium GL and Infinium RW work files, run the Purge journal &
summary files option.

Programs
GLCPGC Duplicate GLPGLH, GLPTHH, GLPTXH, GLPPSH, GLPCDH,
GLPWAH for Purge program
GLGTHPG Purge Transaction Files program
GLGGLPG Purge Summary program
GLGPG Driver program for calling GLGWAPG, Purge Weekly
Balances program
GLCPGR Reorganize GLPGL, GLPTH, GLPTX, GLPPS, GLPCD,
GLPWA After Purge program

Files updated

Transaction Header file, GLPTH/GLPTHH

Transaction Detail file, GLPTX/GLPTXH

Posting Control file, GLPPS/GLPPSH

Currency Distribution file, GLPCD/GLPCDH

Purge History file, GLPPH

Account Balance file, GLPGL/GLPGLH

Weekly Account Balance file, GLPWA/GLPWAH

Purge Summary Report file, GLTGLPG


Purging files | 10-5

Purge Report of Detail file, GLTTHPG

Purge Report of Weekly Balance file, GLTWAPG

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: System Functions

Menu Level 3: Purge journal & summary files [PJASF]

Figure 10-1: Purge Journal and Summary Files screen

This function purges historical transaction and balance data.

Journal and Summary File Processing

When you run this purge function, Infinium GL performs the following:

1 Creates target files to hold a copy of the data to be purged.

Because the purge function clears the target files prior to data transfer, you
should be sure your current target files are saved off-line prior to running a
purge.
10-6 | Chapter 10 Managing Disk Space

2 Transfers each record from the data files to the target files and then deletes
the records from the data files.

3 Reorganizes the data files to remove deleted records after the data transfer
is completed.

Infinium GL purges data by company or company group through the


year/period you specify in the Purge summary records through to year and
Purge transaction records through to year/period fields on this screen.
Company groups are defined in the Work with company groups function on
the Control File Functions menu.

All data prior to and including the year/period you specify is purged.

You can purge detail records without purging summary records. You can also
include or exclude intercompany transactions.

Purge weekly records through to year

This field is displayed only if weekly reporting is enabled on the Weekly


Reporting Controls screen of Work with entity controls.

Summary of the purge process

The table below illustrates the data files that Infinium GL purges, the target
files that Infinium GL creates and the criteria for purging the data.

Description Data file Target file Purge by

Transaction Header file GLPTH GLPTHH Year and Period


Transaction Detail file GLPTX GLPTXH Year and Period
Currency Distribution file GLPCD GLPCDH Year and Period
Account Balance file GLPGL GLPGLH Year
Posting Control file GLPPS GLPPSH Year and Period
Weekly Account Balance GLPWA GLPWAH Year
file

After the purge process creates these target files, you should save these files
to tape and clear the target files, as described in “Saving Purged Data” later
in this chapter.

The purge function executes the following programs:


Purging files | 10-7

Program Description Function

GLCPGC Duplicate GLPGLH, GLPTHH, Creates target files


GLPTXH, GLPPSH, GLPCDH,
GLPWAH for Purge
GLGTHPG Purge Transaction Files Purges GLPTH,
GLPTX, GLPCD and
GLPPS
GLGGLPG Purge Summary Purges GLPGL
GLGPG Call GLGWAPG to purge Weekly Purges GLPWA
Balance
GLCPGR Reorganize GLPGL, GLPTH, Reorganizes data
GLPTX, GLPPS, GLPCD, GLPWA files
After Purge

Caution: To purge summary records, GLPGL, for a particular year, you must
purge detail records, GLPTX, through Period 14 for that year.

You should consult your application users to determine the frequency that the
purge operation is performed, as this has a direct impact on data available for
reporting. Infinium recommends that you keep a minimum of two years of
summary data and one year of transaction detail data.

You should monitor the growth of these files on a regular basis to assure that
the purge frequency that you select is appropriate.

Saving purged data

After running the purge function, you should run the function Save purged
data to tape and then clear the target files.

WARNING! Because the purge function deletes and then recreates target
files prior to data transfer, you should be sure your current target files are
saved off-line prior to running the next purge.

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: System Functions


10-8 | Chapter 10 Managing Disk Space

Menu Level 3: Save purged data to tape [SPDTT]

Figure 10-2: Save Purged Data to Tape Page 1 of 1 screen

After you save the purged data to tape, you should clear the GLPGLH,
GLPTHH, GLPTXH GLPPSH, GLPCDH, and GLPWAH files with the Clear
Physical File Member command, CLRPFM, to recapture the space on the
system.
Purging the chart of accounts audit log | 10-9

Purging the chart of accounts audit log

You can purge records from the Chart of Accounts Audit Log file, GLPCU,
based on a date range.

Program

Delete CU Records program, GLGDLTCU

File updated

Chart of Accounts Audit Log file, GLPCU

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: System Functions

Menu Level 3: Purge chart of accts audit log [PRGCOAAL]


10-10 | Chapter 10 Managing Disk Space

Figure 10-3: Purge Chart of Accts Audit Log Page 1 of 2

Infinium GL purges only those records that have a value of P (processed) in


the CUPOST field and that are within the date range specified on the screen.

Purging the Chart of Accounts Audit Log file has no effect on the Rebuild
account macros function because the rebuild function processes records for
which CUPOST is blank (not processed).
Purging batch prompt data | 10-11

Purging batch prompt data

This function purges and reorganizes files that the system uses to process
batch jobs and to show the last selected values on the prompt screen.

Program

Purge Batch Prompt Data, GLGLCP

File updated

GL Task Coupling file, GLPLC

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: System Functions

Menu Level 2: Purge batch prompt data [PRGLC]


10-12 | Chapter 10 Managing Disk Space

Figure 10-4: Purge Batch Prompt Data screen

This function clears the GLPLC file.

The Purge through date should not include any date for which submitted jobs
have not run.
Purging journal audit data | 10-13

Purging journal audit data

This function purges the files that are used for journal auditing.

Program

Journal Audit Log Purge, GLGJAP

Files updated

Journal Audit Log file, GLPJA

Input Journal Detail Audit file, GLPJX

Budget Input Journal Header Audit file, GLPBA

Budget Input Journal Detail Audit file, GLPBU

Menu option

Menu level 1: Supervisor Functions

Menu level 2: System Functions

Menu level 3: Purge journal audit data [PJAD]


10-14 | Chapter 10 Managing Disk Space

Figure 10-5: Purge Journal Audit Data screen

This function clears the GLPJA, GLPJX, GLPBA, and GLPBU files based on
the submission criteria you enter.
Clearing selected physical files | 10-15

Clearing selected physical files

You can clear the following files by using the IBM Clear Physical File Member
command (CLRPFM):

 Infinium RW Report Hold Data file, FNPHD

Clearing this file prevents users from displaying and referencing reports.

If you clear this file you should also clear FNPLX.

 Infinium RW Line Explosion Hold file, FNPLX

This file should be cleared if FNPHD is cleared.

 Task Coupling Data File for Infinium RW, FNPLD


 Chart of Reporting Link Data file, FNPCD
 Entry Panel Task Coupling file, GLPTC

Monitor these files regularly and clear as frequently as is appropriate. You


should reorganize these files on a regular basis.
10-16 | Chapter 10 Managing Disk Space

Reorganizing files

After purging data, run the Reorganize application files function to optimize
disk space utilization. This procedure reorganizes Infinium GL and Infinium
RW work files.

Menu option

Menu Level 1: Supervisor Functions

Menu Level 2: System Functions

Menu Level 3: Reorganize application files [RAF]

Figure 10-6: Reorganize Application Files Confirmation Display Page 1 of 1


screen

The reorganization is based on the primary logical file.

After running the reorganize function, check the report that Infinium GL
generates to verify that the reorganization ran properly.
Reorganizing files | 10-17

Do not use the job log to determine the success of the reorganization as it
may not give an accurate account of the reorganization process.
10-18 | Chapter 10 Managing Disk Space

Notes
Chapter 11 Interfacing with Client
Access System i
11

This chapter includes basic technical information on the Client Access


System i file transfer system. From within Infinium GL you can download and
upload information to a shared folder, GL2KFLR, on the System i. Then using
the Client Access System i utility, you can copy the files to a PC and import
them into popular PC applications such as Lotus 1-2-3 or Microsoft Excel.

The chapter consists of the following topics:

Topic Page

Prerequisites 11-3
Setting up your system 11-4
Formats for uploading and downloading files 11-7
11-2 | Chapter 11 Interfacing with Client Access System i

Objectives

At the conclusion of this chapter you will understand the basic PC


environment and configuration requirements for using Client Access System i
or PC Support with Infinium GL.
Prerequisites | 11-3

Prerequisites

Before using Client Access System i to perform the tasks described in this
manual, you must ensure that the following prerequisites have been met:

 The Infinium special user profile S2KOBJOWNR is the owner of all


libraries and user profiles to be used by Client Access System i.
 Each user profile to be used by Client Access System i has
S2KOBJOWNR as a Group Profile and the Owner attribute is set to
*GRPPRF.
 User profiles S2KOBJOWNR and AM2000 are entered in the System i
System Directory. This is done by a user profile having QSECADMIN
(Security Admin) or QSECOFR (Security Officer) authority and using the
command WRKDIRE (Work Directory). Refer to your System i
documentation for more information about this command.
 If you plan to use user profiles other than AM2000 with Client Access
System i, these additional user profiles are also entered in the System i
system directory.
 Client Access System i is installed and started on both your System i and
your PC. If you have not installed Client Access System i, refer to the
appropriate IBM documentation before you proceed.

GL2KFLR folder on the System i

Programs within Infinium GL download information to subfolders within the


folder named GL2KFLR on the System i. These two subfolders are used to
hold different types of files:

 GLPVD

This subfolder has all files that are uploaded to or downloaded from
Infinium GL.

 FNPVD

This subfolder contains all files that have been downloaded from Infinium
RW.

Note: When configuring Client Access System i, make sure that all
appropriate users have authority to this GL2KFLR folder on the System i.
See the “Prerequisites” section listed above.
11-4 | Chapter 11 Interfacing with Client Access System i

Setting up your system

Overview

Follow the basic steps shown below to set up your system files for use with
Client Access System i.

1 Create the appropriate IBM System i folders.

2 Modify the PC batch or configuration file. See your IBM Client Access
System i manual for details.

3 Ensure that executable (extension .EXE) programs are located in the proper
directories.

4 Create an optional batch file to allow access to Lotus 1-2-3 or Excel from the
Infinium GL Client Access System i menu.

Assumptions

Infinium GL makes the following assumptions regarding the procedures listed


below:

 The Lotus 1-2-3 application is located in the C:\LOTUS directory.


 The Excel application is located in the C:\EXCEL directory.
 The Client Access files and programs are located in the C:\PCS directory.

If your directories differ from those listed above, substitute your directories in
the appropriate locations in the example below.

Example

You can create or modify your system files as follows:

1 Sign on as S2KOBJOWNR on the System i and create three folders.

 First create the folder GL2KFLR


 Then within GL2KFLR create the following folders:
Setting up your system | 11-5

GLPVD - for Infinium GL files


FNPVD - for Infinium RW files

Use the IBM create folder command, CRTFLR, as follows:

CRTFLR FLR(GL2KFLR)
CRTFLR FLR(GLPVD) INFLR(GL2KFLR)
CRTFLR FLR(FNPVD) INFLR(GL2KFLR)

2 If you are using PC Support modify the configuration file to assign your virtual
drive to the GL2KFLR folder. See your IBM PC Support manual or Client
Access System i manual for details. This step is not necessary if you are
using Client Access/95.

3 Ensure that execution type programs (extension .EXE) are located in the
proper directories.

4 Optionally, create a batch file in the root directory called L123.BAT to access
Lotus 1-2-3 for DOS from the Infinium GL Client Access System i menu.

The following code is an example to create the batch file to access


Lotus 1-2-3:

ECHO OFF
CD C:\LOTUS
LOTUS
CD C:\PCS

Note: The option to start Lotus 1-2-3 for Windows or Excel from within
Infinium GL is not available if the PC is running in the Windows environment.

Considerations

Consider the following when using Client Access System i or PC Support.

 You must have authority to the GL2KFLR folder.


 You must enter the user profiles S2KOBJOWNR and AM2000 into the
System i system directory.

You can use the WRKDIRE (Work Directory) command to enter these user
profiles into the System i system directory. A user profile with QSECADMIN
or QSECOFR authority may be required to use the WRKDIRE command.
Refer to your System i or PC Support documentation for more information on
using this command.
11-6 | Chapter 11 Interfacing with Client Access System i

 Any other user profiles that will be using Client Access System i or PC
Support in Infinium GL must also be entered into the System i system
directory.

Note: Because PC Support and Client Access System i are IBM products,
direct questions that relate to their use to IBM customer support personnel.
Formats for uploading and downloading files | 11-7

Formats for uploading and downloading files

You can upload input journal entries and budget journal entries. Additionally,
you can download information from the Interactive Trial Balance and Infinium
RW.

The format for files downloaded from a spreadsheet or uploaded to a


spreadsheet must have a certain file format. You must adjust the size of the
columns according to the information in the tables that follow. For more
information on file formats refer to the “Uploading and Downloading Infinium
GL Data” chapter in the Infinium GL Guide to Processing and Reporting.

Downloading spreadsheets from the Interactive trial balance

Before importing the downloaded file, you must adjust the size of the
columns of the Lotus 1-2-3 or Excel files that receive the downloaded data in
order to display the information correctly. If you are downloading from the
Interactive Trial Balance, adjust the size of the columns as indicated in the
following table:

Column Format Description

A 36 alphanumeric positions Account number

B 17 numeric positions including 2 Amount


decimal places
C 17 numeric positions including 2 Amount
decimal places
D 30 alphanumeric positions Account description

Note: Although the spreadsheet format allows entry of a number up to 17


digits long, all reports and displays within Infinium GL are limited to only 13
digits. Therefore, any numbers exceeding 13 digits in the spreadsheet,
including the decimal precision, will be truncated within Infinium GL.
11-8 | Chapter 11 Interfacing with Client Access System i

Downloading information from Infinium RW

To download information from Infinium RW, select Work with macro reports,
Work with COR reports, or Work with report groups depending on the
location of the report output you want to download.

Press F14 to download the report to a file in the GL2KFLR folder and FNPVD
subfolder. Type a valid filename. If you plan to import this file to Lotus 1-2-3
or Microsoft Excel, you must use the default file extension (.PRN).

Copying the downloaded file

A virtual drive is a drive designator on your PC that is defined by your


technical staff for your use when transferring files to or from the System i.

A virtual drive links your PC to a folder on the System i. You store your
documents in the folder on the System i, similar to a directory on your PC.
You must use the folder GL2KFLR/FNPVD within your virtual drive to transfer
Infinium RW files to or from Infinium GL.

Before importing the downloaded file, you must adjust the size of the
spreadsheet columns in order to display the information correctly. Adjust the
size of the columns as indicated in the following table.

Column Format Description

A 30 alphanumeric positions Account number

B-M 13 numeric positions with 2 Amount


decimal places

The download from Infinium RW allows only the first column to be


alphanumeric and assumes the other columns are numeric.

Uploading input journals

You can create and upload input journals to Infinium GL using any PC
spreadsheet application that creates a file in the DIF (Data Interchange
Format) or CSV (Comma Delimited Format) format. The columns for input
journals must have the following format:
Formats for uploading and downloading files | 11-9

Column Format Description

A 36 alphanumeric positions Account number


B 17 numeric positions with 2 Amount
decimal places To type a credit amount,
type the amount
preceded by a minus
sign.
C 30 alphanumeric positions Transaction Description
D 10 alphanumeric positions User Field Alpha 1
E 10 alphanumeric positions User Field Alpha 2
F 10 alphanumeric positions User Field Alpha 3
G 10 alphanumeric positions User Field Alpha 4
H 17 numeric positions with 2 User Field Numeric 1
decimal places

I 17 numeric positions with 2 User Field


decimal places Numeric 2

J 6 numeric positions with 2 place Date User Field


holders

K 10 alphanumeric positions Job Code


L 24 alphanumeric positions with Activity
no break characters
M 6 alphanumeric positions Cost Code

 You must use the 36-character column size for the account number,
regardless of the size of your actual account number.
 If you include project information in columns K through M and Infinium
Project Accounting is activated in Infinium GL, the system validates the
Job Code as a project identifier, adding leading zeros if necessary.
 You must save your Lotus 1-2-3 or Excel files in the Lotus 1-2-3 DIF file
format or CSV file format. Using Lotus look-alike DIF files will cause
unpredictable results.

Uploading budget journals

The columns of the Lotus 1-2-3 or Excel files that provide upload data for
budget journals must have the following format:
11-10 | Chapter 11 Interfacing with Client Access System i

Column Format Description

A 36 alphanumeric Account number


positions
B-N 17 numeric positions Amount.
with 2 decimal places Type an amount for each of the
13 periods. To type a credit
amount, type the amount
preceded by a minus sign.
O 17 numeric positions Total
with 2 decimal places
P 30 alphanumeric Transaction Description
positions

 You must use the 36-character column size for the account number,
regardless of the size of your actual account number.
 You must save your Lotus 1-2-3 or Excel files in the Lotus 1-2-3 DIF file
format or CSV file format. Using Lotus look-alike DIF files will cause
unpredictable results.
Appendix A Field Values Assigned by
Program GLGFSI
A

The Foreign Subsystem Journal Interface program, GLGFSI, transfers


accounting information from a subledger to Infinium GL.

The “Loading Journal Input Files” chapter includes several tables that
illustrate the specific field values that your calling program can pass to
GLGFSI.

The appendix consists of the following topics:

Topic Page

Overview A-2
Batch Control file, GLPBT A-3
Input Journal Header file, GLPGH A-4
Input Journal Detail file, GLPGX A-6
Currency Distribution file, GLPCD A-7
A-2 | Appendix A Field Values Assigned by Program GLGFSI

Overview

Program GLGFSI assigns values for all other fields, ignoring values passed
by your program. This appendix lists the values GLGFSI assigns for these
fields and is organized by the following files:

 Batch Control file, GLPBT


 Input Journal Header file, GLPGH
 Input Journal Detail file, GLPGX
 Currency Distribution file, GLPCD

Note: These tables do not contain all fields. Only the fields for which GLGFSI
assigns values are included.
Batch Control file, GLPBT | A-3

Batch Control file, GLPBT

Field name Description Value assigned by GLGFSI

BTCNT Number of journals Incremented within GLGFSI


BTDRT Debit total - processing currency Totaled from GLPGX detail
(positive GXFAMT amounts)
BTCRT Credit total - processing currency Totaled from GLPGX detail
(zero or negative GXFAMT amounts)
BTCNTI Count of manual journals Set to zero
BTDCI DR/CR manual journals Set to zero
BT8DAC Date accepted - 8-digit format Set to blanks
BTHDAC Date accepted - hundred year Set to blanks
format
BTEDAC Date accepted - edited format Set to blanks
BTTIMP Time accepted Set to blanks
BTERR Error status Set to blank
BTSTS Batch status Set to E upon creation
Set to S when proof is run for batch
(Proof sets to blank after proof complete)
BTUSER User Profile of user whose job called GLGFSI
BTHENT Date entered - 8-digit format System date
BT8ENT Date entered - hundred year format System date
BTEENT Date entered - edited format System date
BTETIM Time entered System time
BTTABL Translation table Not used by GLGFSI
BTN1T Numeric 1 total Total of detail numeric field 1, GXNF01
BTN2T Numeric 2 total Total of detail numeric field 2, GXNF02
BTN1M Numeric 1 manual Set to zero
BTN2M Numeric 2 manual Set to zero
BTRNBR Transcode to/from batch number Set to zero
A-4 | Appendix A Field Values Assigned by Program GLGFSI

Input Journal Header file, GLPGH

Field name Description Value assigned by GLGFSI

GHBNBR Batch number From BTBNBR


GHMORS Journal type From BTMORS
GHHDAT Journal date - hundred year format From GH8DAT if entered and valid
Otherwise, system date
GHEDAT Journal date - edited format From GH8DAT if entered and valid
Otherwise, system date
GHAUTH For future use Not used by GLGFSI
GHACC For future use Not used by GLGFSI
GHUSER Last user From BTUSER
GHETIM Time entered System time
GHRCUR Recurring journal number Set to zero
GHACTV How created: 1=GHM, 2=GXM, Set to blank
3=TAR, 4=yearend
RHPROR Proration Set to blanks
RHALLT Allocation type Set to blank
RHALLC Allocated? Set to blank
GHCNT Number of transactions Incremented by GLGFSI
GHDRT Debit total Totaled from GLPGX detail
(positive GXFAMT amounts)
GHCRT Credit total Totaled from GLPGX detail
(zero or negative GXFAMT amounts)
GHCNTI Count manual Not used by GLGFSI
GHDCI DR/CR manual Set to zero
GHALLT Allocation type Set to blank
GHERR Error status Set to blank
GHN1T Numeric 1 total Total of detail numeric field 1, GXNF01
GHN2T Numeric 2 total Total of detail numeric field 2, GXNF02
GHN1M Numeric 1 manual Set to zero
Input Journal Header file, GLPGH | A-5

Field name Description Value assigned by GLGFSI

GHN2M Numeric 2 manual Set to zero


GHRJNO Transcode to/from journal number Set to zero
GHLCOJ Transcoded company journal? Set to zero
GHRTLK Journal rate lock Set to 1 if one currency
Set to 2 if more than one currency (GXCUR
not equal to GHCUR, or CDCNT greater
than zero)
GHSEQ Total number of transactions in Incremented by GLGFSI
journal
GHDLT Delete flag Set to zero
GHTYP Journal type Set to zero
GHPJCO Project Company Not used by GLGFSI
GHPJNO Project Number Not used by GLGFSI
GHPWBS Work Breakdown Structure Not used by GLGFSI
GHPCCD Cost Code Not used by GLGFSI
GHSUBP Sub Project Not used by GLGFSI
GHTRPA Transfer to PA Flag Set to zero
GHCRBY Created By Set to user who created journal

GHCRDT Created Date Set to journal creation date

GHLUDT Last Update Date Set to journal update date

GHLTIM Last Update Time Set to journal update time

GHLIRF Last Internal Reference Set to number of detail lines in journal


A-6 | Appendix A Field Values Assigned by Program GLGFSI

Input Journal Detail file, GLPGX

Field name Description Value assigned by GLGFSI

GXJRNL Journal number From GHJRNL


GXMORS Journal type From BTMORS
GXOLDA Previous account number Set to blanks
RXNUMR Numerator Set to blanks
RXDENO Denominator Set to blanks
GXDF1H Date field 1 - hundred year format Not used by GLGFSI
GXDF18 Date field 1 - 8-digit format Not used by GLGFSI
GXDF1E Date field 1 - edited year format Not used by GLGFSI
GXRATE Exchange rate Set to zero
GXSEQ Internal journal sequence number Incremented by GLGFSI
GXCDNO Number of GLPCD records Incremented by GLGFSI
GXCONV Currency conversions exist? Set to 1 for statistical batches and for
monetary batches that are completely
converted
Set to 0 for monetary batches that are not
completely converted
GXUCHG User changed? Set to 1
GXIBE System generated journal detail Set to zero
GXCO Transaction company Set to account company

GXDRCR Debit/Credit Set to D if GXFAMT > 0; C if GXFAMT < 0

GXPJCO Project Company Not used by GLGFSI


GXPJNO Project Number Not used by GLGFSI
GXPWBS Work Breakdown Structure Not used by GLGFSI
GXPCCD Cost Code Not used by GLGFSI
GXSUBP Sub project Not used by GLGFSI
GXIREF Internal reference Set to value in GXSEQ
Currency Distribution file, GLPCD | A-7

Currency Distribution file, GLPCD

Field name Description Value assigned by GLGFSI

CDJRNL Journal number From GHJRNL


CDSEQ Internal journal sequence number From GXSEQ
CDPAGE Page number From GXPAGE
CDSTS Status Set to zero (unaccepted)
CDUCHG User changed? Set to 1
CDCO Transaction company From GXCO
CDYEAR Accounting year From BTYEAR
CDMNTH Accounting period From BTMNTH
CDWEEK Week number From BTWEEK
CDIBE System generated currency Set to zero
distribution
CDDRCR Debit/credit If GXFAMT not 0, from GXDRCR
Otherwise, if CDAMT greater than or equal
to zero, set to D
Otherwise, (CDAMT less than zero) set to C
A-8 | Appendix A Field Values Assigned by Program GLGFSI

Notes
Appendix B Sample Programs for
Calling GLGFSI
B

This appendix includes program source listings for the following sample
programs and sample reports:

The appendix consists of the following topics:

Topic Page

Program XXGFSIA B-2


Program XXGFSIB B-23
Exception report B-47
Proof Input Journals report B-48
Accepted Input Journals report B-49
Posting report B-50
B-2 | Appendix B Sample Programs for Calling GLGFSI

Program XXGFSIA

5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 1


SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
100 F*&*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 04/27/95
200 F*& * 04/27/95
300 F*& Application . . : General Ledger 2000 * 04/27/95
400 F*& * 04/27/95
500 F*& Function . . . . : Foreign subsystem interface example * 04/27/95
600 F*& * 04/27/95
700 F*& Copyright . . . : 1992 Software 2000, * 04/27/95
800 F*& One Park Centre, * 04/27/95
900 F*& Independence Park, * 04/27/95
1000 F*& Hyannis MA 02601. * 04/27/95
1100 F*& * 04/27/95
1200 F*& Object name . . : XXGFSIA * 04/27/95
1300 F*& * 04/27/95
1400 F*& Created . . . . : May 1992 BPC * 04/27/95
1500 F*& Modified . . . . : Dec 1993 NPK New Parms and DS * 04/27/95
1600 F*& Modified . . . . : Apr 1994 VLG Remove OVRPRTFs * 04/27/95
1700 F*& Modified . . . . : Sep 1994 DCA Add comments * 04/27/95
1800 F*& Modified . . . . : NOV 1994 DCA Change input to file. * 04/27/95
1900 F*& Modified . . . . : MAY 1995 DDK 14865D Lower to upper case. * 05/24/95
2000 F*& DK05240828 date format from * 05/24/95
2100 F*& entity. * 05/24/95
2200 F*& * 04/27/95
2300 F*&*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 04/27/95
2400 F*& * 04/27/95
2500 F*& Function : To demonstrate the use of GLGFSI. * 04/27/95
2600 F*& * 04/27/95
2700 F*&*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 04/27/95
2800 F*& * 04/27/95
2900 F*& Description : * 04/27/95
3000 F*& * 04/27/95
3100 F*& The purpose of this source member is to demonstrate the use * 04/27/95
3200 F*& of GLGFSI(foreign subsystem interface program) to create a * 04/27/95
3300 F*& single currency journal. * 04/27/95
3400 F*& * 04/27/95
3500 F*& The INZDTA routine defines the test data in this example. * 04/27/95
3600 F*& The input comes from a file defined in this program. This * 04/27/95
3700 F*& file does not exist and should be replaced by a database * 04/27/95
3800 F*& file provided by the user. All fields in this example that * 04/27/95
3900 F*& come from the input file INFILE begin with the letters IN. * 04/27/95
4000 F*& * 04/27/95
4100 F*& This program is structured as follows : * 04/27/95
4200 F*& * 04/27/95
4300 F*& Do until no more input records * 04/27/95
4400 F*& If new batch * 04/27/95
4500 F*& Set up batch header ( SETBT ) * 04/27/95
4600 F*& If new journal * 04/27/95
4700 F*& Set up Journal header ( SETGH ) * 04/27/95
4800 F*& Validate/edit input account number * 04/27/95
4900 F*& If account OK * 04/27/95
5000 F*& Set up Journal detail ( SETGX ) * 04/27/95
5100 F*& Call GLGFSI * 04/27/95
5200 F*& Else * 04/27/95
5300 F*& Print detail on exception report * 04/27/95

B-3 | Program XXGFSIA


B-4 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 2
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
5400 F*& End Do Loop * 04/27/95
5500 F*& Move '1' QQEND ( signal to end GLGFSI ) * 04/27/95
5600 F*& Call GLGFSI * 04/27/95
5700 F*& * 04/27/95
5800 F*& Refer to the General Ledger Technical Training Guide for * 04/27/95
5900 F*& additional information concerning this sample program and * 04/27/95
6000 F*& the GLGFSI program. * 04/27/95
6100 F*& * 04/27/95
6200 F*&*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 04/27/95
6300 FXXTFSI O E PRINTER INFDS(FIDS01) 04/27/95
6400 F USROPN 04/27/95
6500 FINFILE IF F 74 DISK 04/27/95
6600 D* This array holds the batch and journal default descriptions 04/27/95
6700 D D S 30 DIM(2) CTDATA PERRCD(1) Descriptions 04/27/95
6800 D* This array is used to construct the journal desc. in SETGH 04/27/95
6900 D DW S 1 DIM(30) work array 04/27/95
7000 D* This array is parameter 5 in the GLGFSI call. It is not used 04/27/95
7100 D* in this example but is needed for the call. 04/27/95
7200 D CDS S 128 DIM(10) Converted Amts 04/27/95
7300 D* Program information data structures 04/27/95
7400 D SDS 04/27/95
7500 D STDPGM *PROC 04/27/95
7600 D STDMSG 091 170 04/27/95
7700 D STDJOB 244 253 04/27/95
7800 D STDUSR 254 263 04/27/95
7900 D STDNBR 264 269 0 04/27/95
8000 D* 04/27/95
8100 D FIDS01 DS 04/27/95
8200 D STDFIL *FILE 04/27/95
8300 D STDFMT *RECORD 04/27/95
8400 D STLP 152 153B 0 04/27/95
8500 D STLINE 367 368B 0 04/27/95
8600 D* GL batch header record ( data structure ) 04/27/95
8700 D BTRCD E DS 256 EXTNAME(GLPBT) INZ 04/27/95
8800 D* GL Journal header record ( data structure ) 04/27/95
8900 D GHRCD E DS 512 EXTNAME(GLPGH) INZ 04/27/95
9000 D* GL Journal detail record ( data structure ) 04/27/95
9100 D GXRCD E DS 512 EXTNAME(GLPGX) INZ 04/27/95
9200 D* Converted amounts record ( data structure ) 04/27/95
9300 D CDRCD E DS 128 EXTNAME(GLPCD) INZ 04/27/95
9400 D* Long journal description ( data structure ) 04/27/95
9500 D JDDESC DS 800 04/27/95
9600 D* GL API manager control area 04/27/95
9700 D QQCTL E DS EXTNAME(GLSCTL) 04/27/95
9800 D* GL API chart of account record area 04/27/95
9900 D QQCOA E DS EXTNAME(GLPCT) 04/27/95
10000 D* AM date data structure 04/27/95
10100 D ADCPRM E DS EXTNAME(GLSADC) 04/27/95
10200 D* Interface to retrieve setup values 05/24/95
10300 D RSVL E DS EXTNAME(GLSRV) 05/24/95
10400 D* Entity control record 05/24/95
10500 D ETRCD E DS EXTNAME(GLPET) INZ 05/24/95
10600 D* Upper and lower case values for account validation. 05/24/95

B-5 | Program XXGFSIA


B-6 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 3
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
10700 D UP C CONST('ABCDEFGHIJKLMNOPQRS- 05/25/95
10800 D TUVWXYZ') 05/25/95
10900 D LO C CONST('abcdefghijklmnopqrs- 05/25/95
11000 D tuvwxyz') 05/25/95
11100 I* This is the input file that is used for this example. 04/27/95
11200 I* The actual file that will be used when converting history 04/27/95
11300 I* or during an interface from a non-Software 2000 application 04/27/95
11400 I* either should be defined here or externally defined. 04/27/95
11500 I* This example file does not include all fields available to 04/27/95
11600 I* the user when calling GLGFSI, refer to the General Ledger 04/27/95
11700 I* Technical Training Guide and to the routines below for 04/27/95
11800 I* more information about other fields available and how to 04/27/95
11900 I* use them 04/27/95
12000 IINFILE NS 04/27/95
12100 I* Account number 04/27/95
12200 I 2 12 INACCT 04/27/95
12300 I* Accounting year 04/27/95
12400 I 13 16 0INYEAR 04/27/95
12500 I* Accounting period 04/27/95
12600 I 17 18 0INMNTH 04/27/95
12700 I* Input Journal number 04/27/95
12800 I 19 23 0INJRNL 04/27/95
12900 I* Transaction Description 04/27/95
13000 I 24 53 INDESC 04/27/95
13100 I* Transaction amount 04/27/95
13200 I 54 70 2INAMT 11/21/95
13300 I* Transaction date 04/27/95
13400 I 67 74 0INDATE 04/27/95
13500 *** 04/27/95
13600 *** Main Program 04/27/95
13700 *** 04/27/95
13800 C EXSR INZPGM 04/27/95
13900 C EXSR BGNPGM 04/27/95
14000 C EXSR ENDPGM 04/27/95
14100 *** -------------------------------------------------------------* 04/27/95
14200 *** INZPGM - Initialize program 04/27/95
14300 *** -------------------------------------------------------------* 04/27/95
14400 C INZPGM BEGSR 04/27/95
14500 ** Define program variables 04/27/95
14600 C *LIKE DEFINE BTYEAR QQYEAR 04/27/95
14700 C *LIKE DEFINE BTMNTH QQMNTH 04/27/95
14800 C *LIKE DEFINE BTMORS QQMORS 04/27/95
14900 C *LIKE DEFINE BTCO QQCO 04/27/95
15000 C *LIKE DEFINE BTREF QQREF 04/27/95
15100 C *LIKE DEFINE GHCUR QQCUR 04/27/95
15200 C *LIKE DEFINE GXACCT QQACCT 04/27/95
15300 C *LIKE DEFINE INJRNL QQJRNL 04/27/95
15400 ** Retrieve date format from entity 05/24/95
15500 ** 05/24/95
15600 C CALL 'GLGRSV' 99 05/24/95
15700 C PARM RSVL 05/24/95
15800 C PARM ETRCD 05/24/95
15900 C ETERR CASEQ '1' ENDPGM 05/24/95

B-7 | Program XXGFSIA


B-8 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 4
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
16000 C ENDCS 05/24/95
16100 ** Get today's date using format from entity control record. 05/24/95
16200 C MOVE 'U' DTFMT Date type 04/27/95
16300 C MOVEL(P) ETDFMT DTFDHI 05/24/95
16400 C CALL 'AMGCDATE' 04/27/95
16500 C PARM ADCPRM 04/27/95
16600 ** Initialize program variables 04/27/95
16700 ** 04/27/95
16800 ** This flag is set to a '1' to indicate that the FSI program 04/27/95
16900 ** was called at least once. We use this flag to call FSI one 04/27/95
17000 ** more time to shut down the FSI program. 04/27/95
17100 C MOVE '0' QQCALL 1 FSI Called ? 04/27/95
17200 ** Initialize test data 04/27/95
17300 C EXSR INZDTA 04/27/95
17400 C ENDSR 04/27/95
17500 *** -------------------------------------------------------------* 04/27/95
17600 *** INZDTA - Initialize test data 04/27/95
17700 *** -------------------------------------------------------------* 04/27/95
17800 C INZDTA BEGSR 04/27/95
17900 ** 04/27/95
18000 ** This determines the type of batch 'Monetary' or 'Statistical' 04/27/95
18100 ** 04/27/95
18200 C MOVE 'M' QQMORS Type M/S 04/27/95
18300 ** 04/27/95
18400 ** This is the company used on the batch and journal header. 04/27/95
18500 ** A journal does not have to have the same company as the batch 04/27/95
18600 ** header. However it is recommended that a new batch be created 04/27/95
18700 ** for each company when loading history. 04/27/95
18800 ** 04/27/95
18900 C MOVE '001' QQCO Company 04/27/95
19000 ** 04/27/95
19100 ** This is where we hold the year and period from the previous 04/27/95
19200 ** input record. Only detail records with the same year and 04/27/95
19300 ** period can be included in the same batch. This example 04/27/95
19400 ** program uses the year and period values to determine if a 04/27/95
19500 ** new batch needs to be created. 04/27/95
19600 ** 04/27/95
19700 C Z-ADD 0 QQYEAR Year 04/27/95
19800 C Z-ADD 0 QQMNTH Month 04/27/95
19900 ** 04/27/95
20000 ** If doing currency processing then enter the currency into 04/27/95
20100 ** this field. This example only is for single currency 04/27/95
20200 ** processing only. If not doing any currency processing the 04/27/95
20300 ** enter *BLANKS into this field. 04/27/95
20400 ** 04/27/95
20500 C MOVE 'USD' QQCUR Currency 04/27/95
20600 ** 04/27/95
20700 ** This is the source and reference that will be used on the 04/27/95
20800 ** batch and journal headers. Make sure that this code is 04/27/95
20900 ** defined as a valid code variable or the batch and journal 04/27/95
21000 ** will be in error. 04/27/95
21100 ** 04/27/95
21200 C MOVEL 'GLGFSI ' QQREF Source/ reference 04/27/95

B-9 | Program XXGFSIA


B-10 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 5
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
21300 ** 04/27/95
21400 ** Set this flag to a '1' to tell FSI to 'Auto Post' the last 04/27/95
21500 ** batch created. If you create more than one batch only the 04/27/95
21600 ** last one is auto posted. The Auto Post will start after FSI 04/27/95
21700 ** is called with the End flag set to a '1'. 04/27/95
21800 ** 04/27/95
21900 C MOVE '1' QQAUTO Auto Post 04/27/95
22000 ** 04/27/95
22100 ** Set this flag to a '1' AFTER the last detail transaction is 04/27/95
22200 ** processed. This will update the journal and batch totals 04/27/95
22300 ** close the journal and batch files and shut down the FSI 04/27/95
22400 ** program. DO NOT SET THIS FLAG IN THAT SAME CALL AS THE LAST 04/27/95
22500 ** DETAIL TRANSACTION, this will result in an invalid journal. 04/27/95
22600 ** 04/27/95
22700 C MOVE '0' QQEND End FSI 04/27/95
22800 ** 04/27/95
22900 ** This is where the previous INFILE journal number is stored. 04/27/95
23000 ** In this example we will create a new journal each time the 04/27/95
23100 ** the INFILE journal number changes. This could result in 04/27/95
23200 ** multiple journals within a single batch. 04/27/95
23300 ** 04/27/95
23400 C Z-ADD 0 QQJRNL 04/27/95
23500 ** 04/27/95
23600 ** This flag, set to a '1', indicates that the exception report 04/27/95
23700 ** file has been opened. Used during error processing. 04/27/95
23800 ** 04/27/95
23900 C MOVE '0' OPNFSI 04/27/95
24000 C ENDSR 04/27/95
24100 *** -------------------------------------------------------------* 04/27/95
24200 *** BGNPGM - Begin program, this is the main program loop 04/27/95
24300 *** -------------------------------------------------------------* 04/27/95
24400 C BGNPGM BEGSR 04/27/95
24500 ** Read the first INFILE record. 04/27/95
24600 C READ INFILE 99 04/27/95
24700 ** If EOF set indicator to end program 04/27/95
24800 C MOVE *IN99 EOSLF 1 04/27/95
24900 ** Loop until End of Sub-Ledger File is detected 04/27/95
25000 B001 C EOSLF DOWEQ '0' 04/27/95
25100 ** Check to see if Year or Period has changed, will always be 04/27/95
25200 ** TRUE for first time through. Create new Batch and Journal 04/27/95
25300 ** header records. 04/27/95
25400 ** Additional testing can be added at this point so that batches 04/27/95
25500 ** and/or journals can be created for other reasons. For example 04/27/95
25600 ** a test for a change in company could also trigger a new batch 04/27/95
25700 ** or as in this example if the journal number of the INFILE 04/27/95
25800 ** changes then a new journal is created. 04/27/95
25900 B002 C INYEAR IFNE QQYEAR 04/27/95
26000 C INMNTH ORNE QQMNTH 04/27/95
26100 C EXSR SETBT 04/27/95
26200 C EXSR SETGH 04/27/95
26300 ** Test the INFILE journal number to see if it has changed. 04/27/95
26400 ** if it does then create a new journal in the existing batch. 04/27/95
26500 X002 C ELSE 04/27/95

B-11 | Program XXGFSIA


B-12 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 6
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
26600 B003 C INJRNL IFNE QQJRNL 04/27/95
26700 C EXSR SETGH 04/27/95
26800 E003 C END 04/27/95
26900 E002 C END 04/27/95
27000 ** move account number into data structure for account checker 04/27/95
27100 C MOVEL(P) INACCT CTACCT 05/25/95
27200 ** The following line of code is optional. The GL system expects 05/25/95
27300 ** the account string to be in upper case characters. This may be 05/25/95
27400 ** a concern for some customers. 05/25/95
27500 ** Warning !!! If you use a translation table with lower case 05/25/95
27600 ** characters you would not want to use this translation , since 05/25/95
27700 ** then you would be returned an error from our account checker. 05/25/95
27800 ***** LO:UP XLATEINACCT CTACCT P 05/25/95
27900 ** Check if account is valid 04/27/95
28000 C EXSR CKACCT 04/27/95
28100 ** 04/27/95
28200 ** QZRET is the returned status from the account checking routine 04/27/95
28300 ** A zero indicates a valid account number in this example. 04/27/95
28400 ** 04/27/95
28500 B002 C QZRET IFEQ '0' 04/27/95
28600 ** Populate the detail transaction parameter 04/27/95
28700 C EXSR SETGX 04/27/95
28800 ** Call the foreign subsystem interface program (GLGFSI) 04/27/95
28900 C EXSR RUNFSI 04/27/95
29000 ** we called the FSI program. Set flag that FSI was called 04/27/95
29100 C MOVE '1' QQCALL FSI called 04/27/95
29200 ** Process the account error by printing exception report 04/27/95
29300 X002 C ELSE 04/27/95
29400 ** Error found with account 04/27/95
29500 B003 C QZRET IFEQ '1' 04/27/95
29600 C MOVE '0' *IN20 04/27/95
29700 ** Open report file and print header if not already done. 04/27/95
29800 B004 C OPNFSI IFEQ '0' 04/27/95
29900 C OPEN XXTFSI 04/27/95
30000 C MOVE '1' OPNFSI 1 04/27/95
30100 C MOVE DTEDTE QIDATE 04/27/95
30200 C EXSR OVRFLW 04/27/95
30300 E004 C END 04/27/95
30400 ** print detail record on exception report. 04/27/95
30500 C MOVE '1' *IN20 04/27/95
30600 C MOVE CTACCT D1ACCT 04/27/95
30700 C WRITE DTL01 98 04/27/95
30800 C *IN98 CASEQ '1' OVRFLW 04/27/95
30900 C END 04/27/95
31000 E003 C END 04/27/95
31100 E002 C END 04/27/95
31200 ** end of DO loop for processing INFILE records, read next record 04/27/95
31300 C READ INFILE 99 04/27/95
31400 C MOVE *IN99 EOSLF 04/27/95
31500 E001 C END 04/27/95
31600 ** If FSI was called one time then this flag set to '1' so end FSI 04/27/95
31700 B001 C QQCALL IFEQ '1' 04/27/95
31800 C MOVE '1' QQEND 04/27/95

B-13 | Program XXGFSIA


B-14 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 7
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
31900 C EXSR RUNFSI 04/27/95
32000 E001 C END 04/27/95
32100 C ENDSR 04/27/95
32200 *** -------------------------------------------------------------* 04/27/95
32300 *** OVRFLW - report overflow hander, prints header 04/27/95
32400 *** -------------------------------------------------------------* 04/27/95
32500 C OVRFLW BEGSR 04/27/95
32600 C WRITE HEADER 04/27/95
32700 C WRITE COLH01 04/27/95
32800 C ENDSR 04/27/95
32900 *** -------------------------------------------------------------* 04/27/95
33000 *** SETBT - Set BT Fields ( batch header ) 04/27/95
33100 *** -------------------------------------------------------------* 04/27/95
33200 C SETBT BEGSR 04/27/95
33300 ** A zero in the BTBNBR field tells FSI to create a new batch 04/27/95
33400 C Z-ADD *ZERO BTBNBR Batch number 04/27/95
33500 ** a batch can only be monetary or statistical 04/27/95
33600 C MOVE QQMORS BTMORS Batch type 04/27/95
33700 ** this is the batch company, a journal can have a different co. 04/27/95
33800 C MOVE QQCO BTCO Batch company 04/27/95
33900 ** move the year and period from the INFILE record into the batch 04/27/95
34000 ** remember in this example we create a new batch when the INFILE 04/27/95
34100 ** year and period changes. 04/27/95
34200 C Z-ADD INYEAR BTYEAR Batch year 04/27/95
34300 C Z-ADD INMNTH BTMNTH Batch month 04/27/95
34400 C Z-ADD INYEAR QQYEAR Batch year 04/27/95
34500 C Z-ADD INMNTH QQMNTH Batch month 04/27/95
34600 ** enter the batch reference here, this is optional. 04/27/95
34700 C MOVE QQREF BTREF Reference 04/27/95
34800 ** enter the batch description here, this comes from array D 04/27/95
34900 ** see end of program for contents 04/27/95
35000 C MOVE D(1) BTDESC Description 04/27/95
35100 ** The following fields are optional and are not use in this 04/27/95
35200 ** example program. Refer to the General Ledger Technical 04/27/95
35300 ** Training Guide for more info on these fields. Fields denoted 04/27/95
35400 ** with '**' are not defined, the user should determine where the 04/27/95
35500 ** info will come from and change the field name prior to use. 04/27/95
35600 ** 04/27/95
35700 ** the next three fields are use for the Walk-Back (WB) feature 04/27/95
35800 ** enter the subsystem designation, walk-back program name and the 04/27/95
35900 ** library name of where the program is located in these fields. 04/27/95
36000 ** If using walk-back don't forget to populate the transaction 04/27/95
36100 ** record fields GXSN1 and GXSN2 as needed for the walk-back. 04/27/95
36200 C* MOVE **FS BTFS WB Sys ID 04/27/95
36300 C* MOVE **FSP BTFSP WB Program 04/27/95
36400 C* MOVE **FSL BTFSL WB Library 04/27/95
36500 ** If weekly processing enter valid week number here 04/27/95
36600 C* Z-ADD**WEEK BTWEEK Batch week 04/27/95
36700 C ENDSR 04/27/95
36800 *** -------------------------------------------------------------* 04/27/95
36900 *** SETGH - Set GH fields ( journal header ) 04/27/95
37000 *** -------------------------------------------------------------* 04/27/95
37100 C SETGH BEGSR 04/27/95

B-15 | Program XXGFSIA


B-16 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 8
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
37200 ** A zero in the GHJRNL field tells FSI to create a new journal 04/27/95
37300 C Z-ADD *ZERO GHJRNL Journal number 04/27/95
37400 ** For this example we are creating a description that includes 04/27/95
37500 ** the INFILE journal number. This will help users link the new 04/27/95
37600 ** history journals to the old system. 04/27/95
37700 C MOVE D(2) DW(1) load wrk ary 04/27/95
37800 C MOVE INJRNL DW(20) load jrnl # 04/27/95
37900 C MOVE DW(1) GHDESC Journal Description 04/27/95
38000 ** Only the 8 digit date field is used by FSI it will use this 04/27/95
38100 ** field to populate the hundred year and edited date fields. 04/27/95
38200 ** If this field blank then today's date is used by FSI. 04/27/95
38300 C MOVE INDATE GH8DAT Eight char. date 04/27/95
38400 ** This is the journal source and reference, make sure that any 04/27/95
38500 ** value entered into the source field is defined as a valid code 04/27/95
38600 ** value in GL Code Type of SRC. 04/27/95
38700 C MOVE QQREF GHSRC Journal source 04/27/95
38800 C MOVE QQREF GHREF Journal reference 04/27/95
38900 ** The following fields are optional and are not use in this 04/27/95
39000 ** example program. Refer to the General Ledger Technical 04/27/95
39100 ** Training Guide for more info on these fields. Fields denoted 04/27/95
39200 ** with '**' are not defined, the user should determine where the 04/27/95
39300 ** info will come from and change the field name prior to use. 04/27/95
39400 ** 04/27/95
39500 ** Since we are doing single currency processing we don't have to 04/27/95
39600 ** enter a currency as GLGFSI will use the Base Currency on the 04/27/95
39700 ** Company record if we don't provide it here. 04/27/95
39800 C MOVE QQCUR GHCUR Journal currency 04/27/95
39900 ** If you want to provide an exchange date it is done here and in 04/27/95
40000 ** hundred year format. 04/27/95
40100 C* Z-ADD**HENT GHEDTH Exchange date 04/27/95
40200 ** Journal company, can be different from Batch company enter 04/27/95
40300 ** it here. It is important to remember that GLGFSI will put BTCO into 04/27/95
40400 ** GHCO if it is set to *BLANKS. Also when creating multiple Journals 04/27/95
40500 ** or Batches GHCO is not reset once a value is entered either by the user 04/27/95
40600 ** or by GLGFSI. This can have undesirable results. Software 2000 04/27/95
40700 ** recommends that at a minimum you always set GHCO to *BLANKS when ever 04/27/95
40800 ** a new Journal is created even though this is an optional field. 04/27/95
40900 C MOVE *BLANKS GHCO Journal Co. 04/27/95
41000 ** To create an Accrual Journal set this flag to '1' otherwise 04/27/95
41100 ** '0' 04/27/95
41200 C MOVE '0' GHACRU Accrul Jrnl 04/27/95
41300 ** Intercompany table name is entered here 04/27/95
41400 C* MOVE **IAT GHIAT Interco Table 04/27/95
41500 ** To Transcode this journal set this flag to '1' otherwise 04/27/95
41600 ** '0' 04/27/95
41700 C MOVE '0' GHTRCD Transcode 04/27/95
41800 ** If this is a revaluation Journal set flag to '1' otherwise 04/27/95
41900 ** '0' 04/27/95
42000 C MOVE '0' GHRVAL Revaluation 04/27/95
42100 ** This flag must be set to '0' in a currency off environment. 04/27/95
42200 C MOVE '0' GHZERO Single Ledger 04/27/95
42300 C ENDSR 04/27/95
42400 *** -------------------------------------------------------------* 04/27/95

B-17 | Program XXGFSIA


B-18 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 9
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
42500 *** SETGX - Set the GX fields ( journal details ) 04/27/95
42600 *** -------------------------------------------------------------* 04/27/95
42700 C SETGX BEGSR 04/27/95
42800 ** Move the account number from GLGAPI into transaction account 04/27/95
42900 ** field. This way the old account number can be used and GLGAPI 04/27/95
43000 ** will use the translation table from the chart of account 04/27/95
43100 ** conversion to get the new S2K account number. 04/27/95
43200 ** If you enter both Account and Page numbers GLGFSI will always 04/27/95
43300 ** take the Page number over the Account number. Normally you 04/27/95
43400 ** don't provide both. This is here for completeness 04/27/95
43500 C MOVE CTACCT GXACCT Detail account 04/27/95
43600 C Z-ADD CTPAGE GXPAGE account page 04/27/95
43700 ** Move the old description from INFILE into the new transaction 04/27/95
43800 ** description field. 04/27/95
43900 C MOVEL INDESC GXDESC Dtl description 04/27/95
44000 ** In this example there in only one amount field and we move it 04/27/95
44100 ** into the new transaction. If you have separate amount fields 04/27/95
44200 ** for debit and credit then convert the credit to negative value 04/27/95
44300 ** and put into this field. 04/27/95
44400 C Z-ADD INAMT GXFAMT Dtl amount 04/27/95
44500 ** If the currency is not provided then it will be set to the 04/27/95
44600 ** same as on the Journal Header GHCUR. 04/27/95
44700 C MOVE QQCUR GXCUR 04/27/95
44800 ** If the company is not provided then it will be set to the 04/27/95
44900 ** same as on the Account record from the chart of accounts 04/27/95
45000 ** by GLGFSI. 04/27/95
45100 C MOVE CTCO GXCO 04/27/95
45200 ** The following fields are optional and are not use in this 04/27/95
45300 ** example program. Refer to the General Ledger Technical 04/27/95
45400 ** Training Guide for more info on these fields. Fields denoted 04/27/95
45500 ** with '**' are not defined, the user should determine where the 04/27/95
45600 ** info will come from and change the field name prior to use. 04/27/95
45700 ** 04/27/95
45800 ** This is the Job Code field used to group transactions together 04/27/95
45900 ** Transactions are sorted and group by this field. 04/27/95
46000 C* MOVE **JOB GXJOB Job Code 04/27/95
46100 ** This field indicates if the amount field is a debit or credit 04/27/95
46200 ** GLGFSI will fill this field automatically based on if the 04/27/95
46300 ** amount field is less then (Credit) or greater than (Debit) zero 04/27/95
46400 ** Enter 'C' for a credit or 'D' for debit. 04/27/95
46500 C* MOVE **DRCR GXDRCR Job Code 04/27/95
46600 ** The following two fields are used by a walkback program to 04/27/95
46700 ** display walkback information. See the General Ledger Technical 04/27/95
46800 ** Training Guide for a discussion of walkback and how these 04/27/95
46900 ** fields are used. 04/27/95
47000 C* MOVE **SN1 GXSN1 Walkback 1 04/27/95
47100 C* MOVE **SN2 GXSN2 Walkback 2 04/27/95
47200 ** The following six fields are the transaction user fields these 04/27/95
47300 ** will contain user defined data. Note that the transaction user 04/27/95
47400 ** date field is not used by the GLGFSI program and currently 04/27/95
47500 ** cannot be entered using FSI. 04/27/95
47600 C* MOVE **AF01 GXAF01 Alpha 1 04/27/95
47700 C* MOVE **AF02 GXAF02 Alpha 2 04/27/95

B-19 | Program XXGFSIA


B-20 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 10
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
47800 C* MOVE **AF03 GXAF03 Alpha 3 04/27/95
47900 C* MOVE **AF04 GXAF04 Alpha 4 04/27/95
48000 C* Z-ADD**NF01 GXNF01 Numeric 1 04/27/95
48100 C* Z-ADD**NF02 GXNF02 Numeric 2 04/27/95
48200 C ENDSR 04/27/95
48300 *** -------------------------------------------------------------* 04/27/95
48400 *** CKACCT - Check the account number 04/27/95
48500 *** -------------------------------------------------------------* 04/27/95
48600 C CKACCT BEGSR 04/27/95
48700 ** 04/27/95
48800 ** Use the GLGAPI program to call the GL Account Checker if the 04/27/95
48900 ** account number is valid the CT record is returned in QQCOA. 04/27/95
49000 ** Using the GLGAPI program allows you to use keying short cuts, 04/27/95
49100 ** short names and/or translation tables to retrieve account 04/27/95
49200 ** numbers. See the General Ledger Technical Training Guide 04/27/95
49300 ** for more information concerning the GLGAPI program 04/27/95
49400 C MOVE '01' QZREF 04/27/95
49500 C CALL 'GLGAPI' 99 04/27/95
49600 C PARM QQCTL 04/27/95
49700 C PARM QQCOA 04/27/95
49800 C ENDSR 04/27/95
49900 *** -------------------------------------------------------------* 04/27/95
50000 ** RUNFSI - Run GLGFSI ( foreign subsystem interface program ) 04/27/95
50100 *** -------------------------------------------------------------* 04/27/95
50200 ** Starting with GL 9.0 GLGFSI does not return any errors. FSI 04/27/95
50300 ** will take what ever it is given and create a transaction. If 04/27/95
50400 ** the transaction is in error the Journal is flagged in error and 04/27/95
50500 ** the user will have to correct the journal prior to Accept and 04/27/95
50600 ** Post. The error will be on the Proof report. You should try 04/27/95
50700 ** and validate all transaction data prior to calling FSI and this 04/27/95
50800 ** is why you should use GLGAPI to validate the account numbers 04/27/95
50900 ** as most errors are due to bad account numbers. 04/27/95
51000 C RUNFSI BEGSR 04/27/95
51100 C Z-ADD 0 CDCNT 04/27/95
51200 C CALL 'GLGFSI' 04/27/95
51300 C PARM BTRCD Batch header 04/27/95
51400 C PARM GHRCD Jrn header 04/27/95
51500 C PARM GXRCD Jrn detail 04/27/95
51600 C PARM JDDESC Jrn desc 04/27/95
51700 C PARM CDS Conv Amts 04/27/95
51800 ** for this example CDCNT is zero 04/27/95
51900 C PARM CDCNT 2 0 No conv Amts 04/27/95
52000 C PARM QQAUTO 1 Auto Post? 04/27/95
52100 C PARM QQERR 1 Not Used 04/27/95
52200 C PARM QQEND 1 End ? 04/27/95
52300 C ENDSR 04/27/95
52400 *** -------------------------------------------------------------* 04/27/95
52500 *** ENDPGM - End program 04/27/95
52600 *** -------------------------------------------------------------* 04/27/95
52700 C ENDPGM BEGSR 04/27/95
52800 B001 C OPNFSI IFEQ '1' 04/27/95
52900 C WRITE FOOT 04/27/95
53000 C CLOSE XXTFSI 04/27/95

B-21 | Program XXGFSIA


B-22 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:04 PAGE 11
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIA
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
53100 E001 C END 04/27/95
53200 C MOVE '1' *INLR 04/27/95
53300 C RETURN 04/27/95
53400 C ENDSR 04/27/95
53500 ** 04/27/95
53600 ** The following entries are the descriptions used on the batch 04/27/95
53700 ** and journal headers. See the SETBT and SETGH for more 04/27/95
53800 ** information. Note that in this example the Journal description 04/27/95
53900 ** contains the old journal number from the INFILE. 04/27/95
54000 ** 04/27/95
54100 ** Example accounts 04/27/95
54200 History conversion batch 04/27/95
54300 Old Journal number 04/27/95
* * * * E N D O F S O U R C E * * * *
Program XXGFSIB

5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 1


SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
100 F*&*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 04/27/95
200 F*& * 04/27/95
300 F*& Application . . : General Ledger 2000 * 04/27/95
400 F*& * 04/27/95
500 F*& Function . . . . : Foreign subsystem interface example * 04/27/95
600 F*& * 04/27/95
700 F*& Copyright . . . : 1992 Software 2000, * 04/27/95
800 F*& One Park Centre, * 04/27/95
900 F*& Independence Park, * 04/27/95
1000 F*& Hyannis MA 02601. * 04/27/95
1100 F*& * 04/27/95
1200 F*& Object name . . : XXGFSIB * 04/27/95
1300 F*& * 04/27/95
1400 F*& Created . . . . : May 1992 BPC * 04/27/95
1500 F*& Modified . . . . : Dec 1993 NPK New Parms and DS * 04/27/95
1600 F*& Modified . . . . : Apr 1994 VLG Remove OVRPRTFs * 04/27/95
1700 F*& Modified . . . . : Sep 1994 DCA Add comments * 04/27/95
1800 F*& Modified . . . . : NOV 1994 DCA Change input to file. * 04/27/95
1900 F*& Modified . . . . : MAY 1995 DDK 14865D Lower to upper case. * 05/24/95
2000 F*& DK05240828 date format from * 05/24/95
2100 F*& entity. * 05/24/95
2200 F*& * 04/27/95
2300 F*&*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 04/27/95
2400 F*& * 04/27/95
2500 F*& Function : To demonstrate the use of GLGFSI. * 04/27/95
2600 F*& * 04/27/95
2700 F*&*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 04/27/95
2800 F*& * 04/27/95
2900 F*& Description : * 04/27/95
3000 F*& * 04/27/95
3100 F*& The purpose of this source member is to demonstrate the use * 04/27/95
3200 F*& of GLGFSI(foreign subsystem interface program) to create a * 04/27/95
3300 F*& multi currency journal. * 04/27/95
3400 F*& * 04/27/95
3500 F*& The INZDTA routine defines the test data in this example. * 04/27/95
3600 F*& The input comes from a file defined in this program. This * 04/27/95

B-23 | Program XXGFSIB


B-24 | Appendix B Sample Programs for Calling GLGFSI
3700 F*& file does not exist and should be replaced by a database * 04/27/95
3800 F*& file provided by the user. All fields in this example that * 04/27/95
3900 F*& come from the input file INFILE begin with the letters IN. * 04/27/95
4000 F*& * 04/27/95
4100 F*& This program is structured as follows : * 04/27/95
4200 F*& * 04/27/95
4300 F*& Do until no more input records * 04/27/95
4400 F*& If new batch * 04/27/95
4500 F*& Set up batch header ( SETBT ) * 04/27/95
4600 F*& If new journal * 04/27/95
4700 F*& Set up Journal header ( SETGH ) * 04/27/95
4800 F*& Validate/edit input account number * 04/27/95
4900 F*& If account OK * 04/27/95
5000 F*& Set up Journal detail ( SETGX ) * 04/27/95
5100 F*& Set up Converted Amounts ( SETCD ) * 04/27/95
5200 F*& Call GLGFSI * 04/27/95
5300 F*& Else * 04/27/95
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 2
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
5400 F*& Print detail on exception report * 04/27/95
5500 F*& End Do Loop * 04/27/95
5600 F*& Move '1' QQEND ( signal to end GLGFSI ) * 04/27/95
5700 F*& Call GLGFSI * 04/27/95
5800 F*& * 04/27/95
5900 F*& Refer to the General Ledger Technical Training Guide for * 04/27/95
6000 F*& additional information concerning this sample program and * 04/27/95
6100 F*& the GLGFSI program. * 04/27/95
6200 F*& * 04/27/95
6300 F*&*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* 04/27/95
6400 FXXTFSI O E PRINTER INFDS(FIDS01) 04/27/95
6500 F USROPN 04/27/95
6600 FINFILE IF F 74 DISK 04/27/95
6700 D* This array holds the batch and journal default descriptions 04/27/95
6800 D D S 30 DIM(2) CTDATA PERRCD(1) Descriptions 04/27/95
6900 D* This array is used to construct the journal desc. in SETGH 04/27/95
7000 D DW S 1 DIM(30) work array 04/27/95
7100 D* This array is parameter 5 in the GLGFSI call. It is used to 04/27/95
7200 D* pass the converted amounts to the GLGFSI program 04/27/95
7300 D CDS S 128 DIM(10) Converted Amts 04/27/95
7400 D* Program information data structures 04/27/95
7500 D SDS 04/27/95
7600 D STDPGM *PROC 04/27/95
7700 D STDMSG 091 170 04/27/95
7800 D STDJOB 244 253 04/27/95
7900 D STDUSR 254 263 04/27/95
8000 D STDNBR 264 269 0 04/27/95
8100 D* 04/27/95
8200 D FIDS01 DS 04/27/95
8300 D STDFIL *FILE 04/27/95
8400 D STDFMT *RECORD 04/27/95
8500 D STLP 152 153B 0 04/27/95
8600 D STLINE 367 368B 0 04/27/95
8700 D* GL batch header record ( data structure ) 04/27/95
8800 D BTRCD E DS 256 EXTNAME(GLPBT) INZ 04/27/95
8900 D* GL Journal header record ( data structure ) 04/27/95
9000 D GHRCD E DS 512 EXTNAME(GLPGH) INZ 04/27/95
9100 D* GL Journal detail record ( data structure ) 04/27/95
9200 D GXRCD E DS 512 EXTNAME(GLPGX) INZ 04/27/95
9300 D* Converted amounts record ( data structure ) 04/27/95
9400 D CDRCD E DS 128 EXTNAME(GLPCD) INZ 04/27/95
9500 D* Long journal description ( data structure ) 04/27/95
9600 D JDDESC DS 800 04/27/95
9700 D* GL API manager control area 04/27/95
9800 D QQCTL E DS EXTNAME(GLSCTL) 04/27/95
9900 D* GL API chart of account record area 04/27/95
10000 D QQCOA E DS EXTNAME(GLPCT) 04/27/95
10100 D* AM date data structure 04/27/95
10200 D ADCPRM E DS EXTNAME(GLSADC) 04/27/95
10300 D* Interface to retrieve setup values 05/24/95
10400 D RSVL E DS EXTNAME(GLSRV) 05/24/95
10500 D* Entity control record 05/24/95
10600 D ETRCD E DS EXTNAME(GLPET) INZ 05/24/95

B-25 | Program XXGFSIB


B-26 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 3
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
10700 D* Upper and lower case values for account validation. 05/24/95
10800 D UP C CONST('ABCDEFGHIJKLMNOPQRS- 05/25/95
10900 D TUVWXYZ') 05/25/95
11000 D LO C CONST('abcdefghijklmnopqrs- 05/25/95
11100 D tuvwxyz') 05/25/95
11200 I* This is the input file that is used for this example. 04/27/95
11300 I* The actual file that will be used when converting history 04/27/95
11400 I* or during an interface from a non-Software 2000 application 04/27/95
11500 I* either should be defined here or externally defined. 04/27/95
11600 I* This example file does not include all fields available to 04/27/95
11700 I* the user when calling GLGFSI, refer to the General Ledger 04/27/95
11800 I* Technical Training Guide and to the routines below for 04/27/95
11900 I* more information about other fields available and how to 04/27/95
12000 I* use them 04/27/95
12100 IINFILE NS 04/27/95
12200 I* Account number 04/27/95
12300 I 2 12 INACCT 04/27/95
12400 I* Accounting year 04/27/95
12500 I 13 16 0INYEAR 04/27/95
12600 I* Accounting period 04/27/95
12700 I 17 18 0INMNTH 04/27/95
12800 I* Input Journal number 04/27/95
12900 I 19 23 0INJRNL 04/27/95
13000 I* Transaction Description 04/27/95
13100 I 24 53 INDESC 04/27/95
13200 I* Transaction amount 04/27/95
13300 I 54 70 2INAMT 11/21/95
13400 I* Transaction date 04/27/95
13500 I 67 74 0INDATE 04/27/95
13600 *** 04/27/95
13700 *** Main Program 04/27/95
13800 *** 04/27/95
13900 C EXSR INZPGM 04/27/95
14000 C EXSR BGNPGM 04/27/95
14100 C EXSR ENDPGM 04/27/95
14200 *** -------------------------------------------------------------* 04/27/95
14300 *** INZPGM - Initialize program 04/27/95
14400 *** -------------------------------------------------------------* 04/27/95
14500 C INZPGM BEGSR 04/27/95
14600 ** Define program variables 04/27/95
14700 C *LIKE DEFINE BTYEAR QQYEAR 04/27/95
14800 C *LIKE DEFINE BTMNTH QQMNTH 04/27/95
14900 C *LIKE DEFINE BTMORS QQMORS 04/27/95
15000 C *LIKE DEFINE BTCO QQCO 04/27/95
15100 C *LIKE DEFINE BTREF QQREF 04/27/95
15200 C *LIKE DEFINE GHCUR QQCUR 04/27/95
15300 C *LIKE DEFINE GXACCT QQACCT 04/27/95
15400 C *LIKE DEFINE INJRNL QQJRNL 04/27/95
15500 ** Retrieve date format from entity 05/24/95
15600 ** 05/24/95
15700 C CALL 'GLGRSV' 99 05/24/95
15800 C PARM RSVL 05/24/95
15900 C PARM ETRCD 05/24/95

B-27 | Program XXGFSIB


B-28 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 4
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
16000 C ETERR CASEQ '1' ENDPGM 05/24/95
16100 C ENDCS 05/24/95
16200 ** Get today's date in MDY format 04/27/95
16300 C MOVE 'U' DTFMT Date type 04/27/95
16400 C MOVEL(P) ETDFMT DTFDHI 05/24/95
16500 C CALL 'AMGCDATE' 04/27/95
16600 C PARM ADCPRM 04/27/95
16700 ** Initialize program variables 04/27/95
16800 ** 04/27/95
16900 ** This flag is set to a '1' to indicate that the FSI program 04/27/95
17000 ** was called at least once. We use this flag to call FSI one 04/27/95
17100 ** more time to shut down the FSI program. 04/27/95
17200 C MOVE '0' QQCALL 1 FSI Called ? 04/27/95
17300 ** Initialize test data 04/27/95
17400 C EXSR INZDTA 04/27/95
17500 C ENDSR 04/27/95
17600 *** -------------------------------------------------------------* 04/27/95
17700 *** INZDTA - Initialize test data 04/27/95
17800 *** -------------------------------------------------------------* 04/27/95
17900 C INZDTA BEGSR 04/27/95
18000 ** 04/27/95
18100 ** This determines the type of batch 'Monetary' or 'Statistical' 04/27/95
18200 ** 04/27/95
18300 C MOVE 'M' QQMORS Type M/S 04/27/95
18400 ** 04/27/95
18500 ** This is the company used on the batch and journal header. 04/27/95
18600 ** A journal does not have to have the same company as the batch 04/27/95
18700 ** header. However it is recommended that a new batch be created 04/27/95
18800 ** for each company when loading history. 04/27/95
18900 ** 04/27/95
19000 C MOVE '001' QQCO Company 04/27/95
19100 ** 04/27/95
19200 ** This is where we hold the year and period from the previous 04/27/95
19300 ** input record. Only detail records with the same year and 04/27/95
19400 ** period can be included in the same batch. This example 04/27/95
19500 ** program uses the year and period values to determine if a 04/27/95
19600 ** new batch needs to be created. 04/27/95
19700 ** 04/27/95
19800 C Z-ADD 0 QQYEAR Year 04/27/95
19900 C Z-ADD 0 QQMNTH Month 04/27/95
20000 ** 04/27/95
20100 ** If doing currency processing then enter the currency into 04/27/95
20200 ** this field. This will be the base currency for the journals 04/27/95
20300 ** created in the multi currency example program. The other 04/27/95
20400 ** currencies will be entered into the CD Records. 04/27/95
20500 ** 04/27/95
20600 C MOVE 'USD' QQCUR Currency 04/27/95
20700 ** 04/27/95
20800 ** This is the source and reference that will be used on the 04/27/95
20900 ** batch and journal headers. Make sure that this code is 04/27/95
21000 ** defined as a valid code variable or the batch and journal 04/27/95
21100 ** will be in error. 04/27/95
21200 ** 04/27/95

B-29 | Program XXGFSIB


B-30 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 5
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
21300 C MOVEL 'GLGFSI ' QQREF Source/ reference 04/27/95
21400 ** 04/27/95
21500 ** Set this flag to a '1' to tell FSI to 'Auto Post' the last 04/27/95
21600 ** batch created. If you create more than one batch only the 04/27/95
21700 ** last one is auto posted. The Auto Post will start after FSI 04/27/95
21800 ** is called with the End flag set to a '1'. 04/27/95
21900 ** 04/27/95
22000 C MOVE '1' QQAUTO Auto Post 04/27/95
22100 ** 04/27/95
22200 ** Set this flag to a '1' AFTER the last detail transaction is 04/27/95
22300 ** processed. This will update the journal and batch totals 04/27/95
22400 ** close the journal and batch files and shut down the FSI 04/27/95
22500 ** program. DO NOT SET THIS FLAG IN THAT SAME CALL AS THE LAST 04/27/95
22600 ** DETAIL TRANSACTION, this will result in an invalid journal. 04/27/95
22700 ** 04/27/95
22800 C MOVE '0' QQEND End FSI 04/27/95
22900 ** 04/27/95
23000 ** This is were the previous INFILE journal number is stored. 04/27/95
23100 ** In this example we will create a new journal each time the 04/27/95
23200 ** the INFILE journal number changes. This could result in 04/27/95
23300 ** multiple journals within a single batch. 04/27/95
23400 ** 04/27/95
23500 C Z-ADD 0 QQJRNL 04/27/95
23600 ** 04/27/95
23700 ** This flag, set to a '1', indicates that the exception report 04/27/95
23800 ** file has been opened. Used during error processing. 04/27/95
23900 ** 04/27/95
24000 C MOVE '0' OPNFSI 04/27/95
24100 C ENDSR 04/27/95
24200 *** -------------------------------------------------------------* 04/27/95
24300 *** BGNPGM - Begin program, this is the main program loop 04/27/95
24400 *** -------------------------------------------------------------* 04/27/95
24500 C BGNPGM BEGSR 04/27/95
24600 ** Read the first INFILE record. 04/27/95
24700 C READ INFILE 99 04/27/95
24800 ** If EOF set indicator to end program 04/27/95
24900 C MOVE *IN99 EOSLF 1 04/27/95
25000 ** Loop until End of Sub-Ledger File is detected 04/27/95
25100 B001 C EOSLF DOWEQ '0' 04/27/95
25200 ** Check to see if Year or Period has changed, will always be 04/27/95
25300 ** TRUE for first time through. Create new Batch and Journal 04/27/95
25400 ** header records. 04/27/95
25500 ** Additional testing can be added at this point so that batches 04/27/95
25600 ** and/or journals can be created for other reasons. For example 04/27/95
25700 ** a test for a change in company could also trigger a new batch 04/27/95
25800 ** or as in this example if the journal number of the INFILE 04/27/95
25900 ** changes then a new journal is created. 04/27/95
26000 B002 C INYEAR IFNE QQYEAR 04/27/95
26100 C INMNTH ORNE QQMNTH 04/27/95
26200 C EXSR SETBT 04/27/95
26300 C EXSR SETGH 04/27/95
26400 ** Test the INFILE journal number to see if it has changed. 04/27/95
26500 ** if it does then create a new journal in the existing batch. 04/27/95

B-31 | Program XXGFSIB


B-32 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 6
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
26600 X002 C ELSE 04/27/95
26700 B003 C INJRNL IFNE QQJRNL 04/27/95
26800 C EXSR SETGH 04/27/95
26900 E003 C END 04/27/95
27000 E002 C END 04/27/95
27100 ** move account number into data structure for account checker 04/27/95
27200 C MOVEL(P) INACCT CTACCT 05/25/95
27300 ** The following line of code is optional. The GL system expects 05/25/95
27400 ** the account string to be in upper case characters. This may be 05/25/95
27500 ** a concern for some customers. 05/25/95
27600 ** Warning !!! If you use a translation table with lower case 05/25/95
27700 ** characters you would not want to use this translation , since 05/25/95
27800 ** then you would be returned an error from our account checker. 05/25/95
27900 ***** LO:UP XLATEINACCT CTACCT P 05/25/95
28000 ** Check if account is valid 04/27/95
28100 C EXSR CKACCT 04/27/95
28200 ** 04/27/95
28300 ** QZRET is the returned status from the account checking routine 04/27/95
28400 ** A zero indicates a valid account number in this example. 04/27/95
28500 ** 04/27/95
28600 B002 C QZRET IFEQ '0' 04/27/95
28700 ** Populate the detail transaction parameter 04/27/95
28800 C EXSR SETGX 04/27/95
28900 C EXSR SETCD 02/21/96
29000 ** Call the foreign subsystem interface program (GLGFSI) 04/27/95
29100 C EXSR RUNFSI 04/27/95
29200 ** we called the FSI program. Set flag that FSI was called 04/27/95
29300 C MOVE '1' QQCALL FSI called 04/27/95
29400 ** Process the account error by printing exception report 04/27/95
29500 X002 C ELSE 04/27/95
29600 ** Error found with account 04/27/95
29700 B003 C QZRET IFEQ '1' 04/27/95
29800 C MOVE '0' *IN20 04/27/95
29900 ** Open report file and print header if not already done. 04/27/95
30000 B004 C OPNFSI IFEQ '0' 04/27/95
30100 C OPEN XXTFSI 04/27/95
30200 C MOVE '1' OPNFSI 1 04/27/95
30300 C MOVE DTEDTE QIDATE 04/27/95
30400 C EXSR OVRFLW 04/27/95
30500 E004 C END 04/27/95
30600 ** print detail record on exception report. 04/27/95
30700 C MOVE '1' *IN20 04/27/95
30800 C MOVE CTACCT D1ACCT 04/27/95
30900 C WRITE DTL01 98 04/27/95
31000 C *IN98 CASEQ '1' OVRFLW 04/27/95
31100 C END 04/27/95
31200 E003 C END 04/27/95
31300 E002 C END 04/27/95
31400 ** end of DO loop for processing INFILE records, read next record 04/27/95
31500 C READ INFILE 99 04/27/95
31600 C MOVE *IN99 EOSLF 04/27/95
31700 E001 C END 04/27/95
31800 ** If FSI was called one time then this flag set to '1' so end FSI 04/27/95

B-33 | Program XXGFSIB


B-34 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 7
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
31900 B001 C QQCALL IFEQ '1' 04/27/95
32000 C MOVE '1' QQEND 04/27/95
32100 C EXSR RUNFSI 04/27/95
32200 E001 C END 04/27/95
32300 C ENDSR 04/27/95
32400 *** -------------------------------------------------------------* 04/27/95
32500 *** OVRFLW - report overflow hander, prints header 04/27/95
32600 *** -------------------------------------------------------------* 04/27/95
32700 C OVRFLW BEGSR 04/27/95
32800 C WRITE HEADER 04/27/95
32900 C WRITE COLH01 04/27/95
33000 C ENDSR 04/27/95
33100 *** -------------------------------------------------------------* 04/27/95
33200 *** SETBT - Set BT Fields ( batch header ) 04/27/95
33300 *** -------------------------------------------------------------* 04/27/95
33400 C SETBT BEGSR 04/27/95
33500 ** A zero in the BTBNBR field tells FSI to create a new batch 04/27/95
33600 C Z-ADD *ZERO BTBNBR Batch number 04/27/95
33700 ** a batch can only be monetary or statistical 04/27/95
33800 C MOVE QQMORS BTMORS Batch type 04/27/95
33900 ** this is the batch company, a journal can have a different co. 04/27/95
34000 C MOVE QQCO BTCO Batch company 04/27/95
34100 ** move the year and period from the INFILE record into the batch 04/27/95
34200 ** remember in this example we create a new batch when the INFILE 04/27/95
34300 ** year and period changes. 04/27/95
34400 C Z-ADD INYEAR BTYEAR Batch year 04/27/95
34500 C Z-ADD INMNTH BTMNTH Batch month 04/27/95
34600 C Z-ADD INYEAR QQYEAR Batch year 04/27/95
34700 C Z-ADD INMNTH QQMNTH Batch month 04/27/95
34800 ** enter the batch reference here, this is optional. 04/27/95
34900 C MOVE QQREF BTREF Reference 04/27/95
35000 ** enter the batch description here, this comes from array D 04/27/95
35100 ** see end of program for contents 04/27/95
35200 C MOVE D(1) BTDESC Description 04/27/95
35300 ** The following fields are optional and are not use in this 04/27/95
35400 ** example program. Refer to the General Ledger Technical 04/27/95
35500 ** Training Guide for more info on these fields. Fields denoted 04/27/95
35600 ** with '**' are not defined, the user should determine where the 04/27/95
35700 ** info will come from and change the field name prior to use. 04/27/95
35800 ** 04/27/95
35900 ** the next three fields are use for the Walk-Back (WB) feature 04/27/95
36000 ** enter the subsystem designation, walk-back program name and the 04/27/95
36100 ** library name of where the program is located in these fields. 04/27/95
36200 ** If using walk-back don't forget to populate the transaction 04/27/95
36300 ** record fields GXSN1 and GXSN2 as needed for the walk-back. 04/27/95
36400 C* MOVE **FS BTFS WB Sys ID 04/27/95
36500 C* MOVE **FSP BTFSP WB Program 04/27/95
36600 C* MOVE **FSL BTFSL WB Library 04/27/95
36700 ** If weekly processing enter valid week number here 04/27/95
36800 C* Z-ADD**WEEK BTWEEK Batch week 04/27/95
36900 C ENDSR 04/27/95
37000 *** -------------------------------------------------------------* 04/27/95
37100 *** SETGH - Set GH fields ( journal header ) 04/27/95

B-35 | Program XXGFSIB


B-36 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 8
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
37200 *** -------------------------------------------------------------* 04/27/95
37300 C SETGH BEGSR 04/27/95
37400 ** A zero in the GHJRNL field tells FSI to create a new journal 04/27/95
37500 C Z-ADD *ZERO GHJRNL Journal number 04/27/95
37600 ** For this example we are creating a description that includes 04/27/95
37700 ** the INFILE journal number. This will help users link the new 04/27/95
37800 ** history journals to the old system. 04/27/95
37900 C MOVE D(2) DW(1) load wrk ary 04/27/95
38000 C MOVE INJRNL DW(20) load jrnl # 04/27/95
38100 C MOVE DW(1) GHDESC Journal Description 04/27/95
38200 ** Only the 8 digit date field is used by FSI it will use this 04/27/95
38300 ** field to populate the hundred year and edited date fields. 04/27/95
38400 ** If this field blank then today's date is used by FSI. 04/27/95
38500 C MOVE INDATE GH8DAT Eight char. date 04/27/95
38600 ** This is the journal source and reference, make sure that any 04/27/95
38700 ** value entered into the source field is defined as a valid code 04/27/95
38800 ** value in GL Code Type of SRC. 04/27/95
38900 C MOVE QQREF GHSRC Journal source 04/27/95
39000 C MOVE QQREF GHREF Journal reference 04/27/95
39100 ** The following fields are optional and are not use in this 04/27/95
39200 ** example program. Refer to the General Ledger Technical 04/27/95
39300 ** Training Guide for more info on these fields. Fields denoted 04/27/95
39400 ** with '**' are not defined, the user should determine where the 04/27/95
39500 ** info will come from and change the field name prior to use. 04/27/95
39600 ** 04/27/95
39700 ** The journal currency for this multi currency program example 04/27/95
39800 ** was set in QQCUR. The other currencies will be entered into 04/27/95
39900 ** the CD Records. 04/27/95
40000 C MOVE QQCUR GHCUR Journal currency 04/27/95
40100 ** If you want to provide an exchange date it is done here and in 04/27/95
40200 ** hundred year format. 04/27/95
40300 C* Z-ADD**HENT GHEDTH Exchange date 04/27/95
40400 ** Journal company, can be different from Batch company enter 04/27/95
40500 ** it here. It is important to remember that GLGFSI will put BTCO into 04/27/95
40600 ** GHCO if it is set to *BLANKS. Also when creating multiple Journals 04/27/95
40700 ** or Batches GHCO is not reset once a value is entered either by the user 04/27/95
40800 ** or by GLGFSI. This can have undesirable results. Software 2000 04/27/95
40900 ** recommends that at a minimum you always set GHCO to *BLANKS when ever 04/27/95
41000 ** a new Journal is created even though this is an optional field. 04/27/95
41100 C MOVE *BLANKS GHCO Journal Co. 04/27/95
41200 ** To create an Accrual Journal set this flag to '1' otherwise 04/27/95
41300 ** '0' 04/27/95
41400 C MOVE '0' GHACRU Accrual Jrnl 04/27/95
41500 ** Intercompany table name is entered here 04/27/95
41600 C* MOVE **IAT GHIAT Interco Table 04/27/95
41700 ** To Transcode this journal set this flag to '1' otherwise 04/27/95
41800 ** '0' 04/27/95
41900 C MOVE '0' GHTRCD Transcode 04/27/95
42000 ** If this is a revaluation Journal set flag to '1' otherwise 04/27/95
42100 ** '0' 04/27/95
42200 C MOVE '0' GHRVAL Revaluation 04/27/95
42300 ** A single ledger journal only updates one currency of a dual 04/27/95
42400 ** currency company. Normally this flag is '0' which will create 04/27/95

B-37 | Program XXGFSIB


B-38 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 9
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
42500 ** a non-single ledger journal. If you are converting history 04/27/95
42600 ** that is in dual currency and you don't want GL to compute the 04/27/95
42700 ** exchange rate then create single ledger journals for both 04/27/95
42800 ** currencies by setting the following to '1'. 04/27/95
42900 C MOVE '0' GHZERO Single Ledger 04/27/95
43000 C ENDSR 04/27/95
43100 *** -------------------------------------------------------------* 04/27/95
43200 *** SETGX - Set the GX fields ( journal details ) 04/27/95
43300 *** -------------------------------------------------------------* 04/27/95
43400 C SETGX BEGSR 04/27/95
43500 ** Move the account number from GLGAPI into transaction account 04/27/95
43600 ** field. This way the old account number can be used and GLGAPI 04/27/95
43700 ** will use the translation table from the chart of account 04/27/95
43800 ** conversion to get the new S2K account number. 04/27/95
43900 ** If you enter both Account and Page numbers GLGFSI will always 04/27/95
44000 ** take the Page number over the Account number. Normally you 04/27/95
44100 ** don't provide both. This is here for completeness 04/27/95
44200 C MOVE CTACCT GXACCT detail account 04/27/95
44300 C Z-ADD CTPAGE GXPAGE account page 04/27/95
44400 ** Move the old description from INFILE into the new transaction 04/27/95
44500 ** description field. 04/27/95
44600 C MOVEL INDESC GXDESC Dtl description 04/27/95
44700 ** In this example there in only one amount field and we move it 04/27/95
44800 ** into the new transaction. If you have separate amount fields 04/27/95
44900 ** for debit and credit then convert the credit to negative value 04/27/95
45000 ** and put into this field. 04/27/95
45100 C Z-ADD INAMT GXFAMT Dtl amount 04/27/95
45200 ** If the currency is not provided then it will be set to the 04/27/95
45300 ** same as on the Journal Header GHCUR. 04/27/95
45400 C MOVE QQCUR GXCUR 04/27/95
45500 ** If the company is not provided then it will be set to the 04/27/95
45600 ** same as on the Account record from the chart of accounts 04/27/95
45700 ** by GLGFSI. 04/27/95
45800 C MOVE CTCO GXCO 04/27/95
45900 ** The following fields are optional and are not use in this 04/27/95
46000 ** example program. Refer to the General Ledger Technical 04/27/95
46100 ** Training Guide for more info on these fields. Fields denoted 04/27/95
46200 ** with '**' are not defined, the user should determine where the 04/27/95
46300 ** info will come from and change the field name prior to use. 04/27/95
46400 ** 04/27/95
46500 ** This is the Job Code field used to group transactions together 04/27/95
46600 ** Transactions are sorted and group by this field. 04/27/95
46700 C* MOVE **JOB GXJOB Job Code 04/27/95
46800 ** This field indicates if the amount field is a debit or credit 04/27/95
46900 ** GLGFSI will fill this field automatically based on if the 04/27/95
47000 ** amount field is less then (Credit) or greater than (Debit) zero 04/27/95
47100 ** Enter 'C' for a credit or 'D' for debit. 04/27/95
47200 C* MOVE **DRCR GXDRCR Job Code 04/27/95
47300 ** The following two fields are used by a walkback program to 04/27/95
47400 ** display walkback information. See the General Ledger Technical 04/27/95
47500 ** Training Guide for a discussion of walkback and how these 04/27/95
47600 ** fields are used. 04/27/95
47700 C* MOVE **SN1 GXSN1 Walkback 1 04/27/95

B-39 | Program XXGFSIB


B-40 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 10
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
47800 C* MOVE **SN2 GXSN2 Walkback 2 04/27/95
47900 ** The following six fields are the transaction user fields these 04/27/95
48000 ** will contain user defined data. Note that the transaction user 04/27/95
48100 ** date field is not used by the GLGFSI program and currently 04/27/95
48200 ** cannot be entered using FSI. 04/27/95
48300 C* MOVE **AF01 GXAF01 Alpha 1 04/27/95
48400 C* MOVE **AF02 GXAF02 Alpha 2 04/27/95
48500 C* MOVE **AF03 GXAF03 Alpha 3 04/27/95
48600 C* MOVE **AF04 GXAF04 Alpha 4 04/27/95
48700 C* Z-ADD**NF01 GXNF01 Numeric 1 04/27/95
48800 C* Z-ADD**NF02 GXNF02 Numeric 2 04/27/95
48900 C ENDSR 04/27/95
49000 *** -------------------------------------------------------------* 04/27/95
49100 *** SETCD - Set the Converted Amounts & Exchange Information 04/27/95
49200 *** -------------------------------------------------------------* 04/27/95
49300 C SETCD BEGSR 04/27/95
49400 ** This subroutine creates the Converted Amounts (CD) Records for 04/27/95
49500 ** this multi currency example program. In this example two other 04/27/95
49600 ** currency amounts will be used. An exchange rate will be used 04/27/95
49700 ** to compute the converted amounts and the exchange rate will be 04/27/95
49800 ** stored in the CD Record. 04/27/95
49900 ** Clear the CD record 04/27/95
50000 C CLEAR CDRCD 04/27/95
50100 ** Initialize the CD Record counter, the FSI program needs to know 04/27/95
50200 ** how many CD Records are being sent currently the max is 3 the 04/27/95
50300 ** remaining 7 are for future expansion and are not used. 04/27/95
50400 C Z-ADD 1 CD 2 0 04/27/95
50500 ** Set the first converted currency to French Francs. The 04/27/95
50600 ** currency is a required entry. Make sure the currency used is 04/27/95
50700 ** a valid currency or an error will occur on the Journal. 04/27/95
50800 C MOVE 'FRF' CDTCUR Conv Cur 04/27/95
50900 ** For this example the exchange rate is 5.25 FRF to 1 USD. Take 04/27/95
51000 ** the amount on the GX (Detail) Record and compute the converted 04/27/95
51100 ** amount. 04/27/95
51200 C GXFAMT MULT 5.25 CDAMT Conv Amount 04/27/95
51300 ** Save the exchange rate in the CD Record. This is a optional 04/27/95
51400 ** entry. If provided will allow revaluation if needed later. 04/27/95
51500 C Z-ADD 5.25 CDRATE Exchange Rate 04/27/95
51600 ** The following fields are optional and are not used in this 04/27/95
51700 ** example program. Refer to the General Ledger Technical 04/27/95
51800 ** Training Guide and the Currency Management 2000 Users Guide 04/27/95
51900 ** for more information. Fields denoted with a '**' are not 04/27/95
52000 ** defined, the user should determine where the information will 04/27/95
52100 ** come from and change the field name prior to use. 04/27/95
52200 ** 04/27/95
52300 ** This field is the Rate Per field used conjunction with the 04/27/95
52400 ** exchange rate. If not provided GLGFSI will set this field to 04/27/95
52500 ** the value 1. 04/27/95
52600 C* Z-ADD1 CDRPER Rate Per 04/27/95
52700 ** This field is the Rate Type field used to obtain an exchange 04/27/95
52800 ** rate. Enter a valid Exchange Rate Type here to have GL 04/27/95
52900 ** compute the exchange rate for you. 04/27/95
53000 C* MOVE **RTYP CDRTYP Rate Type 04/27/95

B-41 | Program XXGFSIB


B-42 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 11
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
53100 ** This field is the Exchange Rate quotation method. Enter 1 for 04/27/95
53200 ** Direct (this is the default) or 2 for Indirect. See the 04/27/95
53300 ** Currency Management 2000 User Guide for more information. 04/27/95
53400 C* MOVE 1 CDMTHD Exch Meth 04/27/95
53500 ** This field is the Exchange Date, if the exchange date is not 04/27/95
53600 ** provided then GLGFSI will enter the system date. 04/27/95
53700 ** compute the exchange rate for you. 04/27/95
53800 C* MOVE**EDTE CDEDTE Exch Date 04/27/95
53900 ** Move the CD record into the Parameter 5 array 04/27/95
54000 C MOVEL CDRCD CDS(CD) 04/27/95
54100 ** Clear the CD record for the second converted amount 04/27/95
54200 C CLEAR CDRCD 04/27/95
54300 ** Increment the CD Record counter, the FSI program needs to know 04/27/95
54400 ** how many CD Records are being sent currently the max is 3 the 04/27/95
54500 ** remaining 7 are for future expansion and are not used. 04/27/95
54600 C ADD 1 CD 04/27/95
54700 ** Set the second converted currency to Canadian Dollars. The 04/27/95
54800 ** currency is a required entry. Make sure the currency used is 04/27/95
54900 ** a valid currency or an error will occur on the Journal. 04/27/95
55000 C MOVE 'CND' CDTCUR Conv Cur 04/27/95
55100 ** For this example the exchange rate is 1.45 CND to 1 USD. Take 04/27/95
55200 ** the amount on the GX (Detail) Record and compute the converted 04/27/95
55300 ** amount. 04/27/95
55400 C GXFAMT MULT 1.45 CDAMT Conv Amount 04/27/95
55500 ** Save the exchange rate in the CD Record. This is a optional 04/27/95
55600 ** entry but if provided will allow recalculation if needed later 04/27/95
55700 C Z-ADD 1.45 CDRATE Exchange Rate 04/27/95
55800 ** The following fields are optional and are not used in this 04/27/95
55900 ** example program. Refer to the General Ledger Technical 04/27/95
56000 ** Training Guide and the Currency Management 2000 Users Guide 04/27/95
56100 ** for more information. Fields denoted with a '**' are not 04/27/95
56200 ** defined, the user should determine where the information will 04/27/95
56300 ** come from and change the field name prior to use. 04/27/95
56400 ** 04/27/95
56500 ** This field is the Rate Per field used conjunction with the 04/27/95
56600 ** exchange rate. If not provided GLGFSI will set this field to 04/27/95
56700 ** the value 1. 04/27/95
56800 C* Z-ADD1 CDRPER Rate Per 04/27/95
56900 ** This field is the Rate Type field used to obtain an exchange 04/27/95
57000 ** rate. Enter a valid Exchange Rate Type here to have GL 04/27/95
57100 ** compute the exchange rate for you. 04/27/95
57200 C* MOVE **RTYP CDRTYP Rate Type 04/27/95
57300 ** This field is the Exchange Rate quotation method. Enter 1 for 04/27/95
57400 ** Direct (this is the default) or 2 for Indirect. See the 04/27/95
57500 ** Currency Management 2000 User Guide for more information. 04/27/95
57600 C* MOVE 1 CDMTHD Exch Meth 04/27/95
57700 ** This field is the Exchange Date, if the exchange date is not 04/27/95
57800 ** provided then GLGFSI will enter the system date. 04/27/95
57900 ** compute the exchange rate for you. 04/27/95
58000 C* MOVE**EDTE CDEDTE Exch Date 04/27/95
58100 ** Move the CD record into the Parameter 5 array 04/27/95
58200 C MOVEL CDRCD CDS(CD) 04/27/95
58300 ** Move the CD record count into Parameter 6 04/27/95

B-43 | Program XXGFSIB


B-44 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 12
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
58400 C Z-ADD CD CDCNT Conv Amts Cnt 04/27/95
58500 C ENDSR 04/27/95
58600 *** -------------------------------------------------------------* 04/27/95
58700 *** CKACCT - Check the account number 04/27/95
58800 *** -------------------------------------------------------------* 04/27/95
58900 C CKACCT BEGSR 04/27/95
59000 ** 04/27/95
59100 ** Use the GLGAPI program to call the GL Account Checker if the 04/27/95
59200 ** account number is valid the CT record is returned in QQCOA. 04/27/95
59300 ** Using the GLGAPI program allows you to use keying short cuts, 04/27/95
59400 ** short names and/or translation tables to retrieve account 04/27/95
59500 ** numbers. See the General Ledger Technical Training Guide 04/27/95
59600 ** for more information concerning the GLGAPI program 04/27/95
59700 C MOVE '01' QZREF 04/27/95
59800 C CALL 'GLGAPI' 99 04/27/95
59900 C PARM QQCTL 04/27/95
60000 C PARM QQCOA 04/27/95
60100 C ENDSR 04/27/95
60200 *** -------------------------------------------------------------* 04/27/95
60300 ** RUNFSI - Run GLGFSI ( foreign subsystem interface program ) 04/27/95
60400 *** -------------------------------------------------------------* 04/27/95
60500 ** Starting with GL 9.0 GLGFSI does not return any errors. FSI 04/27/95
60600 ** will take what ever it is given and create a transaction. If 04/27/95
60700 ** the transaction is in error the Journal is flagged in error and 04/27/95
60800 ** the user will have to correct the journal prior to Accept and 04/27/95
60900 ** Post. The error will be on the Proof report. You should try 04/27/95
61000 ** and validate all transaction data prior to calling FSI and this 04/27/95
61100 ** is why you should use GLGAPI to validate the account numbers 04/27/95
61200 ** as most errors are due to bad account numbers. 04/27/95
61300 C RUNFSI BEGSR 04/27/95
61400 C Z-ADD 0 CDCNT 04/27/95
61500 C CALL 'GLGFSI' 04/27/95
61600 C PARM BTRCD Batch header 04/27/95
61700 C PARM GHRCD Jrn header 04/27/95
61800 C PARM GXRCD Jrn detail 04/27/95
61900 C PARM JDDESC Jrn desc 04/27/95
62000 C PARM CDS Conv Amts 04/27/95
62100 ** for this example CDCNT is zero 04/27/95
62200 C PARM CDCNT 2 0 No conv Amts 04/27/95
62300 C PARM QQAUTO 1 Auto Post? 04/27/95
62400 C PARM QQERR 1 Not Used 04/27/95
62500 C PARM QQEND 1 End ? 04/27/95
62600 C ENDSR 04/27/95
62700 *** -------------------------------------------------------------* 04/27/95
62800 *** ENDPGM - End program 04/27/95
62900 *** -------------------------------------------------------------* 04/27/95
63000 C ENDPGM BEGSR 04/27/95
63100 B001 C OPNFSI IFEQ '1' 04/27/95
63200 C WRITE FOOT 04/27/95
63300 C CLOSE XXTFSI 04/27/95
63400 E001 C END 04/27/95
63500 C MOVE '1' *INLR 04/27/95
63600 C RETURN 04/27/95

B-45 | Program XXGFSIB


B-46 | Appendix B Sample Programs for Calling GLGFSI
5716PW1 V3R7M0 961108 SEU SOURCE LISTING 11/04/98 10:06:20 PAGE 13
SOURCE FILE . . . . . . . GL2000110/GLRPGSRC
MEMBER . . . . . . . . . XXGFSIB
SEQNBR*...+... 1 ...+... 2 ...+... 3 ...+... 4 ...+... 5 ...+... 6 ...+... 7 ...+... 8 ...+... 9 ...+... 0
63700 C ENDSR 04/27/95
63800 ** 04/27/95
63900 ** The following entries are the descriptions used on the batch 04/27/95
64000 ** and journal headers. See the SETBT and SETGH for more 04/27/95
64100 ** information. Note that in this example the Journal description 04/27/95
64200 ** contains the old journal number from the INFILE. 04/27/95
64300 ** 04/27/95
64400 ** Example accounts 04/27/95
64500 History conversion batch 04/27/95
64600 Old Journal number 04/27/95
* * * * E N D O F S O U R C E * * * *
Exception report

XXGFSI2 XXTFSI - Exception Report PAGE 1


10/20/1994 9:12:50 GL2000
Account number Error:
------------------------------------------------------------------------------------------------------------------------------------
RS1-001-002-001 Account Invalid.
RS1-001-500-001 Account Invalid.
***** END OF REPORT *****

B-47 | Exception report


B-48 | Appendix B Sample Programs for Calling GLGFSI

Proof Input Journals report

GLGGHPA GLTGHPA P R O O F I N P U T J O U R N A L S PAGE 1


10/20/94 9:12:07 GL2000
BATCH . . . : 859 DESCRIPTION . : Input Journal LAST USER : GL2000 PERIOD / YEAR : 02 / 1994
TYPE . . . . : MONETARY COMPANY . . . : 001 Century Manufacturing Company REFERENCE : GLGFSI
JOURNAL . . : 1394 DESCRIPTION . : TEST REFERENCE : GLGFSI SOURCE . . . : GLGFSI
JOURNAL DATE : 10/20/1994 COMPANY . . . : 001 Century Manufacturing Company CURRENCY : USD EXCHANGE DATE : 10/20/1994
AUTO ACCRUAL?: No INTERCO. TABLE: TRANSCODE?: No SINGLE LEDGER?: No
SEQ # COM-DIV-DEP-ACCT-SUB TRANSACTION DESCRIPTION DEBIT AMOUNT CREDIT AMOUNT CURRENCY
ACCOUNT DESCRIPTION EXCHANGE RATE RATE PER METHOD
------------------------------------------------------------------------------------------------------------------------------------
Warning - Exchange date does not fall within batch period.
000001 001-001-000-1000 TEST 100.00 USD
Petty Cash 5.140000000 1.000 DIR 514.00 FRF
000002 001-001-000-2000 TEST 100.00 USD
AP - Trade 5.140000000 1.000 DIR 514.00 FRF
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
JOURNAL TOTALS:
UNITS : .00 NUMBER OF TRANSACTIONS: 2 PROCESSING: 100.00 100.00 USD
COMMISSION: .00 BASE : 100.00 100.00 USD
SECONDARY : 514.00 514.00 FRF
** NUMBER OF ERRORS IN JOURNAL : 0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
JOURNAL MANUAL TOTALS:
UNITS : .00 NUMBER OF TRANSACTIONS: 0 TOTAL DR/CR: .00
COMMISSION: .00
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BATCH TOTALS:
UNITS : .00 NUMBER OF JOURNALS: 1 PROCESSING: 100.00 100.00 USD
COMMISSION: .00 NUMBER OF ACCRUALS: 0 BASE : 100.00 100.00 USD
SECONDARY : 514.00 514.00 FRF
*** NUMBER OF ERRORS IN BATCH : 0
*** NUMBER OF JOURNALS IN ERROR: 0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BATCH MANUAL TOTALS:
UNITS : .00 NUMBER OF JOURNALS: 0 TOTAL DR/CR: .00
COMMISSION: .00
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
********** E N D O F R E P O R T **********
Accepted Input Journals report

GLGGHA GLTGHA A C C E P T E D I N P U T J O U R N A L S PAGE 1


10/20/94 9:12:15 GL2000
BATCH . . . : 859 DESCRIPTION . : Input Journal LAST USER : GL2000 PERIOD / YEAR : 02 / 1994
TYPE . . . . : MONETARY COMPANY . . . : 001 Century Manufacturing Company REFERENCE : GLGFSI
JOURNAL . . : 1394 DESCRIPTION . : TEST REFERENCE : GLGFSI SOURCE . . . : GLGFSI
JOURNAL DATE : 10/20/1994 COMPANY . . . : 001 Century Manufacturing Company CURRENCY : USD EXCHANGE DATE : 10/20/1994
AUTO ACCRUAL?: No INTERCO. TABLE: TRANSCODE?: No SINGLE LEDGER?: No
SEQ # COM-DIV-DEP-ACCT-SUB TRANSACTION DESCRIPTION DEBIT AMOUNT CREDIT AMOUNT CURRENCY
ACCOUNT DESCRIPTION EXCHANGE RATE RATE PER METHOD
------------------------------------------------------------------------------------------------------------------------------------
000001 001-001-000-1000 TEST 100.00 USD
Petty Cash 5.140000000 1.000 DIR 514.00 FRF
000002 001-001-000-2000 TEST 100.00 USD
AP - Trade 5.140000000 1.000 DIR 514.00 FRF
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
JOURNAL TOTALS:
UNITS : .00 NUMBER OF TRANSACTIONS: 2 PROCESSING: 100.00 100.00 USD
COMMISSION: .00 BASE : 100.00 100.00 USD
SECONDARY : 514.00 514.00 FRF
** NUMBER OF ERRORS IN JOURNAL : 0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
JOURNAL MANUAL TOTALS:
UNITS : .00 NUMBER OF TRANSACTIONS: 0 TOTAL DR/CR: .00
COMMISSION: .00
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BATCH TOTALS:
UNITS : .00 NUMBER OF JOURNALS: 1 PROCESSING: 100.00 100.00 USD
COMMISSION: .00 NUMBER OF ACCRUALS: 0 BASE : 100.00 100.00 USD
SECONDARY : 514.00 514.00 FRF
*** NUMBER OF ERRORS IN BATCH : 0
*** NUMBER OF JOURNALS IN ERROR: 0
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
BATCH MANUAL TOTALS:
UNITS : .00 NUMBER OF JOURNALS: 0 TOTAL DR/CR: .00
COMMISSION: .00
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
********** E N D O F R E P O R T **********

B-49 | Accepted Input Journals report


B-50 | Appendix B Sample Programs for Calling GLGFSI

Posting report

GLGTHM GLTTHM P O S T I N G R E P O R T PAGE 1


10/20/1994 9:12:30 GL2000
Posting number . : 442 Accounting year : 1994 Period . . . : 02
Debit Credit
------------------------------------------------------------------------------------------------------------------------------------
Batch number . . : 859 Processing total: 100.00 100.00
Type . . . . . . : MONETARY UNITS . : .00
Description . . : Input Journal COMMISSION . : .00
Reference . . . : GLGFSI
------------------------------------------------------------------------------------------------------------------------------------
Company Total. . : 001 Century Manufacturing Company Processing total: 100.00 100.00
Period ending . : FEB 2/28/1994 Base total . . : 100.00 100.00
Direct Postings. : 2 Secondary total : 514.00 514.00
UNITS . : .00
COMMISSION . : .00
********** E N D O F R E P O R T **********

You might also like