Ejemplo n.º 1
0
 /// <summary>
 /// Применяем данные о продажах после формирования файла с остатками
 /// </summary>
 private string ApplyLastSales()
 {
     string result = "";
     //надо узнать дату формирования остатков
     string currDate = "";
     //теперь получаем все файлы продаж после этой даты
     foreach (string file in Directory.GetFiles(WorkWithCheckLenta.CloseDirName, "*.xml")) // извлекаем все файлы и кидаем их в список
     {
         try
         {
             currDate = GetLastSaleDate();
             FileToLoad checkLenta = new FileToLoad();
             //Загрузим файл продаж
             if (checkLenta.GetFileData(file))
             {
                 do
                 {
                     foreach (XElement item in checkLenta.GetCheckItems(currDate))
                     {
                         foreach (XElement good in GetGoodById(item.Element("goodid").Value))
                         {
                             //применяем продажи к остаткам
                             if (!SaveGoodCount(good, Int16.Parse(item.Element("count").Value)))
                             {
                                 result = "Не удалось обновить остатки товара: " + item.Element("goodid").Value;
                                 break;
                             }
                         }
                         if (result != "")
                         {
                             break;
                         }
                     }
                     if (result != "")
                     {
                         break;
                     }
                     currDate = ((DateTime.Parse(currDate, new System.Globalization.CultureInfo("ru-RU", true))).AddDays(1)).ToString("dd.MM.yyyy");
                 } while (DateTime.Parse(currDate, new System.Globalization.CultureInfo("ru-RU", true)) < DateTime.Now);
             }
         }
         catch (Exception e)
         {
             result = "Не удалось загрузить файл текущих остатков товаров: " + e.Message;
         }
         if (result != "")
         {
             break;
         }
     }
     //если все прошло нормально - сохраняем данные
     if (result == "")
     {
         CurrBalanceDocument.Save(CurrBalanceFileName);
         result = "OK";
     }
     return result;
 }
Ejemplo n.º 2
0
        private string GetSales()
        {
            string result = "";
            //зарузим файл с продажами
            SalesDocument = XDocument.Load(AllSalesFileName);

            //теперь получаем все файлы продаж
            foreach (string file in Directory.GetFiles(WorkWithCheckLenta.CloseDirName, "*.xml"))
            {
                try
                {
                    FileToLoad checkLenta = new FileToLoad();
                    //Загрузим файл продаж
                    if (checkLenta.GetFileData(file))
                    {
                        //добавим его данные к общим данным о продажах
                        SalesDocument.Root.Add(checkLenta.checkLentaDocument.Root.Elements("checkItem"));
                    }
                }
                catch (Exception e)
                {
                    result = "Не удалось загрузить файл продаж "+file+": " + e.Message;
                }
                if (result != "")
                {
                    break;
                }
            }
            //если все прошло нормально - сохраняем данные
            if (result == "")
            {
                result = "OK";
                SalesDocument.Save("c:\\test.xml");
            }
            return result;
        }