The stock analysis custom report is developed in order to control the stock available in the warehouses. The report will show the stock items with their related current on-hand quantity. The current on-hand inventory must be classified according to the receiving date. The report should also show the time period as mentioned in the processing options, and the quantity related to the selected period. The report will show the record and calculate the total quantity according to the commodity.
You should install a fat client in order to use JD Edwards Object Management Workbench (OMW). Technical consultants should use the correct status for the development of new objects.
You should use the following technical specification in order to develop the stock analysis report. The following tables are used: F0101, F0111, F0006, F42021, F4101, F4108, and F4102. The developer should create the business view according to the report requirement:
In the Month section:
While X != 1 { Print X X-X-1 Loop } Print X
Y-1, Y-2, Y-3, Y-4, Y-5
Compare the date in the DLEJ field with the combination of processing options 2 and 3. If DLEJ year value = processing option 3 value, then show it (F41021.PQOH) and ((F41021.PQOH) * field 9 (Unit Price)) in the Month section in the proper X value.
If DLEJ year value ! = processing option 3 value, and then show it in the Year section in the proper Y value.
It is required to do the programming on OMW based on the given specification. The system generates the following code, which can be modified. In the Initialize Section
, you will initialize the variable and in the Do Section
you will do the main coding:
===================================================================== SECTION: STOCK AGING ANALYSIS [GROUP SECTION] () ===================================================================== OBJECT: SECTION EVENT: Initialize Section ----------------------------------------------------------------------- 0001 Set Selection Append Flag( <Yes>) 0002 If PO Company_CO is not equal to <Blank> 0003 Set User Selection(BC Company (F0006) (CO), <Equal To>, PO Company_CO, <And>) 0004 Else 0005 End If 0006 If PO CostCenter_MCU is not equal to <Blank> 0007 Set User Selection(BC Business Unit (F0006) (MCU), <Equal To>, PO CostCenter_MCU, <None>) 0008 End If 0009 // 0010 If PO YearOrMonth_FLAG is not equal to "M" 0011 Stop Section Processing 0012 Else 0013 End If --------------------------------------------------------------------- EVENT: Do Section --------------------------------------------------------------------- evt_CenturyFiscalYear_CFY evt_LotEffectivityDate_DLEJ evt_LotCenturyFiscalYear_CFY evt_LotPeriodNo_PN evt_LedgType_LEDG evt_AmountUnitCost_UNCS 0001 // 0002 // §§§ Fetching Lot date, F4108 0003 F4108.Fetch Single BC Lot/Serial Number (F41021) = TK Lot/Serial Number BC Business Unit (F0006) = TK Business Unit BC Item Number - Short (F4102) = TK Item Number - Short VA evt_LotEffectivityDate_DLEJ <- TK Lot Effectivity Date 0004 // §§§- Fetching Lot date, F4108 0005 // 0006 // Unit Cost, F4105 0007 VA evt_LedgType_LEDG = "02" 0008 F4105.Fetch Single BC Item Number - Short (F4102) = TK Item Number - Short BC Business Unit (F0006) = TK Business Unit VA evt_LedgType_LEDG = TK Cost Method VA evt_AmountUnitCost_UNCS <- TK Amount - Unit Cost 0011 // Current Value 0012 RV CurrValue_MATH01 = BC Quantity on Hand - Primary units (F41021)*VA evt_AmountUnitCost_UNCS 0013 // 0014 VA evt_CenturyFiscalYear_CFY = concat(PO Century_CTRY,PO FiscalYear_FY) 0015 VA evt_LotCenturyFiscalYear_CFY = date_year(VA evt_LotEffectivityDate_DLEJ) 0016 VA evt_LotPeriodNo_PN = date_month(VA evt_LotEffectivityDate_DLEJ) 0017 // 0018 // §§§ January seperating QTY and VALUE 0019 If VA evt_LotPeriodNo_PN is equal to "1" And VA evt_LotPeriodNo_PN is less than or equal to PO PeriodNo_PN And VA evt_CenturyFiscalYear_CFY is equal to VA evt_LotCenturyFiscalYear_CFY 0020 RV Month01Qty_PQOH = BC Quantity on Hand - Primary units (F41021) 0021 RV Month01Value_MATH01 = VA evt_AmountUnitCost_UNCS*BC Quantity on Hand - Primary units (F41021) 0022 Else 0023 End If 0024 // §§§- January seperating QTY and VALUE 0025 // 0026 // §§§ Febuary seperating QTY and VALUE 0027 If VA evt_LotPeriodNo_PN is equal to "2" And VA evt_LotPeriodNo_PN is less than or equal to PO PeriodNo_PN And VA evt_CenturyFiscalYear_CFY is equal to VA evt_LotCenturyFiscalYear_CFY 0028 RV Month02Qty_PQOH = BC Quantity on Hand - Primary units (F41021) 0029 RV Month02Value_MATH01 = VA evt_AmountUnitCost_UNCS*BC Quantity on Hand - Primary units (F41021) 0030 Else 0031 End If 0032 // §§§- Febuary seperating QTY and VALUE 0033 // 0034 // §§§ March seperating QTY and VALUE 0035 If VA evt_LotPeriodNo_PN is equal to "3" And VA evt_LotPeriodNo_PN is less than or equal to PO PeriodNo_PN And VA evt_CenturyFiscalYear_CFY is equal to VA evt_LotCenturyFiscalYear_CFY 0036 RV Month03Qty_PQOH = BC Quantity on Hand - Primary units (F41021) 0037 RV Month03Value_MATH01 = VA evt_AmountUnitCost_UNCS*BC Quantity on Hand - Primary units (F41021) 0038 Else 0039 End If
The following processing options need to be defined: