使用我们的火灾报告系统...
跟踪卡车上的人... 所以卡车A,卡车B,卡车C
我可以得到总工作人员的数量 - 但不是每辆卡车......我有点想法...... 使用ColdFusion 8
我知道这个(车辆编号)nvid的东西不起作用 - 只计算总人数而不是单个卡车。每辆卡车都有一个独特的ID和附加的工作人员变量...... CFInserts可以很好地处理总数而不是每个卡车号。
关于如何跟踪每辆卡车上员工人数的想法? THX ...
<cfset nvid = 0>
<cfloop from="1" to="#st.recordcount#" index="i">
<cfif IsDefined("form.checkbox1_#i#")>
<cfoutput>
<cfset newvid = "vid_"&#variables.i#>
<cfset newloginid = "checkbox1_"&#variables.i#>
<cfset vid = "#Evaluate(variables.newvid)#">
<cfset nvid = nvid + 1>
<cfset loginid = "#Evaluate(variables.newloginid)#">
<br>
NewVid - #newvid# and VID - #vid#
<br>
cfquery name="insert" datasource="fire_report">
INSERT INTO stafflist (id, unitid, loginid)
VALUES (#id#, #vid#, #loginid#);
/cfquery>
<br>
<br>
</cfoutput>
</cfif>
</cfloop>
答案 0 :(得分:0)
您可能需要查看数据模型。我怀疑在现实生活中,分配给每辆卡车的人员会随着时间的推移而改变。您的代码示例中没有任何内容表明您已经考虑过这一点。
关于计算每辆卡车的人的具体问题,这样的事情会起作用。
select TruckName, count(*) PeoplePerTruck
from YourTruckTable join stafflist on TruckId = UnitId
group by TruckName
答案 1 :(得分:-1)
决定插入后检查数据.. 它有效,也许这是最简单的方法,除非任何人有更简单的事情......
基本上 - 如果数字没有加上团体检查 - 我将其定位为删除之前插入的数据并强制他们再次执行...
Check Data After Insert???
<cfquery name="tcheck" datasource="fire_report">
select * from stafflist
order by unitid
</cfquery>
<br>
<cfoutput query="tcheck" group=unitid>
<cfset groupCount = 0>
<cfoutput>
#unitid#
<cfset groupCount = groupCount + 1>
</cfoutput>
<br><br>Check vs Original
<br>
<cfquery name="ucheck" datasource="fire_report">
select * from unit
WHERE ID=#id# and unitid = #unitid#
</cfquery>
Original: <cfoutput>#ucheck.unitid# - #ucheck.numff# </cfoutput>
GroupCount = #groupCount#
<br><br><cfif ucheck.numff NEQ groupCount>
Bad<br>
<cflocation url="staff.cfm?id=#id#&src=del">
<cfelse>All Good<br></cfif>
</cfoutput>