该代码主要涉及两个数据源:主表 t_dwh (本地库)和 视图 cfdbdgps.v_mass_num (外部库)。
以下是具体操作和完整的 SQL 语句:
1. 页面加载/查询数据 (LoadData)
功能:查询未删除的垛位信息,并关联外部视图获取船名和货名。
数据源:t_dwh (主表), cfdbdgps.v_mass_num (关联表)
SQL语句:
SQL
select a.f_id,a.f_dwh,a.f_zdcs,b.vessel_name,b.cargo_name,a.f_adduser,a.f_addtime,a.f_edituser,a.f_edittime
from t_dwh a
left join cfdbdgps.v_mass_num b on a.f_dwh=b.mass_num
where a.f_deltime is null
order by a.f_dwh
2. 添加数据 (btnAdd_Click)
功能:首先检查垛位号是否存在,如果不存在则插入新记录(使用序列生成ID)。
数据源:t_dwh
SQL语句 (查重):
SQL
select * from t_dwh where f_deltime is null and f_dwh='{TextBox1.Text}'
SQL语句 (插入):
SQL
insert into t_dwh (f_id,f_dwh,f_zdcs,f_adduser,f_addtime)
values (seq_t_dwh.nextval,'{0}',{1},'{2}',to_date('{3}','yyyy-mm-dd hh24:mi:ss'))
3. 修改数据 (btnAmend_Click)
功能:修改选中的记录。修改前会检查新的垛位号是否与其他记录冲突(排除自身ID)。
数据源:t_dwh
SQL语句 (查重):
SQL
select * from t_dwh where f_deltime is null and f_dwh='{TextBox1.Text}' and f_id!={list.Items[k].Cells[2].Text}
SQL语句 (更新):
SQL
update t_dwh
set f_dwh='{0}',f_zdcs={1},F_EDITUSER='{2}',F_EDITTIME=to_date('{3}','yyyy-mm-dd hh24:mi:ss')
where f_id={4}
4. 删除数据 (btnDel_Click)
功能:逻辑删除(软删除),更新删除人和删除时间,不物理删除数据。
数据源:t_dwh
SQL语句:
SQL
update t_dwh
set F_DELUSER='{0}',F_DELTIME=to_date('{1}','yyyy-mm-dd hh24:mi:ss')
where f_id={2}

Comments NOTHING