|  |  | 
 |  |  | #include "viewobject/saleorder.view.hpp" | 
 |  |  | #include "viewobject/quote.view.hpp" | 
 |  |  |  | 
 |  |  | #include "jstring.hpp" | 
 |  |  | #include "JFactory.hpp" | 
 |  |  | #include "jobjectsvr.hpp" | 
 |  |  | #include <memory> | 
 |  |  | #include "JPtr.hpp" | 
 |  |  | class __declspec(dllexport) BaseMaintSOWin : public maint | 
 |  |  | { | 
 |  |  |    xdwtable dw_props; | 
 |  |  | 
 |  |  |       xstring colname = hdr->colname; | 
 |  |  |       if (value == L"支付条款") | 
 |  |  |       { | 
 |  |  |          //int  p1 = vc.xdoc.getNativePointer(); | 
 |  |  |          //openUrl(L"/sale/view/SaleOrder/xpage/payment", p1); | 
 |  |  |          xaserverarg arg; | 
 |  |  |          xml x; | 
 |  |  |          dw_base.DwUpdateAllTo(x); | 
 |  |  |          arg.SetArg(L"content", x.xml()); | 
 |  |  |          openUrl(L"/sale/view/SaleOrder/xpage/payment", (LPARAM)arg); | 
 |  |  |          if (arg.GetArgString(L"process") == L"ok") | 
 |  |  |          { | 
 |  |  |             x.loadXML(arg.GetArgString(L"content")); | 
 |  |  |             dw_base.Retrieve(x); | 
 |  |  |          } | 
 |  |  |          dw_base.AcceptText(); | 
 |  |  |          dw_base.Redraw(); | 
 |  |  |          return 1; | 
 |  |  |       } | 
 |  |  |  | 
 |  |  |       //交货期维护 | 
 |  |  |       if (value == L"交货期") | 
 |  |  |       { | 
 |  |  |          //int p2 = vc.xdoc.getNativePointer(); | 
 |  |  |          //openUrl(L"/sale/view/SaleOrder/xpage/delivery1", p2); | 
 |  |  |          xaserverarg arg; | 
 |  |  |          xml x; | 
 |  |  |          dw_base.DwUpdateAllTo(x); | 
 |  |  |          arg.SetArg(L"content", x.xml()); | 
 |  |  |          openUrl(L"/sale/view/SaleOrder/xpage/delivery1", (LPARAM)arg); | 
 |  |  |          if (arg.GetArgString(L"process") == L"ok") | 
 |  |  |          { | 
 |  |  |             x.loadXML(arg.GetArgString(L"content")); | 
 |  |  |             dw_base.Retrieve(x); | 
 |  |  |          } | 
 |  |  |          dw_base.AcceptText(); | 
 |  |  |          dw_base.Redraw(); | 
 |  |  |          return 1; | 
 |  |  | 
 |  |  |    { | 
 |  |  |       xstring CustomerID = dw_base.GetItemString(1, L"CustomerID"); | 
 |  |  |       //KXMLDOMDocument x = QuoteView::LookupProductsByText(str,CustomerID); | 
 |  |  |       //trace(str+L"--" + CustomerID); | 
 |  |  |       //alert(str+L"--" + CustomerID); | 
 |  |  |       KXMLDOMDocument x = ViewObject::RetrieveData(GetServerUrl(),L"/sale/data/SaleOrder/lookup/productsex", L"str", str, L"CustomerID", CustomerID); | 
 |  |  |       if (!x) return 1; | 
 |  |  |       KXMLDOMNodeList items = x.selectNodes(L"/Items/Item"); | 
 |  |  | 
 |  |  |       { | 
 |  |  |          xstring sSalespersonID = dw_base.GetItemString(1, L"SalespersonID"); | 
 |  |  |          //alert(sSalespersonID); | 
 |  |  |          hdr->data = sSalespersonID; | 
 |  |  |          hdr->data = sSalespersonID.c_str(true); | 
 |  |  |       } | 
 |  |  |  | 
 |  |  |  | 
 |  |  | 
 |  |  |             if (skunos == L"") | 
 |  |  |                skunos = dw_item.GetItemString(i, L"SKUNo"); | 
 |  |  |             else | 
 |  |  |                skunos += L",L" + dw_item.GetItemString(i, L"SKUNo"); | 
 |  |  |                skunos += L"," + dw_item.GetItemString(i, L"SKUNo"); | 
 |  |  |          } | 
 |  |  |       } | 
 |  |  |       xaserverarg& arg = *new xaserverarg(); | 
 |  |  | 
 |  |  |          //str = str.trim(); | 
 |  |  |          //if(str==L"") | 
 |  |  |          //{ | 
 |  |  |          xaserverarg& arg = *new xaserverarg; | 
 |  |  |          arg.setNativePointer(arg.CreateInstance()); | 
 |  |  |          arg.AddArg(L"HWND", xstring((__int64)GetHWND())); | 
 |  |  |          xaserverarg arg; | 
 |  |  |          arg.SetParam(L"HWND", GetHWND()); | 
 |  |  |          arg.AddArg(L"CustomerID", dw_base.GetItemString(1, L"CustomerID")); | 
 |  |  |          OpenWindow(L"dev:xpage[Product.Select.SO.vx]", (LPARAM)&arg); | 
 |  |  |          OpenWindow(L"dev:xpage[Product.Select.SO.vx]", arg); | 
 |  |  |          //OpenWindow(L"dev:xpage[Product.Select.vx]",cast(arg1 as int)); | 
 |  |  |       //} | 
 |  |  |       //else | 
 |  |  | 
 |  |  |             alert(L"请先保存数据!"); | 
 |  |  |             return 1; | 
 |  |  |          } | 
 |  |  |          xaserverarg& arg = * new xaserverarg; | 
 |  |  |          arg.setNativePointer(arg.CreateInstance()); | 
 |  |  |          xaserverarg arg; | 
 |  |  | 			 | 
 |  |  |          arg.AddArg(L"EntityName", L"SaleOrder", L""); | 
 |  |  |          arg.AddArg(L"EntityID", dw_base.GetItemString(1, L"SOID"), L""); | 
 |  |  |          arg.AddArg(L"EntityNo", dw_base.GetItemString(1, L"SONo"), L""); | 
 |  |  |          openUrl(L"/sale/view/view.base/xpage/Template/PrintViewEx", &arg); | 
 |  |  |          openUrl(L"/sale/view/view.base/xpage/Template/PrintViewEx", arg); | 
 |  |  |          return 1; | 
 |  |  |       } | 
 |  |  |       else if (comdid == L"xmSaveEx" && bupdate) | 
 |  |  | 
 |  |  |       return 1; | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |    int OnImgDBClicked(TEvent* evt, int pr) | 
 |  |  |    int OnImgDBClicked(TEvent* evt, LPARAM  pr) | 
 |  |  |    { | 
 |  |  |       IMGNNMHDR* nmtv = (IMGNNMHDR *)evt->notify.pnmh; | 
 |  |  |       xstring src = nmtv->path; | 
 |  |  | 
 |  |  |       else | 
 |  |  |          src=src.mid(src.find(L"Thumbs", 0)+6, 50); | 
 |  |  |       */ | 
 |  |  |       xaserverarg& arg = * new xaserverarg; | 
 |  |  |       xaserverarg arg; | 
 |  |  |       //arg.AddArg(L"src",L"/business/products/chanpin"+src);    | 
 |  |  |       arg.AddArg(L"src", src); | 
 |  |  |  | 
 |  |  |       //win::OpenWindow(L"dev:xpage[BigPicture.vx]",arg);    | 
 |  |  |  | 
 |  |  |       int h = openUrl(L"/sale/view/ProductLibrary/xpage/bigpictureview", &arg); | 
 |  |  |       openUrl(L"/sale/view/ProductLibrary/xpage/bigpictureview", arg); | 
 |  |  |       /* | 
 |  |  |       xwin x = new xwin; | 
 |  |  |       x.setNativePointer(h); | 
 |  |  | 
 |  |  |       ximageview im = GetControl(L"im1"); | 
 |  |  |  | 
 |  |  |       KXMLDOMDocument xp; | 
 |  |  |       xaserverarg& arg_pic = *new xaserverarg; | 
 |  |  |       arg_pic.setNativePointer(arg_pic.CreateInstance()); | 
 |  |  |       xaserverarg arg_pic ; | 
 |  |  | 		 | 
 |  |  |       arg_pic.AddArg(L"SKUNo", skuno); | 
 |  |  |  | 
 |  |  |       xstring res = L"/sale/data/ProductLibrary3/pref/picture/imagelistSKUNo"; | 
 |  |  | 
 |  |  |             for (int ip = 0; ip < lenp; ip++) | 
 |  |  |             { | 
 |  |  |                auto xitem = nlistp.item(ip); | 
 |  |  |                string picname = xitem.selectSingleNode(L"PicPath").text(); | 
 |  |  |                xstring picname = xitem.selectSingleNode(L"PicPath").text(); | 
 |  |  |                string goodno = xitem.selectSingleNode(L"GoodsNo").text(); | 
 |  |  |                if (picname == L"/business/products/Thumbs//") | 
 |  |  |                   picname = L"/business/products/Thumbs/00/00000000-0000-0000-0000-000000000000.jpg"; | 
 |  |  | 
 |  |  |       return 1; | 
 |  |  |    } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |    int onload() | 
 |  |  |    { | 
 |  |  |       /* | 
 |  |  |       using JFString = JFactory<JString>; | 
 |  |  |       JPtr<JFString> jfString(JObjectSvr::CreateInstance<JFString>(L"JFactoryString")); | 
 |  |  |       //auto jfString = JObjectSvr::CreateInstance<JFString>(L"JFactoryString"); | 
 |  |  |       JPtr<JString> pStr(jfString->make()); | 
 |  |  |       */ | 
 |  |  |  | 
 |  |  |       dw_props = GetControl(L"dw_props"); | 
 |  |  |       /*KXMLDOMDocument x = SaleOrderView::GetMaintFormForBase(); | 
 |  |  |       dw_props.SetDataObject(x); | 
 |  |  | 
 |  |  |       if (SONo != L"") | 
 |  |  |       { | 
 |  |  |          KXMLDOMDocument x = SaleOrderView::GetMaintDataForBase(SONo); | 
 |  |  |          BSTR str = (BSTR)x.xml(); | 
 |  |  |          dw_base.Retrieve(x); | 
 |  |  |          dw_item.Retrieve(x); | 
 |  |  |       } | 
 |  |  |       else | 
 |  |  |       { | 
 |  |  |          KXMLDOMDocument x = ViewObject::RetrieveData(GetServerUrl(),L"/sale/data/SaleOrder/newinitial"); | 
 |  |  |          BSTR str = (BSTR)x.xml();  | 
 |  |  |          dw_base.Retrieve(x); | 
 |  |  |  | 
 |  |  |          xstring sdate = publiccode::GetCurrentDate(); |