Boolean ProcessOneElement(ReplicationService.DataForGet dg, ref Boolean bError) { if (dg == null) { return(false); } ReplicationService.PackageData pd = _client.GetDataForGet(_clientId, _sessionId, dg); if (pd == null) { return(false); } if (!pd.HasContent) { return(false); } if (pd.Tables == null) { return(false); } foreach (var t in pd.Tables) { ProcessSingleTable(t); } using (var cmd = _cnn.CreateCommand()) { cmd.CommandText = String.Format("a2repl.{0}_from_server_written", dg.TableName); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@id", dg.Id); cmd.ExecuteNonQuery(); } _client.SetDataForGetSent(_clientId, _sessionId, dg); return(true); }
Boolean ProcessPackage(ref Boolean bError) { // получаем ID и имя элемента для отправки ReplicationService.DataForGet dg = _client.GetItemForGet(_clientId, _sessionId); if (dg == null) { return(false); // нет данных } Log.Write("\t{0} Id={1}{2} ...", dg.TableName, dg.Id.ToString(), SqlExtension.Id2String(dg.Id)); if (!ProcessOneElement(dg, ref bError)) { Log.WriteLine(" ошибка"); return(false); } Log.WriteLine(" успешно"); return(true); }