我是 JAM.py 的新手,我正在尝试为飞机创建一个维护数据库。
在用于输入数据的表格上,我输入测速计时间(
tach_in
,航班开始)和出(tach_out
,航班结束)。
飞行时间的计算很简单。目前状态的一些图片:
我正在努力解决以下问题:
a) 每次使用表单创建新条目时,如何自动填充新的
tach_in
使其等于前一个(或最后一个)tack_out
?例如:
Flight N-2 tach_in = 100 tach_out = 101
FLight N-1 tach_in = 101 tach_out = 102
航班 N 是我当前使用以下表格输入的航班:我想要新的
tach_in
= 102(即:前一个/最后一个 tach_out
的值,我只需输入新的 tach_out
)
知道如何做到这一点吗?
b) 如何计算飞行时间的总和,以在每次输入后显示新的总时间 (
flight_total
)?
Flight N-2 tach_in = 100 tach_out = 101 flight_duration = 1 flight_total = 1
FLight N-1 tach_in = 101 tach_out = 102 flight_duration = 1 flight_total = 2
Flight N tach_in = 102 tach_out = 103 flight_duration = 1 flight_total = 3
谢谢您的帮助!
抱歉耽搁了。你找到解决办法了吗?
a) 很简单,只需获取最后一条记录并加 1 将其添加到您的表单中:
function on_before_post(item) {
if (item.is_new()) {
let copy = item.copy();
copy.open();
if (copy.rec_count ===0) {
item.entry_number.value = 1;
} else {
//item.entry_number.value = copy.rec_count + 1;
item.entry_number.value = item.entry_number.value + 1;
}
}
}
如果您克隆记录,可以在 https://msaccess.pythonanywhere.com/ 上看到。
b) 不确定我是否听懂了。摘要是自动创建的,就像上面的应用程序一样。如果表单上需要飞行持续时间(如图片所示),则只需使用 JS 计算即可。即:
function on_edit_form_shown(item) {
if (item.tach_out.value) {
item.flight_total.value = item.tach_out.value - item.tach_in.value;
}
}
如果视图网格上需要持续时间,请使用与 msaccess 类似的方法来获取实际金额。
希望这有帮助。