LiFan
2024-10-18 7ac57009ceb55a1d5968f14b5da52dfa4d03e89f
jrj/project/business/QuoteFile.cpp
@@ -275,20 +275,21 @@
      int colSKUID = getItemCol(cell, startRow - 1, L"SKUID");
      int colSaleRemark = getItemCol(cell, startRow - 1, L"业务To采购备注");
      int colBuyerMOQ = getItemCol(cell, startRow - 1, L"MOQ");
      int colBuyerRemark = getItemCol(cell, startRow - 1, L"采购To业务备注");
      int colFactoryImage = getItemCol(cell, startRow - 1, L"工厂图片");
      int colGWT = getItemCol(cell, startRow - 1, L"毛重,毛重(KG)L");
      int colNWT = getItemCol(cell, startRow - 1, L"净重,净重(KG)L");
      int colVolDesc = getItemCol(cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(cell, startRow - 1, L"体积,体积(M3)L");
      int col40HQ = getItemCol(cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colGWT = getItemCol(cell, startRow - 1, L"毛重,毛重(KG)");
      int colNWT = getItemCol(cell, startRow - 1, L"净重,净重(KG)");
      int colVolDesc = getItemCol(cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(cell, startRow - 1, L"体积,体积(M3)");
      int col40HQ = getItemCol(cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colSupplier1 = getItemCol(cell, startRow - 1, L"供应商1");
      int colSupplier = getItemCol(cell, startRow - 1, L"供应商");
      int colPOPrice1 = getItemCol(cell, startRow - 1, L"价格1");
      int colPOPrice = getItemCol(cell, startRow - 1, L"价格");
      int colInnerOuter = getItemCol(cell, startRow - 1, L"装箱数(内/外)L");
      int colInnerOuter = getItemCol(cell, startRow - 1, L"装箱数(内/外)");
      int colItemQty = getItemCol(cell, startRow - 1, L"数量,Qty");
      int colPackage = getItemCol(cell, startRow - 1, L"Package,包装方式");
      int colBuyer = getItemCol(cell, startRow - 1, L"采购人员");
@@ -326,6 +327,7 @@
         itemStr += L"<BuyerPrice>" + cell.GetItemString(row, colBuyerPrice) + L"</BuyerPrice>";
         itemStr += L"<SaleRemark>" + cell.GetItemString(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>";
@@ -375,13 +377,14 @@
      int colSKUID = getItemCol(cell, startRow - 1, L"SKUID");
      int colSaleRemark = getItemCol(cell, startRow - 1, L"业务To采购备注");
      int colBuyerMOQ = getItemCol(cell, startRow - 1, L"MOQ");
      int colBuyerRemark = getItemCol(cell, startRow - 1, L"采购To业务备注");
      int colFactoryImage = getItemCol(cell, startRow - 1, L"工厂图片");
      int colGWT = getItemCol(cell, startRow - 1, L"毛重,毛重(KG)L");
      int colNWT = getItemCol(cell, startRow - 1, L"净重,净重(KG)L");
      int colVolDesc = getItemCol(cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(cell, startRow - 1, L"体积,体积(M3)L");
      int col40HQ = getItemCol(cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colGWT = getItemCol(cell, startRow - 1, L"毛重,毛重(KG)");
      int colNWT = getItemCol(cell, startRow - 1, L"净重,净重(KG)");
      int colVolDesc = getItemCol(cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(cell, startRow - 1, L"体积,体积(M3)");
      int col40HQ = getItemCol(cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colPOPrice = getItemCol(cell, startRow - 1, L"价格");
      int colSupplier = getItemCol(cell, startRow - 1, L"供应商");
@@ -396,7 +399,7 @@
      int colBOMType2 = getItemCol(cell, startRow - 1, L"类型2");
      int colBOMType3 = getItemCol(cell, startRow - 1, L"类型3");
      int colInnerOuter = getItemCol(cell, startRow - 1, L"装箱数(内/外)L");
      int colInnerOuter = getItemCol(cell, startRow - 1, L"装箱数(内/外)");
      int colItemQty = getItemCol(cell, startRow - 1, L"数量,Qty");
      int colPackage = getItemCol(cell, startRow - 1, L"Package,包装方式");
      int colBuyer = getItemCol(cell, startRow - 1, L"采购人员");
@@ -432,6 +435,7 @@
         itemStr += L"<BuyerPrice>" + cell.GetItemString(row, colBuyerPrice) + L"</BuyerPrice>";
         itemStr += L"<SaleRemark>" + cell.GetItemString(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>";
@@ -507,10 +511,9 @@
      xaserverarg argx;
      argx.AddArg(L"QuoteNo", dw_base.GetItemString(1, L"QuoteNo"));
      int p1 = argx;
      if (dw_base.GetItemString(1, L"QuoteNo") != L"")
      {
         OpenWindow(L"dev:xpage[xmQuoteBillList.vx]", p1);
         OpenWindow(L"dev:xpage[xmQuoteBillList.vx]", argx);
      }
      if (argx.GetArgString(L"action") != L"ok") return 1;
@@ -828,13 +831,14 @@
      int colItemSpec = getItemCol(dw_cell, startRow - 1, L"Specifications,规格,产品规格");
      int colBuyerPrice = getItemCol(dw_cell, startRow - 1, L"采购价,采购价格");
      int colBuyerMOQ = getItemCol(dw_cell, startRow - 1, L"MOQ");
      int colBuyerRemark = getItemCol(dw_cell, startRow - 1, L"采购To业务备注");
      int colFactoryImage = getItemCol(dw_cell, startRow - 1, L"工厂图片");
      int colGWT = getItemCol(dw_cell, startRow - 1, L"毛重,毛重(KG)L");
      int colNWT = getItemCol(dw_cell, startRow - 1, L"净重,净重(KG)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colGWT = getItemCol(dw_cell, startRow - 1, L"毛重,毛重(KG)");
      int colNWT = getItemCol(dw_cell, startRow - 1, L"净重,净重(KG)");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colSupplier = getItemCol(dw_cell, startRow - 1, L"供应商");
      int colSupplier1 = getItemCol(dw_cell, startRow - 1, L"供应商1");
@@ -880,6 +884,7 @@
         {
            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>";
@@ -1022,11 +1027,11 @@
      int colItemSpec = getItemCol(dw_cell, startRow - 1, L"Specifications,规格,产品规格");
      int colBuyer = getItemCol(dw_cell, startRow - 1, L"采购人员");
      int colPackage = getItemCol(dw_cell, startRow - 1, L"Package,包装方式");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colGW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)L");
      int colNW = getItemCol(dw_cell, startRow - 1, L"净重(KG)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"长X宽X高(CM)L");
      int colGW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)");
      int colNW = getItemCol(dw_cell, startRow - 1, L"净重(KG)");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"长X宽X高(CM)");
      int colPrice = getItemCol(dw_cell, startRow - 1, L"采购价");
@@ -1096,11 +1101,11 @@
      int colItemSpec = getItemCol(dw_cell, startRow - 1, L"Specifications,规格,产品规格");
      int colBuyer = getItemCol(dw_cell, startRow - 1, L"采购人员");
      int colPackage = getItemCol(dw_cell, startRow - 1, L"Package,包装方式");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colGW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)L");
      int colNW = getItemCol(dw_cell, startRow - 1, L"净重(KG)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"长X宽X高(CM)L");
      int colGW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)");
      int colNW = getItemCol(dw_cell, startRow - 1, L"净重(KG)");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"长X宽X高(CM)");
      int colProductInfo = getItemCol(dw_cell, startRow - 1, L"业务部产品信息");
      int colProductInfo1 = getItemCol(dw_cell, startRow - 1, L"采购部产品信息");
@@ -1156,7 +1161,7 @@
      int colItemSpec = getItemCol(dw_cell,startRow - 1,L"Specifications,规格,产品规格");
      int colBuyer = getItemCol(dw_cell,startRow - 1,L"采购人员");
      int colPackage = getItemCol(dw_cell,startRow - 1,L"Package,包装方式");
      int col40HQ= getItemCol(dw_cell,startRow - 1,L"40HQ,QTY(40HQ)L");
      int col40HQ= getItemCol(dw_cell,startRow - 1,L"40HQ,QTY(40HQ)");
      int colBuyer = getItemCol(dw_cell,startRow - 1,L"采购人员");
      xstring items=L"<data>";
@@ -1219,13 +1224,14 @@
      int colBuyerPrice = getItemCol(dw_cell, startRow - 1, L"采购价,采购价格");
      int colPurchor = getItemCol(dw_cell, startRow - 1, L"采购员,采购人员");
      int colBuyerMOQ = getItemCol(dw_cell, startRow - 1, L"MOQ");
      int colBuyerRemark = getItemCol(dw_cell, startRow - 1, L"采购To业务备注");
      int colFactoryImage = getItemCol(dw_cell, startRow - 1, L"工厂图片");
      int colGWT = getItemCol(dw_cell, startRow - 1, L"毛重,毛重(KG)L");
      int colNWT = getItemCol(dw_cell, startRow - 1, L"净重,净重(KG)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colGWT = getItemCol(dw_cell, startRow - 1, L"毛重,毛重(KG)");
      int colNWT = getItemCol(dw_cell, startRow - 1, L"净重,净重(KG)");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colSupplier1 = getItemCol(dw_cell, startRow - 1, L"供应商1");
      int colPOPrice1 = getItemCol(dw_cell, startRow - 1, L"价格1");
@@ -1320,7 +1326,7 @@
      {
         head = dw_cell.GetItemString(row, col);
         if (head == L"Product Name" || head == L"Product Description") namecol = col;
         if (head == L"FOB Price" || head == L"Fob Price" || head == L"FOB Price(USD)L") pricecol = col;
         if (head == L"FOB Price" || head == L"Fob Price" || head == L"FOB Price(USD)") pricecol = col;
         if (head == L"采购To业务备注") purchremarkcol = col;
         if (head == L"采购人员") purchercol = col;
      }
@@ -1431,6 +1437,7 @@
            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>";
@@ -1507,8 +1514,8 @@
      int colItemQty = getItemCol(dw_cell, headrow, L"数量,Qty");
      //int colItemSpec = getItemCol(dw_cell,headrow,L"Specifications,规格,产品规格");
      int colItemPurchDate = getItemCol(dw_cell, headrow, L"业务发送采购时间");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colInnerOuter = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colInnerOuter = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外)");
      int col = 0;
      int namecol = 0;
      int pricecol = 0;
@@ -1520,7 +1527,7 @@
      {
         head = dw_cell.GetItemString(row, col);
         if (head == L"Product Name" || head == L"Product Description") namecol = col;
         if (head == L"FOB Price" || head == L"Fob Price" || head == L"FOB Price(USD)L") pricecol = col;
         if (head == L"FOB Price" || head == L"Fob Price" || head == L"FOB Price(USD)") pricecol = col;
         if (head == L"采购To业务备注") purchremarkcol = col;
         if (head == L"采购人员") purchercol = col;
      }
@@ -1573,8 +1580,8 @@
      int colItemQty = getItemCol(dw_cell, headrow, L"数量,Qty");
      //int colItemSpec = getItemCol(dw_cell,headrow,L"Specifications,规格,产品规格");
      int colItemPurchDate = getItemCol(dw_cell, headrow, L"业务发送采购时间");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colInnerOuter = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colInnerOuter = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外)");
      int colSalebackDate = getItemCol(dw_cell, startRow - 1, L"采购提交业务时间");
      int col = 0;
@@ -1588,7 +1595,7 @@
      {
         head = dw_cell.GetItemString(row, col);
         if (head == L"Product Name" || head == L"Product Description") namecol = col;
         if (head == L"FOB Price" || head == L"Fob Price" || head == L"FOB Price(USD)L") pricecol = col;
         if (head == L"FOB Price" || head == L"Fob Price" || head == L"FOB Price(USD)") pricecol = col;
         if (head == L"采购To业务备注") purchremarkcol = col;
         if (head == L"采购人员") purchercol = col;
      }
@@ -1932,8 +1939,8 @@
      int colItemQty = getItemCol(dw_cell, headrow, L"数量,Qty");
      //int colItemSpec = getItemCol(dw_cell,headrow,L"Specifications,规格,产品规格");
      int colItemPurchDate = getItemCol(dw_cell, headrow, L"业务发送采购时间");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colInnerOuter = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colInnerOuter = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外)");
      int col = 0;
      int namecol = 0;
@@ -1946,7 +1953,7 @@
      {
         head = dw_cell.GetItemString(row, col);
         if (head == L"Product Name" || head == L"Product Description") namecol = col;
         if (head == L"FOB Price" || head == L"Fob Price" || head == L"FOB Price(USD)L") pricecol = col;
         if (head == L"FOB Price" || head == L"Fob Price" || head == L"FOB Price(USD)") pricecol = col;
         if (head == L"采购To业务备注") purchremarkcol = col;
         if (head == L"采购人员") purchercol = col;
      }
@@ -2218,6 +2225,7 @@
      xml sheet ;
      sheet.setNativePointer(x.CreateInstance());
      sheet.loadXML(x.selectSingleNode(L"data/*").xml);
      wangushendi xiuluowushen taigukuangmo
      */
      //trace(x.xml());
@@ -2831,17 +2839,17 @@
      //int colToPODate = getItemCol(dw_cell,startRow - 1,L"业务发送采购时间");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)L");
      int colQtyPerPack = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外),装箱数(外/内)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)");
      int colQtyPerPack = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外),装箱数(外/内)");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colSKUID = getItemCol(dw_cell, startRow - 1, L"SKUID");
      int colPONote = getItemCol(dw_cell, startRow - 1, L"采购To业务备注");
      int colPOPhoto = getItemCol(dw_cell, startRow - 1, L"工厂图片");
      int colPOPrice = getItemCol(dw_cell, startRow - 1, L"采购价");
      int colNW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)L");
      int colGW = getItemCol(dw_cell, startRow - 1, L"净重(KG)L");
      int colNW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)");
      int colGW = getItemCol(dw_cell, startRow - 1, L"净重(KG)");
      int colSKUNo = getItemCol(dw_cell, startRow - 1, L"SKUID,SKUNo");
      if (col == colFOBPrice)
@@ -2934,44 +2942,50 @@
         /*计算体积*/
         double v = 0.0;
         xstring desc = dw_cell.GetItemString(row, colVolDesc);
         if (desc.find(L"cm") >= 0)
         if(desc!=L"")
         {
            desc = desc.replace(L"cm", L"");
            dw_cell.SetItemString(row, colVolDesc, desc);
         }
         if (desc.find(L"CM") >= 0)
         {
            desc = desc.replace(L"CM", L"");
            dw_cell.SetItemString(row, colVolDesc, desc);
         }
         if (desc == L"")
            dw_cell.SetItemString(row, colVol, L"");
         else
         {
            v = calcVol(desc) / 1000000.00;
            xstring str = xstring(v);
            if (str.find(L".") >= 0)   str = str.left(str.find(L".") + 5);
            dw_cell.SetItemString(row, colVol, str);
            dw_cell.Redraw();
         }
         xstring qtyperPack = dw_cell.GetItemString(row, colQtyPerPack);
         if (qtyperPack != L"")
         {
            xstring qty1 = qtyperPack;
            xstring qty2 = L"";
            double qty = 0.00;
            int pos2 = qtyperPack.find(L"/");
            if (pos2 >= 0)
            if (desc.find(L"cm") >= 0)
            {
               qty1 = qtyperPack.left(qtyperPack.find(L"/"));
               qty2 = qtyperPack.mid(qtyperPack.find(L"/") + 1, 9999);
               desc = desc.replace(L"cm", L"");
               dw_cell.SetItemString(row, colVolDesc, desc);
            }
            //if(qty1 !=L"") qty = qty1.toDouble();
            //if(qty2 !=L"") qty = qty*qty2.toDouble();
            qty = qty2.toDouble();
            double ttl = 65.0 * qty / v;
            dw_cell.SetItemString(row, col40HQ, xstring((int)ttl));
            if (desc.find(L"CM") >= 0)
            {
               desc = desc.replace(L"CM", L"");
               dw_cell.SetItemString(row, colVolDesc, desc);
            }
            if (desc == L"")
               dw_cell.SetItemString(row, colVol, L"");
            else
            {
               v = calcVol(desc) / 1000000.00;
               xstring str = xstring(v);
               if (str.find(L".") >= 0)   str = str.left(str.find(L".") + 5);
               dw_cell.SetItemString(row, colVol, str);
               dw_cell.Redraw();
            }
            xstring qtyperPack = dw_cell.GetItemString(row, colQtyPerPack);
            if (qtyperPack != L"")
            {
               xstring qty1 = qtyperPack;
               xstring qty2 = L"";
               double qty = 0.00;
               int pos2 = qtyperPack.find(L"/");
               if (pos2 >= 0)
               {
                  qty1 = qtyperPack.left(qtyperPack.find(L"/"));
                  qty2 = qtyperPack.mid(qtyperPack.find(L"/") + 1, 9999);
               }
               //if(qty1 !=L"") qty = qty1.toDouble();
               //if(qty2 !=L"") qty = qty*qty2.toDouble();
               if (qty2 != L"")
               {
                  qty = qty2.toDouble();
                  double ttl = 65.0 * qty / v;
                  dw_cell.SetItemString(row, col40HQ, xstring((int)ttl));
               }
            }
         }
      }
@@ -3015,14 +3029,14 @@
                  if (price.find(L"A") < 1 && price.find(L"B") < 1 && price.find(L"C") < 1 && price.find(L"a") < 1 && price.find(L"b") < 1 && price.find(L"b") < 1)
                  {
                     alert(L"价格中没指定ABC");
                     if (pricea == L"") pricea = price; else pricea += L"+L" + price;
                     if (pricea == L"") pricea = price; else pricea += L"+" + price;
                  }
                  else if (price.find(L"A") > 0 || price.find(L"a") > 0)
                     if (pricea == L"") pricea = price; else pricea += L"+L" + price;
                     if (pricea == L"") pricea = price; else pricea += L"+" + price;
                  else if (price.find(L"B") > 0 || price.find(L"b") > 0)
                     if (priceb == L"") priceb = price; else priceb += L"+L" + price;
                     if (priceb == L"") priceb = price; else priceb += L"+" + price;
                  else if (price.find(L"C") > 0 || price.find(L"c") > 0)
                     if (pricec == L"") pricec = price; else pricec += L"+L" + price;
                     if (pricec == L"") pricec = price; else pricec += L"+" + price;
               }
               if (price1 != L"")
               {
@@ -3030,14 +3044,14 @@
                  if (price.find(L"A") < 1 && price.find(L"B") < 1 && price.find(L"C") < 1 && price.find(L"a") < 1 && price.find(L"b") < 1 && price.find(L"b") < 1)
                  {
                     alert(L"价格中没指定ABC");
                     if (pricea == L"") pricea = price; else pricea += L"+L" + price;
                     if (pricea == L"") pricea = price; else pricea += L"+" + price;
                  }
                  else if (price.find(L"A") > 0 || price.find(L"a") > 0)
                     if (pricea == L"") pricea = price; else pricea += L"+L" + price;
                     if (pricea == L"") pricea = price; else pricea += L"+" + price;
                  else if (price.find(L"B") > 0 || price.find(L"b") > 0)
                     if (priceb == L"") priceb = price; else priceb += L"+L" + price;
                     if (priceb == L"") priceb = price; else priceb += L"+" + price;
                  else if (price.find(L"C") > 0 || price.find(L"c") > 0)
                     if (pricec == L"") pricec = price; else pricec += L"+L" + price;
                     if (pricec == L"") pricec = price; else pricec += L"+" + price;
               }
               if (price2 != L"")
               {
@@ -3045,14 +3059,14 @@
                  if (price.find(L"A") < 1 && price.find(L"B") < 1 && price.find(L"C") < 1 && price.find(L"a") < 1 && price.find(L"b") < 1 && price.find(L"b") < 1)
                  {
                     alert(L"价格中没指定ABC");
                     if (pricea == L"") pricea = price; else pricea += L"+L" + price;
                     if (pricea == L"") pricea = price; else pricea += L"+" + price;
                  }
                  else if (price.find(L"A") > 0 || price.find(L"a") > 0)
                     if (pricea == L"") pricea = price; else pricea += L"+L" + price;
                     if (pricea == L"") pricea = price; else pricea += L"+" + price;
                  else if (price.find(L"B") > 0 || price.find(L"b") > 0)
                     if (priceb == L"") priceb = price; else priceb += L"+L" + price;
                     if (priceb == L"") priceb = price; else priceb += L"+" + price;
                  else if (price.find(L"C") > 0 || price.find(L"c") > 0)
                     if (pricec == L"") pricec = price; else pricec += L"+L" + price;
                     if (pricec == L"") pricec = price; else pricec += L"+" + price;
               }
               if (price3 != L"")
               {
@@ -3060,14 +3074,14 @@
                  if (price.find(L"A") < 1 && price.find(L"B") < 1 && price.find(L"C") < 1 && price.find(L"a") < 1 && price.find(L"b") < 1 && price.find(L"b") < 1)
                  {
                     alert(L"价格中没指定ABC");
                     if (pricea == L"") pricea = price; else pricea += L"+L" + price;
                     if (pricea == L"") pricea = price; else pricea += L"+" + price;
                  }
                  else if (price.find(L"A") > 0 || price.find(L"a") > 0)
                     if (pricea == L"") pricea = price; else pricea += L"+L" + price;
                     if (pricea == L"") pricea = price; else pricea += L"+" + price;
                  else if (price.find(L"B") > 0 || price.find(L"b") > 0)
                     if (priceb == L"") priceb = price; else priceb += L"+L" + price;
                     if (priceb == L"") priceb = price; else priceb += L"+" + price;
                  else if (price.find(L"C") > 0 || price.find(L"c") > 0)
                     if (pricec == L"") pricec = price; else pricec += L"+L" + price;
                     if (pricec == L"") pricec = price; else pricec += L"+" + price;
               }
               price = pricec;
               if (priceb != L"")
@@ -3075,14 +3089,14 @@
                  if (price == L"")
                     price = priceb;
                  else
                     price += L"+L" + priceb;
                     price += L"+" + priceb;
               }
               if (pricea != L"")
               {
                  if (price == L"")
                     price = pricea;
                  else
                     price += L"+L" + pricea;
                     price += L"+" + pricea;
               }
               dw_cell.SetItemString(row, colPrice, price);
               dw_cell.Redraw();
@@ -3144,17 +3158,18 @@
      int colBuyerPrice = getItemCol(dw_cell, startRow - 1, L"采购价,采购价格");
      int colPackage = getItemCol(dw_cell, startRow - 1, L"Package");
      int colPurchor = getItemCol(dw_cell, startRow - 1, L"采购员,采购人员");
      int colQtyPerPack = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外)L");
      int colQtyPerPack = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外)");
      int colFOBPrice = getItemCol(dw_cell, startRow - 1, L"FOB Price,FOB Price(USD),Fob Price");
      int colQuantity = getItemCol(dw_cell, startRow - 1, L"数量,Qty");
      int colBuyerMOQ = getItemCol(dw_cell, startRow - 1, L"MOQ");
      int colBuyerRemark = getItemCol(dw_cell, startRow - 1, L"采购To业务备注");
      int colFactoryImage = getItemCol(dw_cell, startRow - 1, L"工厂图片");
      int colGWT = getItemCol(dw_cell, startRow - 1, L"毛重,毛重(KG)L");
      int colNWT = getItemCol(dw_cell, startRow - 1, L"净重,净重(KG)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)L");
      int colHQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colGWT = getItemCol(dw_cell, startRow - 1, L"毛重,毛重(KG)");
      int colNWT = getItemCol(dw_cell, startRow - 1, L"净重,净重(KG)");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)");
      int colHQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colSKUNo = getItemCol(dw_cell, startRow - 1, L"SKUID,SKUNo");
@@ -3446,6 +3461,10 @@
         //if(makeMessage(L"/task/quote/purchar/backtosaler")==-1) return 1;
         return OnSaleBack();
      }
      else if (comdid == L"xmPurch2")
      {
         return OnPurch2();
      }
      else if (comdid == L"xmPurch")
      {
         return OnPurch();
@@ -3555,10 +3574,10 @@
         if (action == L"purch")
         {
            int crow = dw_cell.GetRow();
            xstring cmd = comdid.mid(3, comdid.length());
            if (getRowID(dw_cell, crow) == L"") SendCtrlCmd(dw_cell, cmd);
            if (getRowID(dw_cell, crow) == L"") SendCtrlCmd(dw_cell, comdid);
            return 1;
         }
         return 1;
      }
      return 0;
   }
@@ -3589,6 +3608,19 @@
         xstring error = x.text();
         alert(error);
         return -1;
      }
      return 1;
   }
   int OnPurch2()
   {
      xaserverarg arg;
      arg.AddArg(L"EntityID", entityID);
      OpenWindow(L"dev:xpage[QuoteFilePurch2Select.vx]", arg);
      xstring taskID = arg.GetArgString(L"TaskID");
      if (taskID != L"")
      {
         ProcessSendMessage(L"/task/quote/repurch", taskID, L"", L"", true);
      }
      return 1;
   }
@@ -4074,10 +4106,10 @@
      int colSaler = getItemCol(dw_cell, startRow - 1, L"业务员");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)L");
      int colQtyPerPack = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外),装箱数(外/内)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)");
      int colQtyPerPack = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外),装箱数(外/内)");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colSKUID = getItemCol(dw_cell, startRow - 1, L"SKUID");
      int colPONote = getItemCol(dw_cell, startRow - 1, L"采购To业务备注");
@@ -4087,8 +4119,8 @@
      int colPOPhoto = getItemCol(dw_cell, startRow - 1, L"工厂图片");
      int colPOPrice = getItemCol(dw_cell, startRow - 1, L"采购价");
      int colNW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)L");
      int colGW = getItemCol(dw_cell, startRow - 1, L"净重(KG)L");
      int colNW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)");
      int colGW = getItemCol(dw_cell, startRow - 1, L"净重(KG)");
      int colSKUNo = getItemCol(dw_cell, startRow - 1, L"SKUID,SKUNo");
      int purchremarkcol = getItemCol(dw_cell, startRow - 1, L"采购To业务备注");
@@ -4204,6 +4236,8 @@
         else if (col == colTyp1 || col == colTyp || col == colTyp2 || col == colTyp3)
         {
            xstring pitems1 = L"";
            pitems1 += (xstring)L"&lt;row&gt;&lt;显示列&gt;&lt;/显示列&gt;&lt;数据列&gt;"
               + L"&lt;/数据列&gt;&lt;/row&gt;";
            pitems1 += (xstring)L"&lt;row&gt;&lt;显示列&gt;成品&lt;/显示列&gt;&lt;数据列&gt;"
               + L"成品&lt;/数据列&gt;&lt;/row&gt;";
            pitems1 += (xstring)L"&lt;row&gt;&lt;显示列&gt;散货&lt;/显示列&gt;&lt;数据列&gt;"
@@ -4260,17 +4294,17 @@
      //int colToPODate = getItemCol(dw_cell,startRow - 1,L"业务发送采购时间");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)L");
      int colQtyPerPack = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外),装箱数(外/内)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)");
      int colQtyPerPack = getItemCol(dw_cell, startRow - 1, L"装箱数(内/外),装箱数(外/内)");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colSKUID = getItemCol(dw_cell, startRow - 1, L"SKUID");
      int colPONote = getItemCol(dw_cell, startRow - 1, L"采购To业务备注");
      int colPOPhoto = getItemCol(dw_cell, startRow - 1, L"工厂图片");
      int colPOPrice = getItemCol(dw_cell, startRow - 1, L"采购价");
      int colNW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)L");
      int colGW = getItemCol(dw_cell, startRow - 1, L"净重(KG)L");
      int colNW = getItemCol(dw_cell, startRow - 1, L"毛重(KG)");
      int colGW = getItemCol(dw_cell, startRow - 1, L"净重(KG)");
      int colSKUNo = getItemCol(dw_cell, startRow - 1, L"SKUID,SKUNo");
      dwhdr.idFrom = 0;
@@ -4458,6 +4492,8 @@
         else if (col == colTyp1 || col == colTyp)
         {
            xstring pitems1 = L"";
            pitems1 += (xstring)L"&lt;row&gt;&lt;显示列&gt;&lt;/显示列&gt;&lt;数据列&gt;"
               + L"&lt;/数据列&gt;&lt;/row&gt;";
            pitems1 += (xstring)L"&lt;row&gt;&lt;显示列&gt;成品&lt;/显示列&gt;&lt;数据列&gt;"
               + L"成品&lt;/数据列&gt;&lt;/row&gt;";
            pitems1 += (xstring)L"&lt;row&gt;&lt;显示列&gt;散货&lt;/显示列&gt;&lt;数据列&gt;"
@@ -4492,7 +4528,7 @@
                  {
                     alert(L"价格中没指定ABC");
                  }
                  price = price0 + L"+L" + price1;
                  price = price0 + L"+" + price1;
               }
               dw_cell.SetItemString(ARow, colPrice, price);
            }
@@ -4602,13 +4638,14 @@
      int colBuyerPrice = getItemCol(dw_cell, startRow - 1, L"采购价,采购价格");
      int colBuyer = getItemCol(dw_cell, startRow - 1, L"采购人员");
      int colBuyerMOQ = getItemCol(dw_cell, startRow - 1, L"MOQ");
      int colBuyerRemark = getItemCol(dw_cell, startRow - 1, L"采购To业务备注");
      int colFactoryImage = getItemCol(dw_cell, startRow - 1, L"工厂图片");
      int colGWT = getItemCol(dw_cell, startRow - 1, L"毛重,毛重(KG)L");
      int colNWT = getItemCol(dw_cell, startRow - 1, L"净重,净重(KG)L");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)L");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)L");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)L");
      int colGWT = getItemCol(dw_cell, startRow - 1, L"毛重,毛重(KG)");
      int colNWT = getItemCol(dw_cell, startRow - 1, L"净重,净重(KG)");
      int colVolDesc = getItemCol(dw_cell, startRow - 1, L"体积描述,长X宽X高,长X宽X高(CM)");
      int colVol = getItemCol(dw_cell, startRow - 1, L"体积,体积(M3)");
      int col40HQ = getItemCol(dw_cell, startRow - 1, L"40HQ,QTY(40HQ)");
      int colPurchedDate = getItemCol(dw_cell, startRow - 1, L"采购提交业务时间");
      int colPhoto1 = getItemCol(dw_cell, startRow - 1, L"工厂图片");
      //int colProductInfo = getItemCol(dw_cell,startRow - 1,L"产品信息");
@@ -4623,6 +4660,7 @@
         KXMLDOMElement ele = items.item(i);
         xstring rowid = ele.selectSingleNode(L"RowID").text();
         xstring BuyerPrice = ele.selectSingleNode(L"BuyerPrice").text();
         xstring BuyerMOQ = L"";
         xstring BuyerRemark = L"";
         xstring FactoryImage = L"";
         xstring GWT = L"";
@@ -4637,6 +4675,7 @@
         xstring  EnquiryLineID = L"";
         xstring  Buyer = L"";
         if (ele.selectSingleNode(L"BuyerMOQ")) BuyerMOQ = ele.selectSingleNode(L"BuyerMOQ").text();
         if (ele.selectSingleNode(L"BuyerRemark")) BuyerRemark = ele.selectSingleNode(L"BuyerRemark").text();
         if (ele.selectSingleNode(L"FactoryImage"))FactoryImage = ele.selectSingleNode(L"FactoryImage").text();
         if (ele.selectSingleNode(L"GWT")) GWT = ele.selectSingleNode(L"GWT").text();
@@ -4645,7 +4684,7 @@
         if (ele.selectSingleNode(L"Vol")) Vol = ele.selectSingleNode(L"Vol").text();
         if (ele.selectSingleNode(L"F40HQ")) F40HQ = ele.selectSingleNode(L"F40HQ").text();
         if (ele.selectSingleNode(L"PurchedDate")) PurchedDate = ele.selectSingleNode(L"PurchedDate").text();
         trace(L"\r\n******" + PurchedDate);
         //trace(L"\r\n******" + PurchedDate);
         if (ele.selectSingleNode(L"supplier-photo")) supplierphoto = ele.selectSingleNode(L"supplier-photo").text();
         if (ele.selectSingleNode(L"ProductInfo")) productInfo = ele.selectSingleNode(L"ProductInfo").text();
         if (ele.selectSingleNode(L"ProductInfo1")) productInfo1 = ele.selectSingleNode(L"ProductInfo1").text();
@@ -4660,6 +4699,7 @@
            if (getRowID(dw_cell, row) == rowid)
            {
               dw_cell.SetItemString(row, colBuyerPrice, BuyerPrice);
               dw_cell.SetItemString(row, colBuyerMOQ, BuyerMOQ);
               dw_cell.SetItemString(row, colBuyerRemark, BuyerRemark);
               dw_cell.SetItemString(row, colFactoryImage, FactoryImage);
               dw_cell.SetItemString(row, colGWT, GWT);
@@ -4724,6 +4764,21 @@
      return 1;
   }
   xstring GetTryFirstAttr(xstring str, xstring term)
   {
      xstring foundStr = L" " + term + L"=";
      wchar quote = L'"';
      int pos = str.find(foundStr);
      if (pos < 0) return L"";
      pos += foundStr.length();
      while (str.at(pos) == L' ')pos++;
      if (str.at(pos) == L'\'')quote = L'\'';
      int epos = ++pos;
      while (str.at(epos) && str.at(epos) != quote)epos++;
      if (!str.at(epos))return L"";
      return str.mid(pos, epos - pos);
   }
   int onload()
   {
      SetArg();
@@ -4755,7 +4810,11 @@
         x.loadXML(templ);
         */
         action = L"purch";
         action = GetTryFirstAttr(templ, L"action");
         if (action == L"") action = L"purch";
         entityItemID = GetTryFirstAttr(templ, L"TemplateItemID");
         if (entityItemID == L"")entityItemID = GetTryFirstAttr(templ, L"ItemID");
#if 0
         if (templ.find(L"action=\"") >= 0)
         {
            action = templ.mid(templ.find(L"action=\"") + 8, templ.find(L"\"", templ.find(L"action=\"") + 8) - (templ.find(L"action=\"") + 8));
@@ -4772,7 +4831,7 @@
               entityItemID = templ.mid(templ.find(L" ItemID=\"") + 9, templ.find(L"\"", templ.find(L" ItemID=\"") + 9) - (templ.find(L" ItemID=\"") + 9));
            }
         }
#endif
         /*action = x.documentElement.getAttribute(L"action");
         if(action==L"") action=L"purch";
         entityItemID = x.documentElement.getAttribute(L"TemplateItemID");
@@ -4863,7 +4922,7 @@
         dw_cell.SetColumnCount(dw_cell.GetValidCol() + 6);
      }
      else
         dw_cell.SetColumnCount(dw_cell.GetValidCol());
         dw_cell.SetColumnCount(dw_cell.GetValidCol()+3);
      //OnRetrieve();