---
title: O-Calc | Plugin Development
description: Plugin Development | O-Calc Pro user resources and version release notes.
---

[![Osmose-logo](https://www.osmose.com/hs-fs/hubfs/Osmose%20theme%202023/Gotham-font/Osmose-logo-(white).png?width=243&name=Osmose-logo-(white).png "Osmose-logo")](https://www.osmose.com/)

- ![globe](https://www.osmose.com/hubfs/Osmose_Nov2021/images/Location-Globe-Icon-small.png) 
    - [United States](https://www.osmose.com)
    - [Europe & UK](https://www.osmose.com/europe)
    - [Canada](https://www.osmose.ca)
    - [Australia & New Zealand](https://www.osmose.com.au)

![Search Icon](https://www.osmose.com/hs-fs/hubfs/Osmose%20theme%202023/search_icon.png?width=17&name=search_icon.png "Search Icon")

- [About](https://www.osmose.com/about-us) 
    - [About Osmose](https://www.osmose.com/about-us) 
          - [History](https://www.osmose.com/about-us-history)
          - [Core Values](https://www.osmose.com/about-us-core-values)
          - [Where We Work](https://www.osmose.com/about-us-where-we-work)
          - [Our People](https://www.osmose.com/about-us-our-people)
          - [Leadership](https://www.osmose.com/leadership)
    - [Our Commitment](https://www.osmose.com/safety) 
          - [Safety](https://www.osmose.com/safety)
          - [Quality](https://www.osmose.com/quality)
          - [Environment](https://www.osmose.com/environment)
          - [Supplier Diversity](https://www.osmose.com/supplier-diversity)
          - [Industry Involvement](https://www.osmose.com/industry-involvement)
    - [News & Events](https://www.osmose.com/news)
    - [Osmose ANZ](https://www.osmose.com/logsys)
    - [Osmose Canada](https://www.osmose.ca/)
- [Solutions](https://www.osmose.com/solutions) 
    - [Transmission Resiliency](https://www.osmose.com/transmission-resiliency-solutions)
    - [Distribution Resiliency](https://www.osmose.com/distribution-resiliency-solutions)
    - [Joint Use Management](https://www.osmose.com/joint-use-management-solutions)
    - [Broadband](https://www.osmose.com/broadband-solutions) 
          - [Broadband Overview](https://www.osmose.com/broadband-solutions)
          - [OsmoVision](https://www.osmose.com/osmovision)
    - [Structure Asset Management](https://www.osmose.com/structure-asset-management)
- [Services](https://www.osmose.com/services) 
    - [Wood Structures](https://www.osmose.com/pole-inspection-treatment-maintenance) 
          - [Understanding Wood](https://www.osmose.com/wood)
          - [Inspection & Life Extension](https://www.osmose.com/pole-inspection-treatment-maintenance)
          - [Remedial Treatment](https://www.osmose.com/remedial-treatments)
          - [Pole Restoration](https://www.osmose.com/pole-restoration-services)
          - [Pole Upgrading & Hardening](https://www.osmose.com/wood-pole-strength-upgrading)
          - [Pole Loading Analysis](https://www.osmose.com/pole-loading-analysis)
          - [Pole Replacement Design](https://www.osmose.com/pole-replacement-design)
          - [Asset Fire Protection Solutions](https://www.osmose.com/asset-fire-protection-solutions)
          - [Pole Pulling](https://www.osmose.com/pole-pulling)
    - [Steel & Concrete Structures](https://www.osmose.com/steel) 
          - [Understanding Steel](https://www.osmose.com/steel)
          - [Steel Structure Assessment](https://www.osmose.com/corrosion-assessment)
          - [Structure Resiliency Analysis](https://www.osmose.com/structure-resiliency-analysis)
          - [Corrosion Mitigation & Life Extension](https://www.osmose.com/steel-mitigation)
          - [Structure Restoration & Upgrades](https://www.osmose.com/steel-pole-tower-restoration)
          - [Substation Services](https://www.osmose.com/substation-services)
          - [Transmission Engineering & Design](https://www.osmose.com/transmission-engineering-design)
    - [Substation Services](https://www.osmose.com/substation-services)
    - [Distribution Engineering & Design](https://www.osmose.com/distribution-engineering-design)
    - [Underground Services](https://www.osmose.com/underground-vault-inspection) 
          - [Underground Structure Restoration](https://www.osmose.com/underground-structure-restoration-osmose)
          - [Underground Vault Inspection](https://www.osmose.com/underground-vault-inspection)
          - [Padmount Inspection](https://www.osmose.com/underground-urd-padmount-inspection)
          - [Contact Voltage Detection](https://www.osmose.com/power-survey)
          - [Cable Lifecycle Asset Management](https://www.osmose.com/underground-cable-lifecycle-management) 
                  - [Renewables](https://www.osmose.com/renewable-energy-asset-management)
    - [Overhead Services](https://www.osmose.com/overhead-services) 
          - [Aerial Services](https://www.osmose.com/aerial-services)
          - [Overhead Services](https://www.osmose.com/overhead-services)
          - [Overhead Inspection](https://www.osmose.com/overhead-inspection)
          - [Mapping & Asset Verification](https://www.osmose.com/mapping-asset-verification)
          - [Infrared Inspections](https://www.osmose.com/infrared-inspections)
    - [Joint Use Administration](https://www.osmose.com/joint-use-administration) 
          - [Joint Use & Clearance Audits](https://www.osmose.com/joint-use-clearance-audits)
          - [Pole Loading Analysis](https://www.osmose.com/pole-loading-analysis)
          - [Make-Ready Survey & Design](https://www.osmose.com/make-ready-survey-design)
          - [Turnkey Management](https://www.osmose.com/turnkey-management)
          - [Pole Replacement Design](https://www.osmose.com/pole-replacement-design)
          - [ Double Wood Remediation](https://www.osmose.com/double-wood-remediation)
          - [ Pole Upgrading & Hardening](https://www.osmose.com/wood-pole-strength-upgrading)
    - [Storm Services](https://www.osmose.com/storm-response-solutions)
- [Products](https://www.osmose.com/pole-line-products) 
    - [PoleLife+ Bundled Protection](https://www.osmose.com/polelife)
    - [Remedial Treatments](https://www.osmose.com/products-remedial-treatment)
    - [Pole Restoration Products](https://www.osmose.com/products-pole-restoration)
    - [Protective Products](https://www.osmose.com/products-protective)
    - [Copper Care Products](https://www.osmose.com/products-copper-care-wood-preservatives)
    - [International Orders](https://www.osmose.com/products-international)
- [Resources](https://www.osmose.com/resources) 
    - [Customer Portal](https://www.osmose.com/contact-osmose360)
    - [Brochures](https://www.osmose.com/brochures)
    - [Videos](https://www.osmose.com/videos)
    - [White Papers](https://www.osmose.com/white-papers-resources)
    - [Case Studies](https://www.osmose.com/case-studies-resources)
- [Careers](https://www.osmose.com/careers)
- [![menu_image](https://www.osmose.com/hubfs/Osmose%20theme%202023/o-calc-pro-logo-vector-cropped.svg)](https://www.osmose.com/o-calc-pro-software-services) 
    - [About O-Calc Pro](https://www.osmose.com/o-calc-pro-software-services)
    - [Training](https://www.osmose.com/o-calc-pro-training)
    - [User Resources](https://www.osmose.com/o-calc-pro)
    - [O-Calc Pro Videos](https://www.osmose.com/o-calc/video)
- [![](https://www.osmose.com/hs-fs/hubfs/Osmose_Nov2021/images/Osmose%20360-%20White-small2.png?width=130&height=45&name=Osmose%20360-%20White-small2.png)](https://www.osmose.com/contact-osmose360)
- [Contact](https://www.osmose.com/contactus)

# O-Calc® Pro

#### Topics

- [Tips](https://www.osmose.com/o-calc/wiki/tag/tips)
- [Plugins](https://www.osmose.com/o-calc/wiki/tag/plugins)
- [Release Notes](https://www.osmose.com/o-calc/wiki/tag/release-notes)
- [Master Catalogs](https://www.osmose.com/o-calc/wiki/tag/master-catalogs)
- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development)
- [Theory of operation](https://www.osmose.com/o-calc/wiki/tag/theory-of-operation)
- [Photo Measurement](https://www.osmose.com/o-calc/wiki/tag/photo-measurement)
- [Report Development](https://www.osmose.com/o-calc/wiki/tag/report-development)
- [Reports](https://www.osmose.com/o-calc/wiki/tag/reports)
- [Line Design](https://www.osmose.com/o-calc/wiki/tag/line-design)
- [Scripting](https://www.osmose.com/o-calc/wiki/tag/scripting)
- [Troubleshooting](https://www.osmose.com/o-calc/wiki/tag/troubleshooting)
- [Tension](https://www.osmose.com/o-calc/wiki/tag/tension)
- [News](https://www.osmose.com/o-calc/wiki/tag/news)
- [PPL_Min API](https://www.osmose.com/o-calc/wiki/tag/ppl_min-api)

### [Fast indexing of PPLX data](https://www.osmose.com/o-calc/wiki/2016/01/05/fast-indexing-of-pplx-data)

- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development)

One of the tasks that sometimes comes up during plugin development is the need to rapidly parse and spatially index a large number of PPLX files.

[Read More](https://www.osmose.com/o-calc/wiki/2016/01/05/fast-indexing-of-pplx-data)

### [Using the Working Data Store (WDS)](https://www.osmose.com/o-calc/wiki/2015/12/11/using-the-working-data-store-wds)

- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development),
- [Report Development](https://www.osmose.com/o-calc/wiki/tag/report-development),
- [Scripting](https://www.osmose.com/o-calc/wiki/tag/scripting)

When creating a plugin, report, or script in O-Calc Pro it is helpful to be able to store information such as state, history, or keys identifying external data sources directly in the PPLX elements. O-Calc Pro provides a mechanism for this in the form of the Working Data Store (WDS).

[Read More](https://www.osmose.com/o-calc/wiki/2015/12/11/using-the-working-data-store-wds)

### [Token Substitution Helper](https://www.osmose.com/o-calc/wiki/2015/11/24/token-substitution-helper)

- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development),
- [Scripting](https://www.osmose.com/o-calc/wiki/tag/scripting)

When creating scripts and plugins it is sometimes convenient to be able to process a tokenized template and fill in selected values from calculated values or form attributes on the structure.

[Read More](https://www.osmose.com/o-calc/wiki/2015/11/24/token-substitution-helper)

### [O-Calc Pro Plugin – “Hello World”](https://www.osmose.com/o-calc/wiki/2015/11/18/o-calc-pro-plugin-hello-world)

- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development)

The default ***O-Calc Pro Plugin*** template will create a message box showing the message “Hello World”. Below are some explanations of the various code components of this simple plugin example.

[Read More](https://www.osmose.com/o-calc/wiki/2015/11/18/o-calc-pro-plugin-hello-world)

### [Development Environment for O-Calc Pro Plugins](https://www.osmose.com/o-calc/wiki/2015/11/18/configuring-development-environment-for-o-calc-pro-plugins-and-reports)

- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development)

[Read More](https://www.osmose.com/o-calc/wiki/2015/11/18/configuring-development-environment-for-o-calc-pro-plugins-and-reports)

### [O-Calc Pro Report – “My First Report”](https://www.osmose.com/o-calc/wiki/2015/11/18/o-calc-pro-report-my-first-report)

- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development)

The default ***O-Calc Pro Report ***template will create a simple report with default header and a single table of pole capacity utilization values.  Below are some explanations of the various code components of this simple report example.

[Read More](https://www.osmose.com/o-calc/wiki/2015/11/18/o-calc-pro-report-my-first-report)

### [Units Conversion](https://www.osmose.com/o-calc/wiki/2015/11/09/units-conversion)

- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development),
- [Scripting](https://www.osmose.com/o-calc/wiki/tag/scripting)

O-Calc Pro provides a complete set of routines for performing all of the units conversion that might be required by O-Calc developers.

[Read More](https://www.osmose.com/o-calc/wiki/2015/11/09/units-conversion)

### [Batch Pole Operations in Scripts and Plugins](https://www.osmose.com/o-calc/wiki/2015/11/03/batch-pole-operations-in-scripts-and-plugins)

- [Plugin Development](https://www.osmose.com/o-calc/wiki/tag/plugin-development),
- [Scripting](https://www.osmose.com/o-calc/wiki/tag/scripting)

When creating O-Calc scripts and plugins it is often the case that the developer / user would like to be able to perform operations on a large number of poles in a batch operation, perhaps as an un-attended operation. The O-Calc scripting and plugins API provides a convenient way to allow this to b.

[Read More](https://www.osmose.com/o-calc/wiki/2015/11/03/batch-pole-operations-in-scripts-and-plugins)

[![Primocoding](https://www.osmose.com/hs-fs/hubfs/Osmose%20theme%202023/Gotham-font/Osmose-logo-(white).png?width=255&name=Osmose-logo-(white).png "Primocoding")](https://www.osmose.com/)

###### Services

- [solutions](https://www.osmose.com/solutions)
- [Services](https://www.osmose.com/services)
- [Products](https://www.osmose.com/pole-line-products)
- [Resources](https://www.osmose.com/resources)

###### About

- [About](https://www.osmose.com/about-us)
- [Careers](https://www.osmose.com/careers)
- [Contact Us](https://www.osmose.com/contactus)
- [Privacy Policy](https://www.osmose.com/privacy-policy)

Copyright © 2025 Osmose. All Rights Reserved.

![](https://px.ads.linkedin.com/collect/?pid=10539577&fmt=gif)

```json
{
  "@context" : "https://schema.org",
  "@id" : "",
  "@type" : "ProfessionalService",
  "address" : {
    "@type" : "PostalAddress",
    "addressCountry" : "US",
    "addressLocality" : "Atlanta",
    "addressRegion" : "ME",
    "postalCode" : "30303",
    "streetAddress" : "191 Peachtree Street NE Suite 500"
  },
  "geo" : {
    "@type" : "GeoCoordinates",
    "latitude" : 33.7590381,
    "longitude" : -84.3872591
  },
  "image" : "https://www.osmose.com/hs-fs/hubfs/Osmose%20theme%202023/Gotham-font/Osmose-logo-(white).png?width=243&name=Osmose-logo-(white).png",
  "name" : "Osmose Utilities Services",
  "telephone" : "7707580362",
  "url" : "https://www.osmose.com/"
}
```