use "win.vl"
|
use "dev:vm[xdwgrid.vm]"
|
use "dev:vm[xdwtable.vm]"
|
use "pref.vl"
|
use "dev:vm[xml.vm]"
|
use "dev:vm[xaserverarg.vm]"
|
use "dev:vm[xaserver.vm]"
|
use "dev:vm[xutil.vm]"
|
use "frame.vl"
|
use "treeview.vm"
|
use "dev:code[HrEmployee.vx]"
|
use "publiccode.vl"
|
|
//unit vclient.vobject tpp
|
unit vbusiness.xpage
|
[
|
HrEmployeeAdd is extend frame;
|
about HrEmployeeAdd
|
[
|
field:
|
[
|
HrEmployee lw_obj;
|
xdwgrid__ dw_list;
|
|
xnode__ m_agentNode; //Agent Condition
|
string m_agentCond; //Agent Node
|
string m_sTxt;
|
]
|
|
method:
|
[
|
int SetAgent()
|
{
|
string xfNodeAgentArea = "agentarea";
|
xnode__ anode = new xnode__;
|
anode.setNativePointer(GetAgentNode(xfNodeAgentArea));
|
var xframeElement = GetElement();
|
var agent = xframeElement.selectSingleNode("agent/" + xfNodeAgentArea + "[1]/*");
|
if (agent)
|
{
|
string s = agent.xml;
|
SetAgentNodeContent(anode, s);
|
}
|
return 1;
|
}
|
|
//½¹µã¼¤»î´¦Àíº¯Êý
|
int OnSetFocus(ref TEvent evt, int param)
|
{
|
SetAgent();
|
//ÖØÖù¤¾ßÌõ
|
return 1;
|
}
|
|
int OnRetrieve()
|
{
|
control__ xc = new control__;
|
xc.setNativePointer(this.GetControl("QueryTxt"));
|
m_sTxt = xc.GetText() + "";
|
xml__ x = new xml__;
|
x.setNativePointer(x.CreateInstance());
|
xaserverarg__ arg = new xaserverarg__;
|
arg.setNativePointer(arg.CreateInstance());
|
arg.AddArg("sTxt", m_sTxt);
|
if (url::post("OrganizationStruct/select.Employee", arg.GetString(), x) != 1)
|
{
|
trace(x.GetXmlDoc().text);
|
return -1;
|
}
|
else
|
{
|
dw_list.Retrieve(x);
|
dw_list.Redraw();
|
dw_list.SetReadOnly(true);
|
}
|
return 1;
|
}
|
|
int OnOK()
|
{
|
if (GetParam())
|
{
|
lw_obj = new HrEmployee;
|
lw_obj.setNativePointer(GetParam());
|
lw_obj = GetParam();
|
}
|
else
|
return 0;
|
|
int row = dw_list.GetNextSelectRow(1);
|
if (row < 1)
|
{
|
alert("ÇëÑ¡ÔñÈËÔ±!");
|
return 1;
|
}
|
|
string sPositionID, sPositionName;
|
string sOrgID, sOrgName;
|
string sJobID, sJobName;
|
int wid = lw_obj.tv_org.GetId();
|
int hitem = treeview__::GetSelectedItem(wid);
|
msxml::IXMLDOMElement ele = treeview__::GetItemData(wid, hitem);
|
if (ele)
|
{
|
sPositionID = ele.SelectSingleNode("id").text;
|
sPositionName = ele.SelectSingleNode("name").text;
|
sOrgID = ele.SelectSingleNode("OrgID").text;
|
sOrgName = ele.SelectSingleNode("OrgName").text;
|
sJobID = ele.SelectSingleNode("JobID").text;
|
sJobName = ele.SelectSingleNode("JobName").text;
|
}
|
|
while (row > 0)
|
{
|
msxml::IXMLDOMElement e = dw_list.GetRowElement(row);
|
string sEmployeeNo = e.selectSingleNode("EmployeeNo").text + "";
|
string sPersonID = e.selectSingleNode("PersonID").text + "";
|
string sPersonName = e.selectSingleNode("Name").text + "";
|
|
int nRow = lw_obj.dw_emp.InsertRow(0);
|
lw_obj.dw_emp.SetItemString(nRow, "EmployeeNo", sEmployeeNo);
|
lw_obj.dw_emp.SetItemString(nRow, "PersonID", sPersonID);
|
lw_obj.dw_emp.SetItemDisplayString(nRow, "PersonID", sPersonName);
|
|
lw_obj.dw_emp.SetItemString(nRow, "PositionID", sPositionID);
|
lw_obj.dw_emp.SetItemDisplayString(nRow, "PositionID", sPositionName);
|
lw_obj.dw_emp.SetItemString(nRow, "OrgID", sOrgID);
|
lw_obj.dw_emp.SetItemDisplayString(nRow, "OrgID", sOrgName);
|
lw_obj.dw_emp.SetItemString(nRow, "JobID", sJobID);
|
lw_obj.dw_emp.SetItemDisplayString(nRow, "JobID", sJobName);
|
|
lw_obj.dw_emp.SetItemString(nRow, "Status", "Y");
|
lw_obj.dw_emp.SetItemDisplayString(nRow, "Status", "ÓÐЧ");
|
string sdate = publiccode::GetCurDate() + "";
|
lw_obj.dw_emp.SetItemString(nRow, "StartDate", sdate + "");
|
lw_obj.dw_emp.SetItemString(nRow, "EndDate", "2050-12-31");
|
|
row = dw_list.GetNextSelectRow(row + 1);
|
}
|
CloseWindow();
|
return 1;
|
}
|
|
//ÃüÁî·¢²¼º¯Êý
|
int OnCmdDispatch(string comdid)
|
{
|
if (comdid == "xmOk")
|
OnOK();
|
else if (comdid == "query")
|
OnRetrieve();
|
else if (comdid == "xmCancel")
|
CloseWindow();
|
return 0;
|
}
|
|
//ÃüÁî´¦Àíʼþ
|
int OnXCommand(ref TXCommandEvent evt, int param)
|
{
|
return OnCmdDispatch(evt.pStrID);
|
}
|
|
int OnAttachEvent()
|
{
|
//°ó¶¨¹¤¾ßÌõµã»÷ʼþ
|
AttachEvent("WM_XCOMMAND", OnXCommand);
|
//»ñÈ¡½¹µãʼþ£¬ÓÃÓÚÖØÖù¤¾ßÌõ
|
AttachEvent("WM_SETFOCUS", OnSetFocus);
|
}
|
|
int OnInitial()
|
{
|
SetAgent();
|
OnAttachEvent();
|
return 1;
|
}
|
|
int onload()
|
{
|
dw_list = new xdwgrid__;
|
dw_list.setNativePointer(this.GetControl("dw_list"));
|
dw_list.openUrl("×éÖ¯¼Ü¹¹.vface/template/HrEmployee/PersonSel");
|
dw_list.SetSelectionMode(3); //3
|
dw_list.SetReadOnly(true);
|
|
OnInitial();
|
OnRetrieve();
|
|
return 1;
|
}
|
]
|
|
]
|
]
|