図解・スクリーン例
╔══════════════════════════════════════════════════════════════════════════════╗
║ T E C H S - S v6.05 / Technoa Corp. (株式会社テクノア) ║
║ Make-To-Order Discrete Manufacturing PMS · Reverse-Engineered ║
╚══════════════════════════════════════════════════════════════════════════════╝
┌──────────────────────────── INPUT (binary distribution) ─────────────────────────┐
│ │
│ Help/*.pdf ████████████████████████████████████████████ 509 files (Japanese)│
│ Reports/*.rdlc ██████████████████████████ 225 files (SSRS XML) │
│ Assembly/*.dll (UI) █████████████████████████████████ 563 DLLs (one/screen) │
│ Technoa.Techs.*.dll (common) ████████ 80 DLLs (domain libs)│
│ *.exe ▌ 12 EXEs │
│ Configs (*.ini, *.config, *.xml) ▌ ~10 files │
│ │
│ Total: ~1,400 files, 200MB on disk (TECHS.zip 195MB) │
└──────────────────────────────────────────────────────────────────────────────────┘
[PDFs] ─pdftotext──▶ [.txt corpus 509 files] ──┐
│
[RDLCs] ─Python ET──▶ [JSON + SQL extracts] ───┤
├──▶ ┌────────────────┐
[DLLs] ─ilspycmd───▶ [decomp/_t1+_t2 tree] ─┤ │ SYNTHESIS │
│ │ (3 subagents │
[Configs] ─Read─────▶ [arch & connection info]─┘ │ in parallel) │
└─────┬──────────┘
│
┌──────────────────────────────────▼───────────────────────┐
│ analysis/docs/ → 10 markdown specifications + README │
└──────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────┐
│ USER WORKSTATION (Windows) │
│ │
│ ┌──────────────────────────┐ ┌──────────────────────────┐ │
│ │ Technoa.Techs.Menu.exe │─load─▶ Technoa.Techs.UI. │ │
│ │ (MDI host, frmMenu) │ │ T<X><LL><id>.dll ×563 │ │
│ └──────────┬───────────────┘ └──────────┬───────────────┘ │
│ │ │ │
│ │ SOAP / HTTP │ │
│ ▼ ▼ │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ Technoa.Techs.ClientCommonLibrary + per-domain CommonLibs │ │
│ │ Order · Ship · Pay · Receipt · Allocate · Bom · Accept … │ │
│ └──────────────────────────┬──────────────────────────────────┘ │
└──────────────────────────────┼──────────────────────────────────────────┘
│ ASMX-SOAP, port 80
▼
┌──────────────────────────────────────────────────────────────────────────┐
│ APPLICATION SERVER (IIS) │
│ │
│ /TechsService6/ │
│ ┌──────────────────────────────────────────────────────────────────┐ │
│ │ TSS000001100.asmx (SI Common) TSS000002100.asmx (SI Menu) │ │
│ │ TSS<NNN>NNN100.asmx ×N (per-screen Service Interface) │ │
│ └──────────────────────┬───────────────────────────────────────────┘ │
│ │ layered: SI ▶ CM ▶ BE ▶ DA │
│ ▼ │
│ ┌──────────────────────────────────────────────────────────────────┐ │
│ │ Server Common Libraries (ServerCommonLibrary_S, lock framework) │ │
│ └──────────────────────────────────────────────────────────────────┘ │
└──────────────────────────────┬───────────────────────────────────────────┘
│ ADO.NET / SQL
▼
┌────────────────────────────────────────┐ ┌────────────────────────────┐
│ SQL Server │ │ SSRS │
│ ┌─────────────┐ ┌─────────────┐ │ │ /TechsReports │
│ │ TECHS6 │ │ EUCTOOL │ │ │ 225 RDLC reports │
│ │ (Mst/Trn/ │ │ (ad-hoc EUC)│ │ │ bound to Viw* / Udf* │
│ │ Wrk/Sys) │ │ │ │ │ │
│ └─────────────┘ └─────────────┘ │ └────────────────────────────┘
└────────────────────────────────────────┘
▲
│
┌────────────┴─────────────┐
│ External integrations │
│ · Seiryu (scheduling) │
│ · BtoB EDI platform │
│ · Outlook / Thunderbird │
│ · Excel templates │
│ · POP shop-floor data │
└──────────────────────────┘
╔═════════════════════════╗
║ M A S T E R D A T A ║
║ 12 · 178 screens · 35+ ents║
╚═══════════╤═════════════╝
│ references
▼
┌──────────────────────────────────────────────────────────────────────┐
│ │
┌─┴─────────┐ ┌──────────────┐ ┌─────────────┐ ┌────────────┐ ┌──────┴────────┐
│ 02 Sales │ │ 03 Schedule │ │ 04 BOM/ │ │ 05 Procure-│ │ 07 Operations │
│ Order2Cash│ │ Progress │ │ Process │ │ ment │ │ Work/Daily │
│ 69 screens│ │ 10 screens │ │ 13 screens │ │ 93 screens │ │ 31 screens │
└────┬──────┘ └──────┬───────┘ └─────┬───────┘ └─────┬──────┘ └──────┬────────┘
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
┌──────────────────────────────────────────────────────────────────────────┐
│ 08 Inventory │ 09 Cost │ 06 Payable │ 10 Journal/Acct │ 11 Budget │
│ 45 scrns │ 28 scrns │ 16 scrns │ 4 scrns │ 7 scrns │
└──────────────────────────────────────────────────────────────────────────┘
│
▼
╔═════════════════════════╗
║ I N F R A / X-cut ║
║ Auth · Lock · Audit · Msg ║
║ BtoB · Mail · POP · EUC ║
║ Seiryu · SSRS · Excel ║
╚═════════════════════════╝
┌─────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌────────┐ ┌──────┐ ┌──────┐
│引合 │───▶│見積 │───▶│受注 │───▶│製番 │───▶│ BOM展開│───▶│引当 │───▶│発注 │
│ M01 │ │ 1501 │ │02010 │ │02002 │ │ 04010 │ │05010 │ │05010 │
└─────┘ └──────┘ └──┬───┘ └──┬───┘ └────────┘ └──┬───┘ └──┬───┘
│ │ │ │
▼ ▼ ▼ ▼
CustomerCd SeibanCd IssueInd PurchaseOrder
│
┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌────┴───┐
│入金 │◀───│請求 │◀───│売上 │◀───│出荷 │◀───│日報 │◀───│作業 │◀───│ 検収/ │
│02050 │ │02041 │ │02030 │ │02020 │ │07020 │ │ WO │ │ 納入 │
└─┬────┘ └──────┘ └──────┘ └──────┘ └──────┘ │07010 │ │ 05030 │
│ └──────┘ └────────┘
▼ [closed monthly → 仕訳 → 元帳 → 月次決算]
消込
05210
╔═══════════════════════════════════════════╗
║ E N T I T Y P R E F I X E S ║
╠═══════════════════════════════════════════╣
║ ║
║ Mst* ▌▌▌▌▌▌▌▌▌▌▌▌▌ Master ║
║ Trn* ▌▌▌▌▌▌▌▌▌▌ Transaction ║
║ Wrk* ▌▌▌▌▌ Work / staging ║
║ His* ▌▌▌ History ║
║ Sys* ▌▌▌ System / audit ║
║ Ctm* ▌▌▌ Customization ║
║ Sym* ▌▌ System-meta ║
║ Viw* ▌▌▌▌▌ View (reports) ║
║ Udf* ▌ Tabular UDF ║
║ ║
║ Cd=code Nm=name Kbn=kind Flg=flag ║
║ Ymd=date Up=unitprice Qty=qty Amnt=$ ║
║ ║
╚═══════════════════════════════════════════╝
┌────────────────────────────┐
user save event ─────▶│ BEGIN TRAN │
│ SELECT * FROM WrkLock │
│ WITH(TABLOCKX,HOLDLOCK)│
│ SELECT * FROM WrkLockCtrl│
│ IF NOT EXISTS in CtmCompLock ─┐
│ INSERT CtmCompLock(table,key,user,when) │
│ COMMIT │
└─────────────┬──────────────┘ │ if exists
│ ▼
│ ┌────────────────────┐
│ │ return ES99120004 │
│ │ show MstMsg "他 │
│ │ ユーザが編集中" │
│ └────────────────────┘
▼
┌─────────────────────────┐
│ edit screen unlocked │
│ user types, hits Save │
│ validate CtmDtChkField │
│ UPDATE main row │
│ INSERT SysUpdRec audit │
│ DELETE CtmCompLock │
│ COMMIT │
└─────────────────────────┘
3 lock kinds: CtlApLock (per-app singleton)
CtlCompLock (per-row pessimistic)
CtlSameStartLock (cross-user run-once jobs e.g. monthly close)
/home/rmondo/repos/fab-forward-techs/analysis/
│
├── help_txt/ 509 PDF text files (1.5 MB)
├── rdlc_meta/ RDLC-derived data (~3 MB)
│ ├── all_rdlc.json 225 reports parsed
│ ├── all_sql.txt 20,731 lines of SQL
│ ├── fields_by_dataset.json
│ └── tables_and_views.txt 93 distinct views
├── decomp/ 43 decompiled .NET projects
│ ├── _t1_… 29 client common libraries
│ └── _t2_… 14 server-side fragment
└── docs/ SPECIFICATIONS (this is the deliverable)
│
├── README.md 82 lines overview & roadmap
├── 00-architecture.md 831 lines 3-tier arch + login flow
├── 01-features-catalog.md 769 lines 509 screens by module
├── 02-user-stories.md 355 lines ~200 stories, 22 modules
├── 03-use-cases.md 610 lines 20 end-to-end use-cases
├── 04-erd.md 1506 lines 110+ entities, 4 ER diagrams
├── 05-sequence-diagrams.md 1372 lines 14+ Mermaid sequence flows
├── 06-reports-catalog.md 278 lines 225 SSRS reports
├── 07-modules.md 71 lines DLL/UI taxonomy
├── 08-glossary.md 137 lines Japanese ⇄ English (90 terms)
└── 09-requirements.md 334 lines Functional + NFR
─────
6,345 lines of synthesized specs
SCREENS REPORTS ENTITIES USE-CASES STORIES
─────── ─────── ──────── ───────── ───────
Module 02 Sales 69 49 12 5 22
Module 03 Schedule 10 4 4 1 7
Module 04 BOM/Process 13 7 8 3 14
Module 05 Procurement 93 45 14 3 22
Module 06 Payable 16 8 6 1 10
Module 07 Operations 31 10 10 2 15
Module 08 Inventory 45 25 10 2 14
Module 09 Cost 28 30 11 2 16
Module 10 Journal 4 2 4 1 4
Module 11/12 Master/Bgt 185+ 45 35+ 2 25+
Infra (auth/lock/audit) — — 15 1 12
─────── ─────── ──────── ───────── ───────
TOTAL 509 225 ~110 20 ~200
Phase 1 ████░░░░░░░░░░░░░ Master CRUD (Deal/Item/Person/Dept/...) 2-4 wks
Phase 2 ██████░░░░░░░░░░░ BOM + Routing (PartsCompose, ProcessCompose) 2-3 wks
Phase 3 █████████░░░░░░░░ Order → Seiban → Production indication 3-5 wks
Phase 4 ████████████░░░░░ Allocation → PO → Receipt → Inspection 4-6 wks
Phase 5 ███████████████░░ Work-order → Daily-report → Cost rollup 4-5 wks
Phase 6 ██████████████████ Ship → Sale → Bill → Receive (O2C tail) 4-5 wks
Phase 7 █████████████████ Closing cycles + Journal export 3-4 wks
Phase 8 ███████░░░░░░░░░░ Reports ongoing
─────────────────────────────────────────────────────────────────────────────────
Total ~22-32 weeks for parity
┌────────────────────────────────────────────────────────────────┐
│ │
│ [█████████████████████████████████████████████████] 100% │
│ │
│ ✔ Recon │
│ ✔ PDF text extraction (509) │
│ ✔ RDLC parsing (225) │
│ ✔ .NET decompilation (43 projects) │
│ ✔ Feature taxonomy │
│ ✔ Synthesis: 11 markdown documents, 6,345 lines │
│ │
│ You can now start building your own PMS from analysis/docs/ │
│ │
└────────────────────────────────────────────────────────────────┘