Hi, Jaqueline!

Have you tried Build Restriction field of the cube?

Build Restriction is in the properties of the cube.

Put there SQL Expression which goes after WHERE clause. It will filter the facts which will be included to your cube. E.g. if you base your cube on Samples.Person you can set the Cube Build Restriction as:

NAME='John' 

to limit the facts of the cubes to only records with 'John' in Name property.

HTH

Hi, Shameer!

As @Nicole Aaron mentioned, there is no officially proposed folder structure for your  InterSystems project, but I can share one typical approach.

The upper folder is basically named "src" assuming source code inside.

Files inside "src" could be splitted by source type. E.g.:

"cls" -  for ObjectScript classes,

"inc" -  for include files,

"mac" - for mac routines,

"dfi" - for DeepSee dashboards and pivots.

Every class name consists of package(s) and class itself. So class package could be projected to a folder. E.g. source code for the class Sample.Person will be stored in the file with following path:

/src/cls/Sample/Person.cls

There are numerous projects on Github which use similar approach. You can find examples of such projects via these cacheobjectscript-udl tag, e.g. this project.

HTH

Thank you, Lucas. But the thanks should go to @Oleg Dmitrovich

As for CSP - it is a file, and can be edited via VS-Code just as a file in a versioned folder.

If you are looking for exporting tools, I can recommend isc-dev module, which can export code as single files in a dedicated folder structure (including DeepSee stuff), can export a single kits - large xml kits, say releases, and also patches which a commit, or a set of commits in git.