In our previous SOLIDWORKS blog, we discussed the Good, The Bad, and The Ugly of SOLIDWORKS World. But in this week's blog, we will continue discovering SOLIDWORKS Manage 2019 and I will be reviewing some of the snags that I have encountered with it along with giving you some tips on how to save more time and improve the program processing speed. We are bypassing system configuration for now to show how the dashboards are configured, due to customer special requests. But, we will circle back in our next blog to discuss the setup the change request process.
I’ve learned a ton this week and one of the interesting lessons was that IIS has to be configured correctly otherwise, random errors arise all throughout the software! For example, variables won’t update, you can’t attach referenced files, and a few other just random failures.
This blog is written about SOLIDWORKS Manage 2019 SP2.
On the positive side, the dashboards are SUPER easy to configure, so I’m working with a client on it.
It’s so cool to be able to make them but be warned: SW Manage creates a custom table for each process you create so to find that custom table, query the Objects table.
The Objects table contains all the table names that are created by Manage, such as your custom processes, custom records, or custom projects. In the dashboard above, I'm querying against the OBJ113 and CheckedStatus tables joined on the CheckedStatus field. Your tables will be different than mine though, so you need to see the Objects table to see which OBJxxx table was created for your needs.
We need to find which table contains the Process "Engineering Approval", so I use this query to find the right table for my process called "Engineering Approval":
SELECT O.SystemName AS 'Object Table', OT.ObjectTypeName AS 'Object Type', O.DisplayName AS 'Process Name'
FROM Objects O
INNER JOIN ObjectTypes OT on OT.ObjectTypeId = O.ObjectType
WHERE OT.ObjectTypeName LIKE 'Processes'
order by O.SystemName
FROM Objects O
INNER JOIN ObjectTypes OT on OT.ObjectTypeId = O.ObjectType
WHERE OT.ObjectTypeName LIKE 'Processes'
order by O.SystemName
Note: Use at your own risk, we are not responsible if you develop a query from this example that causes damage or destroys data.
Our Process data is contained in the OBJ113 table (yours will most likely be different). Next, I developed a query to get the process records. In Manage, I did the following in the Dashboard Editor.
Create a Data connection
Add a data source
Then configure your query. I'll show you the query I've used to create the dashboard above. Strongly recommend using SOLIDWORKS Manage 2019 SP2 so you and your SQL DBA can use manually typed queries like you use in SQL Management Studio. I've pasted the query below BUT again be warned, your tables will NOT be the same tables as mine.
CAUTION: I recommend developing all queries in SQL Management Studio first for testing and debugging, then have your SQL DBA verify your query isn't going break your database! And, be sure to always backup your database before developing anything like this!
select
oj1._System_objNBS as 'ECR Number',
oj1.SubObjectGuid,
oj1.RecordGuid,
cs.StatusName,
oj1.dateModified as 'Date',
oj1._System_ObjDescription as 'Description',
oj1._System_CurrentStage as 'Current Stage'
oj1._System_objNBS as 'ECR Number',
oj1.SubObjectGuid,
oj1.RecordGuid,
cs.StatusName,
oj1.dateModified as 'Date',
oj1._System_ObjDescription as 'Description',
oj1._System_CurrentStage as 'Current Stage'
from obj113 oj1
inner join obj113_VER oj1ver on oj1ver.idRecord = oj1.idRecord
inner join CheckedStatus cs on cs.StatusId = oj1.CheckedStatus
where oj1.deleted = 0
and (cs.StatusName like 'checked in' or cs.StatusName like 'checked out' or cs.StatusName like 'released')
order by oj1._System_objNBS
inner join obj113_VER oj1ver on oj1ver.idRecord = oj1.idRecord
inner join CheckedStatus cs on cs.StatusId = oj1.CheckedStatus
where oj1.deleted = 0
and (cs.StatusName like 'checked in' or cs.StatusName like 'checked out' or cs.StatusName like 'released')
order by oj1._System_objNBS
When the Query Editor appears, I copied and pasted the query from SQL Management Studio into the editor.
Note: Use at your own risk, we are not responsible if you develop a query from this example that causes damage or destroys data.
Hint: The main ring chart above is a Pie chart set to a Donut. Click the chart, then use the Design tab near the top, and select Donut.
Final Thoughts
Lastly, SOLIDWORKS Manage 2019 saw some MAJOR enhancements and improvements to the Manage interface but, so did 2019 SP2, which dropped last week.
UPDATE: We just upgraded from 2019 SP1 to 2019 SP2 this weekend and SW Manage now has the ability to manually enter a query string, assign processes to other process owners, and a few other changes but we have just barely gotten into the interface!
Looking at the BIG Picture
It seems the tool is maturing right before our eyes. I learned this week, tailoring the user interface for a simpler user experience is not only possible but should be planned ahead of time to ensure the users see only what they need at the right time. This is important because Manage is so full of data, it can seem overwhelming just navigating willy nilly.
Tim's Tidbits
I recommend a simple 4-point strategy:
1. Focus on a simplified user experience to avoid data vomiting on your users. Yuck!
2. Categorize your users for display purposes
3. Develop a Workflow in Manage the users can buy-into
4. Provide each display group a “canned view” of the entire experience in Manage
These are the categories I've defined for one customer for content display so their experience is more meaningful for their daily work, but please come to your own conclusions about what is best for your value stream:
- Creators (Daily users) – Create content with high detail throughout Manage (engineers).
- Monitors (Daily users) – Work is assigned to these (owners) like change coordinators or configuration managers (depending on your organization). Check on status daily, connect with SMEs, maintain forward motion, make corrections/updates, add additional info, provide dwell time reports for resource allocation, etc.
- Monitors (On-demand users) – Primary function is approvals/rejections and resource allocation but can create as required, also maintains forward motion, etc. (management). This group requires lower detail in the interface.
- Viewers (Weekly inquiries) – Filtering a simplified interface, dashboards, reports. Very low detail and mostly graphical interface for Manage using drill-down Dashboards and reports.
i. Senior Managers
ii. Legal
iii. Sys admins
iv. VP’s
v. Etc.
QUICK TIP: If you have paths in your referenced documents setting in SOLIDWORKS that don’t exist, SOLIDWORKS will be slooooowwww to load and won’t respond after a while.
To avoid this painfully slow MDV-like experience, be sure to review your settings.
Comment below with your own helpful tips or problems that you have run into and are looking for solutions to!
Have any additional SOLIDWORKS Questions?
Who Are We?
We are a passionate group looking to help engineers by promoting the SOLIDWORKS Product lines while training PDM Administrators and SOLIDWORKS users in our market space between the SOLIDWORKS Forums and the SOLIDWORKS Resellers. equivaQ welcomes partnerships with SOLIDWORKS Value Added Resellers (VARS) at every opportunity, we do not compete with them.