以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  生记录的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194667)

--  作者:lgz518
--  发布时间:2025/1/3 14:56:00
--  生记录的问题
如何根据表B的字段的天数和开始日期,级别为A的数据生成记录,如果生成记录的日期是表A的日期的星期六,星期日,或节假不为空时,跳过,向下日期生成日期?
如下图:

图片点击可在新窗口打开查看此主题相关图片如下:生成记录.jpg
图片点击可在新窗口打开查看


--  作者:y2287958
--  发布时间:2025/1/3 15:08:00
--  
这玩艺儿不难,但得上示例文件
--  作者:有点蓝
--  发布时间:2025/1/3 15:31:00
--  
遍历+查询

dim d1 as date = #12/30/2024#
dim cnt as integer = 5
dim dr as datarow
do while cnt > 0
dr = datatables("表A").find("日期=#" & d1 & "# and (星期 in (\'六\',\'日\') or 节假 is not null)")
if dr is nothing then
output.show(d1)
cnt -= 1
end if
d1 = d1.adddays(1)
loop

--  作者:lgz518
--  发布时间:2025/1/6 9:03:00
--  
如何实现根据表B和表A的数据和条件生成表C的记录?步骤如下:    
1.在表B中将项目相同和级别的数据进行合并;              
2.将表B按条件合并后的数据,根据状态一和状态二均为1时,生成表C的记录;      
3.生成表C记录时,生成开始日期如果是表A的中星期六,星期日,节假,要跳过,顺延下个日期?
注:1.表B中灰色的记录是状态一和状态二均不是1时,不生成表C的记录;          
2.表B中线蓝与绿色的虽然项目、状态一和状态二相同,但级别不同,需根据条件独立生成表C的记录。  


[此贴子已经被作者于2025/1/6 15:40:17编辑过]

--  作者:有点蓝
--  发布时间:2025/1/6 9:43:00
--  
先筛选状态一和状态二均为1的数据,然后遍历筛选后的数据,查询的用法参考3楼
--  作者:lgz518
--  发布时间:2025/1/6 10:38:00
--  
少一个很关键同类项目合并,再生成记录,

具体代码如何实现?

--  作者:有点蓝
--  发布时间:2025/1/6 10:53:00
--  
先做个分组统计:http://www.foxtable.com/webhelp/topics/0677.htm