graph TD
Start((开始)) --> A[填写出库单:出库编号、出库日期、经办人、备注]
A --> B[选择药品:药品编号、药品名称、规格]
B --> C[填写数量与单价]
C --> D{数量是否大于库存量?}
D -->|是| E[提示库存不足,返回修改数量]
E --> C
D -->|否| F{单价是否合规?}
F -->|是| G[计算总金额]
F -->|否| H[提示单价异常,返回修改单价]
H --> C
G --> I{经办人权限是否有效?}
I -->|是| J[保存出库单]
I -->|否| K[提示经办人无权限,返回修改经办人]
K --> A
J --> L{备注是否填写完整?}
L -->|是| M[更新库存扣减]
L -->|否| N[提示备注缺失,返回补充备注]
N --> A
M --> O[生成出库记录并归档]
O --> End((结束))