Skip to main content

Report Export Library

The Report Export Library supports the creation of Export Configs for a range of file types. These might cover standard outputs such as a DXF plan view, a 3D KML of the model, or an Excel report of pole loading results. Note that any filters applied to the reports will determine what is included in the export.

To use open Report Export Library in the Library menu.

Within the library there are tabs for the different types of exports.

The options are:

CSV

This exports one or more tables as separate CSV files. If the Export Config contains a single table, a single CSV file appears in the downloads folder. If it contains multiple tables, a zip file is created containing one CSV per table. Note that any filters applied to the reports will determine what is included in the export.

Excel

This exports all tables in the Export Config into a single Excel file, with one tab per report. Note that any filters applied to the reports will determine what is included in the export.

GeoJSON

This exports all the tables in the Export Config into a single GeoJSON file. Note that any filters applied to the reports will determine what is included in the export.

Shapefile

This exports all the tables in the Export Config into a shape file. Note that any filters applied to the reports will determine what is included in the export. See below example of shape file exported from Neara.

DXF

DXF allows the generation of DXF Plan, Profile and 3D views. The Plan export has special handling that allows for DXF blocks to be used with dim formuals. See the Plan section of this article for more details and examples.

The first step in configuring the DXF export is to upload a template DXF file via the DXF Manager. This template must contain all the blocks and line types required for the export, and it will serve as the source for any export that references them.

Note that multiple DXF exports can be configured, each referring to a different DXF template file. Within any single export, however, all referenced blocks and line styles must come from the same template file.

Note that any filters applied to the reports will determine what is included in the export.

Configure Report Export Library

To create a DXF export configuration open the Report Export Library in the Library menu. In the Report Export Library, go to the DXF tab and click + New DXF Export Config. You can create multiple DXF export configs to generate different drawings.

Reports

The Reports section lets you choose the reports that will be used for the DXF export. Click + Add new entry to add a report. The Formula field is for exporting a plan view DXF where some of the model objects have been replaced by DXF blocks.

See table below for what each column in the table does.

Field Name

Description

Table Report

This drop down lists of all the reports in the design that can be exported to DXF.

Display Mode

This determines what is exported to DXF (and shown in the preview).

-Show in View: Export just model objects to DXF

-Show in Table: Export just data tables to DXF

-Show in Table and View: Export both the model objects and the tables to DXF

Formula

This drop-down displays all fields within the report selected in the Table Report column that use either make_block_drafting_symbol or make_line_type_drafting_symbol. This is only relevant to plan view exports.

Export Settings

Ensure the Template has the correct DXF selected otherwise there will be a warning message. Select the combination of Plan, Profile or 3D export required.

Note when generating a combined plan and profile the profile exports are positioned at the origin (0,0), whereas plan and 3D exports retain their real-world coordinates and will therefore typically be located far from the origin.

Show Preview

This can be used to view a preview of the DXF before exporting.

Download

Click either of the Download buttons to download the DXF which will generate the DXF into the downloads folder.

Plan - DXF Export

The plan DXF export is in model space, with poles represented by different blocks according to their status, and conductors rendered in different line styles according to status and voltage.

Symbology Library

After the template DXF file has been loaded into the DXF Manager goto Library -> Symbology Library

From here blocks and line types can be selected for use from the template DXF. Note blocks can be loaded up from multiple template DXF files however care needs to be taken in the formulas such that only blocks from a single template DXF are returned for a particular export template.

To load up a block click the + Add Block.

Next select the DXF from the dropdown

Next select the blocks from the DXF and click Import in the bottom right corner.

These blocks will now be shown in the Symbology Library.

The fields in the Symbology Library is as follows

Field Name

Description

Label

This is the block name. Note this field is not editable

Root File

This is the source DXF that this came from

Show Anchor

This will show the origin of the block which is the point that the block will insert and also rotate around.

Configure Reports

The next step is to configure custom reports with a field that returns either a DXF block or DXF line type.

Blocks

Blocks are typically groups of shapes combined to convey both a physical entity and an action to be taken. For example, poles in a DXF plan view are commonly represented with blocks that indicate whether they are new, to be replaced, to be removed, or existing.

To create a field that returns a block reference from the symbology library use the function make_block_drafting_symbol which has the following fields (note there are examples at the end of this article).

Field

Description

geometry

A Vector2 or Geometry for the object.

Eg for a pole self.location

block_key

Key of the block this symbol would refer to within the Symbology Library

layer

Layer within the DXF that the insert of this block will be applied to

orientation

A Vector2 representing the direction the object should face. For example, (1, 0) or an unspecified orientation will face the object in its default direction. (-1, 0) will rotate it 180 degrees, and (0, 1) will rotate it 90 degrees counter-clockwise from the default orientation

offset

2D offset from the location of the entity of the symbol that the block will be applied at. If unspecified then no offset will be applied to the block

Line Types

Line Types can represent conductors or stays, and are usually assigned according to voltage and status.

To create a field that returns a Line Type reference from the symbolology library, use the make_line_type_drafting_symbol function. Its fields are listed below, and examples are provided at the end of this article.

Field

Description

geometry

A list of Vector2 or Geometry for the object. If it's a geometry it expects it to be a line geometry. If it's not a line geometry then this will throw a runtime error.

line_type_key

Key of the LineType this symbol would refer to within the Symbology Library

layer

Layer within the DXF that the line of this LineType will be applied to

line_width

Width of the specified line. If unspecified then the line width will be of the default scale of DXF lines that would exist if no LineType was specified

color_override

Color of the line. If unspecified then color is derived from layer

Dim Examples

All of the examples mentioned below can be found in the sample project: https://latest.neara.com/?drafting#design:links/2025-06-28/11-55/lFd4yTKMOz5f.power

Pole Transformer and Street Light

The following can be added to a report based on the Assemblies which for a pole transformer (identified here based on its name) will be offset from the pole (so as not to conflict with the pole block) and the streetlight will be rotated as it is in the model.

if(
type.key = "Pole TX",
make_block_drafting_symbol(
pole.location,
block_key: "POLE_TX",
offset: vec2(
1.6m,
1.6m
),
layer: "POLE_TX"
),
if(
substring(
type.key,
0,
4
) = "SL -",
make_block_drafting_symbol(
pole.location,
block_key: "STREET_LIGHT",
orientation: vec2(
longitudinal_direction.y,
- longitudinal_direction.x
),
layer: "SL"
)
)
)

Pole Based On Status

The following can be added to a report based on the Poles which will use a different block based on the pole status.

if(
status = "New",
make_block_drafting_symbol(
self.location,
block_key: "POLE_NEW",
layer: "POLES"
),
if(
status = "Existing",
make_block_drafting_symbol(
self.location,
block_key: "POLE_EXISTING",
layer: "POLES"
),
if(
status = "UNSPECIFIED",
make_block_drafting_symbol(
self.location,
block_key: "POLE_UNDEFINED",
layer: "POLES"
),
if(
status = "Remove",
make_block_drafting_symbol(
self.location,
block_key: "POLE_REMOVE",
layer: "POLES"
),
if(
status = "Replace",
make_block_drafting_symbol(
self.location,
block_key: "POLE_REPLACE",
layer: "POLES"
)
)
)
)
)
)

Stay Anchor

The following can be added to a report based on the Stays which will rotate an arc which represents the stay anchor.

if(
bollard_anchor = null,
make_block_drafting_symbol(
vec2(
anchor.position.x,
anchor.position.y
),
block_key: "STAY_ANCHOR",
layer: "STAY",
orientation: vec2(
cos(angle),
sin(angle)
)
)
)

Stay Wire

The following can be added to a report based on the Stays which will draw the stay. Note a seperate report will be need to the stay anchor report as the configuration can only use a single drafting field from a report.

make_line_type_drafting_symbol(
geometry,
line_type_key: "ACAD_ISO02W100",
layer: "STAY",
line_width: 2
)

Spans

The following can be added to a report based on the Spans which will draw each span with a different line type based on the status. Note this could be expanded to have different rules based on voltage as well.

if(
section.status = "Existing",
make_line_type_drafting_symbol(
geometry,
line_type_key: "ACAD_ISO02W100",
layer: "COND"
),
if(
section.status = "New",
make_line_type_drafting_symbol(
geometry,
line_type_key: "COND_NEW",
layer: "COND"
),
if(
section.status = "Retension",
make_line_type_drafting_symbol(
geometry,
line_type_key: "COND_RETENSION",
layer: "COND"
),
if(
section.status = "Remove",
make_line_type_drafting_symbol(
geometry,
line_type_key: "COND_REMOVE",
layer: "COND"
),
if(
section.status = "Replace",
make_line_type_drafting_symbol(
geometry,
line_type_key: "COND_REPLACE",
layer: "COND"
),
if(
section.status = "UNSPECIFIED",
make_line_type_drafting_symbol(
geometry,
line_type_key: "COND_UNDEFINDED",
layer: "COND"
)
)
)
)
)
)
)

2D KML

The 2D KML export allows for the export of pins and paths and will contain the properties that are fields in the reports. This example below came from a strain section report and poles report. Note that any filters applied to the reports will determine what is included in the export.

3D KML

The 3D KML export allows for the export of the model in 3D. This example below came from a strain section report and poles report. Note that any filters applied to the reports will determine what is included in the export.

Did this answer your question?