📄 ucdictcwwh.cs
字号:
#region 检索数据
private void RetrieveData(string bqId)
{
try
{
DbProxyClient proxy = App.DbProxy;
proxy.Clear();
proxy.AddRetrieveParam("p_bqid", bqId);
proxy.Retrieve(this.dwCwXx);
DataWindowChild dwc = dwCwXx.GetChild("bqid");
proxy.Clear();
proxy.Retrieve(dwc);
////+++房间ID下拉
DataWindowChild dwcfjmc = dwCwXx.GetChild("fjid");
proxy.Clear();
proxy.AddRetrieveParam("p_bqid", bqId);
proxy.Retrieve(dwcfjmc);
//---
DataWindowChild dwcCwLx = dwCwXx.GetChild("cwlx");
proxy.Clear();
proxy.AddRetrieveParam("p_flid",GyDmDefine.DMFL_CWLX);
proxy.Retrieve(dwcCwLx);
dwCwXx.Refresh();
}
catch (Exception ex)
{
MessageBox.Show("检索数据出错:" + ex.Message, MsgTitle.Error);
}
finally
{
this.m_IsModified = false;
btnSave.Enabled = false;
}
}
//修改提示
private DialogResult needSave()
{
DialogResult result = DialogResult.No;
if (this.m_IsModified)
{
result = MessageBox.Show(this, "数据已修改,是否需要保存?", MsgTitle.Prompt, MessageBoxButtons.YesNo, MessageBoxIcon.Question);
}
return result;
}
private void btnRefresh_Click(object sender, EventArgs e)
{
if (needSave() == DialogResult.Yes)
return;
this.RetrieveData(m_RetrieveParam);
}
#endregion
private void btnModify_Click(object sender, EventArgs e)
{
try
{
dwCwXx.SetProperty("DataWindow.ReadOnly", "No");
}
catch (Exception ex)
{
MessageBox.Show("设置数据窗口只读属性发生异常:" + ex.Message);
return;
}
this.btnAdd.Enabled = true;
this.btnStop.Enabled = true;
}
private void dwCwXx_EditChanged(object sender, EditChangedEventArgs e)
{
if (!this.m_IsModified)
{
this.m_IsModified = true;
this.btnSave.Enabled = true;
}
}
private int findCwh(string cwh, int editRow)
{
int findRow = dwCwXx.FindRow("cwh='" + cwh + "'", 1, this.dwCwXx.RowCount);
if(findRow== editRow)
{
if(editRow<dwCwXx.RowCount)
{
findRow = dwCwXx.FindRow("cwh='" + cwh + "'", editRow + 1, this.dwCwXx.RowCount);
}
}
return findRow;
}
private void dwCwXx_ItemChanged(object sender, Sybase.DataWindow.ItemChangedEventArgs e)
{
switch (e.ColumnName)
{
case "cwh":
if (e.Data == null || e.Data == "")
{
MessageBox.Show("床位号不允许为空,请输入!");
e.Action = ItemChangedAction.Reject;
}
else
{
//检查是否存在重复床位号
try
{
if(this.findCwh(e.Data, e.RowNumber)>0)
{
MessageBox.Show("床位号已存在,不允许重复!", MsgTitle.Prompt);
e.Action = ItemChangedAction.RejectAndAllowFocusChange;
}
}
catch(Exception ex)
{
MessageBox.Show("重复床位号是否已存在是发生异常:" + ex.Message, MsgTitle.Error);
e.Action = ItemChangedAction.Reject;
}
}
break;
//case "fjid":
// if (e.Data == null || e.Data.Trim() == "")
// {
// dwCwXx.SetItemNull(e.RowNumber, "fjid");
// return;
// }
// FSelect fSelect = null;
// try
// {
// if (dwCwXx.IsItemNull(e.RowNumber,"bqid"))
// {
// MessageBox.Show("??",MsgTitle.Warning);
// e.Action = ItemChangedAction.Reject;
// dwCwXx.SetItemNull(e.RowNumber,"fjid");
// return;
// }
// string bqId = dwCwXx.GetItemString(e.RowNumber,"bqid");
// fSelect = new FSelect();
// fSelect.SetTitle("房间信息");
// string sql = "SELECT A.FJID,A.FJMC FROM GY_FJXX A WHERE A.BQID='"+bqId+"' AND A.FJID LIKE '" + e.Data + "%'";
// fSelect.SetDataSource(sql, true);
// fSelect.AddShowColumn("FJID", "房间ID号", 300);
// fSelect.AddShowColumn("FJMC", "房间名称", 500);
// fSelect.AddMultiReturnColumn("FJID");
// DialogResult dResult = fSelect.ShowDialog(this);
// if (dResult == DialogResult.OK)
// {
// string[] retValue = fSelect.ReturnValue;
// //房间ID
// dwCwXx.SetItemString(e.RowNumber, "fjid", retValue[0]);
// e.Action = ItemChangedAction.RejectAndAllowFocusChange;
// }
// else
// {
// e.Action = ItemChangedAction.Reject;
// dwCwXx.SetItemNull(e.RowNumber, "fjid");
// }
// }
// catch (Exception ex)
// {
// MessageBox.Show("取房间信息发生异常:" + ex.Message, MsgTitle.Error);
// e.Action = ItemChangedAction.Reject;
// }
// finally
// {
// if (fSelect != null)
// fSelect.Dispose();
// }
// break;
case "zgxm":
if (e.Data == null || e.Data.Trim() == "")
{
dwCwXx.SetItemNull(e.RowNumber, "zzysid");
return;
}
FSelect fSelect2 = null;
try
{
fSelect2 = new FSelect();
fSelect2.SetTitle("职工信息");
string sql = "SELECT A.GH,A.ZGXM,B.KSMC,A.ZGID FROM GY_ZGXX A,GY_KSXX B WHERE A.SZKSID = B.KSID(+) AND A.ZT='0' AND (A.GH LIKE '" + e.Data + "%' OR A."+App.mrSrm +" LIKE '"+e.Data+"%')";
fSelect2.SetDataSource(sql, true);
fSelect2.AddShowColumn("GH", "工号", 200);
fSelect2.AddShowColumn("ZGXM", "姓名", 400);
fSelect2.AddShowColumn("KSMC", "科室名称", 400);
fSelect2.AddMultiReturnColumn("ZGID,ZGXM");
DialogResult dResult = fSelect2.ShowDialog(this);
if (dResult == DialogResult.OK)
{
string[] retValue = fSelect2.ReturnValue;
//主治医师ID
dwCwXx.SetItemString(e.RowNumber, "zzysid", retValue[0]);
e.Action = ItemChangedAction.RejectAndAllowFocusChange;
//主治医师名称
dwCwXx.SetItemString(e.RowNumber, "zgxm", retValue[1]);
}
else
{
e.Action = ItemChangedAction.Reject;
dwCwXx.SetItemNull(e.RowNumber, "zzysid");
dwCwXx.SetItemNull(e.RowNumber, "zgxm");
}
}
catch (Exception ex)
{
MessageBox.Show("取职工信息发生异常:" + ex.Message, MsgTitle.Error);
e.Action = ItemChangedAction.Reject;
dwCwXx.SetItemNull(e.RowNumber, "zzysid");
dwCwXx.SetItemNull(e.RowNumber, "zgxm");
}
finally
{
if (fSelect2 != null)
fSelect2.Dispose();
}
break;
}
}
private void dwCwXx_Click(object sender, EventArgs e)
{
if (this.btnAdd.Enabled && dwCwXx.ObjectUnderMouse.Band.Type == BandType.Detail)
{
if (dwCwXx.ObjectUnderMouse.Gob.Name == "cwlx"||dwCwXx.ObjectUnderMouse.Gob.Name=="fjid")
{
if (!this.m_IsModified)
{
this.m_IsModified = true;
this.btnSave.Enabled = true;
}
}
}
}
private void dwCwXx_ItemError(object sender, ItemErrorEventArgs e)
{
e.Action = ItemErrorAction.RejectWithNoMessage;
}
private void btnSave_Click(object sender, EventArgs e)
{
dwCwXx.AcceptText();
//检验数据完整性
if (!this.CheckCwXx())
return;
try
{
DbProxyClient proxy = App.DbProxy;
proxy.Clear();
proxy.AddDataWindow(this.dwCwXx);
proxy.Update();
this.m_IsModified = false;
btnSave.Enabled = false;
}
catch (Exception ex)
{
MessageBox.Show("保存床位信息发生异常:" + ex.Message, MsgTitle.Error);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -