@Sergei.Shutov 

Hi there!  I started following this tutoiral and got stuck pretty fast.  Some questions you might be able to help with:

- Should I be able to do this in Cache 2018?  We are not yet on IRIS.

- If so, was it correct to clone the app into my CSP application root (e.g. for me it was C:\InterSystems\Cache\CSP\mxdtest\new-project)?  I did this becuase for example I have C:\InterSystems\Cache\CSP\mxdtest\testpage.html and it renders as expected when I visit http://localhost:57772/CSP/mxdtest/test/testpage.html (I know you can't use these links, but I'm just trying to show you the best I can what I'm doing).

- General web application question for Cache/IRIS: once I create the web application for example at \csp\mxdtest, any subfolder there is treated as part of the app, yes?  So i could create C:\InterSystems\Cache\CSP\mxdtest\images and the images folder are part of the web applcation  \csp\mxdtest?

Questions maybe you can advise on but might be something for my system admin to answer:

- When I run npm run -- ng build --watch I get this:

$ npm run -- ng build --watch

> angular-ngrx-material-starter@8.3.0 ng C:\InterSystems\Cache\CSP\mxdtest\new-project
> ng "build" "--watch"

Browserslist: caniuse-lite is outdated. Please run next command `npm update`

Date: 2020-09-04T16:33:26.206Z
Hash: aa7f367b55f24e0e97d8
Time: 15768ms
chunk {main} main.js, main.js.map (main) 675 bytes [initial] [rendered]
chunk {polyfills} polyfills.js, polyfills.js.map (polyfills) 159 kB [initial] [rendered]
chunk {runtime} runtime.js, runtime.js.map (runtime) 6.08 kB [entry] [rendered]
chunk {styles} styles.js, styles.js.map (styles) 1.27 MB [initial] [rendered]

ERROR in projects/angular-ngrx-material-starter/src/app/app/app.component.ts(35,10): error TS2591: Cannot find name 'require'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig.
projects/angular-ngrx-material-starter/src/app/features/about/about/about.component.ts(13,19): error TS2591: Cannot find name 'require'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig.
projects/angular-ngrx-material-starter/src/app/features/examples/theming/parent/parent.component.ts(12,22): error TS2591: Cannot find name 'require'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig.
projects/angular-ngrx-material-starter/src/environments/environment.prod.ts(1,21): error TS2591: Cannot find name 'require'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig.
projects/angular-ngrx-material-starter/src/environments/environment.test.ts(1,21): error TS2591: Cannot find name 'require'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig.
projects/angular-ngrx-material-starter/src/environments/environment.ts(6,21): error TS2591: Cannot find name 'require'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig.

Then when I run the docker command it says docker isn't running, though I seem to have it installed.

Your thoughts are appreciated!

Mike

I downloaded and installed in USER, but unfortunately I am having a lot of trouble following your documentation and your examples.  When clicking around in the interface, I got lots of errors and ultimately had to force quit the program.  I wonder if my config file isn't right, but that is hard for me to follow and understand too.

Hopefully you can clean up your documentation and I can try again!

@Dmitry Maslennikov 

I'm wondering if you can talk me through your Day 3 code?  Specifically the draw function.

I'm terribly confused on where crossType and crossSteps are being set.

Also the InterSystems documentation clearly shows how to use $LB on the right side of an equals operator, but I haven't seen it on the left side or understand how that works:

Set grid(y, x) = $Listbuild(type, steps)

I guess simply it's setting that node in the array to a list of two elements, type and step?

Maybe by Christmas I'll get to day 5! Haha!

Mike

@Carmen Logue 
Thanks, Carmen!  I'm not sure I can add too much to your Alpha development I personally haven't been using the OBDC to connect into Cache.  What I do know is that some other groups have used ODBC to connect into Cache with SQL projections.  

My team want's to avoid projections specifically (at this point at least) because we tend to only use them to get data from Cache to our Data Warehouse (Oracle).  Other than that, we still traverse our database via globals and good old MUMPS programming.  The project I'm working on is taking those many many routines that we have that traverse globals for reporting, and transforming the data to JSON streams.  An %CSP.REST API will call those routines and provide the data to a Tableau web data connector so we can get instant, live data without projecting our whole database.  

I'm just getting start with Tablaue and Cache so I may have some more input in the future.

Best,

Mike

Soooo, what is UDL form?  A Google search shows Universal Design for Learning, but I can't seem to find a spec for writing code.

Also, I'm still using Studio.  I've saved a project called AOC.prj and created a class AOC.Day1 in USER, but I can't find the source folder for USER to start a git repo and push it up.  Nor can I save the project to anywhere but the namespace.  Anyone else using Studio?

Trying to remain positive here as I haven't even coded the first day yet because of my set up challenges :(

Thank you @Eduard Lebedyuk 

Turns out my problem was 1) bad code and 2) I'm getting a <MAXSTRING> error when building out my JSON object.

Obviously long strings aren't enabled in our instance(s) of Cache . . . and I would probably need to make a really really solid business case to the people who can own and enable that setting.

Can/will moving to an async style of API help this?

{
   "errors": [   {
      "code": 5002,
      "domain": "%ObjectErrors",
      "error": "ERROR #5002: Cache error: <MAXSTRING>zBN0010+91^CLAIMS.mxdavidovich.ApiTestv1.1",
      "id": "CacheError",
      "params": ["<MAXSTRING>zBN0010+91^CLAIMS.mxdavidovich.ApiTestv1.1"]
   }],
   "summary": "ERROR #5002: Cache error: <MAXSTRING>zBN0010+91^CLAIMS.mxdavidovich.ApiTestv1.1"
}