Assuming that your variables with data coming from the source cube, are called vYear and vMinth for year and month, respectively.
Also assuming that the names of the elements can be obtained by concatenation and inserting a '-' in the middle.
Stick to the correct order of the dimensions in the destination cube.

Other than that, this is a standaard data integration process with a zero out view, view source creation, and so on.

I understood what the pseudocode is implying but the problem is Month dimension i.e. vMonth variable coming from source cube contains data in form of Jan, Feb, Mar and so on and not in form of 01, 02 , 03 ...

What to do in this case ?

(P.S. I have already created a new empty cube i.e Destination cube containing the Snapshot dimension:2018-01, 2018-02 and so on.)

2. Also , i have a fundamental question to ask - in a standard data integration process, so first we have to zero put the target view , then we have to create a temporary view based on the Source cube and then do all the operations on this data from the Source Cube in the DATA tab.

Is this understanding correct? Please let me know if i am missing an important point/understanding.

I understood what the pseudocode is implying but the problem is Month dimension i.e. vMonth variable coming from source cube contains data in form of Jan, Feb, Mar and so on and not in form of 01, 02 , 03 ...

What to do in this case ?

You could create an alias or attribute in your month dimension eg. "month_no"

2. Also , i have a fundamental question to ask - in a standard data integration process, so first we have to zero put the target view , then we have to create a temporary view based on the Source cube and then do all the operations on this data from the Source Cube in the DATA tab

The zeroout works the same way. You could start the process with two parameter (year and month). The element for the snapshot dimension is createt the same way: vYM = vYear | '-' | ATTRSL('Month', 'Jan', 'month_no');

I understood the above but here, i have a Snapshot dimension which is already created in the application.

In the Snapshot dimension, i have manuyally inserted all the elements starting from 2018-01, 2018-02 .... till 2021-12.

This Snapshot dimension has been used to create a new Destination cubeExpRepForecast along with other dimensions form the Source cubeExpRep. The new cube is empty now.

What i am understanding is we have to concatenate the Source view variables vYear and Month dimension elements and have to save it as a new variable vYM which will be used to write into the destination cube.
Is there a way we can use the Snapshot dimension elements itself rather than concatenating or am i thinking it wrong way?

Also, in Wim's reply, he has mentioned 'msr' in the CelLIncrement statement - does it denote anything special or it is jsut the last dimension of the Destinaton cube ?

Msr is just the indication of the measures dimension, indeed the last dimension in any cube.

You need to concatenate information (year and month) to indicate TM1 on which element in the YearMonth dimension to write the data.
You need to make sure that it maps correctly. For example, use an attribute as was suggested above.
Without a good mapping you will never be able to transfer the data from A to B.
If you were to do it manually and copy/paste values yourself, you would also look for the correct YearMonth based on Year and Month, no ?

Yes you need 1 views, a zero out view and source view. We normally do this in 1 process. (Prolog tab)

What i am understanding is we have to concatenate the Source view variables vYear and Month dimension elements and have to save it as a new variable vYM which will be used to write into the destination cube.
Is there a way we can use the Snapshot dimension elements itself rather than concatenating or am i thinking it wrong way?

You can't use your Snapshot dimension in the source view, because your source cube does not have this dimension. You have to use the month and year dimension and then concatenate the both dimensions in a variable to use this in the CellPutN formula.

In Data tab, if i use ATTRSL, it can only be used for one element of Month dimension at any given point of time. I was also trying to use DimensionATTRS but do not know if it will be right here.

One thing to note is the Snapshot dimension which i have created is containing elements starting from 2018-01, 2018-02 ...till 2023-12 but the Source cube contains Year starting from 2014. This new TI process is being executed for a specific passed Year parameter.

Result:
Upon executing this TI process, although it is getting some data for 2018-06 (element of Snapshot dimension) in the target cube, the values are completely wrong.
It is even putting values in to the Target cube for other years as well but completely different values than the Source cube.

- use the AsciiOutput function with the correct variable names in the Data tab to understand what values you get in the Data tab. Which months, versions, and so on. Also, use AsciiOutput to understand WHERE you are going to write to. In fact, do I see this correctly that you always want to write to June ? Jun is hardcoded in the data tab. Seems not in correspondence with your source view.

1. Yes, I am trying to write a ZeroOut code and most of the Prolog has been taken from exsiting TI process. Infact almost all the exsting TI processes are using Bedrock processes and i am trying to use the same since i do not have a deep understanding now being new.

Yes, actually i could not find a way in which the below command ATTRSL can be used to extract all values for a particular year , say from 2018-01 till 2018-12. It is because at any point of time, it can be used only for one Month, right?

I had hardcoded Jun becasue i was trying to see is the Ti process working for a particular month , here june, upon execution. But this is not working since values transferred for Jun for year 2018(passed parameter) are completely different compared with the Source cube values. ( I do not know where this is going wrong, it should have worked right ?)

How do i implement this for all months of a year? So i have to individually write ATTRSL statements for each month or is this approach incorrect?

I am sorry if these questions sound basic but i am trying to work on it.

... why not replacing 'Jun' with vMonth ? Now you are loading data for several months onto the same June month (if your code works, which I doubt).
Please step away from the process and draw the relationships between the cubes on a sheet of paper. Write down which manipulations need to be done, what is the source, what is the target, and so on.