0
我有两个数据表stock_incomes,stock_outcomes和stock_outcomes_fifo(一个我插入预先计算的数据):FIFO计算
stock_incomes(存储剩菜数据)
id| Levtv
-----------
7 | 100
8 | 250
9 | 350
stock_outcomes(这里是从stock_incomes点)
id| Quantity
--------------
1 | 150*
我没有问题,当stock_outcomes.Quantity小于100(分钟(同上),请参阅下面我的代码),但我不知道世界卫生大会t代码写我可以得到计算,如果结果是> 100。在我的例子中,我用150,我想在接下来的表来获取数据:
stock_outcomes_fifo(一个我想从以前的两个表插入预先计算的数据)
id| IncomeId| OutcomeId| OutcomePart| Leftv
---------------------------------------------
1 | 7 | 1 | 100 | 0
2 | 8 | 1 | 50 | 200
这里是我的里面的问题代码(见代码的最后一部分):
<?php
include_once("config.inc.php");
include_once("db.class.php");
// stock_outcomes
$db = new db($host, $database, $user, $passwd);
$sql = "SELECT * FROM stock_outcomes WHERE Id = '1'";
$mas = $db->get_array($sql);
if($mas) {
foreach ($mas as $k => $v) {
$OutcomeId = $mas[$k]['Id'];
$OutcomeQuantity = $mas[$k]['Quantity'];
}
}
// stock_incomes
$sql = "select * from stock_incomes where Id = (select min(Id) from stock_incomes where Leftv > 0)";
$mas = $db->get_array($sql);
if($mas) {
foreach ($mas as $k => $v) {
$IncomeId = $mas[$k]['Id'];
$IncomeLeftv = $mas[$k]['Leftv'];
}
}
// insert into stock_outcomes_fifo
if ($OutcomeQuantity <= $IncomeLeftv) {
$OutcomePart = $OutcomeQuantity;
$FifoLeftv = $IncomeLeftv - $OutcomeQuantity;
mysql_query("INSERT INTO `stock_outcomes_fifo` (IncomeId,OutcomeId,OutcomePart,Leftv) VALUES ($IncomeId, $OutcomeId, $OutcomePart, $FifoLeftv)");
}
if ($OutcomeQuantity > $IncomeLeftv) {
// I have no idea what php function to use in this case... please give me direction, thank you...
}
?>
我编辑了你的文章,使代码更具可读性,但你的问题仍然有点不清楚。你能再看看你的问题,看看你是否可以改写它来使它更容易理解? – jbafford