CSMSCalculateValidateSubledger

S/WM Calculate Validate Subledger

Minor Business Rule

Object Name: N1700420

Parent DLL: CCRIN

Location: Client/Server

Language: NER

1.Functional Description

1.1Purpose

Calculate based on processing options what the subledger and subledger type should be.


1.2Setup Notes and Prerequisites


1.3Special Logic


2.Technical Specifications

2.4Processing 


Subledger = Blank

SubledgerType = Blank

IF cProcessingOption not equal to Blank AND  Null

//

//Contracts

//

IF cCallingModule = 1 

IF cProcessingOption = 1

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnContractNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = G

END IF

IF cProcessingOption = 2

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnCustomerNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = A

END IF

IF cProcessingOption = 3

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnCustomerNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = A

END IF

IF cProcessingOption = 4

IF mnItemNumber is not equal to Zero and Blank and Null

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnCustomerNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = A

END IF

END IF

END IF (End of Contract Processing)

//

//Service Orders

//

IF cCallingModule = 2

IF cProcessingOption = 1

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnServiceOrderNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = W

END IF

IF cProcessingOption = 2

IF mnCustomerNumber is not equal to Zero and Blank and Null

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnCustomerNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = A

END IF

END IF

IF cProcessingOption = 3

IF mnSiteNumber is not equal to Zero and Blank and Null

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnSiteNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = A

END IF

END IF

IF cProcessingOption = 4

IF mnItemNumber is not equal to Zero and Blank and Null

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnItemNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = I

END IF

END IF

IF cProcessingOption = 5

IF mnContractNumber is not equal to Zero and Blank and Null

Math Numeric to String Left Zero Pad, Convert

szSubledger <- szString

mnContractNumber -> mnMathNumerica

"9" -> nSizeOfString

SubledgerType = G

END IF

END IF

END IF (End of Service Orders)

END IF

//

//Validate Subledger and Subledger Type combination

//

IF Subledger is not equal to Blank and Null

Validate Subledger (X0909)

IF SV Error Status = Error

Subledger = Blank

SubledgerType = Blank

END IF

END IF

^

Data Structure

D1700420 - S/WM Calculate Validate Subledger

The NER handles the logic for which value to use in the Subledger field.  So, for the input fields, if they are available and applicable to the 
calling program pass them into the data structure^

Parameter NameData ItemData TypeReq/OptI/O/Both
mnCallingModule_MATH01MATH01MATH_NUMERICREQINPUT

Special Input Parameters: 
1 = Contracts

2 = Service Order

3 = Calls

^

cDefaultOption_EV01EV01charREQINPUT

Special Input Parameters: 
This value determines what should be defaulted into the subledger.  In most cases, a processing 

option would be passed into this parameter.


Valid Values:

      1 = Contract Number or Service Order Number or Call Number (based on the Mode)

      2 = Customer Number

      3 = Site Number

      4 = Item Number

      5 = Contract Number

      6 = Equipment Number

      7 = Service Provider Number


^

cSuppressErrorMessage_SUPPSSUPPScharOPTINPUT

Not currently used^

szErrorMessageID_DTAIDTAIcharOPTOUTPUT

Not currently used^

mnContractNumber_DOCODOCOMATH_NUMERICOPTINPUT

Pass in Contract Number if available^

mnServiceOrderNumber_DOCODOCOMATH_NUMERICOPTINPUT

Pass in Service Order Number if available^
^

mnCustomerNumber_AN8AN8MATH_NUMERICOPTINPUT

Pass in Customer Number if available^

mnSiteNumber_AN8AN8MATH_NUMERICOPTINPUT

Pass in Site Number if available^

mnServiceProvider_AN8AN8MATH_NUMERICOPTINPUT

Pass in Service Provider if available^

mnItemNumber_ITMITMMATH_NUMERICOPTINPUT

Pass in Item Number if available^

szSubledger_SBLSBLcharOPTOUTPUT

A code that identifies a detailed, auxiliary account within a general ledger account. A subledger can be an equipment item number or an 
address book number. If you enter a subledger, you must also specify the subledger type.

cSubledgerType_SBLTSBLTcharOPTOUTPUT

A user defined code (00/ST) that is used with the Subledger field to identify the subledger type and how the system performs subledger 
editing. On the User Defined Codes form, the second line of the description controls how the system performs editing. This is either hard-coded 
or user defined. Valid values include: A Alphanumeric field, do not edit   N Numeric field, right justify and zero fill   C Alphanumeric field, right 
justify and blank fill  

mnEquipmentNumber_NUMBNUMBMATH_NUMERICOPTINPUT

An 8-digit number that uniquely identifies an asset.

mnCallNumber_DOCODOCOMATH_NUMERICOPTINPUT

Special Input Parameter:
Pass in Call Number if available.

^

Related Functions

None

Related Tables

None