python-plugin-index

Guides writing K/3 Cloud IronPython 2.7 form, list, operation, and report plugins.

24|7|Updated Apr 20, 2026
One-click install
npx skills add https://github.com/qiaolei227/opendeploy --skill python-plugin-index-qiaolei227
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: python-plugin-index
Source: https://github.com/qiaolei227/opendeploy/tree/main/knowledge/skills/k3cloud/python-plugin-index
Command: npx skills add https://github.com/qiaolei227/opendeploy --skill python-plugin-index-qiaolei227

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Writing K/3 Cloud (Kingdee Cloud Cosmic) Python plugins requires knowing which of the four plugin types to use, which event to override, and how IronPython 2.7 differs from modern Python. This Skill acts as an index that routes the agent to the right reference file before generating plugin code for registration tools like k3cloud_register_python_plugins. ## Core Features & Use Cases - Four plugin type coverage: Form plugins (AbstractBillPlugIn), list plugins (AbstractListPlugIn), operation service plugins, and SysReport plugins, each with minimal working templates and registration tool mapping. - On-demand reference loading: Events signature reference (130+ virtual methods with customer-validated frequency data), Model/View/Context API guide, and 9 reusable code templates loaded selectively via load_skill_file. - Debugging and error-handling playbooks: Step-by-step troubleshooting for plugins that don't trigger, plus the e.Cancel + KDException pattern for blocking saves with localized Chinese error messages. - Use Case: A consultant needs to block saving a sales order when the amount exceeds the customer's credit limit. The Skill routes to the BeforeSave template, the cross-table credit lookup pattern, and the correct exception-raising idiom, producing a ready-to-register pyBody. ## Quick Start Load this skill before generating any K/3 Cloud Python plugin code, then pull only the specific reference file matching your event, API, or template need.

Frequently Asked Questions about python-plugin-index

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I write a K/3 Cloud Python form plugin?▼

Inherit from AbstractBillPlugIn, override events like BeforeSave or DataChanged, and register via k3cloud_register_python_plugins. Code runs on IronPython 2.7, so avoid Python 3 syntax like f-strings and use the u prefix for Chinese strings.

How to block saving in Kingdee K/3 Cloud with a plugin?▼

Override BeforeSave and use both e.Cancel = True and raise KDException with an error code and Chinese message together. Setting only e.Cancel may be silently swallowed, while raising alone may not cancel the operation on all BOS versions.

What is the difference between form plugins and operation service plugins in K/3 Cloud?▼

Form plugins attach to the Form node and fire for all operations on that bill, while operation service plugins attach inside a specific FormOperation and run only when that operation executes. Use form plugins for built-in operation interception and service plugins for custom operations with inline logic.

Why is my K/3 Cloud Python plugin not triggering?▼

Check registration with k3cloud_list_form_plugins first, then verify the event name casing (BeforeSave, not beforeSave), confirm the plugin is attached to the correct parent bill, and refresh caches by pressing F5 in BOS Designer and re-logging into the client.

Does K/3 Cloud plugin development support Python 3 syntax?▼

No, K/3 Cloud plugins run on IronPython 2.7 frozen in 2014. F-strings, print() as a function, and other Python 3 features fail; use percent-formatting, u-prefixed Unicode strings, and strict 4-space indentation instead.