From 94d3840bda13f23c0cd4619a99ac215b74ffcd94 Mon Sep 17 00:00:00 2001
From: xj qian <qianxj15@sina.com>
Date: 星期四, 07 十一月 2024 13:54:14 +0800
Subject: [PATCH] update

---
 jrj/project/business/SO3.maint.cpp |   60 ++++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 46 insertions(+), 14 deletions(-)

diff --git a/jrj/project/business/SO3.maint.cpp b/jrj/project/business/SO3.maint.cpp
index 5bb3ca6..3587db6 100644
--- a/jrj/project/business/SO3.maint.cpp
+++ b/jrj/project/business/SO3.maint.cpp
@@ -9,6 +9,11 @@
 #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;
@@ -223,17 +228,34 @@
 		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;
@@ -545,7 +567,7 @@
 		{
 			xstring sSalespersonID = dw_base.GetItemString(1, L"SalespersonID");
 			//alert(sSalespersonID);
-			hdr->data = sSalespersonID;
+			hdr->data = sSalespersonID.c_str(true);
 		}
 
 
@@ -570,7 +592,7 @@
 				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();
@@ -702,12 +724,12 @@
 				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)
@@ -830,7 +852,7 @@
 		return 1;
 	}
 
-	int OnImgDBClicked(TEvent* evt, int pr)
+	int OnImgDBClicked(TEvent* evt, LPARAM  pr)
 	{
 		IMGNNMHDR* nmtv = (IMGNNMHDR *)evt->notify.pnmh;
 		xstring src = nmtv->path;
@@ -839,13 +861,13 @@
 		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);
@@ -863,8 +885,8 @@
 		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";
@@ -939,8 +961,16 @@
 		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);
@@ -1010,12 +1040,14 @@
 		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();

--
Gitblit v1.9.3