From 6c8c9ddaeb2bc6245a374c9354296bcfc2d96c06 Mon Sep 17 00:00:00 2001
From: LiFan <2308045698@qq.com>
Date: 星期二, 29 四月 2025 14:10:22 +0800
Subject: [PATCH] update

---
 jrj/project/business/QuoteFile.cpp |  403 ++++++++++++++++++++++++++++++++-------------------------
 1 files changed, 224 insertions(+), 179 deletions(-)

diff --git a/jrj/project/business/QuoteFile.cpp b/jrj/project/business/QuoteFile.cpp
index c363769..7131f1e 100644
--- a/jrj/project/business/QuoteFile.cpp
+++ b/jrj/project/business/QuoteFile.cpp
@@ -254,10 +254,10 @@
 	{
 		xstring content = L"";
 		xstring base = L"";
-		base += L"<QuoteNo>" + getBaseItem(cell, L"报价单号:") + L"</QuoteNo>";
-		base += L"<ExpDate>" + getBaseItem(cell, L"报价截止日期:") + L"</ExpDate>";
-		base += L"<PrjName>" + getBaseItem(cell, L"项目名称:") + L"</PrjName>";
-		base += L"<QuoteDate>" + dw_base.GetItemString(1, L"QuoteDate") + L"</QuoteDate>";
+		base += L"<QuoteNo>" + getBaseXmlItem(cell, L"报价单号:") + L"</QuoteNo>";
+		base += L"<ExpDate>" + getBaseXmlItem(cell, L"报价截止日期:") + L"</ExpDate>";
+		base += L"<PrjName>" + getBaseXmlItem(cell, L"项目名称:") + L"</PrjName>";
+		base += L"<QuoteDate>" + dw_base.GetItemXmlString(1, L"QuoteDate") + L"</QuoteDate>";
 
 		int startRow = getItemHeadRow(cell);
 
@@ -313,34 +313,34 @@
 			xstring itemStr = L"";
 			rowid = getRowID(cell, row);
 			itemStr += L"<RowID>" + getRowID(cell, row) + L"</RowID>";
-			itemStr += L"<SKUID>" + cell.GetItemString(row, colSKUID) + L"</SKUID>";
+			itemStr += L"<SKUID>" + cell.GetItemXmlString(row, colSKUID) + L"</SKUID>";
 			itemStr += L"<customer-photo>" + getRowTerm(cell, row, L"customer-photo") + L"</customer-photo>";
 			itemStr += L"<supplier-photo>" + getRowTerm(cell, row, L"supplier-photo") + L"</supplier-photo>";
 			itemStr += L"<customer-photo-url>" + getImageList(getRowTerm(cell, row, L"customer-photo")) + L"</customer-photo-url>";
 			itemStr += L"<supplier-photo-url>" + getImageList(getRowTerm(cell, row, L"supplier-photo")) + L"</supplier-photo-url>";
-			itemStr += L"<ItemNo>" + cell.GetItemString(row, colItemNo) + L"</ItemNo>";
-			itemStr += L"<CustomItemNo>" + cell.GetItemString(row, colCustomerItemNo) + L"</CustomItemNo>";
-			itemStr += L"<ItemName>" + cell.GetItemString(row, colItemName) + L"</ItemName>";
-			itemStr += L"<ItemCName>" + cell.GetItemString(row, colItemCName) + L"</ItemCName>";
-			itemStr += L"<ItemSpec>" + cell.GetItemString(row, colItemSpec) + L"</ItemSpec>";
-			itemStr += L"<CustomerImage>" + cell.GetItemString(row, colCustomerImage) + L"</CustomerImage>";
-			itemStr += L"<BuyerPrice>" + cell.GetItemString(row, colBuyerPrice) + L"</BuyerPrice>";
-			itemStr += L"<SaleRemark>" + cell.GetItemString(row, colSaleRemark) + L"</SaleRemark>";
+			itemStr += L"<ItemNo>" + cell.GetItemXmlString(row, colItemNo) + L"</ItemNo>";
+			itemStr += L"<CustomItemNo>" + cell.GetItemXmlString(row, colCustomerItemNo) + L"</CustomItemNo>";
+			itemStr += L"<ItemName>" + cell.GetItemXmlString(row, colItemName) + L"</ItemName>";
+			itemStr += L"<ItemCName>" + cell.GetItemXmlString(row, colItemCName) + L"</ItemCName>";
+			itemStr += L"<ItemSpec>" + cell.GetItemXmlString(row, colItemSpec) + L"</ItemSpec>";
+			itemStr += L"<CustomerImage>" + cell.GetItemXmlString(row, colCustomerImage) + L"</CustomerImage>";
+			itemStr += L"<BuyerPrice>" + cell.GetItemXmlString(row, colBuyerPrice) + L"</BuyerPrice>";
+			itemStr += L"<SaleRemark>" + cell.GetItemXmlString(row, colSaleRemark) + L"</SaleRemark>";
 
-			itemStr += L"<BuyerMOQ>" + cell.GetItemString(row, colBuyerMOQ) + L"</BuyerMOQ>";
-			itemStr += L"<BuyerRemark>" + cell.GetItemString(row, colBuyerRemark) + L"</BuyerRemark>";
-			itemStr += L"<FactoryImage>" + cell.GetItemString(row, colFactoryImage) + L"</FactoryImage>";
-			itemStr += L"<GWT>" + cell.GetItemString(row, colGWT) + L"</GWT>";
-			itemStr += L"<NWT>" + cell.GetItemString(row, colNWT) + L"</NWT>";
-			itemStr += L"<VolDesc>" + cell.GetItemString(row, colVolDesc) + L"</VolDesc>";
-			itemStr += L"<Vol>" + cell.GetItemString(row, colVol) + L"</Vol>";
-			itemStr += L"<F40HQ>" + cell.GetItemString(row, col40HQ) + L"</F40HQ>";
-			itemStr += L"<Packing>" + cell.GetItemString(row, colInnerOuter) + L"</Packing>";
-			itemStr += L"<Quantity>" + cell.GetItemString(row, colItemQty) + L"</Quantity>";
-			itemStr += L"<Package>" + cell.GetItemString(row, colPackage) + L"</Package>";
-			itemStr += L"<Buyer>" + cell.GetItemString(row, colBuyer) + L"</Buyer>";
-			itemStr += L"<RemarkS>" + cell.GetItemString(row, colRemark) + L"</RemarkS>";
-			itemStr += L"<FOBPrice>" + cell.GetItemString(row, colFOBPrice) + L"</FOBPrice>";
+			itemStr += L"<BuyerMOQ>" + cell.GetItemXmlString(row, colBuyerMOQ) + L"</BuyerMOQ>";
+			itemStr += L"<BuyerRemark>" + cell.GetItemXmlString(row, colBuyerRemark) + L"</BuyerRemark>";
+			itemStr += L"<FactoryImage>" + cell.GetItemXmlString(row, colFactoryImage) + L"</FactoryImage>";
+			itemStr += L"<GWT>" + cell.GetItemXmlString(row, colGWT)+ L"</GWT>";
+			itemStr += L"<NWT>" + cell.GetItemXmlString(row, colNWT) + L"</NWT>";
+			itemStr += L"<VolDesc>" + cell.GetItemXmlString(row, colVolDesc) + L"</VolDesc>";
+			itemStr += L"<Vol>" + cell.GetItemXmlString(row, colVol) + L"</Vol>";
+			itemStr += L"<F40HQ>" + cell.GetItemXmlString(row, col40HQ) + L"</F40HQ>";
+			itemStr += L"<Packing>" + cell.GetItemXmlString(row, colInnerOuter) + L"</Packing>";
+			itemStr += L"<Quantity>" + cell.GetItemXmlString(row, colItemQty) + L"</Quantity>";
+			itemStr += L"<Package>" + cell.GetItemXmlString(row, colPackage) + L"</Package>";
+			itemStr += L"<Buyer>" + cell.GetItemXmlString(row, colBuyer) + L"</Buyer>";
+			itemStr += L"<RemarkS>" + cell.GetItemXmlString(row, colRemark) + L"</RemarkS>";
+			itemStr += L"<FOBPrice>" + cell.GetItemXmlString(row, colFOBPrice) + L"</FOBPrice>";
 
 
 			itemStr += L"<PurchedDate>" + sdate + L"</PurchedDate>";
@@ -356,10 +356,10 @@
 	{
 		xstring content = L"";
 		xstring base = L"";
-		base += L"<QuoteNo>" + getBaseItem(cell, L"报价单号:") + L"</QuoteNo>";
-		base += L"<ExpDate>" + getBaseItem(cell, L"报价截止日期:") + L"</ExpDate>";
-		base += L"<PrjName>" + getBaseItem(cell, L"项目名称:") + L"</PrjName>";
-		base += L"<QuoteDate>" + dw_base.GetItemString(1, L"QuoteDate") + L"</QuoteDate>";
+		base += L"<QuoteNo>" + getBaseXmlItem(cell, L"报价单号:") + L"</QuoteNo>";
+		base += L"<ExpDate>" + getBaseXmlItem(cell, L"报价截止日期:") + L"</ExpDate>";
+		base += L"<PrjName>" + getBaseXmlItem(cell, L"项目名称:") + L"</PrjName>";
+		base += L"<QuoteDate>" + dw_base.GetItemXmlString(1, L"QuoteDate") + L"</QuoteDate>";
 
 		int startRow = getItemHeadRow(cell);
 
@@ -423,46 +423,46 @@
 
 			xstring itemStr = L"";
 			itemStr += L"<RowID>" + getRowID(cell, row) + L"</RowID>";
-			itemStr += L"<SKUID>" + cell.GetItemString(row, colSKUID) + L"</SKUID>";
+			itemStr += L"<SKUID>" + cell.GetItemXmlString(row, colSKUID) + L"</SKUID>";
 			itemStr += L"<customer-photo>" + getRowTerm(cell, row, L"customer-photo") + L"</customer-photo>";
 			itemStr += L"<supplier-photo>" + getRowTerm(cell, row, L"supplier-photo") + L"</supplier-photo>";
-			itemStr += L"<ItemNo>" + cell.GetItemString(row, colItemNo) + L"</ItemNo>";
-			itemStr += L"<CustomItemNo>" + cell.GetItemString(row, colCustomerItemNo) + L"</CustomItemNo>";
-			itemStr += L"<ItemName>" + cell.GetItemString(row, colItemName) + L"</ItemName>";
-			itemStr += L"<ItemCName>" + cell.GetItemString(row, colItemCName) + L"</ItemCName>";
-			itemStr += L"<ItemSpec>" + cell.GetItemString(row, colItemSpec) + L"</ItemSpec>";
-			itemStr += L"<CustomerImage>" + cell.GetItemString(row, colCustomerImage) + L"</CustomerImage>";
-			itemStr += L"<BuyerPrice>" + cell.GetItemString(row, colBuyerPrice) + L"</BuyerPrice>";
-			itemStr += L"<SaleRemark>" + cell.GetItemString(row, colSaleRemark) + L"</SaleRemark>";
+			itemStr += L"<ItemNo>" + cell.GetItemXmlString(row, colItemNo) + L"</ItemNo>";
+			itemStr += L"<CustomItemNo>" + cell.GetItemXmlString(row, colCustomerItemNo) + L"</CustomItemNo>";
+			itemStr += L"<ItemName>" + cell.GetItemXmlString(row, colItemName) + L"</ItemName>";
+			itemStr += L"<ItemCName>" + cell.GetItemXmlString(row, colItemCName) + L"</ItemCName>";
+			itemStr += L"<ItemSpec>" + cell.GetItemXmlString(row, colItemSpec) + L"</ItemSpec>";
+			itemStr += L"<CustomerImage>" + cell.GetItemXmlString(row, colCustomerImage) + L"</CustomerImage>";
+			itemStr += L"<BuyerPrice>" + cell.GetItemXmlString(row, colBuyerPrice) + L"</BuyerPrice>";
+			itemStr += L"<SaleRemark>" + cell.GetItemXmlString(row, colSaleRemark) + L"</SaleRemark>";
 
-			itemStr += L"<BuyerMOQ>" + cell.GetItemString(row, colBuyerMOQ) + L"</BuyerMOQ>";
-			itemStr += L"<BuyerRemark>" + cell.GetItemString(row, colBuyerRemark) + L"</BuyerRemark>";
-			itemStr += L"<FactoryImage>" + cell.GetItemString(row, colFactoryImage) + L"</FactoryImage>";
-			itemStr += L"<GWT>" + cell.GetItemString(row, colGWT) + L"</GWT>";
-			itemStr += L"<NWT>" + cell.GetItemString(row, colNWT) + L"</NWT>";
-			itemStr += L"<VolDesc>" + cell.GetItemString(row, colVolDesc) + L"</VolDesc>";
-			itemStr += L"<Vol>" + cell.GetItemString(row, colVol) + L"</Vol>";
-			itemStr += L"<F40HQ>" + cell.GetItemString(row, col40HQ) + L"</F40HQ>";
-			itemStr += L"<Packing>" + cell.GetItemString(row, colInnerOuter) + L"</Packing>";
-			itemStr += L"<Quantity>" + cell.GetItemString(row, colItemQty) + L"</Quantity>";
-			itemStr += L"<Package>" + cell.GetItemString(row, colPackage) + L"</Package>";
-			itemStr += L"<Buyer>" + cell.GetItemString(row, colBuyer) + L"</Buyer>";
-			itemStr += L"<RemarkS>" + cell.GetItemString(row, colRemark) + L"</RemarkS>";
-			itemStr += L"<FOBPrice>" + cell.GetItemString(row, colFOBPrice) + L"</FOBPrice>";
+			itemStr += L"<BuyerMOQ>" + cell.GetItemXmlString(row, colBuyerMOQ) + L"</BuyerMOQ>";
+			itemStr += L"<BuyerRemark>" + cell.GetItemXmlString(row, colBuyerRemark) + L"</BuyerRemark>";
+			itemStr += L"<FactoryImage>" + cell.GetItemXmlString(row, colFactoryImage) + L"</FactoryImage>";
+			itemStr += L"<GWT>" + cell.GetItemXmlString(row, colGWT) + L"</GWT>";
+			itemStr += L"<NWT>" + cell.GetItemXmlString(row, colNWT) + L"</NWT>";
+			itemStr += L"<VolDesc>" + cell.GetItemXmlString(row, colVolDesc) + L"</VolDesc>";
+			itemStr += L"<Vol>" + cell.GetItemXmlString(row, colVol) + L"</Vol>";
+			itemStr += L"<F40HQ>" + cell.GetItemXmlString(row, col40HQ) + L"</F40HQ>";
+			itemStr += L"<Packing>" + cell.GetItemXmlString(row, colInnerOuter) + L"</Packing>";
+			itemStr += L"<Quantity>" + cell.GetItemXmlString(row, colItemQty) + L"</Quantity>";
+			itemStr += L"<Package>" + cell.GetItemXmlString(row, colPackage) + L"</Package>";
+			itemStr += L"<Buyer>" + cell.GetItemXmlString(row, colBuyer) + L"</Buyer>";
+			itemStr += L"<RemarkS>" + cell.GetItemXmlString(row, colRemark) + L"</RemarkS>";
+			itemStr += L"<FOBPrice>" + cell.GetItemXmlString(row, colFOBPrice) + L"</FOBPrice>";
 
-			itemStr += L"<Supplier>" + cell.GetItemString(row, colSupplier) + L"</Supplier>";
-			itemStr += L"<Supplier1>" + cell.GetItemString(row, colSupplier1) + L"</Supplier1>";
-			itemStr += L"<Supplier2>" + cell.GetItemString(row, colSupplier2) + L"</Supplier2>";
-			itemStr += L"<Supplier3>" + cell.GetItemString(row, colSupplier3) + L"</Supplier3>";
-			itemStr += L"<POPrice>" + cell.GetItemString(row, colPOPrice) + L"</POPrice>";
-			itemStr += L"<POPrice1>" + cell.GetItemString(row, colPOPrice1) + L"</POPrice1>";
-			itemStr += L"<POPrice2>" + cell.GetItemString(row, colPOPrice2) + L"</POPrice2>";
-			itemStr += L"<POPrice3>" + cell.GetItemString(row, colPOPrice3) + L"</POPrice3>";
+			itemStr += L"<Supplier>" + cell.GetItemXmlString(row, colSupplier) + L"</Supplier>";
+			itemStr += L"<Supplier1>" + cell.GetItemXmlString(row, colSupplier1) + L"</Supplier1>";
+			itemStr += L"<Supplier2>" + cell.GetItemXmlString(row, colSupplier2) + L"</Supplier2>";
+			itemStr += L"<Supplier3>" + cell.GetItemXmlString(row, colSupplier3) + L"</Supplier3>";
+			itemStr += L"<POPrice>" + cell.GetItemXmlString(row, colPOPrice) + L"</POPrice>";
+			itemStr += L"<POPrice1>" + cell.GetItemXmlString(row, colPOPrice1) + L"</POPrice1>";
+			itemStr += L"<POPrice2>" + cell.GetItemXmlString(row, colPOPrice2) + L"</POPrice2>";
+			itemStr += L"<POPrice3>" + cell.GetItemXmlString(row, colPOPrice3) + L"</POPrice3>";
 
-			itemStr += L"<BOMType>" + cell.GetItemString(row, colBOMType) + L"</BOMType>";
-			itemStr += L"<BOMType1>" + cell.GetItemString(row, colBOMType1) + L"</BOMType1>";
-			itemStr += L"<BOMType2>" + cell.GetItemString(row, colBOMType2) + L"</BOMType2>";
-			itemStr += L"<BOMType3>" + cell.GetItemString(row, colBOMType2) + L"</BOMType3>";
+			itemStr += L"<BOMType>" + cell.GetItemXmlString(row, colBOMType) + L"</BOMType>";
+			itemStr += L"<BOMType1>" + cell.GetItemXmlString(row, colBOMType1) + L"</BOMType1>";
+			itemStr += L"<BOMType2>" + cell.GetItemXmlString(row, colBOMType2) + L"</BOMType2>";
+			itemStr += L"<BOMType3>" + cell.GetItemXmlString(row, colBOMType2) + L"</BOMType3>";
 			itemStr += L"<PurchedDate>" + sdate + L"</PurchedDate>";
 			itemStr += L"<EnquiryLineID>" + getRowTerm(cell, row, L"EnquiryLineID") + L"</EnquiryLineID>";
 
@@ -474,19 +474,19 @@
 				if (cell.GetItemString(row, colItemName) != L"" || cell.GetItemString(row, colItemSpec) != L"") break;
 				if (cell.GetItemString(row, colSupplier) == L"")break;
 				xstring extStr = L"";
-				extStr += L"<Supplier>" + cell.GetItemString(row, colSupplier) + L"</Supplier>";
-				extStr += L"<Supplier1>" + cell.GetItemString(row, colSupplier1) + L"</Supplier1>";
-				extStr += L"<Supplier2>" + cell.GetItemString(row, colSupplier2) + L"</Supplier2>";
-				extStr += L"<Supplier3>" + cell.GetItemString(row, colSupplier3) + L"</Supplier3>";
-				extStr += L"<POPrice>" + cell.GetItemString(row, colPOPrice) + L"</POPrice>";
-				extStr += L"<POPrice1>" + cell.GetItemString(row, colPOPrice1) + L"</POPrice1>";
-				extStr += L"<POPrice2>" + cell.GetItemString(row, colPOPrice2) + L"</POPrice2>";
-				extStr += L"<POPrice3>" + cell.GetItemString(row, colPOPrice3) + L"</POPrice3>";
+				extStr += L"<Supplier>" + cell.GetItemXmlString(row, colSupplier) + L"</Supplier>";
+				extStr += L"<Supplier1>" + cell.GetItemXmlString(row, colSupplier1) + L"</Supplier1>";
+				extStr += L"<Supplier2>" + cell.GetItemXmlString(row, colSupplier2) + L"</Supplier2>";
+				extStr += L"<Supplier3>" + cell.GetItemXmlString(row, colSupplier3) + L"</Supplier3>";
+				extStr += L"<POPrice>" + cell.GetItemXmlString(row, colPOPrice) + L"</POPrice>";
+				extStr += L"<POPrice1>" + cell.GetItemXmlString(row, colPOPrice1) + L"</POPrice1>";
+				extStr += L"<POPrice2>" + cell.GetItemXmlString(row, colPOPrice2) + L"</POPrice2>";
+				extStr += L"<POPrice3>" + cell.GetItemXmlString(row, colPOPrice3) + L"</POPrice3>";
 
-				extStr += L"<BOMType>" + cell.GetItemString(row, colBOMType) + L"</BOMType>";
-				extStr += L"<BOMType1>" + cell.GetItemString(row, colBOMType1) + L"</BOMType1>";
-				extStr += L"<BOMType2>" + cell.GetItemString(row, colBOMType2) + L"</BOMType2>";
-				extStr += L"<BOMType3>" + cell.GetItemString(row, colBOMType2) + L"</BOMType3>";
+				extStr += L"<BOMType>" + cell.GetItemXmlString(row, colBOMType) + L"</BOMType>";
+				extStr += L"<BOMType1>" + cell.GetItemXmlString(row, colBOMType1) + L"</BOMType1>";
+				extStr += L"<BOMType2>" + cell.GetItemXmlString(row, colBOMType2) + L"</BOMType2>";
+				extStr += L"<BOMType3>" + cell.GetItemXmlString(row, colBOMType2) + L"</BOMType3>";
 
 				itemStr += L"<ExtItem>" + extStr + L"</ExtItem>"; //备用采购信息
 				xstring eid = GetGuid();
@@ -567,6 +567,11 @@
 		im.Redraw();
 
 		return 1;
+	}
+
+	xstring getBaseXmlItem(xcell dw_cell, xstring colname)
+	{
+		return xutil::ToXmlText(getBaseItem(dw_cell, colname));
 	}
 
 	xstring getBaseItem(xcell dw_cell, xstring colname)
@@ -858,14 +863,14 @@
 
 			xstring itemStr = L"";
 			itemStr += L"<RowID>" + getRowID(dw_cell, row) + L"</RowID>";
-			itemStr += L"<ItemNo>" + dw_cell.GetItemString(row, colItemNo) + L"</ItemNo>";
-			itemStr += L"<CustomerItemNo>" + dw_cell.GetItemString(row, colCustomerItemNo) + L"</CustomerItemNo>";
-			itemStr += L"<ItemName>" + dw_cell.GetItemString(row, colItemName) + L"</ItemName>";
-			itemStr += L"<ItemCName>" + dw_cell.GetItemString(row, colItemCName) + L"</ItemCName>";
-			itemStr += L"<ItemSpec>" + dw_cell.GetItemString(row, colItemSpec) + L"</ItemSpec>";
-			itemStr += L"<BuyerPrice>" + dw_cell.GetItemString(row, colBuyerPrice) + L"</BuyerPrice>";
-			itemStr += L"<ProductInfo>" + dw_cell.GetItemString(row, colProductInfo) + L"</ProductInfo>";
-			itemStr += L"<ProductInfo1>" + dw_cell.GetItemString(row, colProductInfo1) + L"</ProductInfo1>";
+			itemStr += L"<ItemNo>" + dw_cell.GetItemXmlString(row, colItemNo) + L"</ItemNo>";
+			itemStr += L"<CustomerItemNo>" + dw_cell.GetItemXmlString(row, colCustomerItemNo) + L"</CustomerItemNo>";
+			itemStr += L"<ItemName>" + dw_cell.GetItemXmlString(row, colItemName) + L"</ItemName>";
+			itemStr += L"<ItemCName>" + dw_cell.GetItemXmlString(row, colItemCName) + L"</ItemCName>";
+			itemStr += L"<ItemSpec>" + dw_cell.GetItemXmlString(row, colItemSpec) + L"</ItemSpec>";
+			itemStr += L"<BuyerPrice>" + dw_cell.GetItemXmlString(row, colBuyerPrice) + L"</BuyerPrice>";
+			itemStr += L"<ProductInfo>" + dw_cell.GetItemXmlString(row, colProductInfo) + L"</ProductInfo>";
+			itemStr += L"<ProductInfo1>" + dw_cell.GetItemXmlString(row, colProductInfo1) + L"</ProductInfo1>";
 
 			if (dw_cell.GetItemString(row, colBuyerPrice) == L"") return L"采购价格没有录入";
 			if (dw_cell.GetItemString(row, colGWT) == L"") return L"毛重没有录入";
@@ -884,14 +889,14 @@
 			{
 				if (dw_cell.GetItemString(row, colPOPrice1) == L"") return L"采购价格1没有录入";
 			}
-			itemStr += L"<BuyerMOQ>" + dw_cell.GetItemString(row, colBuyerMOQ) + L"</BuyerMOQ>";
-			itemStr += L"<BuyerRemark>" + dw_cell.GetItemString(row, colBuyerRemark) + L"</BuyerRemark>";
-			itemStr += L"<FactoryImage>" + dw_cell.GetItemString(row, colFactoryImage) + L"</FactoryImage>";
-			itemStr += L"<GWT>" + dw_cell.GetItemString(row, colGWT) + L"</GWT>";
-			itemStr += L"<NWT>" + dw_cell.GetItemString(row, colNWT) + L"</NWT>";
-			itemStr += L"<VolDesc>" + dw_cell.GetItemString(row, colVolDesc) + L"</VolDesc>";
-			itemStr += L"<Vol>" + dw_cell.GetItemString(row, colVol) + L"</Vol>";
-			itemStr += L"<F40HQ>" + dw_cell.GetItemString(row, col40HQ) + L"</F40HQ>";
+			itemStr += L"<BuyerMOQ>" + dw_cell.GetItemXmlString(row, colBuyerMOQ) + L"</BuyerMOQ>";
+			itemStr += L"<BuyerRemark>" + dw_cell.GetItemXmlString(row, colBuyerRemark) + L"</BuyerRemark>";
+			itemStr += L"<FactoryImage>" + dw_cell.GetItemXmlString(row, colFactoryImage) + L"</FactoryImage>";
+			itemStr += L"<GWT>" + dw_cell.GetItemXmlString(row, colGWT) + L"</GWT>";
+			itemStr += L"<NWT>" + dw_cell.GetItemXmlString(row, colNWT) + L"</NWT>";
+			itemStr += L"<VolDesc>" + dw_cell.GetItemXmlString(row, colVolDesc) + L"</VolDesc>";
+			itemStr += L"<Vol>" + dw_cell.GetItemXmlString(row, colVol) + L"</Vol>";
+			itemStr += L"<F40HQ>" + dw_cell.GetItemXmlString(row, col40HQ) + L"</F40HQ>";
 
 			itemStr += L"<PurchedDate>" + sdate + L"</PurchedDate>";
 			itemStr += L"<EnquiryLineID>" + getRowTerm(dw_cell, row, L"EnquiryLineID") + L"</EnquiryLineID>";
@@ -1057,25 +1062,25 @@
 			xstring itemStr = L"";
 			xstring issend = L"1";
 			itemStr += L"<RowID>" + getRowID(dw_cell, row) + L"</RowID>";
-			itemStr += L"<ItemNo>" + dw_cell.GetItemString(row, colItemNo) + L"</ItemNo>";
-			itemStr += L"<ItemName>" + dw_cell.GetItemString(row, colItemName) + L"</ItemName>";
-			itemStr += L"<ItemCName>" + dw_cell.GetItemString(row, colItemCName) + L"</ItemCName>";
-			itemStr += L"<ItemSpec>" + dw_cell.GetItemString(row, colItemSpec) + L"</ItemSpec>";
+			itemStr += L"<ItemNo>" + dw_cell.GetItemXmlString(row, colItemNo) + L"</ItemNo>";
+			itemStr += L"<ItemName>" + dw_cell.GetItemXmlString(row, colItemName) + L"</ItemName>";
+			itemStr += L"<ItemCName>" + dw_cell.GetItemXmlString(row, colItemCName) + L"</ItemCName>";
+			itemStr += L"<ItemSpec>" + dw_cell.GetItemXmlString(row, colItemSpec) + L"</ItemSpec>";
 			itemStr += L"<RowNo>" + xstring(row - startRow + 1) + L"</RowNo>";
-			itemStr += L"<Purchor>" + dw_cell.GetItemString(row, colBuyer) + L"</Purchor>";
-			itemStr += L"<Package>" + dw_cell.GetItemString(row, colPackage) + L"</Package>";
-			itemStr += L"<NWT>" + dw_cell.GetItemString(row, colNW) + L"</NWT>";
-			itemStr += L"<GWT>" + dw_cell.GetItemString(row, colGW) + L"</GWT>";
-			itemStr += L"<VolDesc>" + dw_cell.GetItemString(row, colVolDesc) + L"</VolDesc>";
-			itemStr += L"<Supplier>" + dw_cell.GetItemString(row, colSupplier) + L"</Supplier>";
-			itemStr += L"<BuyPrice>" + dw_cell.GetItemString(row, colPOPrice) + L"</BuyPrice>";
-			itemStr += L"<Supplier1>" + dw_cell.GetItemString(row, colSupplier1) + L"</Supplier1>";
-			itemStr += L"<BuyPrice1>" + dw_cell.GetItemString(row, colPOPrice1) + L"</BuyPrice1>";
-			itemStr += L"<BOMType1>" + dw_cell.GetItemString(row, colBOMType1) + L"</BOMType1>";
-			itemStr += L"<BOMType>" + dw_cell.GetItemString(row, colBOMType) + L"</BOMType>";
-			itemStr += L"<POPrice>" + dw_cell.GetItemString(row, colPrice) + L"</POPrice>";
-			itemStr += L"<ProductInfo>" + dw_cell.GetItemString(row, colProductInfo) + L"</ProductInfo>";
-			itemStr += L"<ProductInfo1>" + dw_cell.GetItemString(row, colProductInfo1) + L"</ProductInfo1>";
+			itemStr += L"<Purchor>" + dw_cell.GetItemXmlString(row, colBuyer) + L"</Purchor>";
+			itemStr += L"<Package>" + dw_cell.GetItemXmlString(row, colPackage) + L"</Package>";
+			itemStr += L"<NWT>" + dw_cell.GetItemXmlString(row, colNW) + L"</NWT>";
+			itemStr += L"<GWT>" + dw_cell.GetItemXmlString(row, colGW) + L"</GWT>";
+			itemStr += L"<VolDesc>" + dw_cell.GetItemXmlString(row, colVolDesc) + L"</VolDesc>";
+			itemStr += L"<Supplier>" + dw_cell.GetItemXmlString(row, colSupplier) + L"</Supplier>";
+			itemStr += L"<BuyPrice>" + dw_cell.GetItemXmlString(row, colPOPrice) + L"</BuyPrice>";
+			itemStr += L"<Supplier1>" + dw_cell.GetItemXmlString(row, colSupplier1) + L"</Supplier1>";
+			itemStr += L"<BuyPrice1>" + dw_cell.GetItemXmlString(row, colPOPrice1) + L"</BuyPrice1>";
+			itemStr += L"<BOMType1>" + dw_cell.GetItemXmlString(row, colBOMType1) + L"</BOMType1>";
+			itemStr += L"<BOMType>" + dw_cell.GetItemXmlString(row, colBOMType) + L"</BOMType>";
+			itemStr += L"<POPrice>" + dw_cell.GetItemXmlString(row, colPrice) + L"</POPrice>";
+			itemStr += L"<ProductInfo>" + dw_cell.GetItemXmlString(row, colProductInfo) + L"</ProductInfo>";
+			itemStr += L"<ProductInfo1>" + dw_cell.GetItemXmlString(row, colProductInfo1) + L"</ProductInfo1>";
 
 			if (dw_cell.GetItemString(row, colBuyer) == L"")issend = L"0";
 			itemStr += L"<IsSend>" + issend + L"</IsSend>";
@@ -1123,19 +1128,19 @@
 			xstring itemStr = L"";
 			xstring issend = L"1";
 			itemStr += L"<RowID>" + getRowID(dw_cell, row) + L"</RowID>";
-			itemStr += L"<ItemNo>" + dw_cell.GetItemString(row, colItemNo) + L"</ItemNo>";
-			itemStr += L"<CustomerItemNo>" + dw_cell.GetItemString(row, colCustomerItemNo) + L"</CustomerItemNo>";
-			itemStr += L"<ItemName>" + dw_cell.GetItemString(row, colItemName) + L"</ItemName>";
-			itemStr += L"<ItemCName>" + dw_cell.GetItemString(row, colItemCName) + L"</ItemCName>";
-			itemStr += L"<ItemSpec>" + dw_cell.GetItemString(row, colItemSpec) + L"</ItemSpec>";
+			itemStr += L"<ItemNo>" + dw_cell.GetItemXmlString(row, colItemNo) + L"</ItemNo>";
+			itemStr += L"<CustomerItemNo>" + dw_cell.GetItemXmlString(row, colCustomerItemNo) + L"</CustomerItemNo>";
+			itemStr += L"<ItemName>" + dw_cell.GetItemXmlString(row, colItemName) + L"</ItemName>";
+			itemStr += L"<ItemCName>" + dw_cell.GetItemXmlString(row, colItemCName) + L"</ItemCName>";
+			itemStr += L"<ItemSpec>" + dw_cell.GetItemXmlString(row, colItemSpec) + L"</ItemSpec>";
 			itemStr += L"<RowNo>" + xstring(row - startRow + 1) + L"</RowNo>";
-			itemStr += L"<Purchor>" + dw_cell.GetItemString(row, colBuyer) + L"</Purchor>";
-			itemStr += L"<Package>" + dw_cell.GetItemString(row, colPackage) + L"</Package>";
-			itemStr += L"<NWT>" + dw_cell.GetItemString(row, colNW) + L"</NWT>";
-			itemStr += L"<GWT>" + dw_cell.GetItemString(row, colGW) + L"</GWT>";
-			itemStr += L"<VolDesc>" + dw_cell.GetItemString(row, colVolDesc) + L"</VolDesc>";
-			itemStr += L"<ProductInfo>" + dw_cell.GetItemString(row, colProductInfo) + L"</ProductInfo>";
-			itemStr += L"<ProductInfo1>" + dw_cell.GetItemString(row, colProductInfo1) + L"</ProductInfo1>";
+			itemStr += L"<Purchor>" + dw_cell.GetItemXmlString(row, colBuyer) + L"</Purchor>";
+			itemStr += L"<Package>" + dw_cell.GetItemXmlString(row, colPackage) + L"</Package>";
+			itemStr += L"<NWT>" + dw_cell.GetItemXmlString(row, colNW) + L"</NWT>";
+			itemStr += L"<GWT>" + dw_cell.GetItemXmlString(row, colGW) + L"</GWT>";
+			itemStr += L"<VolDesc>" + dw_cell.GetItemXmlString(row, colVolDesc) + L"</VolDesc>";
+			itemStr += L"<ProductInfo>" + dw_cell.GetItemXmlString(row, colProductInfo) + L"</ProductInfo>";
+			itemStr += L"<ProductInfo1>" + dw_cell.GetItemXmlString(row, colProductInfo1) + L"</ProductInfo1>";
 			if (dw_cell.GetItemString(row, colBuyer) == L"")issend = L"0";
 			itemStr += L"<IsSend>" + issend + L"</IsSend>";
 
@@ -1177,14 +1182,14 @@
 			xstring itemStr = L"";
 			xstring issend=L"1";
 			itemStr += L"<RowID>"+getRowID(dw_cell,row)+L"</RowID>";
-			itemStr += L"<ItemNo>"+dw_cell.GetItemString(row, colItemNo)+L"</ItemNo>";
-			itemStr += L"<ItemName>"+dw_cell.GetItemString(row, colItemName)+L"</ItemName>";
-			itemStr += L"<ItemCName>"+dw_cell.GetItemString(row, colItemCName)+L"</ItemCName>";
-			itemStr += L"<ItemSpec>"+dw_cell.GetItemString(row, colItemSpec)+L"</ItemSpec>";
+			itemStr += L"<ItemNo>"+dw_cell.GetItemXmlString(row, colItemNo)+L"</ItemNo>";
+			itemStr += L"<ItemName>"+dw_cell.GetItemXmlString(row, colItemName)+L"</ItemName>";
+			itemStr += L"<ItemCName>"+dw_cell.GetItemXmlString(row, colItemCName)+L"</ItemCName>";
+			itemStr += L"<ItemSpec>"+dw_cell.GetItemXmlString(row, colItemSpec)+L"</ItemSpec>";
 			itemStr += L"<RowNo>"+(row - startRow +1).toString()+L"</RowNo>";
-			itemStr += L"<Purchor>"+dw_cell.GetItemString(row, colBuyer)+L"</Purchor>";
-			itemStr += L"<Package>"+dw_cell.GetItemString(row, colPackage)+L"</Package>";
-			if(dw_cell.GetItemString(row, colBuyer) ==L"")issend=L"0";
+			itemStr += L"<Purchor>"+dw_cell.GetItemXmlString(row, colBuyer)+L"</Purchor>";
+			itemStr += L"<Package>"+dw_cell.GetItemXmlString(row, colPackage)+L"</Package>";
+			if(dw_cell.GetItemXmlString(row, colBuyer) ==L"")issend=L"0";
 			itemStr += L"<IsSend>"+issend+L"</IsSend>";
 
 			items += L"<Item>"+itemStr+L"</Item>";
@@ -1397,14 +1402,14 @@
 			//if(dw_cell.GetItemString(row, colItemName)==L"")continue;
 			xstring itemStr = L"";
 			itemStr += L"<RowID>" + getRowID(dw_cell, row) + L"</RowID>";
-			itemStr += L"<ItemNo>" + dw_cell.GetItemString(row, colItemNo) + L"</ItemNo>";
-			itemStr += L"<ItemName>" + dw_cell.GetItemString(row, colItemName) + L"</ItemName>";
-			itemStr += L"<ItemCName>" + dw_cell.GetItemString(row, colItemCName) + L"</ItemCName>";
-			itemStr += L"<ItemSpec>" + dw_cell.GetItemString(row, colItemSpec) + L"</ItemSpec>";
-			itemStr += L"<BuyerPrice>" + dw_cell.GetItemString(row, colBuyerPrice) + L"</BuyerPrice>";
-			itemStr += L"<ProductInfo>" + dw_cell.GetItemString(row, colProductInfo) + L"</ProductInfo>";
-			itemStr += L"<ProductInfo1>" + dw_cell.GetItemString(row, colProductInfo1) + L"</ProductInfo1>";
-			itemStr += L"<Buyer>" + dw_cell.GetItemString(row, colPurchor) + L"</Buyer>";
+			itemStr += L"<ItemNo>" + dw_cell.GetItemXmlString(row, colItemNo) + L"</ItemNo>";
+			itemStr += L"<ItemName>" + dw_cell.GetItemXmlString(row, colItemName) + L"</ItemName>";
+			itemStr += L"<ItemCName>" + dw_cell.GetItemXmlString(row, colItemCName) + L"</ItemCName>";
+			itemStr += L"<ItemSpec>" + dw_cell.GetItemXmlString(row, colItemSpec) + L"</ItemSpec>";
+			itemStr += L"<BuyerPrice>" + dw_cell.GetItemXmlString(row, colBuyerPrice) + L"</BuyerPrice>";
+			itemStr += L"<ProductInfo>" + dw_cell.GetItemXmlString(row, colProductInfo) + L"</ProductInfo>";
+			itemStr += L"<ProductInfo1>" + dw_cell.GetItemXmlString(row, colProductInfo1) + L"</ProductInfo1>";
+			itemStr += L"<Buyer>" + dw_cell.GetItemXmlString(row, colPurchor) + L"</Buyer>";
 
 			/*
 			if(dw_cell.GetItemString(row, colBuyerPrice)==L"") return L"采购价格没有录入";
@@ -1437,14 +1442,14 @@
 				if(dw_cell.GetItemString(row, colVolDesc)==L"") return L"体积信息没有录入";
 			}
 			*/
-			itemStr += L"<BuyerMOQ>" + dw_cell.GetItemString(row, colBuyerMOQ) + L"</BuyerMOQ>";
-			itemStr += L"<BuyerRemark>" + dw_cell.GetItemString(row, colBuyerRemark) + L"</BuyerRemark>";
-			itemStr += L"<FactoryImage>" + dw_cell.GetItemString(row, colFactoryImage) + L"</FactoryImage>";
-			itemStr += L"<GWT>" + dw_cell.GetItemString(row, colGWT) + L"</GWT>";
-			itemStr += L"<NWT>" + dw_cell.GetItemString(row, colNWT) + L"</NWT>";
-			itemStr += L"<VolDesc>" + dw_cell.GetItemString(row, colVolDesc) + L"</VolDesc>";
-			itemStr += L"<Vol>" + dw_cell.GetItemString(row, colVol) + L"</Vol>";
-			itemStr += L"<F40HQ>" + dw_cell.GetItemString(row, col40HQ) + L"</F40HQ>";
+			itemStr += L"<BuyerMOQ>" + dw_cell.GetItemXmlString(row, colBuyerMOQ) + L"</BuyerMOQ>";
+			itemStr += L"<BuyerRemark>" + dw_cell.GetItemXmlString(row, colBuyerRemark) + L"</BuyerRemark>";
+			itemStr += L"<FactoryImage>" + dw_cell.GetItemXmlString(row, colFactoryImage) + L"</FactoryImage>";
+			itemStr += L"<GWT>" + dw_cell.GetItemXmlString(row, colGWT) + L"</GWT>";
+			itemStr += L"<NWT>" + dw_cell.GetItemXmlString(row, colNWT) + L"</NWT>";
+			itemStr += L"<VolDesc>" + dw_cell.GetItemXmlString(row, colVolDesc) + L"</VolDesc>";
+			itemStr += L"<Vol>" + dw_cell.GetItemXmlString(row, colVol) + L"</Vol>";
+			itemStr += L"<F40HQ>" + dw_cell.GetItemXmlString(row, col40HQ) + L"</F40HQ>";
 
 			itemStr += L"<PurchedDate>" + sdate + L"</PurchedDate>";
 			itemStr += L"<supplier-photo>" + getRowTerm(dw_cell, row, L"supplier-photo") + L"</supplier-photo>";
@@ -1853,7 +1858,7 @@
 						}
 						dw_cell.SetRowColumn(lastrow, 1);
 						dw_cell.SetAnchorRowColumn(lastrow, 1);
-						//SendCtrlCmd(dw_cell, L"xmFormatCellDeleteRow");
+						//SendCtrlCmd(dw_cell, L"xmFormatCellDeleteRow");  //now not direct delete purch next
 						drow++;
 					}
 				}
@@ -1862,12 +1867,16 @@
 		}
 
 		xstring finished = L"1";
+		PUser& user = publiccode::GetUser();
+		xstring myname = user.name;
 		for (row = startRow; row <= rowCount; row++)
 		{
 			if (getRowID(dw_cell, row) == L"") continue;
 			if (dw_cell.GetItemString(row, colItemName) == L"")continue;
 			if (dw_cell.GetItemString(row, colSalebackDate) == L"")
 			{
+				xstring purchor = dw_cell.GetItemString(row, purchercol);
+				if (purchor != L"" && purchor != myname) continue; //purchnext
 				finished = L"0";
 				break;
 			}
@@ -1876,11 +1885,7 @@
 		if (0 == 1)OnUpdateEntityFile();
 		OnUpdate();
 
-		if (finished == L"1")
-		{
-			OnUpdateProcessed();
-			alert(L"xxxxx");
-		}
+		if (finished == L"1")OnUpdateProcessed();
 
 		//OnSaveEx(true);
 		//alert(L"询价信息已发送给:"+purchors);
@@ -2220,7 +2225,10 @@
 	{
 		trace(L"BusinessItemID:" + id);
 		xml x = ViewObject::RetrieveData(L"/sale/data/TO/business/document", L"BusinessItemID", id);
-
+		
+		BSTR str;
+		x.get_xml(str);
+		::SysFreeString(str);
 		/*
 		xml sheet ;
 		sheet.setNativePointer(x.CreateInstance());
@@ -3523,14 +3531,31 @@
 		startRow++;
 		int row = dw_cell.GetRow();
 
+		int colPurchPrice = getItemCol(dw_cell, headrow, L"价格");
 		int colPurchPrice1 = getItemCol(dw_cell, headrow, L"价格1");
 		int colPurchPrice2 = getItemCol(dw_cell, headrow, L"价格2");
 		int colPurchPrice3 = getItemCol(dw_cell, headrow, L"价格3");
 		if (colPurchPrice3 > 0) return  1;
 
-		if (colPurchPrice2 < 1)
+		if (colPurchPrice1 < 1)
 		{
-			//dw_cell.SetColumnCount(dw_cell.GetColumnCount()+3);
+			dw_cell.SetColumnCount(dw_cell.GetColumnCount()+3);
+			//dw_cell.SetColumnCount(dw_cell.GetValidCol()+3);
+			dw_cell.SetRowColumn(row, colPurchPrice + 1);
+			dw_cell.SetAnchorRowColumn(row, colPurchPrice + 1);
+
+			SendCtrlCmd(dw_cell, L"xmFormatCellInsertCol");
+			SendCtrlCmd(dw_cell, L"xmFormatCellInsertCol");
+			SendCtrlCmd(dw_cell, L"xmFormatCellInsertCol");
+
+			dw_cell.SetItemString(headrow, colPurchPrice + 1, L"供应商1");
+			dw_cell.SetItemString(headrow, colPurchPrice + 2, L"类型1");
+			dw_cell.SetItemString(headrow, colPurchPrice + 3, L"价格1");
+			dw_cell.SetColumnWidth(colPurchPrice + 2, 0);
+		}
+		else if (colPurchPrice2 < 1)
+		{
+			dw_cell.SetColumnCount(dw_cell.GetColumnCount()+3);
 			//dw_cell.SetColumnCount(dw_cell.GetValidCol()+3);
 			dw_cell.SetRowColumn(row, colPurchPrice1 + 1);
 			dw_cell.SetAnchorRowColumn(row, colPurchPrice1 + 1);
@@ -3542,10 +3567,11 @@
 			dw_cell.SetItemString(headrow, colPurchPrice1 + 1, L"供应商2");
 			dw_cell.SetItemString(headrow, colPurchPrice1 + 2, L"类型2");
 			dw_cell.SetItemString(headrow, colPurchPrice1 + 3, L"价格2");
+			dw_cell.SetColumnWidth(colPurchPrice1 + 2, 0);
 		}
-		else
+		else if(colPurchPrice3 < 1)
 		{
-			//dw_cell.SetColumnCount(dw_cell.GetColumnCount()+3);
+			dw_cell.SetColumnCount(dw_cell.GetColumnCount()+3);
 			//dw_cell.SetColumnCount(dw_cell.GetValidCol()+3);
 			dw_cell.SetRowColumn(row, colPurchPrice2 + 1);
 			dw_cell.SetAnchorRowColumn(row, colPurchPrice2 + 1);
@@ -3557,6 +3583,7 @@
 			dw_cell.SetItemString(headrow, colPurchPrice2 + 1, L"供应商3");
 			dw_cell.SetItemString(headrow, colPurchPrice2 + 2, L"类型3");
 			dw_cell.SetItemString(headrow, colPurchPrice2 + 3, L"价格3");
+			dw_cell.SetColumnWidth(colPurchPrice2 + 2, 0);
 		}
 		return 1;
 	}
@@ -3580,6 +3607,8 @@
 			SendCtrlCmd(dw_cell, L"xmFormatCellDeleteCol");
 			SendCtrlCmd(dw_cell, L"xmFormatCellDeleteCol");
 			SendCtrlCmd(dw_cell, L"xmFormatCellDeleteCol");
+
+			dw_cell.SetColumnCount(dw_cell.GetColumnCount() - 3);
 			return 1;
 		}
 
@@ -3592,6 +3621,8 @@
 			SendCtrlCmd(dw_cell, L"xmFormatCellDeleteCol");
 			SendCtrlCmd(dw_cell, L"xmFormatCellDeleteCol");
 
+			dw_cell.SetColumnCount(dw_cell.GetColumnCount() - 3);
+
 			return 1;
 		}
 
@@ -3603,6 +3634,8 @@
 			SendCtrlCmd(dw_cell, L"xmFormatCellDeleteCol");
 			SendCtrlCmd(dw_cell, L"xmFormatCellDeleteCol");
 			SendCtrlCmd(dw_cell, L"xmFormatCellDeleteCol");
+
+			dw_cell.SetColumnCount(dw_cell.GetColumnCount() - 3);
 
 			return 1;
 		}
@@ -3854,7 +3887,7 @@
 				dw_goods.SetItemString(i, L"ItemID", ItemID);
 				xstring Item = L"<Item update.new='1' update.modify='1' guid='" + ItemID + L"'>";
 				Item += L"<SKUID>" + ItemID + L"</SKUID>";
-				Item += L"<GoodsNo>" + dw_goods.GetItemString(i, L"GoodsNo") + L"</GoodsNo>";
+				Item += L"<GoodsNo>" + dw_goods.GetItemXmlString(i, L"GoodsNo") + L"</GoodsNo>";
 				xstring SKUNo = GetNo();
 				dw_goods.SetItemString(i, L"SKUNo", SKUNo);
 				dw_goods.Redraw();
@@ -3865,9 +3898,9 @@
 
 				Item += L"<No>" + SKUNo + L"</No>";
 				Item += L"<SKUNo>" + SKUNo + L"</SKUNo>";
-				Item += L"<CName>" + dw_goods.GetItemString(i, L"CName") + L"</CName>";
-				Item += L"<EName>" + dw_goods.GetItemString(i, L"ItemName") + L"</EName>";
-				Item += L"<Packing>" + dw_goods.GetItemString(i, L"Packing") + L"</Packing>";
+				Item += L"<CName>" + dw_goods.GetItemXmlString(i, L"CName") + L"</CName>";
+				Item += L"<EName>" + dw_goods.GetItemXmlString(i, L"ItemName") + L"</EName>";
+				Item += L"<Packing>" + dw_goods.GetItemXmlString(i, L"Packing") + L"</Packing>";
 
 				Item += L"<CategoryID>" + categoryID + L"</CategoryID>";
 				Item += L"<FolderID>" + folderID + L"</FolderID>";
@@ -4123,6 +4156,7 @@
 		ensureRowID();
 
 		xstring content = dw_cell.GetData();
+		string val = content.c_str();
 		content = content.mid(content.find(L"<xsheet"), 9999999);
 		while (true)
 		{
@@ -5029,14 +5063,12 @@
 			int colSupplier1 = getItemCol(dw_cell, startRow - 1, L"供应商1");
 			int colBuyPrice1 = getItemCol(dw_cell, startRow - 1, L"价格1");
 
-			int colSaleSendDate = getItemCol(dw_cell, startRow - 1, L"业务发送采购时间");
-
 			dw_cell.SetColumnWidth(colSKUID, 0);
 			dw_cell.SetColumnWidth(colItemNo, 0);
 			dw_cell.SetColumnWidth(colCustomerItemNo, 0);
 			dw_cell.SetColumnWidth(colItemName, 0);
 			dw_cell.SetColumnWidth(colItemCName, 0);
-			dw_cell.SetColumnWidth(colBuyerRemark, 0);
+			//dw_cell.SetColumnWidth(colBuyerRemark, 0);
 			dw_cell.SetColumnWidth(colPackage, 0);
 			dw_cell.SetColumnWidth(colQty, 0);
 			dw_cell.SetColumnWidth(col40HQ, 0);
@@ -5086,7 +5118,7 @@
 					}
 				}
 			}
-			if (!bPrice1)
+			if (!bPrice1 && colSupplier1 > 0)
 			{
 				dw_cell.SetRowColumn(1, colSupplier1);
 				dw_cell.SetAnchorRowColumn(1, colSupplier1);
@@ -5096,25 +5128,38 @@
 			}
 
 			dw_cell.SetRowColumn(1, 1);
-			dw_cell.SetAnchorRowColumn(startRow-1, 1);
+			dw_cell.SetAnchorRowColumn(startRow - 2, 1);
 			SendCtrlCmd(dw_cell, L"xmEditCopy");
 
 			dw_cell.SetRowColumn(1, colPhoto);
-			dw_cell.SetAnchorRowColumn(startRow - 1, colPhoto);
+			dw_cell.SetAnchorRowColumn(startRow - 2, colPhoto);
 			SendCtrlCmd(dw_cell, L"xmEditPaste");
 
 			dw_cell.SetRowColumn(1, 2);
-			dw_cell.SetAnchorRowColumn(startRow - 1, 2);
+			dw_cell.SetAnchorRowColumn(startRow - 2, 2);
 			SendCtrlCmd(dw_cell, L"xmEditCopy");
 
 			dw_cell.SetRowColumn(1, colPhoto+1);
-			dw_cell.SetAnchorRowColumn(startRow - 1, colPhoto+1);
+			dw_cell.SetAnchorRowColumn(startRow - 2, colPhoto+1);
 			SendCtrlCmd(dw_cell, L"xmEditPaste");
 
+			int colSaleSendDate = getItemCol(dw_cell, startRow - 1, L"业务发送采购时间");
 			dw_cell.SetItemString(2, colBuyerPrice, L"业务员");
 			dw_cell.SetItemString(3, colBuyerPrice, L"发送日期:");
 			dw_cell.SetItemString(2, colBuyerPrice+1, dw_cell.GetItemString(startRow, colSaler));
 			dw_cell.SetItemString(3, colBuyerPrice+1, dw_cell.GetItemString(startRow, colSaleSendDate));
+			dw_cell.SetColumnWidth(colSaleSendDate, 0);
+
+			int colMOQ = getItemCol(dw_cell, startRow - 1, L"MOQ");
+			int colSupplier = getItemCol(dw_cell, startRow - 1, L"供应商");
+			int colBuyPrice = getItemCol(dw_cell, startRow - 1, L"价格");
+
+			dw_cell.SetRowColumn(startRow, colSupplier);
+			dw_cell.SetAnchorRowColumn(startRow, colSupplier);
+
+			dw_cell.SetColumnWidth(colBuyerPrice, 50);
+			dw_cell.SetColumnWidth(colMOQ, 50);
+			dw_cell.SetColumnWidth(colBuyPrice, 50);
 		}
 		
 
@@ -5261,7 +5306,7 @@
 		{
 			xnode anode = GetAgentNode(L"tabheader");
 			anode.SetLayerFlow(0x00000100);
-			dw_cell.SetColumnCount(dw_cell.GetValidCol() + 6);
+			dw_cell.SetColumnCount(dw_cell.GetValidCol() + 9);
 			//dw_cell.SetFixedCols(7);
 			AdjustView(dw_cell);
 		}
@@ -5304,8 +5349,8 @@
 					if (hasParty(dw_cell.GetItemString(row, colSupplier)) == false)
 					{
 						itemStr += L"<Item update.new='1' update.modify='1'>";
-						itemStr += L"<Name>" + dw_cell.GetItemString(row, colSupplier) + L"</Name>";
-						itemStr += L"<ShortName>" + dw_cell.GetItemString(row, colSupplier) + L"</ShortName>";
+						itemStr += L"<Name>" + dw_cell.GetItemXmlString(row, colSupplier) + L"</Name>";
+						itemStr += L"<ShortName>" + dw_cell.GetItemXmlString(row, colSupplier) + L"</ShortName>";
 						itemStr += L"</Item>";
 					}
 				}
@@ -5317,8 +5362,8 @@
 					if (hasParty(dw_cell.GetItemString(row, colSupplier1)) == false)
 					{
 						itemStr += L"<Item update.new='1' update.modify='1'>";
-						itemStr += L"<Name>" + dw_cell.GetItemString(row, colSupplier1) + L"</Name>";
-						itemStr += L"<ShortName>" + dw_cell.GetItemString(row, colSupplier1) + L"</ShortName>";
+						itemStr += L"<Name>" + dw_cell.GetItemXmlString(row, colSupplier1) + L"</Name>";
+						itemStr += L"<ShortName>" + dw_cell.GetItemXmlString(row, colSupplier1) + L"</ShortName>";
 						itemStr += L"</Item>";
 					}
 				}
@@ -5330,8 +5375,8 @@
 					if (hasParty(dw_cell.GetItemString(row, colSupplier2)) == false)
 					{
 						itemStr += L"<Item update.new='1' update.modify='1'>";
-						itemStr += L"<Name>" + dw_cell.GetItemString(row, colSupplier2) + L"</Name>";
-						itemStr += L"<ShortName>" + dw_cell.GetItemString(row, colSupplier2) + L"</ShortName>";
+						itemStr += L"<Name>" + dw_cell.GetItemXmlString(row, colSupplier2) + L"</Name>";
+						itemStr += L"<ShortName>" + dw_cell.GetItemXmlString(row, colSupplier2) + L"</ShortName>";
 						itemStr += L"</Item>";
 					}
 				}
@@ -5343,8 +5388,8 @@
 					if (hasParty(dw_cell.GetItemString(row, colSupplier3)) == false)
 					{
 						itemStr += L"<Item update.new='1' update.modify='1'>";
-						itemStr += L"<Name>" + dw_cell.GetItemString(row, colSupplier3) + L"</Name>";
-						itemStr += L"<ShortName>" + dw_cell.GetItemString(row, colSupplier3) + L"</ShortName>";
+						itemStr += L"<Name>" + dw_cell.GetItemXmlString(row, colSupplier3) + L"</Name>";
+						itemStr += L"<ShortName>" + dw_cell.GetItemXmlString(row, colSupplier3) + L"</ShortName>";
 						itemStr += L"</Item>";
 					}
 				}

--
Gitblit v1.9.3