GenerateFloorTransitions: "Error 180306 Unit attribute value in LEVEL_NAME field is null"

798
3
09-24-2021 04:02 AM
dky
by
New Contributor III

Hi, 

ArcGIS Pro 2.8.2 + Indoors Product Data installed / local file geodatabase

 

We have an Indoors model consisting of around seventy-five buildings across six sites.
Following the documented workflow, at the "Generate Floor Transitions" step we experience the following error:

ERROR 180306: Unit attribute value in LEVEL_NAME field is null.

Failed script (null)...

Failed to execute (GenerateFloorTransitions).

Failed at Friday, September 24, 2021 6:21:05 PM (Elapsed Time: 1 minutes 5 seconds)

 

First, I followed the guidance as documented on the error page:

This error is usually data specific. Completing one of the following may resolve the issue:

  • Use the Create Indoor Dataset and Create Indoor Network Dataset tools to create an empty indoor dataset and indoor network dataset. Then append features from the existing Units feature class into the new Units feature class
  • Use the Create Indoors Database tool to create an empty Indoors geodatabase. Then append features from the existing Units feature class into the new Units feature class.

I did both, re-ran the Generate Floor Transitions geoprocessing tool each time and got the identical result.

I then re-read the error message; wrote python scripts (arcpy.searchcursor) to search for nulls (None) in all of the "LEVEL_NAME" field across all of the input tables (later: every table that has a "LEVEL_NAME" field) -- no nulls. Not sure how the gp tool is finding the nulls because I can't. 

Due to the size of the dataset, we constrain (by FACILITY_ID) the input data as per documentation
We tested 50 buildings and got the same error for every run. We've tried selecting just three consecutive levels in a single building and still got the same error across multiple buildings.

In most cases, the gp tool messages indicate "{stairway|elevator} transition created." which is a good sign but sometimes there's no data in PrelimTransitions. Repeated the same procedure with a fresh local file geodatabase and still got the same error. 

 

So ... has anyone experienced this problem before? Did I miss something? 

Any thoughts on how to troubleshoot geoprocessing tool issues?
The indicated error doesn't really match the table data. 

 

Thanks in advance,
Derek

 

0 Kudos
3 Replies
JunruChen
Esri Contributor

Hi Derek,


Sorry to hear that you ran into the issue several times. From the error message 180306, looks like the tool has run into records in the Units feature class with NULL LEVEL_NAME value. Using a python script to search for NULL values is definitely a good idea. I would also highly suggest using the 'Select By Attributes' tool on the input Units feature class with the query "LEVEL_NAME IS NULL" to double-check if there are any null records. If the selection returns 0 records, please kindly let us know and we will be willing to investigate.

I apologize that the error message solution is not being helpful in addressing the issue. We will work on the enhancement for it. Thank you for bringing this to our attention. 

Regards,

Junru

dky
by
New Contributor III

Hey @JunruChen:

Many thanks for your feedback -- and no need to apologize; I appreciate the help!

I've attached a screenshot of the "Select By Attributes" tool showing that there are no NULL values for the LEVEL_NAME field in the Units feature class. 

I'm hypothesizing: I think "Generate Floor Transitions" gp tool didn't like a value or another piece of data somewhere else in its processing pipeline and is having trouble expressing itself ? 

So, just wondering ... is there a way to get ArcGIS Pro and/or (preferably) the "Generate Floor Transitions" gp tool to be more verbose in logging ?  

I was thinking of enabling SDEVERBOSE (and moving data to a SQL server) but that won't tell me what's going on in the gp tool itself ... Is there any way to enable some form of tracing / instrumentation or debug mode for gp tools so I can identify and resolve these issues? Don't get me wrong -- Esri support has been fantastic. However, I often have to make additional arrangements (i.e. get permission) in order to release (sometimes large) data to support just to find out it's a minor problem that I could have resolved in 15 minutes of going through some debug logs.

 

Any suggestions appreciated!

 

Many thanks,

Derek

 

 

 

0 Kudos
dky
by
New Contributor III

Hi, 

(Full disclosure: I've engaged Esri Support on this issue)

Being both desperate and curious for more info on how to troubleshoot this issue, I decided to just continue with the workflow ... I checked and found there was data in the PrelimTransitions feature class (yay!) and thought to continue the workflow and fish for some more clues ...

So, following the documented workflow at the "Thin the network" step, the "Thin Indoor Pathways" geoprocessing tool (expectedly) fails with the following error:

(For your consideration: I've attached a screenshot of the gp tool run) 

ERROR 180212: Unable to thin input pathways.
cannot unpack non-iterable NoneType object
Failed script (null)...
Failed to execute (ThinIndoorPathways).

   (Note: Ignore the 7-hour processing time)

 

I'll just skip the discussion about following the guidance for ERROR 180212 and the solution not resolving the issue.

I checked the Pathways and Transitions feature classes and there was zero data in both, so this indeed is a catastrophic failure. 
Looking at the Thin Indoor Pathways geoprocessing output messages, it indicates a few errors:

The less interesting one is:

WARNING 030116: The network was built, but with some errors. Error details are at "C:\...\AppData\Local\Temp\2\ArcGISProTemp3404\BuildErrors.txt".

Inside "BuildErrors.txt" were 5 entries indicating zero-length geometry in the PrelimPathways feature class.
(See, not interesting at all!)

 

But this one is a little more interesting:

Creating points for transition features.
The row contains a bad value. [LEVEL_ID]

Uhh, thanks?
(Hey @JunruChen: kindly consider adding this to the list of enhancements?)

 

Presumably this means: "There's a row in the PrelimTransitions feature class with a 'bad LEVEL_ID'" ?

If my interpretation is correct, then what is the bad value? 

Anyway, I don't think there is much more to go on here, so I'll go back to looking at the Generate Floor Transitions a bit more ... 

 

 

Thanks,

Derek

 

 

 

 

0 Kudos