Dynamics NAV 2013(非R2)SOAP API创建客户订单需调用哪些页面?
核心结论
创建客户订单时,不需要单独填充customer页面——除非你要同时创建全新客户。具体细节如下:
必用页面
salesorder_order:负责填写订单头部核心信息,比如已存在的客户编号、订单日期、付款方式等,这里的客户编号必须是系统里已有的客户ID,无需额外操作customer页面。salesorder_orderline:添加订单的商品明细行,填写商品编号、数量、单价等信息,关联对应salesorder_order的订单号即可。
无需涉及的页面
你列出的其他页面大多对应不同功能场景,创建常规客户订单时完全用不上:
order_headers、order_lines:属于系统底层通用订单表,NAV的SOAP API已经针对销售订单封装了专用的salesorder_order和salesorder_orderline,无需直接操作这两个基础表。salesorder_list:只是销售订单的列表查询页面,仅用于查看,不支持创建订单。salesorder_orderSalesLines:是订单与明细行的关联视图,不需要单独操作。webshop_salesorder_order、webshop_salesorder_orderline、webshop_customer:仅服务于电商对接场景,非网店订单同步需求可忽略。salescredit_credit、salescredit_creditline:对应销售退货/信用贷单,和正常销售订单创建无关。salesinvoice_invoice、salesinvoice_invoiceline:是销售发票相关页面,仅在订单后续开票环节使用,创建订单阶段无需触碰。
特殊场景
如果你的业务需要同时创建新客户和对应订单,才需要先通过customer页面创建客户记录,拿到生成的客户编号后,再填入salesorder_order的客户字段完成订单创建。
内容的提问来源于stack exchange,提问作者waltavista
相关产品推荐
相关产品推荐

