日本の商習慣に対応したSAP支払条件(OBB8 / Terms of Payment)のテンプレート提案ツールです。
🌐 デモ: https://kmh-no3.github.io/obb8-studio/
SAPの支払条件設定は「要件→パラメータ→計算結果」が定型的でテンプレート化に向いていますが、基準日(Baseline date)運用や固定日払いなど、実装と運用の組み合わせ次第でズレが起きやすい領域です。
このツールは、日本の商習慣に合わせた支払条件の設定値を自動提案し、SAP OBB8への投入値を生成します。
- 📋 支払パターンの選択: 月末締め、20日締めなど、日本で頻出する支払パターンから選択
- ⚙️ 基準日運用モードの選択: 請求書日付・転記日付・締日基準から運用方針に合わせて選択
- 🎯 自動生成される内容:
- OBB8投入値(T052相当の行セット)
- 推奨支払条件コード(命名規則に基づく)
- 基準日モードごとの注意事項
- テストケース(最低5件)
- 月末締 翌月末払い
- 月末締 翌々月末払い
- 20日締 翌月末払い(2行構成)
画面上部から、要件に合う支払パターンを選択します。各パターンには以下の情報が表示されます:
- 締日と支払日の組み合わせ
- サイト(支払期間)
- 行構成(単行 or 複数行)
システムの運用方針に合わせて基準日モードを選択します:
- A(請求書日付): 請求書の日付を基準に支払期日を計算
- B(転記日付): 会計伝票の転記日付を基準に支払期日を計算(推奨)
- C(締日基準): 締日に寄せて転記、またはZFBDTを締日に寄せる運用
以下の情報が自動生成されます:
- 推奨コード:
JP_EOM_EOM_M1などの命名規則に基づくコード - OBB8投入値: 日限、固定日、追加月数、追加日数の値
- 注意事項: 選択した基準日モードでの注意点
- テストケース: 実装前の検証用ケース
トランザクションOBB8で実際の設定を行います。(本ツールは提案のみで、自動設定は行いません)
- このツールは検討支援を目的としており、実装の確定を保証するものではありません
- SAP OBB8への投入方法や、実際のシステム設定は別途必要です
- 設定前に必ず実機でテストを実施してください
- SAP公式ドキュメントもあわせてご確認ください
以下の機能はMVPでは対応していません:
- 休日補正: 営業日ベースの支払期日調整
- 割引(スキント): 早期支払割引の設定
- 支払プログラム連携: F110等との連携設定
- 銀行連携: DME、振込データ作成
- Framework: Next.js 15 (App Router)
- Language: TypeScript
- Styling: Tailwind CSS
- Runtime: Node.js 20+
- Hosting: GitHub Pages
- Node.js 20以上
- npm 10以上
# 依存関係のインストール
npm install
# 開発サーバーの起動
npm run devブラウザで http://localhost:3000 を開いてください。
# 静的エクスポート(GitHub Pages用)
npm run buildビルド結果は out/ ディレクトリに出力されます。
このプロジェクトをGoogle Drive上で開発する場合、同期処理によりnpm installが正常に完了しないことがあります。
推奨対応:
- プロジェクトをローカルディスク(C:ドライブなど)にコピーして使用
- または、Google Driveの設定で
node_modulesフォルダを同期対象から除外
obb8-studio/
├── app/ # Next.js App Router
│ ├── page.tsx # メインページ
│ ├── layout.tsx # レイアウト
│ └── globals.css # グローバルスタイル
├── components/ # Reactコンポーネント
│ ├── PatternSelector.tsx
│ ├── BaselineModeSelector.tsx
│ └── ResultDisplay.tsx
├── lib/ # ビジネスロジック
│ ├── patterns.ts # テンプレートデータ
│ └── code-generator.ts # コード生成ロジック
├── types/ # TypeScript型定義
│ └── index.ts
├── .github/
│ └── workflows/ # GitHub Actions
│ └── deploy.yml # GitHub Pages自動デプロイ
└── README.md
{
day_limit: number; // 日限(1〜31、末日は31)
fixed_day: number; // 固定日(10/20/25/31=月末)
add_months: number; // 追加月(1=翌月、2=翌々月)
add_days: number; // 追加日(ネット日数)
}- パターンID
- 表示名・説明
- 推奨基準日モード
- OBB8行セット
- 警告メッセージ
- テストケース
各パターンには最低5件のテストケースが含まれています。実装後は必ず以下を確認してください:
- 各テストケースの入力日で支払期日が正しく計算されるか
- 月末日の扱い(2月、30日月、31日月)
- 年またぎの計算
- 基準日モードによる差異
GitHub Pagesへの自動デプロイは、mainブランチへのプッシュ時に自動的に実行されます。
ワークフローの詳細は .github/workflows/deploy.yml を参照してください。
- パターン追加(15日締、10日締、固定日払いバリエーション)
- 割引(スキント)対応
- 休日補正ロジックの提案
- テストケース自動計算機能
- Excel/CSVエクスポート
- 多言語対応(英語)
このプロジェクトは個人ポートフォリオとして作成されています。
日本の商習慣における支払条件の複雑さと、SAP FI/MMモジュールの設計思想に敬意を表します。
作成者: obb8-studio
バージョン: 0.1.0 (MVP)
最終更新: 2026年1月