LiFan
2024-09-20 958ef84eeb24aa77ac535cf70aa3d3f30cb2a59d
jrj/project/business/QuoteFile.cpp
@@ -166,10 +166,10 @@
         while (true)
         {
            xstring guid = guids;
            if (guids.find(L",L") >= 0)
            if (guids.find(L",") >= 0)
            {
               guid = guids.left(guids.find(L",L"));
               guids = guids.mid(guids.find(L",L") + 1, 99999);
               guid = guids.left(guids.find(L","));
               guids = guids.mid(guids.find(L",") + 1, 99999);
            }
            else
            {
@@ -201,10 +201,10 @@
         while (true)
         {
            xstring guid = guids;
            if (guids.find(L",L") >= 0)
            if (guids.find(L",") >= 0)
            {
               guid = guids.left(guids.find(L",L"));
               guids = guids.mid(guids.find(L",L") + 1, 99999);
               guid = guids.left(guids.find(L","));
               guids = guids.mid(guids.find(L",") + 1, 99999);
            }
            else
            {
@@ -231,7 +231,7 @@
      xstring fstr = L"";
      while (strs != L"")
      {
         int pos = strs.find(L",L");
         int pos = strs.find(L",");
         if (pos < 0)
         {
            str = strs;
@@ -245,7 +245,7 @@
         if (fstr == L"")
            fstr = GetImageUrl(str);
         else
            fstr += L",L" + GetImageUrl(str);
            fstr += L"," + GetImageUrl(str);
      }
      return fstr;
   }
@@ -277,18 +277,18 @@
      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"采购人员");
@@ -377,11 +377,11 @@
      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 +396,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"采购人员");
@@ -507,10 +507,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;
@@ -612,12 +611,12 @@
   int getItemCol(xcell dw_obj, int row, xstring head)
   {
      xstring fullhead = L",L" + head + L",L";
      xstring fullhead = L"," + head + L",";
      int headRow = row;
      int colCount = dw_obj.GetValidCol(headRow);
      for (int col = 1; col <= colCount; col++)
      {
         if (fullhead.find(L",L" + dw_obj.GetItemString(headRow, col) + L",L") >= 0) return col;
         if (fullhead.find(L"," + dw_obj.GetItemString(headRow, col) + L",") >= 0) return col;
      }
      return -1;
   }
@@ -645,8 +644,8 @@
         xstring left = str.left(str.find(prop + L":") + prop.length() + 1);
         if (str.find(L";") >= 0)
            right = str.mid(str.find(L";") + 1, 9999);
         else    if (str.find(L",L") >= 0)
            right = str.mid(str.find(L",L") + 1, 9999);
         else    if (str.find(L",") >= 0)
            right = str.mid(str.find(L",") + 1, 9999);
         str = left + val + L";" + right;
         //alert(str);
         dw_obj.SetItemString(row, 0, str);
@@ -664,8 +663,8 @@
         str = str.mid(str.find(prop + L":") + prop.length() + 1, 9999);
         if (str.find(L";") >= 0)
            str = str.left(str.find(L";"));
         else if (str.find(L",L") >= 0)
            str = str.left(str.find(L",L"));
         else if (str.find(L",") >= 0)
            str = str.left(str.find(L","));
         return str;
      }
      return L"";
@@ -749,8 +748,8 @@
         str = str.mid(str.find(L"rowid:") + 6, 99999);
         if (str.find(L";") >= 0)
            str = str.left(str.find(L";"));
         else if (str.find(L",L") >= 0)
            str = str.left(str.find(L",L"));
         else if (str.find(L",") >= 0)
            str = str.left(str.find(L","));
         return str;
      }
      return L"";
@@ -830,11 +829,11 @@
      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");
@@ -1022,11 +1021,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 +1095,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 +1155,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>";
@@ -1221,11 +1220,11 @@
      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 +1319,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;
      }
@@ -1507,8 +1506,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 +1519,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 +1572,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 +1587,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;
      }
@@ -1598,7 +1597,7 @@
         return 1;
      }
      xstring strs = L",L";
      xstring strs = L",";
      row++;
      int colCustomerPhoto = getItemCol(dw_cell, startRow - 1, L"Photo,Customer Photo");
@@ -1610,11 +1609,11 @@
         if (str == L"")break;
         //ensureRowID(dw_cell,row);
         if (strs.find(L",L" + str + L",L") < 0)
         if (strs.find(L"," + str + L",") < 0)
         {
            if (purcher.selectSingleNode(L"//Name[.='" + str + L"']"))
            {
               strs += str + L",L";
               strs += str + L",";
            }
            else
            {
@@ -1624,7 +1623,7 @@
         }
         row++;
      }
      if (strs == L",L")
      if (strs == L",")
      {
         alert(L"请指定采购人员!");
         return 1;
@@ -1666,11 +1665,11 @@
         str = dw_cell.GetItemString(row, purchercol);
         if (str == L"")break;
         if (strs.find(L",L" + str + L",L") < 0)
         if (strs.find(L"," + str + L",") < 0)
         {
            if (purcher.selectSingleNode(L"//Name[.='" + str + L"']"))
            {
               strs += str + L",L";
               strs += str + L",";
            }
            else
            {
@@ -1687,16 +1686,16 @@
      xml x ;
      
      if (strs.left(1) == L",L") strs = strs.mid(1, 9999);
      if (strs.right(1) == L",L") strs = strs.left(strs.length() - 1);
      if (strs.left(1) == L",") strs = strs.mid(1, 9999);
      if (strs.right(1) == L",") strs = strs.left(strs.length() - 1);
      xstring purchors = strs;
      xstring supplier;
      if (strs.find(L",L", 0) > 0)
      if (strs.find(L",", 0) > 0)
      {
         supplier = strs.left(strs.find(L",L", 0));
         strs = strs.mid(strs.find(L",L", 0) + 1, 9999);
         supplier = strs.left(strs.find(L",", 0));
         strs = strs.mid(strs.find(L",", 0) + 1, 9999);
      }
      else
      {
@@ -1713,10 +1712,10 @@
         if (supplier == username)  len = 0;
         if (len < 1)
         {
            if (strs.find(L",L", 0) > 0)
            if (strs.find(L",", 0) > 0)
            {
               supplier = strs.left(strs.find(L",L", 0));
               strs = strs.mid(strs.find(L",L", 0) + 1, 9999);
               supplier = strs.left(strs.find(L",", 0));
               strs = strs.mid(strs.find(L",", 0) + 1, 9999);
            }
            else
            {
@@ -1768,10 +1767,10 @@
         if (SendToPurcher(supplier, cell1.GetData()) == -1) return 1;
         if (strs.find(L",L", 0) > 0)
         if (strs.find(L",", 0) > 0)
         {
            supplier = strs.left(strs.find(L",L", 0));
            strs = strs.mid(strs.find(L",L", 0) + 1, 9999);
            supplier = strs.left(strs.find(L",", 0));
            strs = strs.mid(strs.find(L",", 0) + 1, 9999);
         }
         else
         {
@@ -1932,8 +1931,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 +1945,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;
      }
@@ -1956,7 +1955,7 @@
         return 1;
      }
      xstring strs = L",L";
      xstring strs = L",";
      row++;
      int colCustomerPhoto = getItemCol(dw_cell, startRow - 1, L"Photo,Customer Photo");
@@ -2005,11 +2004,11 @@
         }*/
         ensureRowID(dw_cell, row);
         if (strs.find(L",L" + str + L",L") < 0)
         if (strs.find(L"," + str + L",") < 0)
         {
            if (purcher.selectSingleNode(L"//Name[.='" + str + L"']"))
            {
               strs += str + L",L";
               strs += str + L",";
            }
            else
            {
@@ -2019,7 +2018,7 @@
         }
         row++;
      }
      if (strs == L",L")
      if (strs == L",")
      {
         alert(L"找不到采购人员数据!");
         return 1;
@@ -2039,16 +2038,16 @@
      xml x ;
      
      if (strs.left(1) == L",L") strs = strs.mid(1, 9999);
      if (strs.right(1) == L",L") strs = strs.left(strs.length() - 1);
      if (strs.left(1) == L",") strs = strs.mid(1, 9999);
      if (strs.right(1) == L",") strs = strs.left(strs.length() - 1);
      xstring purchors = strs;
      xstring supplier;
      if (strs.find(L",L", 0) > 0)
      if (strs.find(L",", 0) > 0)
      {
         supplier = strs.left(strs.find(L",L", 0));
         strs = strs.mid(strs.find(L",L", 0) + 1, 9999);
         supplier = strs.left(strs.find(L",", 0));
         strs = strs.mid(strs.find(L",", 0) + 1, 9999);
      }
      else
      {
@@ -2065,10 +2064,10 @@
         int len = ts.length();
         if (len < 1)
         {
            if (strs.find(L",L", 0) > 0)
            if (strs.find(L",", 0) > 0)
            {
               supplier = strs.left(strs.find(L",L", 0));
               strs = strs.mid(strs.find(L",L", 0) + 1, 9999);
               supplier = strs.left(strs.find(L",", 0));
               strs = strs.mid(strs.find(L",", 0) + 1, 9999);
            }
            else
            {
@@ -2169,10 +2168,10 @@
         }
         if (SendToPurcher(supplier, cell1.GetData()) == -1) return 1;
         if (strs.find(L",L", 0) > 0)
         if (strs.find(L",", 0) > 0)
         {
            supplier = strs.left(strs.find(L",L", 0));
            strs = strs.mid(strs.find(L",L", 0) + 1, 9999);
            supplier = strs.left(strs.find(L",", 0));
            strs = strs.mid(strs.find(L",", 0) + 1, 9999);
         }
         else
         {
@@ -2363,7 +2362,7 @@
      {
         int pos = str.find(L";", str.find(tm + L":") + 1);
         if (pos < 0) return 1;
         str = str.left(pos) + L",L" + guid + str.mid(pos, 99999);
         str = str.left(pos) + L"," + guid + str.mid(pos, 99999);
      }
      else
      {
@@ -2385,7 +2384,7 @@
         if (pos > 0 && str.mid(pos - 1, 1) == L":")
            str = str.left(pos) + guid + str.mid(pos, 99999);
         else
            str = str.left(pos) + L",L" + guid + str.mid(pos, 99999);
            str = str.left(pos) + L"," + guid + str.mid(pos, 99999);
      }
      else
      {
@@ -2417,7 +2416,7 @@
      while (true)
      {
         count++;
         spos = images.find(L",L", spos + 1);
         spos = images.find(L",", spos + 1);
         if (spos < 0) break;
      }
      trace(L" count:" + xstring(count));
@@ -2485,11 +2484,11 @@
            while (true)
            {
               if (i == index) break;
               spos = images.find(L",L", spos + 1);
               spos = images.find(L",", spos + 1);
               if (spos < 0) break;
               i++;
            }
            int epos = images.find(L",L", spos + 1);
            int epos = images.find(L",", spos + 1);
            if (spos >= 0)
            {
               if (epos < 0)
@@ -2511,8 +2510,8 @@
         if (im.GetImageCount() - sindex >= 1)
         {
            if (images.find(L",L") == 0) images = images.mid(1, 9999);
            int pos1 = images.find(L",L");
            if (images.find(L",") == 0) images = images.mid(1, 9999);
            int pos1 = images.find(L",");
            if (pos1 < 0) pos1 = images.find(L";");
            xstring id = images;
            if (pos1 >= 0) id = images.left(pos1);
@@ -2587,7 +2586,7 @@
      return 1;
   }
   int GetOpenFileNames(xarray<xstring>& items, xstring initFileName, xstring filter, xstring ext)
   int GetOpenFileNames(xarray<xstring>& items, xstring initFileName, const string filter, xstring ext)
   {
      //xstring path = GetOpenFileName(L"",
      //      "JPEG 文件(*.jpg)\0*.jpg;*.jpeg;*.png;*.gif;*.bmp\0全部文件(*.*)\0*.*\0",
@@ -2611,7 +2610,7 @@
      int    nFilterIndex = 1;
      OPENFILENAMEW ofn;
      ofn.lStructSize = 88;//sizeof(ofn);
      ofn.lStructSize = sizeof(ofn);
      ofn.hwndOwner = 0;
      ofn.hInstance = 0;
      ofn.lpstrFilter = filter;
@@ -2648,13 +2647,13 @@
         else
         {
            wchar_t* start = szPath;
            start += pos * 2;
            start += pos;;
            xstring str = start;
            while (true)
            {
               if (str == L"")break;
               items.push_back(path + L"/" + str);
               start += (str.length() + 1) * 2;
               start += (str.length() + 1) ;
               str = start;
            }
         }
@@ -2831,17 +2830,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)
@@ -3015,14 +3014,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 +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 (price2 != L"")
               {
@@ -3045,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 (price3 != L"")
               {
@@ -3060,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;
               }
               price = pricec;
               if (priceb != L"")
@@ -3075,14 +3074,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 +3143,17 @@
      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 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");
@@ -4074,10 +4073,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 +4086,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业务备注");
@@ -4260,17 +4259,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;
@@ -4492,7 +4491,7 @@
                  {
                     alert(L"价格中没指定ABC");
                  }
                  price = price0 + L"+L" + price1;
                  price = price0 + L"+" + price1;
               }
               dw_cell.SetItemString(ARow, colPrice, price);
            }
@@ -4604,11 +4603,11 @@
      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"产品信息");
@@ -4724,6 +4723,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 +4769,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 +4790,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");
@@ -4984,7 +5002,7 @@
   int LoadPurcher()
   {
      xml purcher ;
      //xml purcher ;
      xaserverarg arg ;
      
      arg.AddArg(L"id", L"采购员");