CheckforAccountExistenceF0901

Validate Account Number

Minor Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

Functional Description

Purpose

This business function checks for the existence of an Account Master record in the F0901 table.  In 

addition, this function will return every column of the F0901 for the Account requested.  No validation 

or editing is performed.  This function should be used in lieu of XX0901 - Validate Account Number if 

all that is needed is a check for existence or a return of Account specific information.


Setup Notes and Prerequisites

The user should pass in the Account ID if it is available.  If the Account ID is not available the 

MCU.OBJ.SUB method may be used.  Just pass in the Business Unit, Object Account and Subsidiary in the 

approriate fields of the data structure.


Special Logic

The parameter "cAccountExistsFlag" will return a 'Y' if the Account requested exists and an 'N' if it 

does not exist.  You may suppress ER or GBR errors from being set by passing a 'Y' in the 

"cSuppressErrosFlag" parameter.  If a 'Y' is passed and an error is encountered, the error code will be returned 

in the "szErrorCode" parameter.


Technical Specification

If Account ID is blank OR Account ID = "00000000"

   If Business Unit is Blank  AND

      Object Account is blank AND

      Subsidiary is blank

         Set ERROR 0003 - Blanks Invalid

   Else

      Set key information for 3 part key: MCU.OBJ.SUB

Else

   Set key information for 1 part key: AID


Open Account Master Table (F0901)

Fetch Account from Account Master Table (F0901)

If fetch fails

   Set Account Exists Flag = 'N'

   Set ERROR 

Else

   Set Account Exists Flag = 'Y'

   Move all F0901 columns to return BSFN Data Structure

Close Account Master Table (F0901)

Data Structure

D0000005 - Check for Account Existence (F0901)

Parameter NameData ItemData TypeReq/OptI/O/Both
szAccountIDAIDcharOPTBOTH

Special Input Expected
If you have the Account ID pass it.  The BSFN will check this parameter first.  If left blank or 

NULL, the BSFN will attempt to fetch the F0901 Account Master record based on the MCU/OBJ/SUB parameters.


Special Output Returned

If left blank, the Account ID associated with the Account will be returned.
^

szCompanyCOcharOPTOUTPUT

Special Output Returned
The Company associated with the Account will be returned.
^

szBusinessUnitMCUcharOPTBOTH

Special Input Expected
If you do not have the Account ID pass in the MCU/OBJ/SUB in the correct parameters.  The BSFN will 

check the AID parameter first.  If AID is left blank or NULL, the BSFN will attempt to fetch the F0901 

Account Master record based on the MCU/OBJ/SUB parameters.


Special Output Returned

If left blank, the Business Unit associated with the Account will be returned.
^

szObjectAccountOBJcharOPTBOTH

Special Input Expected
If you do not have the Account ID pass in the MCU/OBJ/SUB in the correct parameters.  The BSFN will 

check the AID parameter first.  If AID is left blank or NULL, the BSFN will attempt to fetch the F0901 

Account Master record based on the MCU/OBJ/SUB parameters.


Special Output Returned

If left blank, the Object Account associated with the Account will be returned.
^

szSubsidiarySUBcharOPTBOTH

Special Input Expected
If you do not have the Account ID pass in the MCU/OBJ/SUB in the correct parameters.  The BSFN will 

check the AID parameter first.  If AID is left blank or NULL, the BSFN will attempt to fetch the F0901 

Account Master record based on the MCU/OBJ/SUB parameters.


Special Output Returned

If left blank, the Subsidiary associated with the Account will be returned.
^

szAccountDescriptionDL01charOPTOUTPUT

Special Output Returned
The Account Description associated with the Account will be returned.
^

cModelConsolidationFlagFMODcharOPTOUTPUT

Special Output Returned
The Model / Consolidaion Flag associated with the Account will be returned.
^

cPostingEditCodePECcharOPTOUTPUT

Special Output Returned
The Posting Edit Code associated with the Account will be returned.

^

cLevelOfDetailLDAcharOPTOUTPUT

Special Output Returned
The Account Level Of Detail associated with the Account will be returned.
^

szCurrencyCodeCRCDcharOPTOUTPUT

Special Output Returned
The Currency Code associated with the Account will be returned.
^

sz3rdAccountNumberANScharOPTOUTPUT

Special Output Returned
The 3rd Account Number associated with the Account will be returned.
^

szBudgetPatternCodeBPCcharOPTOUTPUT

Special Output Returned
The Budget Pattern Code associated with the Account will be returned.
^

szUnitOfMeasureUMcharOPTOUTPUT

Special Output Returned
The Unit Of Measure associated with the Account will be returned.
^

cBillableBILLcharOPTOUTPUT

Special Output Returned
The Billable Code associated with the Account will be returned.
^

szCategoryCode1R001charOPTOUTPUT

Special Output Returned
Category Code 1 associated with the Account will be returned.
^

szCategoryCode2R002charOPTOUTPUT

Special Output Returned
Category Code 2 associated with the Account will be returned.
^

szCategoryCode3R003charOPTOUTPUT

Special Output Returned
Category Code 3 associated with the Account will be returned.
^

szCategoryCode4R004charOPTOUTPUT

Special Output Returned
Category Code 4 associated with the Account will be returned.
^

szCategoryCode5R005charOPTOUTPUT

Special Output Returned
Category Code 5 associated with the Account will be returned.
^

szCategoryCode6R006charOPTOUTPUT

Special Output Returned
Category Code 6 associated with the Account will be returned.
^

szCategoryCode7R007charOPTOUTPUT

Special Output Returned
Category Code 7 associated with the Account will be returned.
^

szCategoryCode8R008charOPTOUTPUT

Special Output Returned
Category Code 8 associated with the Account will be returned.
^

szCategoryCode9R009charOPTOUTPUT

Special Output Returned
Category Code 9 associated with the Account will be returned.
^

szCategoryCode10R010charOPTOUTPUT

Special Output Returned
Category Code 10 associated with the Account will be returned.
^

szCategoryCode11R011charOPTOUTPUT

Special Output Returned
Category Code 11 associated with the Account will be returned.
^

szCategoryCode12R012charOPTOUTPUT

Special Output Returned
Category Code 12 associated with the Account will be returned.
^

szCategoryCode13R013charOPTOUTPUT

Category code 13 associated with the Account Master file (F0901).  This is a user defined code (system 09, type 13) for use in flex account 
mapping and in printing selected account information on reports.

szCategoryCode14R014charOPTOUTPUT

Special Output Returned
Category Code 14 associated with the Account will be returned.
^

szCategoryCode15R015charOPTOUTPUT

Special Output Returned
Category Code 15 associated with the Account will be returned.
^

szCategoryCode16R016charOPTOUTPUT

Special Output Returned
Category Code 16 associated with the Account will be returned.
^

szCategoryCode17R017charOPTOUTPUT

Special Output Returned
Category Code 17 associated with the Account will be returned.
^

szCategoryCode18R018charOPTOUTPUT

Special Output Returned
Category Code 18 associated with the Account will be returned.
^

szCategoryCode19R019charOPTOUTPUT

Special Output Returned
Category Code 19 associated with the Account will be returned.
^

szCategoryCode20R020charOPTOUTPUT

Special Output Returned
Category Code 20 associated with the Account will be returned.
^

szCategoryCode21R021charOPTOUTPUT

Special Output Returned
Category Code 21 associated with the Account will be returned.
^

szCategoryCode22R022charOPTOUTPUT

Special Output Returned
Category Code 22 associated with the Account will be returned.
^

szCategoryCode23R023charOPTOUTPUT

Special Output Returned
Category Code 23 associated with the Account will be returned.
^

szAlternateObjectAccountOBJAcharOPTOUTPUT

Special Output Returned
The Alternate Object Account associated with the Account will be returned.
^

szAlternateSubsidiarySUBAcharOPTOUTPUT

Special Output Returned
The Alternate Subsidiary associated with the Account will be returned.
^

szWorkersCompInsuranceCodeWCMPcharOPTOUTPUT

Special Output Returned
The Worker's Compensation Insurance Code associated with the Account will be returned.
^

cMethodOfComputationCCTcharOPTOUTPUT

Special Output Returned
The Method Of Computation associated with the Account will be returned.
^

szEquipmentRateCodeERCcharOPTOUTPUT

Special Output Returned
The Equipment Rate Code associated with the Account will be returned.
^

cHeaderTypeCodeHTCcharOPTOUTPUT

Special Output Returned
The Header Type Code associated with the Account will be returned.
^

cLodQuantityRollupCodeQLDAcharOPTOUTPUT

Special Output Returned
The Level Of Detail Quantity Rollup Code associated with the Account will be returned.
^

cCostCodeCompleteCCCcharOPTOUTPUT

Special Output Returned
The Cost Code Complete associated with the Account will be returned.
^

szUserIDUSERcharOPTOUTPUT

Special Output Returned
The User ID of the user to last update the Account will be returned.
^

szProgramIDPIDcharOPTOUTPUT

Special Output Returned
The Program ID of the program to last update the Account will be returned.
^

szWorkStationIDJOBNcharOPTOUTPUT

Special Output Returned
The Workstation ID of the workstation to last update the Account will be returned.
^

jdDateLastUpdatedUPMJJDEDATEOPTOUTPUT

Special Output Returned
The Date the Account was last updated will be returned.
^

mnTimeLastUpdatedUPMTMATH_NUMERICOPTOUTPUT

Special Output Returned
The Time the Account was last updated will be returned.
^

cSuppressErrorsFlagEV01charOPTINPUT

Special Input Expected
Pass in a "Y" or a "1" to suppress any errors from being set.  If a "Y" or a "1" is passed and an 

error has been encountered the error will be returned in the szErrorCode parameter.

^

szErrorCodeVC04AcharOPTOUTPUT

Special Output Returned
If a "Y" or a "1" is passed in the cSuppressErrorsFlag parameter and an error has been encountered 
the error will be returned.

^

cAccountExistsFlagEV01charOPTOUTPUT

Special Output Returned
If the Account requested exists a "Y" will be returned.  If the Account requested does not exist a 
"N" will be returned.

^

cCostObjectEditCode01CEC1charOPTNONE

A code that specifies the cost object type that users must enter into the Cost Object Type 1 field when entering transactions for this account. 
Use the search button to locate and select a valid value. 

cCostObjectEditCode02CEC2charOPTNONE

A code that specifies the cost object type that users must enter into the Cost Object Type 2 field when entering transactions for this account. 
Use the search button to locate and select a valid value. 

cCostObjectEditCode03CEC3charOPTNONE

A code that specifies the cost object type that users must enter into the Cost Object Type 3 field when entering transactions for this account. 
Use the search button to locate and select a valid value. 

cCostObjectEditCode04CEC4charOPTNONE

A code that specifies the cost object type that users must enter into the Cost Object Type 4 field when entering transactions for this account. 
Use the search button to locate and select a valid value. 

cItemEditCodeIECcharOPTNONE

A code that controls what information you can enter into the Item Number field for this account. Valid values are:    blank No edit will be 
performed.    1       A valid value must be entered in item number for this account.    0       Item number must be blank for this account.

cGLAccountTaxableTXGLcharOPTNONE

An option that specifies whether an account is taxable. When the option is turned on, the account is taxable. The system updates the record 
in the Account Master table (F0901) with 1 when the option is turned on.

szTaxArea1TXA1charOPTNONE

A code that identifies a tax or geographic area that has common tax rates and tax authorities. The system validates the code you enter 
against the Tax Areas table (F4008). The system uses the tax rate area in conjunction with the tax explanation code and tax rules to calculate tax 
and G/L distribution amounts when you create an invoice or voucher.

Related Functions

None

Related Tables

F0901 Account Master
GetAccountGeneralConstants

GetAccountGeneralConstants

Validate Account Number

Minor Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

Functional Description

Purpose

This business function will retrieve the General Accounting Constants for use by Validate Account 

Number BSFN.


Setup Notes and Prerequisites


Special Logic

This BSFN calls the API "jdeGetSystemConstantValues" to retrieve the following values from the 

General Accounting Constants file (F0009): Short Account Symbol, Long Account Symbol, Third Account Symbol, 

Separator Character, Flex Account Coding, Allow Invalid Accounts.


Technical Specification

Call APIs to return Cached System Constants

Load Return parameters into lpDS data structure

Data Structure

D0000144 - Get Account General Constants

Parameter NameData ItemData TypeReq/OptI/O/Both
cShortAccountSymbolSMScharNONENONE

Special Input Expected

Special Output Returned

Returned Short Account Symbol from F0009 System Constants file.

^

cLongAccountSymbolSYMLcharNONENONE

Special Input Expected

Special Output Returned

Returned Long Account Symbol from F0009 System Constants file.

^

cThirdAccountSymbolSYMUcharNONENONE

Special Input Expected

Special Output Returned

Returned 3rd Account Symbol from F0009 System Constants file.

^

cSeparatorCharacterSEPcharNONENONE

Special Input Expected

Special Output Returned

Returned Account Separator Character from F0009 System Constants file.

^

cFlexAccountCodingFLEXcharNONENONE

Special Input Expected

Special Output Returned

Returned Flex Accounting constant from F0009 System Constants file.

^

cAllowInvalidAcctsALIAcharNONENONE

Special Input Expected

Special Output Returned

Returned Allow Invalid Accounts constant from F0009 System Constants file.

^

Related Functions

None

Related Tables

F0901 Account Master
SimpleAccountConcatenation

SimpleAccountConcatenation

Validate Account Number

Minor Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

Functional Description

Purpose

This business function will concatenate the individual account segments in database format into the 

long account format.


Setup Notes and Prerequisites

This function will determine if Flex Chart of Accounts is being used and will parse and concatenate 

the account segments into the long account format.  If you are using Flex Chart of Accounts the 

segments must be passed without separator characters (database format).


Special Logic



Technical Specification

Call XX0901 - Get General Accounting System Constants BSFN

If Flex Chart of Accounts Constant is "Y"

   Call XX0901 - Interpret Flex BSFN

End If

Call X0006 - Scrub Cost Center

Call X09011 - Scrub Object Account

Call X09012 - Scrub Sub Account

If Flex Chart of Accounts Constant is "N"

   Concatenate the account segments - MCU-Separator-OBJ-Separator-SUB

Else

   Concatenate the account segments according to the Flex definition

Data Structure

D0000324 - Simple Account Concatenation

Parameter NameData ItemData TypeReq/OptI/O/Both
szAccountNumberANIcharNONENONE

Special Input Expected

Special Output Returned

Returned Formatted/Concatenated Long Account Number.

^

szDatabaseBusinessUnitMCUcharNONENONE

Special Input Expected
Pass in the database Business Unit, (value that has not yet been formatted/edited by Flex 

Accounting).


Special Output Returned

Formatted database Business Unit.

^

szDatabaseObjectOBJcharNONENONE

Special Input Expected
Pass in the database Object Account, (value that has not yet been formatted/edited by Flex 

Accounting).


Special Output Returned

Formatted database Object Account.

^

szDatabaseSubsidiarySUBcharNONENONE

Special Input Expected
Pass in the database Subsidiary, (value that has not yet been formatted/edited by Flex Accounting).


Special Output Returned

Formatted database Subsidiary.

^

Related Functions

None

Related Tables

F0901 Account Master
ValidateAccountNumber

ValidateAccountNumber

Validate Account Number

Major Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

Functional Description

Purpose

This business function scrubs, validates and formats the account number in the manner specified by 

the calling program. You will need to specify a based on format, the account number format to return, 

and if an account symbol is to be included in the account number.


Setup Notes and Prerequisites

You will need to specify a based on format as follows:


"1" - Process using the short account

"2" - Process using the long account

"3" - Process using the third account

"4" - Process using the account segments in DISPLAY mode

"5" - Process using the account segments in DATABASE mode

"6" - Process using the object and subsidiary only

Note:  when processed in this mode the short account, third account and the business unit segments 

will not be returned)

"7" - Process using the account symbols. 


You will need to specify the account number format to return as follows:


"1" - Return Default Format

"2" - Return Structured Account Format

"3" - Return is same mode as the Based On Format

"4" - Return Unformatted in the same mode as the Based On Format

"5" - Return Unique Account ID (AID)

"6" - Return 3rd Account Number (ANS)


You will need to specify if an account symbol is to be included in the account number as follows:


"0" - Do not include the Account Symbol

"1" - Include the Account Symbol


If you would like a error ID returned to the calling program rather than the business function 

setting the error just pass a '1' in the cReturnErrorID parameter.  The error ID will then be passed back in 

the szErrorMessageID parameter when an error occurs.


The cAccountDuplication parameter is used to determine if account duplication functionality is to be 

performed.  If you would like to use account duplication (ex. "..") then pass a '1' in this parameter.


The following parameters are used to return F0901 values for valid accounts:


szAccountCompany

szAccountCurrency

cAccountPostingEdit

szAccountUnitOfMeasure

cModelAccountsFlag


  

Special Logic



Technical Specification

Main Program

Call XX0901 - I_3609VerifyParms

Call XX0901 - Get General Accounting System Constants BSFN

If Flex Chart of Accounts Constant is "Y"

   Call XX0901 - I_XX0901_Interpret_Flex

End If

Call XX0901 - I_3609InterpretMode

   Call XX0901 - X0006 Scrub Cost Center

   Call XX0901 - X09011 Scrub Object Account

   Call XX0901 - X09012 Scrub Subsidiary

   Call XX0901 - I_XX0901_Parse_Segments

   Call XX0901 - I_XX0901_Parse_Segments_Flex

         Call XX0901 - I_3609CheckSpeed

   Call I_3609ProcessShortAccount

   Call I_3609ProcessLongAccount

   Call I_3609ProcessLongAccountFlex

   Call I_3609ProcessThirdAccount

Call I_3609FetchRecord

Call I_3609FormatReturn

   Call I_3609FormatAccountID

   Call I_3609FormatThirdAccount

   Call I_3609FormatLongAccount

      Call I_3609FormatLongAccountFlex

Data Structure

D0900028 - Validate Account Number


^

Parameter NameData ItemData TypeReq/OptI/O/Both
szAccountNumberANIcharNONENONE

Special Input Expected
Pass in the Structured or Long Account Number, if using Based On Format "2".  Pass in the 

Unstructured or 3rd Account Number, if using Based On Format "3".  Pass in the Object Account and Subsidiary, if 

using Based on Format "6".  Pass it whatever you got if you are unsure or if using Based on Format 

"7".


Special Output Returned

^

szAccountIDAIDcharNONENONE

Special Input Expected
Pass in the Short Account Number or ID, if using Based On Format "1".


Special Output Returned

szUnstructuredAccountANScharNONENONE

Special Input Expected
Pass in the Unstructured or 3rd Account Number, if using Based On Format "3".


Special Output Returned

szDatabaseBusinessUnitMCUcharNONENONE

Special Input Expected
Pass in the database Business Unit, (value that has not yet been formatted/edited by Flex 

Accounting), if using Based On Format "5".


Special Output Returned

Formatted database Business Unit.

^

szDatabaseObjectOBJcharNONENONE

Special Input Expected
Pass in the database Object Account, (value that has not yet been formatted/edited by Flex 

Accounting), if using Based On Format "5".


Special Output Returned

Formatted database Object Account.

^

szDatabaseSubsidiarySUBcharNONENONE

Special Input Expected
Pass in the database Subsidiary, (value that has not yet been formatted/edited by Flex Accounting), 

if using Based On Format "5".


Special Output Returned

Formatted database Subsidiary.

^

szDisplayBusinessUnitMCURcharNONENONE

Special Input Expected
Pass in the display Business Unit, if using Based On Format "4".



Special Output Returned

Formatted display Business Unit.

^

szDisplayObjectOBJAcharNONENONE

Special Input Expected
Pass in the display Object Account, if using Based On Format "4".


Special Output Returned

Formatted display Object Account.

^

szDisplaySubsidiarySUBAcharNONENONE

Special Input Expected
Pass in the display Subsidiary, if using Based On Format "4".


Special Output Returned

Formatted display Subsidiary.

^

szAccountDescriptionDL01charNONENONE

Special Input Expected

Special Output Returned

Returned Description associated with the account being validated.  If the user has a language 

preference and  there is a translated account description, it will be used.

^

cBasedOnFormatEV01charNONENONE

Special Input Expected
This business function scrubs, validates and formats the account number in the manner specified by 

the calling program.  You will need to specify a based on format as follows:


"1" - Process using the short account

"2" - Process using the long account

"3" - Process using the third account

"4" - Process using the account segments in DISPLAY mode

"5" - Process using the account segments in DATABASE mode

"6" - Process using the object and subsidiary only

Note:  when processed in this mode the short account, third account and the business unit segments 

will not be returned)

"7" - Process using the account symbols. 


Special Output Returned

cFormatAccountNumberAsEV02charNONENONE

Special Input Expected
This business function scrubs, validates and formats the account number in the manner specified by 

the calling program.  You will need to specify the account number format to return as follows:


"1" - Return Default Format

"2" - Return Structured Account Format

"3" - Return is same mode as the Based On Format

"4" - Return Unformatted in the same mode as the Based On Format

"5" - Return Unique Account ID (AID)

"6" - Return 3rd Account Number (ANS)


Special Output Returned

cIncludeAccountSymbolEV03charNONENONE

Special Input Expected
This business function scrubs, validates and formats the account number in the manner specified by 

the calling program.  

You will need to specify if an account symbol is to be included in the account number as follows:


"0" - Do not include the Account Symbol

"1" - Include the Account Symbol


Special Output Returned

szErrorMessageIDEKEYcharNONENONE

Special Input Expected

Special Output Returned

^

cReturnErrorIDEV01charNONENONE

Special Input Expected

Special Output Returned

^

szAccountCompanyCOcharNONENONE

Special Input Expected

Special Output Returned

Returned Company associated with the account being validated.

^

szAccountCurrencyCRCDcharNONENONE

Special Input Expected

Special Output Returned

Returned Currency Code associated with the account being validated.

cAccountPostingEditPECcharNONENONE

Special Input Expected

Special Output Returned

Returned Posting Edit Code associated with the account being validated.

^

szAccountUnitOfMeasureUMcharNONENONE

Special Input Expected

Special Output Returned

Returned Unit Of Measure associated with the account being validated.

^

cModelAccountsFlagFMODcharNONENONE

Special Input Expected

Special Output Returned

Returned Model Account Flag associated with the account being validated.

^

cAccountDuplicationEV01charNONENONE

Special Input Expected
Pass a "1" if Account Duplication is to be used or is allowed.


Special Output Returned

^

cCostObjectEditCode01CEC1charOPTNONE

A code that specifies the cost object type that users must enter into the Cost Object Type 1 field when entering transactions for this account. 
Use the search button to locate and select a valid value. 

cCostObjectEditCode02CEC2charOPTNONE

A code that specifies the cost object type that users must enter into the Cost Object Type 2 field when entering transactions for this account. 
Use the search button to locate and select a valid value. 

cCostObjectEditCode03CEC3charOPTNONE

A code that specifies the cost object type that users must enter into the Cost Object Type 3 field when entering transactions for this account. 
Use the search button to locate and select a valid value. 

cCostObjectEditCode04CEC4charOPTNONE

A code that specifies the cost object type that users must enter into the Cost Object Type 4 field when entering transactions for this account. 
Use the search button to locate and select a valid value. 

cItemEditCodeIECcharOPTNONE

A code that controls what information you can enter into the Item Number field for this account. Valid values are:    blank No edit will be 
performed.    1       A valid value must be entered in item number for this account.    0       Item number must be blank for this account.

cGLAccountTaxableTXGLcharOPTNONE

An option that specifies whether an account is taxable. When the option is turned on, the account is taxable. The system updates the record 
in the Account Master table (F0901) with 1 when the option is turned on.

szTaxArea1TXA1charOPTNONE

A code that identifies a tax or geographic area that has common tax rates and tax authorities. The system validates the code you enter 
against the Tax Areas table (F4008). The system uses the tax rate area in conjunction with the tax explanation code and tax rules to calculate tax 
and G/L distribution amounts when you create an invoice or voucher.

Related Functions

None

Related Tables

F0901 Account Master
X0006ScrubCostCenter

X0006ScrubCostCenter

Validate Account Number

Major Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

^

Data Structure

D0000029 - Scrub Business Unit

Parameter NameData ItemData TypeReq/OptI/O/Both
szDatabaseBusinessUnitMCUcharNONENONE

Special Input Expected
Pass in the database Business Unit, (value that has not yet been formatted/edited by Flex 

Accounting).  Also pass in a "1" in the Based on Format parameter.


Special Output Returned

Formatted database Business Unit.

^

szDisplayBusinessUnitMCUZcharNONENONE

Special Input Expected
Pass in the display Business Unit, (value that has not yet been formatted/edited by Flex Accounting). 

 Also pass in a " " in the Based on Format parameter.


Special Output Returned

Formatted display Business Unit.

^

cBasedOnFormatMIVLcharNONENONE

Special Input Expected
You must determine which type of business unit format you are working with.  If Flex Chart of 

Accounts IS NOT being used then the database and display formats are identical.  If Flex Chart of Accounts IS 

being used and the business unit is made up of several segments the database format does not include 

separator characters and the display format would include the separator characters.  The based on 

format will tell which type of business unit format we are starting with.  The other format will be 

returned by the function.  Valid Based On Formats are as follows: 

 ' ' - Business Unit in Display Mode

 '1' - Business Unit in Database Mode

 '2' - Business Unit Mode Unknown


Special Output Returned

^

szDescriptionDL01charNONENONE

Special Input Expected

Special Output Returned

If the parameter to Validate the Business Unit is set to a "1", then this parameter will be populated 

with the Business Unit's Descriprion.

^

cValidateBusinessUnitEV01charNONENONE

Special Input Expected
You must specify if the Business Unit is to validated:

 '1' = validate

 '0' = do not validate


Special Output Returned

^

Related Functions

None

Related Tables

F0901 Account Master
X09011ScrubObjectAccount

X09011ScrubObjectAccount

Validate Account Number

Major Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

Functional Description

Purpose

This function will scrub the Object Account based on the format specified by the calling program. 


Setup Notes and Prerequisites

You must determine which type of Object Account format you are working with.  If Flex Chart of 

Accounts IS NOT being used then the database and display formats are identical.  If Flex Chart of Accounts 

IS being used and the Object Account is made up of several segments, the database format does not 

include separator characters and the display format would include the separator characters.  The based on 

format will tell which type of Object Account format we are starting with. The other mode will be 

returned by the function.  Valid Based On Formats are as follows: 

' ' - Object Account in display mode

'1' - Object Account in database mode

'2' - Object Account mode unknown   

  

Special Logic



Technical Specification

Call XX0901 - Get General Accounting System Constants BSFN

If Flex Chart of Accounts Constant is "Y"

   Call XX0901 - Interpret Flex BSFN

   Retrieve Object Account Structure

End If

Determine Based On Format

Format the Object Account to be returned for database and display modes

Data Structure

D0000030 - Scrub Object Account

Parameter NameData ItemData TypeReq/OptI/O/Both
szDatabaseObjectOBJcharNONENONE

Special Input Expected
Pass in the database Object Account, (value that has not yet been formatted/edited by Flex 

Accounting).  Also pass in a "1" in the Based on Format parameter.


Special Output Returned

Formatted database Object Account.

^

szDisplayObjectOBJTcharNONENONE

Special Input Expected
Pass in the display Object Account, (value that has not yet been formatted/edited by Flex 

Accounting).  Also pass in a " " in the Based on Format parameter.


Special Output Returned

Formatted display Object Account.

^

cBasedOnFormatMIVLcharNONENONE

Special Input Expected
You must determine which type of Object Account format you are working with.  If Flex Chart of 

Accounts IS NOT being used then the database and display formats are identical.  If Flex Chart of Accounts 

IS being used and the Object Account is made up of several segments, the database format does not 

include separator characters and the display format would include the separator characters.  The based on 

format will tell which type of Object Account format we are starting with. The other mode will be 

returned by the function.  Valid Based On Formats are as follows: 

ab ' ' - Object Account in display mode

ab '1' - Object Account in database mode

ab '2' - Object Account mode unknown   


Special Output Returned

^

Related Functions

None

Related Tables

F0901 Account Master
X09012ScrubSubAccount

X09012ScrubSubAccount

Validate Account Number

Minor Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

Functional Description

Purpose

This function will scrub the Subsidary based on the format specified by the calling program.  

Setup Notes and Prerequisites

You must determine which type of Subsidiary format you are working with.  If Flex Chart of Accounts 

IS NOT being used then the database and display formats are identical.  If Flex Chart of Accounts IS 

being used and the Subsidiary is made up of several segments the database format does not include 

separator characters and the display format would include the separator characters. The based on format will 

tell which type of Subsidiary format we are starting with. The other mode will be returned by the 

function.  Valid Based On Formats are as follows: 

' ' - Subsidiary in display mode

'1' - Subsidiary in database mode

'2' - Subsidiary mode unknown   

  

Special Logic



Technical Specification

Call XX0901 - Get General Accounting System Constants BSFN
If Flex Chart of Accounts Constant is "Y"

   Call XX0901 - Interpret Flex BSFN

   Retrieve Subsidiary Structure

End If

Determine Based On Format

Format the Subsidiary to be returned for database and display modes

Data Structure

D0000031 - Scrub Subsidiary Account

Parameter NameData ItemData TypeReq/OptI/O/Both
szDatabaseSubsidiarySUBcharNONENONE

Special Input Expected
Pass in the database Subsidiary, (value that has not yet been formatted/edited by Flex Accounting).  

Also pass in a "1" in the Based on Format parameter.


Special Output Returned

Formatted database Subsidiary.

^

szDisplaySubsidiarySUBAcharNONENONE

Special Input Expected
Pass in the database Subsidiary, (value that has not yet been formatted/edited by Flex Accounting).  

Also pass in a "1" in the Based on Format parameter.


Special Output Returned

Formatted database Subsidiary.

^

cBasedOnFormatMIVLcharNONENONE

Special Input Expected
You must determine which type of Subsidiary format you are working with.  If Flex Chart of Accounts 

IS NOT being used then the database and display formats are identical.  If Flex Chart of Accounts IS 

being used and the Subsidiary is made up of several segments the database format does not include 

separator characters and the display format would include the separator characters. The based on format will 

tell which type of Subsidiary format we are starting with. The other mode will be returned by the 

function.  Valid Based On Formats are as follows: 

ab ' ' - Subsidiary in display mode

ab '1' - Subsidiary in database mode

ab '2' - Subsidiary mode unknown   


Special Output Returned

^

Related Functions

None

Related Tables

F0901 Account Master
X0901TerminateCaches

X0901TerminateCaches

Validate Account Number

Minor Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

Data Structure

D09X0901 - X0901 Terminate Caches

Parameter NameData ItemData TypeReq/OptI/O/Both
cTerminateI0901EV01charOPTNONE

An option that specifies the type of processing for an event.

cTerminateI0012EV01charOPTNONE

An option that specifies the type of processing for an event.

Related Functions

None

Related Tables

F0901 Account Master
X0907CheckFlex

X0907CheckFlex

Validate Account Number

Minor Business Rule

Object Name: XX0901

Parent DLL: CALLBSFN

Location: Client/Server

Language: C

Functional Description

Purpose

This business function will determine if the Flex Chart of Accounts Structure is being used by 

reading the Flex Chart of Accounts Structure file (F0907).  If Flex Chart of Accounts IS being used a "Y" 

will be returned and if Flex Chart of Accounts  IS NOT being used then an "N" will be returned.  


Setup Notes and Prerequisites


Special Logic



Technical Specification

Loop through the account structure records in the F0907

If the first segment is not mapped to data item "MCU" or

   the length is not equal to 12

      Flex Chart of Accounts = "Y"

If the second segment is not mapped to data item "OBJ" or

   the length is less than 4

      Flex Chart of Accounts = "Y"

If the third segment is not mapped to data item "SUB" or

   the length is not equal to 8

      Flex Chart of Accounts = "Y"

Data Structure

D09X0907 - X0907 Check Flex

Parameter NameData ItemData TypeReq/OptI/O/Both
cFlexaccountcodingEV01charNONENONE

Special Input Expected

Special Output Returned

"Y" if Flex Chart of Accounts IS being used, "N" if Flex Chart of Accounts IS NOT being used.

^

Related Functions

None

Related Tables

F0901 Account Master
size:10pt">
"4" - Process using the account segments in DISPLAY mode
"5" - Process using the account segments in DATABASE mode

"6" - Process using the object and subsidiary only

Note:  when processed in this mode the short account, third account and the business unit segments 

will not be returned)

"7" - Process using the account symbols. 


You will need to specify the account number format to return as follows:


"1" - Return Default Format

"2" - Return Structured Account Format

"3" - Return is same mode as the Based On Format

"4" - Return Unformatted in the same mode as the Based On Format

"5" - Return Unique Account ID (AID)

"6" - Return 3rd Account Number (ANS)


You will need to specify if an account symbol is to be included in the account number as follows:


"0" - Do not include the Account Symbol

"1" - Include the Account Symbol


If you would like a error ID returned to the calling program rather than the business function 

setting the error just pass a '1' in the cReturnErrorID parameter.  The error ID will then be passed back in 

the szErrorMessageID parameter when an error occurs.


The cAccountDuplication parameter is used to determine if account duplication functionality is to be 

performed.  If you would like to use account duplication (ex. "..") then pass a '1' in this parameter.


The following parameters are used to return F0901 values for valid accounts:


szAccountCompany

szAccountCurrency

cAccountPostingEdit

szAccountUnitOfMeasure

cModelAccountsFlag


  

Special Logic



Technical Specification

Main Program