Now, I am really confused. I only want to "drop" the SQL table created by the class, not the actual global (data). For example, in my testing, I created 3 tables for the same data (table, table2, table3), all pull data from the global (^PTG). I want to drop table 2 and table3. I did one by DDL and one by deleting the class. However, I seem to have lost data (global), but the timing was not when I did this, so I'm not sure when the data loss occurred.

Right after I posted this, I started working on the theory of what you are describing and got one to work...sort of. I can see the index now, but I don't really understand how the storage for these is supposed to work (I barely understand SQL storage at all). 

Also, it seems like the inverse is not true. I have some that have the storage map created, but no matching Objectscript property and the index builds just fine...well, except the index does not match the storage map description.

Example:

I guess it would help to completely read your response. Also, I was very wrong, almost all of these generate this error:

Adsc.MedicsPremier.Demographics ERROR #5758: Method not implemented: Adsc.MedicsPremier.Demographics::%BuildIndices/%PurgeIndices

But you need to generate their content separately by ClassMethod 

 in each class.

What does that mean? I'm a PHP / C# developer and some of the Objectscript / Cache processes still eludes me.

I hate to be a bother, and I agree, sounds like 2 classes would be more appropriate, but I've yet to create a View in this system (I'm fluent in MySQL, FYI), and frankly, I don't like views (been burned on performance issues too many times). However, any way you could show me the basics of both (2 classes with a view and 1 class), just so I understand better how this works. I know that's a lot to ask, but I've read a lot of docs, and some aspects I still do not understand.

If not, no big deal. I probably won't use the view because we are mirroring these "tables" into MySQL anyway and prefer to keep that part simple - 1 ODBC class = 1 MySQL table.

Also, and don't hit me, but we are on a very old version of Cache (and no way to fix that, blame our vendor).

Cache for Windows (x86-64) 2013.1 (Build 446) Tue Apr 23 2013 12:10:38 EDT