/// <summary>Выбор процесса (для светильников)</summary> /// <param name="MainProcess">Основной процесс</param> public SelectingLampProcess(WMSClient MainProcess)//, IServerIdProvider serverIdProvider) : base(MainProcess, 1) { //if (serverIdProvider == null) // { // throw new ArgumentException("ServerIdProvider"); // } this.serverIdProvider = new ServerIdProvider(); //serverIdProvider; BusinessProcessType = ProcessType.Selecting; FormNumber = 1; }
//, IServerIdProvider serverIdProvider) /// <summary>����� �������� (��� ������������)</summary> /// <param name="MainProcess">�������� �������</param> public SelectingLampProcess(WMSClient MainProcess) : base(MainProcess, 1) { //if (serverIdProvider == null) // { // throw new ArgumentException("ServerIdProvider"); // } this.serverIdProvider = new ServerIdProvider(); //serverIdProvider; BusinessProcessType = ProcessType.Selecting; FormNumber = 1; }
/// <summary>Синхронизация данных между ТСД и сервером</summary> /// <param name="MainProcess"></param> public dbSynchronizer(WMSClient MainProcess, IServerIdProvider serverIdProvider) : base(MainProcess, 1) { StartNetworkConnection(); if (serverIdProvider == null) { throw new ArgumentException("ServerIdProvider"); } this.serverIdProvider = serverIdProvider; deferredProperty = new List <DataAboutDeferredProperty>(); SynchronizeWithGreenhouse(serverIdProvider); }
private void SynchronizeWithGreenhouse(IServerIdProvider serverIdProvider) { logBuilder = new StringBuilder(string.Format("Synchronizing start: {0}", DateTime.Now.ToString("HH:mm:ss dd.MM.yyyy"))); logBuilder.AppendLine(); Stopwatch totalTime = new Stopwatch(); totalTime.Start(); //Документи infoLabel.Text = "Контрагенти"; if (!SyncObjects <Contractors>(WaysOfSync.OneWay, FilterSettings.CanSynced)) { return; } infoLabel.Text = "Карти"; if (!SyncObjects <Maps>(false)) { return; } infoLabel.Text = "Партії"; if (!SyncObjects <Party>(WaysOfSync.OneWay)) { return; } infoLabel.Text = "Моделі"; if (!SyncObjects <Models>(WaysOfSync.TwoWay)) { return; } //Прийомка нового infoLabel.Text = "Документи прийомки нового комплектучого"; SyncAccepmentsDocWithServer(); SyncAccepmentsDocFromServer(); //Комплектуюче infoLabel.Text = "Лампи"; if (!SyncObjects <Lamps>(WaysOfSync.TwoWay)) { return; } infoLabel.Text = "Ел.блоки"; if (!SyncObjects <ElectronicUnits>(WaysOfSync.TwoWay)) { return; } infoLabel.Text = "Корпуси"; if (!SyncObjects <Cases>(WaysOfSync.TwoWay)) { return; } //Оновлення посилань infoLabel.Text = "Оновлення посилань"; updateDeferredProperties(); PerformQuery("EndOfSync"); //Відправка на ... infoLabel.Text = "Відправка на списання"; SyncOutSending <SendingToCharge, SubSendingToChargeChargeTable>(); SyncInSending <SendingToCharge, SubSendingToChargeChargeTable>(); infoLabel.Text = "Відправка на обмін"; SyncOutSending <SendingToExchange, SubSendingToExchangeUploadTable>(); SyncInSending <SendingToExchange, SubSendingToExchangeUploadTable>(); infoLabel.Text = "Відправка на ремонт"; SyncOutSending <SendingToRepair, SubSendingToRepairRepairTable>(); SyncInSending <SendingToRepair, SubSendingToRepairRepairTable>(); //Приймання комплектуючого з ... infoLabel.Text = "Приймання з ремонту"; SyncOutSending <AcceptanceAccessoriesFromRepair, SubAcceptanceAccessoriesFromRepairRepairTable>( SyncModes.AcceptanceFromRepair); SyncInSending <AcceptanceAccessoriesFromRepair, SubAcceptanceAccessoriesFromRepairRepairTable>(); infoLabel.Text = "Приймання з обміну"; SyncOutAcceptanceFromExchange(); SyncInSending <AcceptanceAccessoriesFromExchange, SubAcceptanceAccessoriesFromExchangeExchange>( SyncModes.SendingToExchange); //Переміщення infoLabel.Text = "Переміщення"; SyncMovement(); logBuilder.AppendLine(); logBuilder.AppendLine(string.Format("Total: {0}", (int)(totalTime.ElapsedMilliseconds * 0.001))); logToFile("SynchLog.txt", logBuilder); }