Initiatives Cube with Spread Method Calculation
Posted: Thu Dec 12, 2013 3:52 pm
Currently on Win XP, TM1 10.1, and Excel 2007
I am constructing an Initiatives Cube for a forecast model that is in development. As you can see from the print screen the manual spread method works just fine. It takes the Amount Change for Period Input divided by the (End Month minus the Start Month). Here is the tricky part. I also have a Spread Method cube built as shown on the second print screen on the attached file. What I am trying to accomplish is that if 4-4-5 is selected under Total Basic Equip that Nov thru Mar it would proportionally spread over these period according to the Spread Method Cube.
Question:What would be the proper formula to go after the Spread Method Cube and sum the 'Amount' under the 4-4-5 method from the Start and End Months selected in the Initiatives cube?
Here is the current code i wrote for that Manual Spread Method.
['Active','Amount Change' {'P1','P2','P3','P4','P5','P6','P7','P8','P9','C1','C2','C3','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','3
6'}]=N:IF(DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Spread Method')@='Manual',IF(
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Start Month'),'Description'),'Fiscal Number')
<=
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),'Fiscal Number')
&
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'End Month'),'Description'),'Fiscal Number')
>=
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),'Fiscal Number')
,
['Period Input','Amount Change']
\
(ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'End Month'),'Description'),'Fiscal Number')+1
-
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Start Month'),'Description'),'Fiscal Number'))
,CONTINUE),CONTINUE);
I have started to work on the 4-4-5 formula but cant seem to get the formula correct. 4-4-5 Formula is listed below. I need to find a way to go after the Spread Method cube for the specific months listed as Start and End then Sum the Amount for this range.
['Active','Amount Change',{'P1','P2','P3','P4','P5','P6','P7','P8','P9','C1','C2','C3','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','3
6'}]=N:IF(DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Spread Method')@='4-4-5',IF(
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Start Month'),'Description'),'Fiscal Number')
<=
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),'Fiscal Number')
&
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'End Month'),'Description'),'Fiscal Number')
>=
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),'Fiscal Number')
,
(['Period Input','Amount Change']
\
(ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'End Month'),'Description'),'Fiscal Number')+1
-
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Start Month'),'Description'),'Fiscal Number')))
*
DB('Patt_Spread Method', ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),
DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, 'Amount Change', !Patt_Forecast_Summary_Accounts, 'Spread Method'), 'Amount')
,CONTINUE),CONTINUE);
I am constructing an Initiatives Cube for a forecast model that is in development. As you can see from the print screen the manual spread method works just fine. It takes the Amount Change for Period Input divided by the (End Month minus the Start Month). Here is the tricky part. I also have a Spread Method cube built as shown on the second print screen on the attached file. What I am trying to accomplish is that if 4-4-5 is selected under Total Basic Equip that Nov thru Mar it would proportionally spread over these period according to the Spread Method Cube.
Question:What would be the proper formula to go after the Spread Method Cube and sum the 'Amount' under the 4-4-5 method from the Start and End Months selected in the Initiatives cube?
Here is the current code i wrote for that Manual Spread Method.
['Active','Amount Change' {'P1','P2','P3','P4','P5','P6','P7','P8','P9','C1','C2','C3','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','3
6'}]=N:IF(DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Spread Method')@='Manual',IF(
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Start Month'),'Description'),'Fiscal Number')
<=
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),'Fiscal Number')
&
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'End Month'),'Description'),'Fiscal Number')
>=
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),'Fiscal Number')
,
['Period Input','Amount Change']
\
(ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'End Month'),'Description'),'Fiscal Number')+1
-
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Start Month'),'Description'),'Fiscal Number'))
,CONTINUE),CONTINUE);
I have started to work on the 4-4-5 formula but cant seem to get the formula correct. 4-4-5 Formula is listed below. I need to find a way to go after the Spread Method cube for the specific months listed as Start and End then Sum the Amount for this range.
['Active','Amount Change',{'P1','P2','P3','P4','P5','P6','P7','P8','P9','C1','C2','C3','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','3
6'}]=N:IF(DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Spread Method')@='4-4-5',IF(
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Start Month'),'Description'),'Fiscal Number')
<=
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),'Fiscal Number')
&
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'End Month'),'Description'),'Fiscal Number')
>=
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),'Fiscal Number')
,
(['Period Input','Amount Change']
\
(ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'End Month'),'Description'),'Fiscal Number')+1
-
ATTRN('Patt_Period',ATTRS('Patt_Rolling_Periods',DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, !Patt_Initiatives_Adjustments, !Patt_Forecast_Summary_Accounts, 'Start Month'),'Description'),'Fiscal Number')))
*
DB('Patt_Spread Method', ATTRS('Patt_Rolling_Periods',!Patt_Rolling_Periods,'Description'),
DB('Patt_Initiatives', !Patt_Companies, !Patt_Version, !Patt_Initiatives, 'Amount Change', !Patt_Forecast_Summary_Accounts, 'Spread Method'), 'Amount')
,CONTINUE),CONTINUE);