Extender Developer

Take customization of Sage 300 to the next level using Python scripts

ARLINE WELTY, PRINCIPAL CONSULTANT, DATAQUEST, IL, USA

Introduce bespoke business logic without the high costs normally associated with bespoke software development

  • Cater for business requirements that can’t be met by ‘out of the box’ Sage 300
  • Use Python scripts to automate business processes, enhance systems integration, develop custom screens, or provide tailored validation and alerting.
  • Develop custom tables that form part of the Sage 300 database, tailoring the core system to meet your exact needs
  • Reduce risk by having all customizations, including Python scripts, held within your Sage 300 database
  • Customize with confidence, knowing that Python is widely regarded as the world’s favourite programming language
  • Leverage existing open source libraries (e.g. integration with cloud based systems)

Add the power of Python to the Alerts & Workflow capabilities of Extender Configurator

Business Logic (Sage 300 Views)

  • Sub-class Sage 300 business logic (Views), making use of a collection of SDK View calls
  • Additional Validations
  • Conditional Alerting
  • Automate Business Processes

Examples:

  • Improve data accuracy and reliability by using scripts to validate and/or provide default data for required fields
  • Create additional reallocation and deferral transactions in the GL based on custom business rules
  • Automatically create A/P Invoices for salesperson commission based on custom business rules
  • Print and email order confirmations and invoices automatically, based on customer preferences
  • Apply security at a Field level, or deploy data-level security by User or Group
  • Validate changes to field data according to defined limits and users, e.g. who can change a credit limit, and to what limit
  • Auto-assemble Bills of Materials on the fly as orders are created  

Screen Customisations

Tailor existing screens in ways not possible at the View level (e.g. tailor tabs, fields, buttons and finders)

Create new screens without the need for complicated programming

Examples:

  • Add buttons for custom functionality (PO Order Screen to auto-print/email document to the vendor, OE Invoice screen to create Invoice PDF and email to customer)
  • Expose & edit optional fields in the grid AP Invoice Entry and GL Journal Entry
  • Hide existing fields, depending on the users

Custom Tables

  • Develop Custom Tables that form part of the Sage 300 database and database dictionary
  • Custom Tables & associated Python scripts are preserved as part of the Sage 300 company database - they and can be Dumped and Loaded
  • Maintain the Sage 300 database dictionary without being an expert Sage 300 SDK developer
  • Use the Custom Table Editor to create, update and delete the data in your Custom View – or write a script for a tailored screen

Examples:

  • Store additional information in Sage 300 (AR Item optional field default values, IC Item additional fields, sales people KPI)
  • Store information in Sage 300 to support customizations, such as configuration parameters for workflow departmental hierarchy

Advanced Workflow

  • Develop custom Workflow Actions using Python
  • Incorporate Custom View/Table data into Workflow Actions
  • All Workflow functionality that Feature list

Examples:

  • Custom actions to support business processes: e.g. automate an assembly or disassembly on approval
  • Custom actions for validation: e.g. custom credit limit checks by sales area when creating an OE Order, check for a “returned receipt” as part of credit limit checking
  • Using Workflow Status in custom business processes (e.g. Create EFT File)

Integration

  • Synchronize between systems more efficiently, in real time. E.g. Only update data that has changed.
  • Integration with collaboration tools (e.g. Slack, MS Teams, Twitter, Twilio)
  • Create files to update external applications when events occur, e.g. Shipment details for the warehouse.
  • Synchronize the on-premises Sage 300 Vendors, Customers, GL Codes and Currency Rates to a cloud-based invoicing system.

Examples:

  • Call a custom process when the Vendor’s address & contact details (but not other fields) are changed

Start by configuring Alerts & Workflows using Configurator - no coding required

Extender Developer in Action

Anne demonstrates what you can do with the Developer edition of Extender - using the power of Python

Watch the video

Why Python?

Python is a widely used, general-purpose, high-level, open-source language. Here are some of the reasons we chose to use it as the scripting language for Extender.

  • Python is an interpreted language, so it does not require a compiler
  • Customization scripts are company-specific and stored in the Sage 300 company database
  • Source code is available & visible on site, self-documenting, and can be amended on site
  • Access to 000’s of well-tested, open-source libraries (e.g. for integration with cloud-based systems)
  • Python consistently tops “most popular programming language” industry surveys  

Testimonials

Orchid Extender is fantastic!  We are now recommending it to all of our clients. The increased functionality that it adds to Sage 300 gives our clients the tools they need to work more efficiently and productively than ever.

DAN TAYLOR, ACUMEN BUSINESS SYSTEMS, FLORIDA, USA

Extender scripts reduce client clicks!

ARLINE WELTY, PRINCIPAL CONSULTANT, DATAQUEST, IL, USA

I just deployed an Extender script for a client and am loving how it works. Looks like Extender is going to be an integral part of every non-trivial implementation after this!

UBAIDULLAH NUBAR, AL-EBDAA EST. FOR DEVELOPMENT, SAUDI ARABIA

Extender truly is magical ;)

LISA CURL, ACUMEN INFORMATION SYSTEMS, FL, USA

Truly, my mind is overflowing with all of the possibilities of the interplay between Extender and Notes. This new relationship between them feels like such a game-changer! Sincerest kudos to you and your team - both of these modules are rapidly becoming 'must-quote' for me on new sales as it’s turning so many previous 'no's into 'yes's!

DAVID GELULA, GELULA CONSULTING, ILLINOIS, USA

With only a basic knowledge of Python, and almost no exposure to Sage 300 SDK, I was able to implement on-screen validations that were very important for my customer, but not available out of the box.

HAYK ZARGARYAN, SYSTRONICS

Product Screenshots

Minimum

Requirements

  • Extender 2020 requires Sage 300 2020 System Manager and operates with 3rd Party modules written in the Sage 300 SDK.
  • Notes functionality requires Orchid Notes.
  • Workflow User licences are required to access Extender Workflow functionality or to access Extender Logs via screen icons.

Python is installed as part of Extender. If you have another version of Python installed it has no effect on Extender - Extender will use its own version. (Python is a widely used, general-purpose, high-level, open-source scripting language.)

How to buy

Talk to your local Sage 300 partner Send message

International Contacts

Please contact us directly if your business is in the UK, Europe or other regions not listed here. 

North/South/Central America and the Caribbean

Robert Lavery 

Phone: (416) 453-7876
Email: Robert.lavery@sympatico.ca

Address:
Robert Lavery & Associates
14 Woodway Trail
Toronto, Ontario CANADA M8Y 2B8

Asia Region

A-Plus Software Limited (ID#82011633)

Phone: + 852-2366 8392
Email: info@a-plussoft.com
Website: www.a-plussoft.com/en/orchid.php

Address:
5/F Goldsland Building
22 Minden Avenue, Tsim Sha Tsui,
Kowloon Hong Kong

Australia and New Zealand Region

Sage Software Australia - Business Management Solutions (ERP & CRM)

Phone: 137 243 (13 SAGE)
Website: https://www.sage.com/au

Level 11, Zenith Tower B,
821 Pacific Hwy,
Chatswood NSW 2067

Africa Region

Sage South Africa (Pty) Ltd

Phone: +27 11 304 3000
Website: https://www.sage.com/za


6th Floor, Gateway West
22 Magwa Crescent
Waterfall 5-lr, Midrand, 2066

Middle East Region

Sage Middle East

Phone: +971 43900180
Website: https://www.sage.com/en-ae/support/contact-us

Office No. 118 Building No.11
Dubai Internet City (DIC)
Dubai, PO Box 500198
United Arab Emirates (UAE)

Learn More

Extender_Overview_Graphic
Examples of customisations using Extender
Wed, 01 Mar 2017
See some examples of how solution providers can use Orchid's Extender Add-On to tailor Sage 300 implementations to their specific client's requirements in a cost effective manner. 
 
Extender
Can Extender Do This?
Thu, 30 Jul 2020
"Can Sage 300 do this?" Using Orchid Extender will often, but not always, make the answer "Yes". We'd like to share the process we use for considering and scoping an Extender-based solution.
 
Extended Notes
Extended Notes...revisited
Tue, 25 Aug 2020
With Notes + Extender, the whole really is greater than the sum of the parts. 3 years after coining the term Extended Notes we take another look at some of the many creative applications our business partners are finding for it.