use "xcontrol.vframe.vbusiness.vd" use "xbase.vframe.vbusiness.vd" use "base.view.vd" unit trade [ class TOSelectDlg : public frame { //xdwgrid dw_list; xlistview lv_view; xlistview lv_view1; int columnCount; xnode m_agentNode; //Agent Condition int SetAgent() { string xfNodeAgentArea = "agentarea"; xnode anode = GetAgentNode(xfNodeAgentArea); if(m_agentNode) { SetAgentNodeContent (anode,m_agentNode); } else { msxml::IXMLDOMElement xframeElement = GetElement(); msxml::IXMLDOMElement agent = xframeElement.selectSingleNode("agent/"+xfNodeAgentArea+"[1]/*"); if(agent) { string s = agent.xml; m_agentNode = SetAgentNodeContent (anode,s); } } return 1; } //½¹µã¼¤»î´¦Àíº¯Êý int OnSetFocus(ref TEvent evt,int param) { //ÖØÖù¤¾ßÌõ SetAgent(); return 1; } //ÃüÁî·¢²¼º¯Êý int OnCmdDispatch(string comdid) { if(comdid=="xmCancel") { CloseWindow(); return 1; } else if(comdid=="xmOK") { int LVNI_FOCUSED = 0x0001; int nItem =xlistview::GetNextItem(lv_view.GetId(), -1, LVNI_FOCUSED); if(nItem < 0) return 1; if(GetParam()) { msxml::IXMLDOMElement ele = GetItemData(lv_view, nItem); xaserverarg arg = GetParam(); arg.AddArg("action","new"); arg.AddArg("ID",ele.getAttribute("guid")); arg.AddArg("id",ele.getAttribute("guid")); } //ÖØÖù¤¾ßÌõ CloseWindow(); return 1; } return 0; } msxml::IXMLDOMElement GetItemData(xlistview lv_item, int hItem) { int LVIF_PARAM = 0x0004; lvitem lvItem; lvItem.iItem = hItem; lvItem.iSubItem = 0; lvItem.mask = LVIF_PARAM ; xlistview::GetItem(lv_item.GetId(), lvItem); msxml::IXMLDOMElement ele = trust(lvItem.lParam as msxml::IXMLDOMElement); return ele; } int OnListViewDoubleClicked(ref TEvent evt,int param) { int LVNI_ALL = 0x0000; int LVNI_FOCUSED = 0x0001; int LVNI_SELECTED = 0x0002; int LVNI_CUT = 0x0004; int LVNI_DROPHILITED = 0x0008; int nItem =xlistview::GetNextItem(lv_view.GetId(), -1, LVNI_FOCUSED); if(nItem < 0) return 1; if(GetParam()) { msxml::IXMLDOMElement ele = GetItemData(lv_view, nItem); xaserverarg arg = GetParam(); arg.AddArg("action","new"); arg.AddArg("ID",ele.getAttribute("guid")); arg.AddArg("id",ele.getAttribute("guid")); } //ÖØÖù¤¾ßÌõ CloseWindow(); return 1; } int OnListViewDoubleClicked1(ref TEvent evt,int param) { int LVNI_ALL = 0x0000; int LVNI_FOCUSED = 0x0001; int LVNI_SELECTED = 0x0002; int LVNI_CUT = 0x0004; int LVNI_DROPHILITED = 0x0008; int nItem =xlistview::GetNextItem(lv_view1.GetId(), -1, LVNI_FOCUSED); if(nItem < 0) return 1; if(GetParam()) { msxml::IXMLDOMElement ele = GetItemData(lv_view1, nItem); xaserverarg arg = GetParam(); arg.AddArg("action","open"); arg.AddArg("id",ele.getAttribute("id")); arg.AddArg("ID",ele.getAttribute("id")); arg.AddArg("ItemID",ele.getAttribute("itemid")); } //ÖØÖù¤¾ßÌõ //OnDocumentOpen(); CloseWindow(); return 1; } int SetListViewHeaderColumn(string Url,xlistview lv_item) { const int LVCFMT_LEFT = 0; for(int i=0;i<3;i++) lv_item.DeleteColumn(lv_item.GetId(),1); //if(Url=="") //{ lv_item.InsertColumn(lv_item.GetId(),0,"´´½¨ÈÕÆÚ",LVCFMT_LEFT,80,0); lv_item.InsertColumn(lv_item.GetId(),0,"´´½¨ÈËÔ±",LVCFMT_LEFT,80,0); lv_item.InsertColumn(lv_item.GetId(),0,"Ãû³Æ",0,120,0); columnCount = 3; //} return 1; } int SetListViewHeaderColumnItem(string Url,xlistview lv_item) { const int LVCFMT_LEFT = 0; for(int i=0;i<6;i++) lv_item.DeleteColumn(lv_item.GetId(),1); //if(Url=="") //{ lv_item.InsertColumn(lv_item.GetId(),0,"×îºóÐÞ¸ÄÈÕÆÚ",LVCFMT_LEFT,80,0); lv_item.InsertColumn(lv_item.GetId(),0,"´´½¨ÈÕÆÚ",LVCFMT_LEFT,80,0); lv_item.InsertColumn(lv_item.GetId(),0,"´´½¨ÈËÔ±",LVCFMT_LEFT,80,0); lv_item.InsertColumn(lv_item.GetId(),0,"״̬",0,70,0); lv_item.InsertColumn(lv_item.GetId(),0,"Ö÷Ìâ",0,120,0); lv_item.InsertColumn(lv_item.GetId(),0,"±àºÅ",0,70,0); lv_item.InsertColumn(lv_item.GetId(),0,"ÊÂÎñ",0,60,0); columnCount = 6; //} return 1; } //ÃüÁî´¦Àíʼþ int OnXCommand(ref TXCommandEvent evt,int param) { return OnCmdDispatch(evt.pStrID); } int OnAttachEvent() { //°ó¶¨¹¤¾ßÌõµã»÷ʼþ AttachEvent("WM_XCOMMAND",OnXCommand); //»ñÈ¡½¹µãʼþ£¬ÓÃÓÚÖØÖù¤¾ßÌõ AttachEvent("WM_SETFOCUS",OnSetFocus); } int RetrieveEx() { xml x = ViewObject::RetrieveData("/sale/data/TO/business/document/list"); if(x) { msxml::IXMLDOMElement ele = x.GetXmlDoc().documentElement; msxml::IXMLDOMNodeList nlist=ele.SelectNodes("*"); int s=nlist.length; if (s>0) { for (int i=0; i0) { for (int i=0; i