设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6032|回复: 0

[求助] 【求助! Equation公式】关于多品类补货的公式编写

  [复制链接]
发表于 2011-12-4 21:25:53 | 显示全部楼层 |阅读模式
求助高手啊~!!! 感激不尽!' {7 X5 }' z# D  ~. e
7 E: ]% b- z: k& E
如果我需要判断3种货物分别是否需要补货,并且设置其对应的补货量, 而由于模块容量限制, 我希望能用一个Equation来编辑公式从而达到目的, 用如下公式能否实现:
3 Z& P1 o1 L" O: d+ |* X; ?***********其中inv1,2,3分别表示3种货品各自的库存量,  ss1,2,3分别表示各自的安全库存 ***********- J/ ~2 H, G/ F
***********S1,2,3分别表示各自的最大库存,  out1,2,3分别为各自的补货量***********  m) a9 b- N) u; a5 x- S, r: B% h% l

) O. H  U+ N$ B& K; i+ B: m
4 y) s3 z5 P6 }0 ^if (inv1<=ss1 and inv2>ss2 and inv3>ss3)5 B* M. K+ [' n0 i. L; y6 U
out1=S1-inv1;  U6 c  }, C! ?
out2=0;; |; I# U0 @, B! O( H* I
out3=0; /货品1需要补货/3 D) f' |" n$ L" W
4 D: D7 Y0 X$ s- S
else if (inv1>ss1 and inv2<=ss2 and inv3>ss3)
3 V+ c0 Z7 Q9 m/ nout1=0;8 v# R5 y* w' t; q
out2=S2-inv2;
% U, x! x1 H- r$ _out3=0; /货品2需要补货/
9 W+ d( r/ N$ D% s/ \3 v2 q- ~9 N5 A& _$ e( O
else if (inv1>ss1 and inv2>ss2 and inv3<=ss3)
% J. o$ ^0 `( y& Uout1=0;
# l1 z# q7 ]. e3 P  i9 Rout2=0;/ l' b+ h9 Z! N: B; W' A: ]- i" Q
out3=S3-inv3; /货品3需要补货/
% f4 f/ e7 S4 ~4 g& y
: l9 k9 r$ @7 H: B5 I. E' @1 gelse if (inv1<=ss1 and inv2<=ss2 and inv3>ss3)
: x9 G6 Z( r! [3 ^- n* J, h7 k* |  Uout1=S1-inv1;
4 L! s+ ~3 `5 u6 W9 tout2=S2-inv2;
( C( t$ o# D# _  sout3=0; /货品1,2需要补货/0 X2 P. d0 r7 E9 U* Z3 w3 p6 M( S
- z" \9 R/ r) R
else if (inv1<=ss1 and inv2>ss2 and inv3<=ss3)
) Q8 ?- G$ U6 t  W' y2 Cout1=S1-inv1;) c/ _7 o3 e* y8 B( V
out2=0;4 g, m/ a' C8 }- y
out3=S3-inv3; /货品1,3需要补货/6 ~: Z, V, b, L7 h" Q' s' Q+ i* y

2 ~9 e9 L& M/ Z9 L1 s# ~else if (inv1>ss1 and inv2<=ss2 and inv3<=ss3)  h" L* Q1 N9 t( D5 `: ~
out1=0;% n' q4 d+ Z. V9 D6 G1 N
out2=S2-inv2;
! i' B% s4 I& Z1 Q3 wout3=S3-inv3; /货品2,3需要补货/( i; r$ Z# N. H& s% r- Y( ]5 |1 Q; @

: n$ K2 d1 f- G% jelse if (inv1<=ss1 and inv2<=ss2 and inv3<=ss3)
' D( ^$ R& }/ `8 w2 m8 G0 n( }out1=S1-inv1;. X1 U8 f+ B2 W4 Z! Z
out2=S2-inv2;
( v4 Q% s4 L$ ]) l: o) fout3=S3-inv3; /货品1,2,3需要补货/2 `9 Q1 Q. p# J, D
5 M/ L) Z+ R  j+ t! i: Z
问题1: 我用上述公式写入Equation模块,提示错误,"Found ELSE, expecting: ++ -- <identifier> ABORT BREAK CONTINUE...",
; F+ z6 q% ~- p但是如果把所有的else if 中的else去掉, 即没有提示错误. 不过我新建了一个简易的模型测试了一下, 上述公式不能达到我想要的效果.; @4 [+ t$ x0 I% Y+ p& l

! K7 p; D6 g3 |7 V, A1 u请问,需要如何编写公式才能达到实时判断, 3种产品分别需要多少补货量呢?
8 z1 a# e- [* H谢谢~!!!!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-8-9 12:12 , Processed in 0.017454 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表