1.Functional Description
1.1Purpose
This NER will be used to verify that the period being processed is not the last period that is eligible to be billed for a given contract.
1.2Setup Notes and Prerequisites
This NER should be called only after it has been determined that the period initially being processed is eligible to be billed.
1.3Special Logic
2.Technical Specifications
2.4Processing
//
// Retrieve Fiscal year, Century, Period Number for Dates
//
F0008 Get Fiscal Year Period Number
F0008 Get Fiscal Year Period Number
F0010 Retrieve Company Constant Record
String, Convert String To Numeric
F0008 Get Period End Dates
//
// Retrieve F15019 records based on DS parameter
//
If BF cRetrieveFrequencyFlagInfo is equal to "1"
F15019 Retrieve Billing Frequency Data
End If
If BF cFiscalDatePattern is equal to
Calculate Calendar Year
Else
//
// Initialize Variables
//
VA evt_mnPeriodNumber_PN = VA evt_mnPeriodOfCurrentDate_PN
VA evt_mnCentury_CTRY = VA evt_mnCenturyOfCurrentDte_CTRY
VA evt_mnFiscalYear_FY = VA evt_mnFYOfCurrentDate_FY
BF cLastPeriod = "Y"
VA evt_cFirstPass_EV01 = "Y"
//
// Checking that current period is not the same period as Bill End Date
//
If VA evt_mnPeriodOfCurrentDate_PN is equal to VA evt_mnPeriodOfEndDate_PN
And VA evt_mnFYOfCurrentDate_FY is equal to VA evt_mnFYOfEndDate_FY
And VA evt_mnCenturyOfCurrentDte_CTRY is equal to VA evt_mnCenturyOfEndDate_CTRY
BF cLastPeriod = "Y"
Else
VA evt_mnPeriodNumber_PN = [VA evt_mnPeriodNumber_PN]+1
VA evt_mnPeriodsChecked_MATH01 = "1"
//
// If Current FY and End FY's are different
//
If VA evt_mnFYOfCurrentDate_FY is not equal to VA evt_mnFYOfEndDate_FY
VA evt_cStopFlag_EV01 = "N"
While VA evt_mnPeriodNumber_PN is less than VA evt_mnCompanyNoOfPeriods_PN
And VA evt_cStopFlag_EV01 is equal to "N"
//
// Get Periods End Date
//
Calculate Begin Date of Period
Verify Billing Frequency Eligibility
If VA evt_cBillableByFrequency_EV01 is equal to "1"
BF cLastPeriod = "N"
VA evt_cStopFlag_EV01 = "Y"
Else
VA evt_mnPeriodNumber_PN = [VA evt_mnPeriodNumber_PN]+1
VA evt_mnPeriodsChecked_MATH01 = [VA evt_mnPeriodsChecked_MATH01]+1
End If
End While
If VA evt_cStopFlag_EV01 is equal to "N"
//
// Loop through periods of next fiscal year
//
VA evt_cStopFlag_EV01 = "N"
While VA evt_mnPeriodsChecked_MATH01 is less than "15.00"
And VA evt_cStopFlag_EV01 is equal to "N"
If VA evt_mnFiscalYear_FY is equal to VA evt_mnFYOfEndDate_FY
And VA evt_mnPeriodNumber_PN is greater than VA evt_mnPeriodOfEndDate_PN
VA evt_cStopFlag_EV01 = "Y"
BF cLastPeriod = "Y"
Else
//
// Increment Fiscal Year
//
If VA evt_mnFiscalYear_FY is equal to "99"
VA evt_mnFiscalYear_FY = "00"
VA evt_mnCentury_CTRY = [VA evt_mnCentury_CTRY]+1
VA evt_mnPeriodNumber_PN = "1"
Else
VA evt_mnFiscalYear_FY = [VA evt_mnFiscalYear_FY]+1
VA evt_mnPeriodNumber_PN = "1"
End If
If VA evt_cFirstPass_EV01 is equal to "Y"
//
// Get new Period End Dates
//
F0008 Get Period End Dates
//
// Get new Frequency Dates
//
If BF cFiscalDatePattern is equal to
Calculate Calendar Year
Else
F0008 Retrieve Fiscal Date Pattern
End If
VA evt_cFirstPass_EV01 = "N"
End If
Calculate Begin Date of Period
Verify Billing Frequency Eligibility
If VA evt_cBillableByFrequency_EV01 is equal to "1"
BF cLastPeriod = "N"
VA evt_cStopFlag_EV01 = "Y"
Else
VA evt_mnPeriodNumber_PN = [VA evt_mnPeriodNumber_PN]+1
VA evt_mnPeriodsChecked_MATH01 = [VA evt_mnPeriodsChecked_MATH01]+1
End If
End If
End While
End If
Else
//
// Fiscal Year's are the same in Bill Thru Date and Bill End Date
//
VA evt_cStopFlag_EV01 = "N"
While VA evt_mnPeriodNumber_PN is less than or equal toVA evt_mnPeriodOfEndDate_PN
And VA evt_cStopFlag_EV01 is equal to "N"
Calculate Begin Date of Period
Verify Billing Frequency Eligibility
If VA evt_cBillableByFrequency_EV01 is equal to "1"
BF cLastPeriod = "N"
VA evt_cStopFlag_EV01 = "Y"
Else
VA evt_mnPeriodNumber_PN = [VA evt_mnPeriodNumber_PN]+1
VA evt_mnPeriodsChecked_MATH01 = [VA evt_mnPeriodsChecked_MATH01]+1
End If
End While
End If
End If
D1700890 - Verify Future Billable Period
Parameter Name | Data Item | Data Type | Req/Opt | I/O/Both |
---|---|---|---|---|
szCompany | CO | char | OPT | NONE |
A code that identifies a specific organization, fund, or other reporting entity. The company code must already exist in the Company
| ||||
jdCurrentDate | DTEJ | JDEDATE | OPT | NONE |
The Julian Date | ||||
jdEndDate | DTEJ | JDEDATE | OPT | NONE |
The Julian Date | ||||
cRetrieveFrequencyFlagInfo | EV01 | char | OPT | NONE |
An option that specifies the type of processing for an event. | ||||
cBillingFrequencyCode | BLFC | char | OPT | NONE |
A code that indicates the billing cycle. The code that you enter must exist in the Billing Frequency Master table (F15019). | ||||
cFiscalDatePattern | DTPN | char | OPT | NONE |
A code that identifies date patterns. You can use one of 15 codes. You must set up special codes (letters A through N) for 4-4-5, 13-period
| ||||
cSuppressErrorMessage | SUPPS | char | OPT | NONE |
A flag indicating whether or not runtime error messaging will occur when an error message is issued from a business function.
0 = allow
| ||||
szErrorMessageID | DTAI | char | OPT | NONE |
A code that identifies and defines a unit of information. It is an alphanumeric code up to 8 characters long that does not allow blanks or
| ||||
cLastPeriod | EV01 | char | OPT | NONE |
N = No, this is not the last billable period.
| ||||
cBillingPeriod01 | BF01 | char | OPT | NONE |
Corresponds to Calendar billing period 01, typically January, or to the first fiscal period of the billing year. | ||||
cBillingPeriod02 | BF02 | char | OPT | NONE |
A value that corresponds to calendar billing period 02, typically February, or to the second fiscal period of the billing year. This value might
| ||||
cBillingPeriod03 | BF03 | char | OPT | NONE |
Corresponds to Calendar billing period 03, typically March, or to the third period of the billing year. | ||||
cBillingPeriod04 | BF04 | char | OPT | NONE |
Corresponds to Calendar billing period 04, typically April, or to the fourth fiscal period of the billing year. | ||||
cBillingPeriod05 | BF05 | char | OPT | NONE |
Corresponds to Calendar billing period 05, typically May, or the fifth fiscal period of the billing year. | ||||
cBillingPeriod06 | BF06 | char | OPT | NONE |
Corresponds to Calendar billing period 06, typically June, or to the sixth fiscal period of the billing year. | ||||
cBillingPeriod07 | BF07 | char | OPT | NONE |
Corresponds to Calendar billing period 07, typically July, or to the seventh fiscal period of the billing year. | ||||
cBillingPeriod08 | BF08 | char | OPT | NONE |
Corresponds to Calendar billing period 08, typically August, or to the eighth fiscal period of the billing year. | ||||
cBillingPeriod09 | BF09 | char | OPT | NONE |
Corresponds to Calendar billing period 09, typically September, or to the ninth fiscal period of the billing year. | ||||
cBillingPeriod10 | BF10 | char | OPT | NONE |
Corresponds to Calendar billing period 10, typically October, or to the tenth fiscal period of the billing year. | ||||
cBillingPeriod11 | BF11 | char | OPT | NONE |
Corresponds to Calendar billing period 11, typically November, or to the eleventh fiscal period of the billing year. | ||||
cBillingPeriod12 | BF12 | char | OPT | NONE |
Corresponds to Calendar billing period 12, typically December, or to the twelfth fiscal period of the billing year. | ||||
cBillingPeriod13 | BF13 | char | OPT | NONE |
Corresponds to special billing period 13. If thirteen periods are used it infers that a date pattern is used to control Property Management
| ||||
cBillingPeriod14 | BF14 | char | OPT | NONE |
Refers to period 14 of the billing cycle. Primarily used in Property Management to extend the periodic billing cycle for weekly billings. |
None |
None |