þÿuse "xcontrol.vframe.vbusiness.vd" use "xbase.vframe.vbusiness.vd" use "base.view.vd" unit trade [ class ExportCreditSwitchTo : public xframe { xdwgrid dw_list; xnode m_agentNode; //Agent Condition int hObject = 0; string CustomerID; 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 OnRowChanged(ref TNotifyEvent evt, int p) { ref DWNMHDR hdr = trust(evt.pnmh as ref DWNMHDR); int row = hdr.row; SetAgent(); return 1; } //q&p¹oÀm;YtQýep int OnSetFocus(ref TEvent evt, int param) { //‘Ín]åQwga SetAgent(); //trace(GetEntityID(1)); return 1; } //T}NäSÑ^Qýep int OnCmdDispatch(string comdid) { if (comdid == "xmImport") { xaserverarg arg = GetParam(); arg.AddArg("items", ""); string str = ""; string InvoiceNoS = ""; int row = dw_list.GetNextSelectRow(1); trace("-----------1111---------------"); while (row > 0 && row <= dw_list.GetRowCount()) { msxml::IXMLDOMElement ele = dw_list.GetRowElement(row); string InvoiceNo = dw_list.GetItemString(row, "InvoiceNo"); if (InvoiceNoS == "") InvoiceNoS = InvoiceNo; else if (InvoiceNoS.find(InvoiceNo) < 0) InvoiceNoS += "," + InvoiceNo; str += ele.xml; row = dw_list.GetNextSelectRow(row + 1); } if (str != "") arg.AddArg("items", "<data>" + str + "</data>"); trace("------------2222--------------"); CloseWindow(); return 1; } if (comdid == "xmClose") { CloseWindow(); return 1; } if (comdid == "xmSearch") { OnRetrieve(CustomerID); return 1; } return 0; } //T}NäYtN‹Nö int OnXCommand(ref TXCommandEvent evt, int param) { return OnCmdDispatch(evt.pStrID); } int OnAttachEvent() { //~Ñ[š]åQwgap¹QûN‹Nö AttachEvent("WM_XCOMMAND", OnXCommand); //ƒ·SÖq&p¹N‹Nöÿ u(NŽ‘Ín]åQwga AttachEvent("WM_SETFOCUS", OnSetFocus); AttachEvent("dw_list", "DWV_ROWFOCUSCHANGED", OnRowChanged); } int OnRetrieve(string CustomerID) { xml x = new xml; x.setNativePointer(xml::CreateInstance()); xaserverarg arg = new xaserverarg; arg.setNativePointer(arg.CreateInstance()); arg.AddArg("CustomerID", CustomerID); arg.AddArg("InvoiceNo", GetControl("search").GetText()); if (getUrl("/sale/data/Expense3/ExportCreditSwitchToList", arg.GetString(), x) != 1) { trace(x.GetXmlDoc().text); return -1; } else { dw_list.Retrieve(x); dw_list.Redraw(); } dw_list.SetSelectionMode(3); dw_list.SetReadOnly(true); return 1; } int onload() { dw_list = GetControl("dw_list"); dw_list.openUrl("/sale/view/expense3/ExportCreditSwitchToList"); dw_list.SetColumnState("SalespersonID", false); dw_list.SetColumnState("CreatorID", false); if (GetParam()) { xaserverarg arg = GetParam(); CustomerID = arg.GetArgString("CustomerID"); OnRetrieve(arg.GetArgString("CustomerID")); } OnRetrieve(CustomerID); OnAttachEvent(); return 1; } int onloaded() { SetAgent(); return 1; } }; ]