First read
../openerp-shared/SKILL.md. For objects not covered, use../openerp-discovery/SKILL.md。
Each object has two unified subcommands:
openerp <domain> <object> list [过滤] [--top N] [--page-all] [--format json|table|csv]—— Transaction documents are document-level (one row per document, without expanding entry lines)openerp <domain> <object> view --number <编号>—— View a single complete detail (including entry lines)
All objects have been integration-tested against real instances. To view entry details such as materials/quantities for a given document, use view。
A few objects' list is itself detail/balance-level (one material per row):purchase price(price list),inventory balance(real-time inventory),production ppbom / subcontract ppbom(material usage list),production mo(production order products),plan planorder(planning),engineering route(routing).
list Without filters, takes the first several rows;--jq can be trimmed; if over ~2000 rows, use --page-all。
Command List (domain object → FormId)
| Command | Object | FormId | Common Filters |
|---|---|---|---|
base material |
Material | BD_MATERIAL | --number --keyword |
base customer |
Customer | BD_Customer | --number --keyword |
base supplier |
Supplier | BD_Supplier | --number --keyword |
base department |
Department | BD_Department | --number --keyword |
base stock |
Warehouse | BD_STOCK | --number --keyword |
base employee |
Employee | BD_Empinfo | --number --keyword |
purchase requisition |
Purchase Requisition | PUR_Requisition | --bill-no --date-from/-to |
purchase order |
Purchase Order | PUR_PurchaseOrder | --bill-no --supplier --date-from/-to |
purchase instock |
Purchase Receipt | STK_InStock | --bill-no --supplier --date-from/-to |
purchase return |
Purchase Material Return | PUR_MRB | --bill-no --date-from/-to |
purchase price |
Purchase Price List | PUR_PriceCategory | --number --material |
sales order |
Sales Order | SAL_SaleOrder | --bill-no --customer --date-from/-to |
sales outstock |
Sales Outbound | SAL_OUTSTOCK | --bill-no --date-from/-to |
sales delivery |
Delivery Notice | SAL_DELIVERYNOTICE | --bill-no --date-from/-to |
sales return |
Sales Return | SAL_RETURNSTOCK | --bill-no --date-from/-to |
sales quote |
Sales Quotation | SAL_QUOTATION | --bill-no --date-from/-to |
sales returnnotice |
Return Notice | SAL_RETURNNOTICE | --bill-no --date-from/-to |
inventory misc-in |
Other Receipt | STK_MISCELLANEOUS | --bill-no --date-from/-to |
inventory misc-out |
Other Outbound | STK_MisDelivery | --bill-no --date-from/-to |
inventory transfer |
Direct Transfer | STK_TransferDirect | --bill-no --date-from/-to |
inventory transfer-apply |
Transfer Requisition | STK_TransferApply | --bill-no --date-from/-to |
inventory balance |
Real-Time Inventory On-Hand Quantity | STK_Inventory | --material --stock |
production mo |
Production Order | PRD_MO | --bill-no |
production ppbom |
Production Material Usage List | PRD_PPBOM | --bill-no --mo |
production pick |
Production Material Picking | PRD_PICKMTRL | --bill-no --date-from/-to |
production report |
Production Reporting | PRD_MORPT | --bill-no --date-from/-to |
production instock |
Production Receipt | PRD_INSTOCK | --bill-no --date-from/-to |
production return |
Production Material Return | PRD_ReturnMtrl | --bill-no --date-from/-to |
subcontract order |
Subcontracting Order | SUB_SUBREQORDER | --bill-no --date-from/-to |
subcontract ppbom |
Subcontracting Material Usage List | SUB_PPBOM | --bill-no |
subcontract pick |
Subcontracting Material Picking | SUB_PICKMTRL | --bill-no --date-from/-to |
subcontract return |
Subcontracting Material Return | SUB_ReturnMtrl | --bill-no --date-from/-to |
plan planorder |
Planned Order | PLN_PLANORDER | --bill-no --material |
plan forecast |
Forecast | PLN_FORECAST | --bill-no --date-from/-to |
engineering route |
Routing | ENG_Route | --number --material |
engineering workcenter |
Work Center | ENG_WorkCenter | --number --keyword |
workshop process |
Operation | PLM_STD_PROCESS | --keyword |
workshop in-output |
Workshop Input/Output | CB_SFCINOUTPUTBILL | --bill-no |
costing dimension |
Accounting Dimension | BD_FLEXITEMPROPERTY | --number --keyword |
BOM (Bill of Materials ENG_BOM) has independent commands:
openerp bom view --number/openerp bom list --material(see../openerp-bom)。
Examples
openerp base material list --keyword 控制器 --format table
openerp purchase order list --supplier 01.001 --date-from 2024-01-01 --top 50
openerp sales order view --number XSDD000006
openerp inventory transfer list --date-from 2024-01-01 --page-all
openerp inventory balance list --material 2.60.51.0439 # 某物料各仓现存量
openerp purchase price list --material 4.50.20.1549 --jq '.data'
Statistics: --sum / --group-by (common to list and query)
Client-side aggregation (automatically adds fields to the query, automatically fetches all data then computes):
# 5月销售总额(价税合计本位币) + 单数
openerp sales order list --date-from 2026-05-01 --date-to 2026-05-31 --sum FBillAllAmount_LC
# → {"count":717,"sum":8672253.86,"sumField":"FBillAllAmount_LC"}
# 5月按客户分组(金额降序)
openerp sales order list --date-from 2026-05-01 --date-to 2026-05-31 \
--sum FBillAllAmount_LC --group-by FCustId.FName
# → [{"group":"润材电子商务有限公司","count":23,"sum":815733.38}, ...]
# 只分组计数(不求和):每个供应商的采购订单数
openerp purchase order list --date-from 2026-01-01 --group-by FSupplierId.FName
Key points:--sum/--group-by 's fields must be queryable fields of that object (fields not in the default columns will be automatically added to the query); amount fields such as FBillAllAmount(total including tax),FBillAllAmount_LC(base currency),FBillAmount(excluding tax),FBillTaxAmount(tax amount).
Want to query objects outside the list?
Use the discovery layer:objects --keyword <词> to find FormId → schema <FormId> to query fields → query --form-id ... --fields ...(see ../openerp-discovery)。