use "system.vl" use "win.vl" use "list.vl" use "file.vl" unit vbusiness.entity [ CartermList is extend list; about CartermList [ field: [ xdwpages__ dw_pages; string m_QueryTxt; msxml::IXMLDOMDocument m_configDoc; static int dw_hWnd; ] method: [ int alert(string str) { //win__::MessageBox(this.GetHWND(),str,"Ìáʾ22:",0); TApp::alert(this,str); return 0; } string GetGuid(){ return TApp::GetGuid(); } int OnAddrow() { this.dw_list.InsertRow(0); int rows = this.dw_list.GetRowCount(); this.dw_list.SetRow(rows); this.dw_list.SetItemString(rows,"PartyID",GetGuid()); this.dw_list.SetItemString(rows,"ContactID",GetGuid()); this.dw_list.SetItemString(rows,"PAStatus","1"); this.dw_list.SetItemString(rows,"PStatus","1"); this.dw_list.SetItemString(rows,"PCStatus","1"); this.dw_list.SetItemString(rows,"Type","7"); } int OnInsertRow() { int row = this.dw_list.GetRow(); if(row<1 || row>this.dw_list.GetRowCount()) return 0; this.dw_list.InsertRow(row); this.dw_list.SetItemString(row,"PartyID",GetGuid()); this.dw_list.SetItemString(row,"ContactID",GetGuid()); this.dw_list.SetItemString(row,"PAStatus","1"); this.dw_list.SetItemString(row,"PStatus","1"); this.dw_list.SetItemString(row,"PCStatus","1"); this.dw_list.SetItemString(row,"Type","7"); } int ViewUpdate(param pr,string updateItem,xaserverarg__ arg) { if( updateItem=="del") { int DelRow = this.dw_list.GetRow(); this.dw_list.DeleteRow(DelRow); } return 1; } int OnDeleteRow() { int rows = this.dw_list.GetRowCount(); int row2 = this.dw_list.GetPrevSelectRow(rows); while(row2 > 0){ this.dw_list.DeleteRow(row2); row2 = this.dw_list.GetPrevSelectRow(row2 - 1); } this.dw_list.SelectRow(0, false); } int OnSave() { /*string no = this.dw_list.GetItemString(1,"CarTermNo"); if(no==""){ alert("ÇëÊäÈë³µ¶Ó±àÂ룡"); return -1; } string SName = this.dw_list.GetItemString(1,"Name"); if(SName==""){ alert("ÇëÊäÈë³µ¶ÓÃû³Æ£¡"); return -1; } string ContacterName = this.dw_list.GetItemString(1,"ContacterName"); if(ContacterName==""){ alert("ÇëÊäÈëÁªÏµÈËÃû³Æ£¡"); return -1; } */ xml__ x=new xml__; x.setNativePointer(xml__::CreateInstance()); this.dw_list.AcceptText(); this.dw_list.DwUpdateAllToEx(x.GetXmlDoc()); trace(x.GetXml()); xaserverarg__ arg=new xaserverarg__; arg.setNativePointer(arg.CreateInstance()); arg.AddArg("content",x.GetXml()); arg.AddArg("dbmap","CarTerm.dbmap"); if (getUrl("/sale/data/CarTerm/entity/carterm/save",arg.GetString(),x) != 1) { trace("error:"+x.GetXml()); alert("±£´æÊ§°Ü!"); return 0; } else { trace(x.GetXml()); if(x.GetXmlDoc().selectSingleNode("error")) { alert("±£´æ³ö´í2!"); return 0; } alert("±£´æ³É¹¦£¡"); this.dw_list.ResetUpdateStatus(); } this.dw_list.Redraw(); return 0; } int OnCmdDispatch(string comdid) { if(comdid.find("action:bill.row.add",0)>=0) { OnAddrow(); } else if(comdid.find("bill.row.insert",0)>=0) { OnInsertRow(); } else if(comdid.find("bill.row.delete",0)>=0) { OnDeleteRow(); } else if(comdid.find("bill.save",0)>=0) { trace(1); OnSave(); } return 0; } int OnXCommand(ref TXCommandEvent evt,int p) { return OnCmdDispatch(evt.pStrID); } int OnAttachEvent() { AttachEvent("WM_XCOMMAND",OnXCommand); return 0; } int onload() { OnAttachEvent(); list::onload(); this.dw_list.SetReadOnly(false); return -1; } ] ] ]