English

Error: One or more layers failed to draw

Error Message

When attempting to draw a layer, ArcMap returns the following error:

"One or more layers failed to draw:..."

After dismissing this error message, either a layer or the layer's labels do not draw. This message may also appear when trying to open a layer's attribute table.

Cause

There may be more than one reason why this message occurs. One possible reason is that the data source type of an ArcMap layer has been changed to a type that has a different SQL syntax.

A common example is when a layer's data source is changed from a shapefile to a geodatabase feature class or vice versa, and that layer has a definition query.

Common layer SQL queries include: definition queries, SQL expressions used for multiple label classes, and symbology exclusion expressions.

Solution or Workaround

After repairing/changing the layer's data source, update all layer SQL queries.

  1. Right-click on the layer in the Table of Contents and select Properties.
  2. If the layer has a definition query, select the Definition Query tab.
  3. Update the definition query syntax.

    Note:
    If unsure about the syntax, use the Query Builder to build a query based on the new data source type.

  4. If labeling with more than one class, select the Labels tab and click SQL query.
  5. Update the definition query syntax.
  6. If the layer is using symbology exclusion, select the Symbology tab.
  7. Open the Exclusion dialog box.
    Note:
    This dialog box is found in different places depending on what type of symbology is being used. If Single Symbol symbology, then click on the Exclude button. If Graduated Colors symbology, click on Classify, then Exclusion.
  8. Follow these steps to build an exclusion expression using the syntax for the new data source.

    1. Open the Exclusion dialog box.
    2. Click the Query tab.
    3. Double-click the field that is being used to draw the layer.
    4. Double-click an operator.
    5. Double-click the value that will be excluded. If the value is not in the list, click the Complete List button.
    6. Click Apply to execute the expression and exclude values.
    7. Click the Legend tab.
    8. Check Show symbol for excluded values.
    9. Click OK.

  9. Click Ok to close the Layer Properties dialog box.

Related Information