Technical Articles
FAQ: Version Management with SAP Analytics Cloud (Part I – Basics)
In SAP Analytics Cloud (SAC) users can choose to maintain versions of their data if desired. To get the most out of the versioning capability, one should be familiar with the concept of public and private versions in SAC. Hence here, in a 2-part series blog, is a list of FAQs to help clarify some of the uncertainties.
In this part 1 the FAQs will answer the following common basic questions:
- How do I create public and private versions?
- How do I start editing a public version? And what is meant with the public edit mode?
- If I make a private copy from the public version, how can I see which data is locked?
- Do I need to save my data changes? I’m afraid that I will lose them when I log out.
- Is every change immediately visible for everyone in the public version?
- Wouldn’t everyone be overwriting each other’s public edit mode changes?
- Sometimes a cell appears input-enabled in a public version for me, but when I try to edit it, it changes into non-editable state. Why?
- Do I see my colleagues changes immediately in the public version?
- How do I know which data has been changed in my version?
- How do I know the size of my versions? Or any other details?
- Can everyone publish everything into a public version?
Q: How do I create public and private versions?
A: A public version comes as a default upon creation of a SAC model. Upon import from a data source user can also specify the nature of the version to be public.
Additional versions, regardless public or private, cannot be created in the model but via the version management panel instead.
To create a private version, simply copy an existing version. It is possible to constraint the scope of the copy by limiting the data to a desired filtered context, the defined planning area, or only visible data in the table. You could also copy the entire version or no data at all, but usually a filtered private version is a good starting point.
Creating a new public version follows the same procedure, meaning you basically create first a private copy of an existing public version. The only difference is that at the end you click on “publish as” to create a new public version with the data.
Publish a private version to create a new public version
Q: How do I start editing a public version? And what is meant with the public edit mode?
A: There is no special preparation needed for simple data entry in a public version – you just go ahead and click on the desired cell to do your entry. You will automatically be led into the public edit mode. (Alternatively, you can also trigger the edit mode in the version management panel for the desired version). When done, there are several ways to exit the edit mode and publish your results, depending on how your IT has configured your interface for you – here the instructions from the IT should serve as guidance (see also question below, “Do I need to save my changes?”).
Option in version management panel to start the public edit mode
Technically, the public edit mode is a snapshot of the data and lock state from the public version to enable planning. This ensures that multiple users working simultaneously on the same public version do not face the problem of cross interference in their data entry or the subsequent calculations/data copy. This is also the reason why triggering a data action will also activate the edit mode – for undisturbed operation within the individual snapshot before publishing.
If the version name is present in your table headers, you can see a “*” next to the name of your version, signifying that you are working within your own snapshot, i.e. in the edit mode.
An asterisk next to the name of the version signifies that you are in the edit mode.
(Only visible if the version dimension is in your table layout, )
back to top
Q: If I make a private copy from the public version, how can I see which data is locked?
The lock state information will also appear in your private version.
back to top
Q: Do I need to save my data changes? I’m afraid that I will lose them when I log out.
A: No.
If you are working with the public version, your changes are stored in an edit mode until you choose to publish them. Publishing will merge your changes with the public version and remove the edit mode you have been working with. This is similar to working with private versions, except that you can share private versions with colleagues, but not your edit mode changes.
Note that only valid changes (according to data access control, data locks and validation rules) will be published. Invalid changes will be discarded along with the private version/public edit mode. More details on how this works together with data action can be found in part II of the FAQ series.
A message will warn you if you have made invalid changes unsuitable for publishing.
back to top
Q: Is every change immediately visible for everyone in the public version?
A: No.
As mentioned above, your changes are stored in an edit mode until you choose to publish them.
It is an isolated snapshot of the public version created for you to enable your planning.
back to top
Q: Wouldn’t everyone be overwriting each other’s public edit mode changes?
A: No.
Your public edit mode changes are your own, visible and editable only by you.
back to top
Q: Sometimes a cell appears input-enabled in a public version for me, but when I try to edit it, it changes into non-editable state. Why?
A: One of the reasons could be that a recommended planning area for the model has been setup, which only kicks in when you start planning, with the aim to optimize the size of your public edit mode snapshot. The boundary of the planning area will determine what is plannable, what not, and display the corresponding data as such. Hence, sometimes you might notice a difference in the editability of certain data before and after you have started your edit.
back to top
Q: Do I see my colleagues changes immediately in the public version?
A: No.
Even after your colleagues have published their results, the latest data changes in the public version are only visible if you (a) refresh your browser, or (b) trigger a data refresh from the toolbar.
Some planning interactions, such as publishing data or submit a calendar task will also automate a refresh and display the latest numbers. Your IT could also configure certain data actions or use an analytic application to trigger implicit refresh behind the buttons.
As a rule of thumb – simply trigger the data refresh in toolbar to view the latest public numbers, if uncertain about the actuality. Doing so will not overwrite the unpublished changes you have done for the same version, as your changes are stored in the edit mode.
back to top
Q: How do I know which data has been changed in my version?
A: Data changes are visible in three areas:
- Cell Highlight:
- Single data entry mode: After each data entry, the affected cells are highlighted, but only changes between the latest entry and the one before.
- Fluid data entry mode: During quick succession of data entries, affected cells are not immediately visible. Only when an entry pause is detected, all entries are batch processed and highlighted.
- Mass data entry mode: Changes are only highlighted when “process data” is triggered
- Version History Panel:
- Data entries within a private version are visible within a version history and could be rolled back to a desired point. All entries between the creation and publishing of the version are listed. Once published, this list will be discarded along with the private version. This holds true also for the public version edit mode.
- Data Audit/changes:
- Once enabled under the model preferences, all data changes within a model will be logged in the data audit, with the corresponding delta value.
back to top
Q: How do I know the size of my versions? Or any other details?
A: Go to the version management panel and select “Details” from the dropdown menu of your selected version.
Version management panel with option to start edit mode
The version detail panel will open and display overview information such as version size, access rights and creation date.
Version details panel
back to top
Q: Can everyone publish everything into a public version?
A: No.
When you trigger a version publish, several security checks will kick in and only data that has passed all criteria will be merged into the public version. These checks include data locks and validation rules, among others.
Note that even though while planning you could choose to ignore data locks, this is only to enable simulation and private planning. Once publish is triggered, invalid data made to locked slices will be discarded. More details on publishing will be given in part II of this blog, which will also answer questions relevant for administrators and power user scenarios, including how versions work regarding security checks, data action processing, and size monitoring.
back to top
Further reading:
Hi Chen Nee Faulhaber
Thanks for the FAQ. We are using SAC for planning, and the topic of edit mode has caused some confusion amongst users. One issue we are finding is the following scenario:
This happens quite frequently when users do not realise they have unpublished data, e.g. if a data action fails, or if they've accidentally changed a number. My questions are:
Thanks,
Hugh
Hi Hugh Gledhill
Thanks for reaching out.
Regarding question (1) - Overwriting:
An important factor here is whether both user A and B are editing and publishing cells of the same context.
Another crucial factor is also this: only updated data which have passed the security checks will be published.
Keeping these factors in mind, it means that in a straightforward scenario where a single data entry does not affect many other records:
a) If A and B are editing the same cells, and B has published before A has enter public edit mode, then A's subsequent publish will overwrite B's data.
b) If A and B are not editing the same cells, and and B has published before A has enter public edit mode, then A's subsequent publish will not overwrite B's data. (Because A has not made update to B's cells.) In this case A - after his publishing - will see B's latests results together with his own.
Note in more complicated scenarios, a single data entry may result in updates for many other records. In such cases it is possible that A and B have actually partially overlapping data context even though they might not be editing the same cell. Here overwriting could occur where the overlap exists. If undesired, security measures such as data access control and/or data locking should be implemented.
Regarding question (2) - Forgetting to Publish:
There are a couple of solutions:
a) Calendar:
Using the SAC calendar to send workfiles out to your users will provide them with a task bar with "submit" button. This button comes with the publishing functionality. See example in this video (from 39:41 onwards).
b) Data Action with publish as follow-up action
If using data action, set it up to publish at the end.
c) Use Analytics Application
Generally, an Analytics Application is well suited for cases where the users need to be guided through a certain workflow. Here it is not only possible to set up an eye-catching "publish" button, but one could even go further and and connect it with other business logics if necessary, e.g. execution of certain data actions in the right order before publishing.
I hope this helps,
Best,
Chen Nee
Hi Chen Nee Faulhaber ,
Thanks for the response. Regarding the overwrite topic, my question was slightly different - it's where both users are in edit mode at the same time, and then whether the second publish overwrites the first publish. For example, assuming both users have the same security access, let's say the data in the public version starts off as follows:
User A makes an edit to Account 1 / Jan in the public version, which triggers edit mode containing a snapshot of the data:
Before User A publishes their changes, User B makes an edit to Account 2 / Feb in the public version, which triggers another edit mode containing another snapshot of the data. This doesn't include the changes made by User A, because they haven't been published yet.
User B then publishes their edit mode snapshot into the public version:
Now if we compare the Public version vs. User A's edit mode snapshot, both Account 1 / Jan and Account 2 / Feb are different, even though User A only made changes to Account 1. What happens when User A then publishes their data?
Option 1: Account 1 / Jan and Account 2 / Feb are overwritten with the value from User A's edit mode snapshot, i.e. the whole snapshot is written back to the public version.
Option 2: Account 1 / Jan is overwritten with the value from User A's edit mode snapshot, but Account 2 / Feb is not, because SAC knows that User A did not make any changes to Account 2 / Feb.
Can you advise on whether we should see Option 1 or Option 2?
Thanks,
Hugh
Hi Hugh Gledhill,
In your scenario User A will be seeing option 2.
As mentioned, only updated data will be published, if security check is passed. So when user A is done and publishes to exit edit mode, only "Account 1/Jan"(150) will be published. The publishing process will not include the data from the other five cells which he did not update, regardless whether they have been updated by other users in the meantime.
After publishing, the table will refresh to the latest state of all published data, so A will also see B's published data for "Account 2/Feb" (250).
I hope this helps,
Cheers,
Chen Nee
Hello Chen Nee Faulhaber we're facing this exact case at client side and actually what it's really happening is Option 1: User B overwrites the whole data region, NOT ONLY the cells he actually edited.
Moreover it seems that the "Edit mode" version inherits/embeds the DAC rules defined at the time it was generated, even if meanwhile (before publishing) these rules may have been updated.
In our case, User A has DAC write access on Dim 1 granted for "X" value, user B can write at "X" and "Y" level.
Both start editing a public version: User A sets some values at "X" level and user B at "Y" level (he doesn't change any value at "Y" level). Before they publish, we change DAC for user B, removing his write access on "X".
User A publishes and then user B publishes. Final result: both Y and X are updated by user B, setting all X to 0 (as he didn't change any value from the original state).
Can you please confirm this is the expected behaviour? How does SAC actually identify the "updated data"? It seems that this check is done comparing published and unpublished values, not actually "identifying" what has ben actually modified by a user.
Apart, the issue related with DAC changes not being "recognized" makes think that the DAC definitions get somehow embedded in the edit mode version, which is quite weird and possibly a bug.
Thanks
Hi Mattia Giovannini
Thanks for reaching out. It would help me greatly to understand your situation if you can provide some tables like in Hugh Gledhill's example above, illustrating the data at every step. Currently I am finding it hard to derive it from your description, especially the data state before the data entries. I would be glad to take a look if you can provide them here.
Thanks,
Chen Nee