Hi, Peter!

I would warn you of NOT including storage information in Git (or any other CVS).  It is the must to keep class storage definition within source control.

Consider you have a system in production where you have class A with properties P1 and P2 with data.

And you developed a new version of a product with the optimization when you don't need P1 anymore and delete it. And you added a new feature which needs to add property P3

 You deploy new class  A with P2 and P3 properties on a production system. Storage would be generated upon class definition and you will get the following:

All reads from P2 would deal with former P1 data.

All reads from P3 would read former P2 data (yes, you will get P3 initialized by former unexpected P2 data).

So you'll get some unexpected behavior and bugs with this.

Solution:

keep the storage definition within a class and in Git.

Maybe delete a property is a bad practice but sometimes we are doing that.

HTH

Hi, Stephen!

Thanks for raising it!

This button with a strange glyph is for uploading images only to be placed in a post.

I forgot, that we left the option to upload files - we plan to turn it off.

Would you please share why do you need the option of file uploading for the posts?

IF there is a good reason we can enhance the feature instead of dropping it.

How to call a classmethod?

If you are inside the class Circle call it with:

do ..Radius()

If you call this method from another class use:

do ##class(Circle).Radius()

But there are cases when you do not know either name of a class or name of a method on runtime. So $classmethod is your friend here:

do $classmethod("Circle","Radius")

HTH

Hi, Lin!

You are creating this calculated dimensions as shared members. In this case, they are stored in some ^DeepSee.* global.

One of the options to avoid calculated dimensions' storage in the global and further deployment difficulties you can use calculated members with Shared Storage option turned off.

You can alter this option if you create calculated dimension in a named and saved pivot.

In this case, the calculated measure definition will be placed directly in the MDX query of this pivot thus you don't need to deploy it, cause it will live with the pivot.

If I don't have control of this, who decides what is relevant?

Hi, Mike!

iKnow technology decides. iKnow analyses the article compares with all the rest articles in Community and makes the decision according to its algorithms and some settings and blacklists.  Actually, it's in beta state at the moment and sometimes it does irrelevant decisions. iKnow thinks that How to highlight Caché ObjectScript, work with htm, add image in the post and other questions article is relevant to your question at least by 30%. 

We would fix the algorithm in next DC version.