mcpField
P
purchase-order-summarization

purchase-order-summarization

github.com/happy-technologies-llcその他4141 回インストール2 日前に更新
リポジトリ

purchase-order-summarization について

ServiceNow Sourcing and Procurement Operationsで発注書を要約するスキルです。調達担当者が注文状況、予算、納期リスクを確認でき、POヘッダー、明細、受領記録、ベンダー情報をまとめます。

主な機能

  1. 01POヘッダーと明細の取得
  2. 02入荷状況の追跡
  3. 03PO支出と予算の比較
  4. 04納期遅延リスクの特定
  5. 05注文と購買申請の関連付け

活用シーン

  1. 01発注書の全体状況の確認
  2. 02納入約束に対する配送の追跡
  3. 03予算消化状況の評価
  4. 04納期遅延の可能性がある注文の特定

MCP 対応

SN-Get-RecordやSN-Query-TableなどのMCPツールで、発注書、明細、受領記録、ベンダーレコードを取得する方法を説明します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/happy-technologies-llc/happy-platform-skills --skill purchase-order-summarization

インストール後、Claude Code で/purchase-order-summarizationを入力して読み込まれたか確認します。

詳細

購買発注書の要約

概要

このスキルでは、ServiceNow Sourcing and Procurement Operations で購買発注書を要約するための体系的なアプローチを提供します。次のことに役立ちます。

  • proc_po と proc_po_item から、すべての明細項目を含む完全な PO 詳細を取得する
  • proc_rec_slip_item を使用して、納品状況と受領の進捗を追跡する
  • PO の支出額を予定予算と比較して、予算への影響を評価する
  • 納品予定日と受領の差異に基づいて、納品遅延のリスクがある注文を特定する
  • PO を元となる申請および要求された品目に関連付ける

使用する場面: 調達担当者が PO の状況をまとめて確認する必要がある場合、確約に対する納品状況を追跡する場合、または予算の消化状況と納品リスクを評価する場合に使用します。

前提条件

  • ロール: sn_procurement.manager、sn_procurement.analyst、または procurement_user
  • プラグイン: com.sn_procurement(Sourcing and Procurement Operations)が有効化されていること
  • アクセス権: proc_po、proc_po_item、proc_rec_slip_item、core_company、sc_req_item への読み取りアクセス
  • 知識: 組織の PO ライフサイクルの状態と納品 SLA に関する理解

手順

ステップ 1:購買発注書のヘッダーを取得する

ベンダー、金額、日付などの PO の基本詳細を取得します。

MCP を使用する場合(Claude Code/Desktop):

Tool: SN-Get-Record
Parameters:
  table_name: proc_po
  sys_id: [po_sys_id]
  fields: sys_id,number,vendor,total_cost,state,ordered_date,expected_delivery,currency,ship_to,bill_to,requested_by,purchase_order_type,payment_terms,contract,description,short_description

PO 番号で検索する場合:

Tool: SN-Query-Table
Parameters:
  table_name: proc_po
  query: number=PO0012345
  fields: sys_id,number,vendor,total_cost,state,ordered_date,expected_delivery,currency,ship_to,bill_to,requested_by,purchase_order_type,payment_terms,contract
  limit: 1

REST API を使用する場合:

GET /api/now/table/proc_po?sysparm_query=number=PO0012345&sysparm_fields=sys_id,number,vendor,total_cost,state,ordered_date,expected_delivery,currency,ship_to,bill_to,requested_by,purchase_order_type,payment_terms,contract&sysparm_limit=1&sysparm_display_value=true
ステップ 2:明細項目を取得する

購買発注書のすべての明細項目を取得します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: proc_po_item
  query: purchase_order=[po_sys_id]^ORDERBYline_number
  fields: sys_id,line_number,item_description,model,part_number,quantity,unit_price,total_cost,received_quantity,state,expected_delivery,cat_item,requested_item
  limit: 100

REST API を使用する場合:

GET /api/now/table/proc_po_item?sysparm_query=purchase_order=[po_sys_id]^ORDERBYline_number&sysparm_fields=sys_id,line_number,item_description,model,part_number,quantity,unit_price,total_cost,received_quantity,state,expected_delivery,cat_item,requested_item&sysparm_limit=100&sysparm_display_value=true
ステップ 3:入庫状況を確認する

入庫伝票項目をクエリして、納品済みの品目を確認します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: proc_rec_slip_item
  query: purchase_order=[po_sys_id]^ORDERBYreceived_date
  fields: sys_id,po_item,quantity_received,received_date,receiving_slip,condition,notes,accepted_quantity,rejected_quantity
  limit: 100

REST API を使用する場合:

GET /api/now/table/proc_rec_slip_item?sysparm_query=purchase_order=[po_sys_id]^ORDERBYreceived_date&sysparm_fields=sys_id,po_item,quantity_received,received_date,receiving_slip,condition,notes,accepted_quantity,rejected_quantity&sysparm_limit=100&sysparm_display_value=true
ステップ 4:ベンダー詳細を取得する

状況を把握するため、サプライヤー情報を取得します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: core_company
  query: sys_id=[vendor_sys_id]
  fields: sys_id,name,stock_symbol,vendor_type,city,state,country,phone,contact,vendor_rating
  limit: 1

REST API を使用する場合:

GET /api/now/table/core_company/[vendor_sys_id]?sysparm_fields=sys_id,name,vendor_type,city,state,country,phone,contact,vendor_rating&sysparm_display_value=true
ステップ 5:納品遅延のリスクを特定する

納品予定日を過ぎても品目が未受領の PO をクエリします。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: proc_po
  query: expected_delivery<javascript:gs.nowDateTime()^state=ordered^ORstate=partially_received
  fields: sys_id,number,vendor,total_cost,expected_delivery,ordered_date,state
  limit: 50
  order_by: expected_delivery

明細項目レベルでリスクを評価する場合:

Tool: SN-Query-Table
Parameters:
  table_name: proc_po_item
  query: expected_delivery<javascript:gs.nowDateTime()^received_quantity<quantity^stateNOT INcancelled,received
  fields: sys_id,purchase_order,item_description,quantity,received_quantity,expected_delivery,state
  limit: 50
  order_by: expected_delivery

REST API を使用する場合:

# POs past expected delivery
GET /api/now/table/proc_po?sysparm_query=expected_delivery<javascript:gs.nowDateTime()^state=ordered^ORstate=partially_received&sysparm_fields=sys_id,number,vendor,total_cost,expected_delivery,ordered_date,state&sysparm_limit=50&sysparm_display_value=true

# Line items past expected delivery with outstanding quantities
GET /api/now/table/proc_po_item?sysparm_query=expected_delivery<javascript:gs.nowDateTime()^received_quantityLESSTHANquantity^stateNOT INcancelled,received&sysparm_fields=sys_id,purchase_order,item_description,quantity,received_quantity,expected_delivery,state&sysparm_limit=50&sysparm_display_value=true
ステップ 6:元となる依頼に関連付ける

PO の明細項目を、要求された品目および購買申請までさかのぼって確認します。

MCP を使用する場合:

Tool: SN-Query-Table
Parameters:
  table_name: sc_req_item
  query: sys_id=[requested_item_sys_id]
  fields: sys_id,number,short_description,request,requested_for,state,stage,price,quantity
  limit: 1

REST API を使用する場合:

GET /api/now/table/sc_req_item/[requested_item_sys_id]?sysparm_fields=sys_id,number,short_description,request,requested_for,state,stage,price,quantity&sysparm_display_value=true
ステップ 7:PO の要約を作成する

収集したデータをまとめます。

=== PURCHASE ORDER SUMMARY ===
PO Number: PO0012345
State: [state] | Type: [purchase_order_type]
Vendor: [vendor_name] ([city], [country])
Ordered: [ordered_date] | Expected Delivery: [expected_delivery]
Total Cost: [currency] [total_cost]

LINE ITEMS: [count] items
| # | Description | Qty | Unit Price | Total | Received | Status |
|---|------------|-----|-----------|-------|----------|--------|
| 1 | [desc]     | 100 | $10.00    | $1,000| 100      | Received |
| 2 | [desc]     |  50 | $25.00    | $1,250|  30      | Partial  |
| 3 | [desc]     |  25 | $50.00    | $1,250|   0      | Ordered  |

RECEIPT STATUS:
Total Items: [total_qty] | Received: [received_qty] ([pct]%)
Fully Received Lines: [count] of [total_lines]
Last Receipt Date: [date]

DELIVERY RISK:
- Line 2: 20 units outstanding, [days] days past expected delivery
- Line 3: 25 units not yet shipped, delivery due in [days] days

BUDGET IMPACT:
Requisition: REQ0009876 | Requested By: [name]
Original Estimate: $[est] | PO Total: $[actual] | Variance: $[diff] ([pct]%)

RELATED INVOICES:
- INV-2024-0456: $[amount] - [state]

ツールの使用

MCP ツールのリファレンス
ツール使用する場面
SN-Query-TablePO、明細項目、受領、ベンダー、購買申請をクエリする
SN-Natural-Language-Search自然言語で検索する(例:「Dell の納品遅延中の購買発注書を探す」)
SN-Get-Recordすべてのフィールドを含む単一の PO レコードを取得する
REST API リファレンス
エンドポイントメソッド目的
/api/now/table/proc_poGET購買発注書をクエリする
/api/now/table/proc_po_itemGETPO の明細項目を取得する
/api/now/table/proc_rec_slip_itemGET入庫状況を確認する
/api/now/table/core_companyGETベンダー詳細
/api/now/table/sc_req_itemGET元となる要求品目
/api/now/table/sn_spo_requisitionGET購買申請の詳細
/api/now/table/sn_proc_invoiceGET関連する請求書

ベストプラクティス

  • 一部受領を追跡する: PO の合計だけでなく、必ず明細項目レベルで received_quantity と quantity を比較します
  • 納品遅延項目を早期に警告する: リスクしきい値を設定します(例:納品予定日の3日前になっても受領がない場合)
  • ベンダーの状況を含める: ベンダーの評価と履歴は、リスク評価に重要な背景情報を与えます
  • 予算と比較する: 予算の差異を追跡するため、必ず PO の支出額を元となる購買申請に関連付けます
  • 表示値を使用する: sysparm_display_value=true を指定して、読みやすいベンダー名と状態を取得します
  • 変更を確認する: 変更注文を示す可能性のある PO の改訂履歴や関連 PO を確認します

トラブルシューティング

「PO の明細項目が見つかりません」

原因: PO に明細項目を追加せずに作成したか、項目が関連テーブルに登録されている可能性があります。 解決策: proc_po_item の purchase_order 参照フィールドが PO の sys_id と一致することを確認します。項目にカスタム明細テーブルが使われているか確認します。

「受領数量が発注数量を超えています」

原因: ベンダーによる過剰出荷、または受領伝票エントリーの重複が考えられます。 解決策: po_item で proc_rec_slip_item を検索して重複がないか確認し、倉庫の受領担当チームにも確認します。

「納入予定日が空です」

原因: PO の作成時にフィールドが入力されていません。 解決策: 各明細項目の expected_delivery フィールドを確認します。このフィールドは個別に設定されている場合があります。ベンダーに最新の納入予定を問い合わせます。

「PO を購買依頼にリンクできません」

原因: 購買依頼を経由せず、PO が直接作成された可能性があります。 解決策: PO 明細項目の requested_item フィールドを確認します。または、ベンダーと期間で sn_spo_requisition を検索します。

例

例 1:単一 PO の概要

シナリオ: ステータス会議向けに PO0023456 の概要を作成します。

Tool: SN-Query-Table
Parameters:
  table_name: proc_po
  query: number=PO0023456
  fields: sys_id,number,vendor,total_cost,state,ordered_date,expected_delivery,currency
  limit: 1
Tool: SN-Query-Table
Parameters:
  table_name: proc_po_item
  query: purchase_order.number=PO0023456
  fields: line_number,item_description,quantity,unit_price,total_cost,received_quantity,state
  limit: 50

出力:

PO0023456 - SUMMARY
Vendor: TechSupply Inc | State: Partially Received
Ordered: Feb 28, 2026 | Expected: Mar 15, 2026 (4 DAYS OVERDUE)
Total: $47,500.00

LINE ITEMS:
1. Laptop Dell Latitude 5540 x20 @ $1,200 = $24,000 - RECEIVED (20/20)
2. Docking Station WD22TB4 x20 @ $350 = $7,000 - RECEIVED (20/20)
3. Monitor Dell U2723QE x40 @ $412.50 = $16,500 - PARTIAL (25/40)

RISK: Line 3 has 15 monitors outstanding, 4 days past expected delivery.
ACTION: Contact TechSupply for updated ETA on remaining monitors.
例 2:納期遅延リスクレポート

シナリオ: 納期遅延のリスクがあるすべての PO のレポートを作成します。

Tool: SN-Query-Table
Parameters:
  table_name: proc_po
  query: expected_delivery<javascript:gs.nowDateTime()^stateINordered,partially_received^ORDERBYexpected_delivery
  fields: number,vendor,total_cost,expected_delivery,state
  limit: 25

出力:

LATE DELIVERY RISK REPORT - Mar 19, 2026

OVERDUE (past expected delivery):
1. PO0023456 - TechSupply Inc - $16,500 remaining - 4 days overdue
2. PO0023401 - Office Depot - $3,200 remaining - 7 days overdue
3. PO0023389 - Cisco Systems - $142,000 remaining - 12 days overdue

AT RISK (delivery within 3 days, no receipt activity):
4. PO0023501 - AWS Corp - $28,000 - due Mar 21
5. PO0023498 - Grainger - $5,600 - due Mar 22

TOTAL AT RISK: $195,300 across 5 POs
RECOMMENDED: Escalate PO0023389 (Cisco) - 12 days overdue, high value.
例 3:予算への影響分析

シナリオ: 第 1 四半期の PO 実績と購買依頼の見積もりを比較します。

Tool: SN-Query-Table
Parameters:
  table_name: proc_po
  query: ordered_date>=2026-01-01^ordered_date<2026-04-01^state!=cancelled
  fields: number,vendor,total_cost,ordered_date,state
  limit: 200

出力:

Q1 2026 BUDGET IMPACT
Total POs Issued: 67
Total Committed: $1,245,600
Total Received/Invoiced: $892,300
Outstanding Commitments: $353,300

BY CATEGORY:
  IT Hardware: $456,000 (37% of total)
  Software Licenses: $312,000 (25%)
  Office Supplies: $98,600 (8%)
  Professional Services: $379,000 (30%)

VARIANCE FROM BUDGET:
  Allocated: $1,400,000
  Committed: $1,245,600
  Remaining: $154,400 (11% under budget)

関連スキル

  • procurement/invoice-management - 三者照合と請求書処理
  • procurement/procurement-summarization - 調達案件とパイプラインの概要
  • procurement/sourcing-summarization - ソーシングイベントと入札分析
  • procurement/supplier-recommendation - ベンダーのパフォーマンスとスコアリング
  • catalog/request-fulfillment - カタログリクエストの履行状況を追跡

コメント