Имя: Пароль:
1C
1C 7.7
v7: УРБД. ЦБ сделал свертку а ПБ не хочу трогать но не получается.
0 temsa
 
13.10.11
09:16
Есть база ЦБ и 3-4 баз ПБ. Среди ПБ есть одна особая база с признаком получатель.  Свернул (порезал) ЦБ на года 2011 и 2010. Но в ПБ-только получатель не хочу удалять 2010й. Сделал из запустил следующую команду в ЦБ. И потом выгрузил в ПБ.

delete  FROM _1Supdts WHERE objid
IN(SELECT jur.iddoc FROM _1sjourn as jur Where (jur.DATE_TIME_IDDOC < '20110101'))

Но после обмена В ПБ все равно доки за 2010й год удалились. Почему?
ЧЯНТД?
1 ДенисЧ
 
13.10.11
09:18
Да кто тебя знает...
Повтори картину (у тебя бекап ПБ сохранился?), предварительно удалив все файлы выгрузки обменов. После выгрузки из ЦБ посмотри, что выгрузилось...
2 temsa
 
13.10.11
09:19
(1) А вышеуказанный код удалает ручную операцию из таблицы обмена?
3 temsa
 
13.10.11
09:20
(1) Бекап конечно есть и спецом обратно отклик из ПБ не грузил еще пока бухи не дадут отмашку.
4 ДенисЧ
 
13.10.11
09:21
(2) должна.
5 temsa
 
13.10.11
09:23
(4) Сенкс. Буду пробовать. ДАже наверно переиндексую базы на всякий и даже может монопольно выгрузку буду делать....
6 temsa
 
13.10.11
10:08
А что означает куски из файла переноса???

"Actions",
{"Accounting",
{0.00,"",1}}}},
{692,"565465|A",2297,20110105,714080000,"00000000002",0,0,1,0,20,0,
{0,0,0,0,0,0,0,0,"1|","35|","0|0|","","3949|A","4181|A",20101201,20101231,0.00,0.00,0.00,0.00,14842527.89,6594156.95,6594156.95,14842527.89,
{1,"0|0|",25517.81,0.00,0.00,25517.81,"Реализация товаров 000009432 (15.12.10)"},
{2,"0|0|",2882100.53,0.00,0.00,2882100.53,"Реализация товаров 000009410 (15.12.10)"},
7 Mikeware
 
13.10.11
10:25
(6) Движения по бухсчетам
8 temsa
 
13.10.11
10:25
Возможно ли полный пересчет итогов или удаление большого количества элементов справочника повлиал на выгрузку таким образом что все равно некотрые доки в обмене остаются?
9 Mikeware
 
13.10.11
10:28
(8) если ты сделал свертку (обрезку), и не хочешь, чтоб данные свертки попадали в другую базу - просто делай свертку после полного прохождения цикла обмена, а после свертки-обрезки - почисти апдейтс по этому дбсигну...
10 temsa
 
13.10.11
10:52
(9) Понял идею. Но уже поздно - свернул базу 1-2 недели назад. А обмен с базой ПБ делается раз в месяц. Как раз пришла пора.
:(
11 temsa
 
13.10.11
10:55
+(10) Был почему-то уверен что код в (0) даст мне решение...
12 Mikeware
 
13.10.11
10:55
(10) чтоб не удалялись документы - убей в апдейтсе записи о документах с признаком делетед.
Хотя что у тебя в апдейтсе сейчас - хрен его знает...
13 Mikeware
 
13.10.11
10:57
(11) а зря. Этим кодом ты вполне могудалить регистрацию нужных справочников, например...
14 temsa
 
13.10.11
10:59
(13) там же доки токо удаляются. Разве не так?
15 temsa
 
13.10.11
10:59
(12) НУ хоть какой то вариант. Сенкс.
значит делейтет = 1 удалять ?
16 Рэйв
 
13.10.11
11:00
ПланыОбменаМенеджер (ExchangePlansManager)
УдалитьРегистрациюИзменений (DeleteChangeRecords)
Синтаксис:
УдалитьРегистрациюИзменений(<Узлы>, <Данные>)
Параметры:
<Узлы> (обязательный)
Тип: ПланОбменаСсылка, Массив. Одиночное значение типа ПланОбменаСсылка или массив таких значений, показывающие для каких узлов удаляются записи регистрации изменений.
<Данные> (необязательный)
Тип: Метаданные, Неопределено, УдалениеОбъекта, Число, <Данные>. Значением данного параметра может быть объект метаданных, объект, представляющий данные, хранимые в базе данных, такой как документ, элемент справочника, счет бухгалтерского учета, менеджер записи константы, набор записей регистра и т. п., ссылка на объект базы данных, а также Неопределено.
Если указан объект метаданных, то записи регистрации изменений будут удалены для всех элементов данных, относящихся к указанному объекту метаданных. Объект метаданных должен входить в состав планов обмена всех узлов, указанных в первом параметре.
Если указан УдалениеОбъекта, то удаление записи регистрации изменений выполняется для объекта базы данных, на который "указывает" ссылка, содержащаяся в объекте УдалениеОбъекта.
Если указан объект представляющий данные, хранимые в базе данных, или ссылка, то записи регистрации изменений будут удалены только для указанных данных. Объект метаданных, соответствующий данным должен входить в состав всех планов обмена всех узлов, указанных в первом параметре.
Если указано Неопределено, то в качестве первого параметра может быть указан только одиночный узел. И в этом случае записи регистрации изменений будут удалены для всех объектов, метаданные которых входят в состав плана обмена, к которому относится узел, указанный в качестве первого параметра.
Если в качестве первого параметра указан одиночный узел, то в параметре может быть указан номер сообщения. В этом случае метод УдалитьРегистрациюИзменений() удаляет из всех таблиц регистрации изменений все записи относящиеся к указанному узлу, у которых номер сообщения меньше или равен значению второго параметра.
Значение по умолчанию: Неопределено
Описание:
Удаляет записи регистрации изменений одного или группы элементов данных для одного или нескольких узлов планов обмена.
Пример:
// Пример 1
Спр = Справочники.Валюты.НайтиПоКоду("810");
Узел = ПланыОбмена.ПО1.НайтиПоКоду("Офис");
ПланыОбмена.УдалитьРегистрациюИзменений(Узел, Спр);

// Пример 2
// Загрузка из файла
// Производим попытку открытия файла
ЧтениеXML = Новый ЧтениеXML;
Попытка
   ЧтениеXML.ОткрытьФайл(ИмяФайла);
Исключение
   Возврат;
КонецПопытки;
ЧтениеСообщения = ПланыОбмена.СоздатьЧтениеСообщения();
ЧтениеСообщения.НачатьЧтение(ЧтениеXML);
Если ЧтениеСообщения.Отправитель <> Ссылка Тогда
   // Сообщение предназначено не для этого узла
   ВызватьИсключение "Неверный узел";
КонецЕсли;
// Удаляем регистрацию изменений для узла отправителя сообщения
ПланыОбмена.УдалитьРегистрациюИзменений(ЧтениеСообщения.Отправитель, ЧтениеСообщения.НомерПринятого);
17 temsa
 
13.10.11
11:03
(16) Вообще-то речь идет про 1с77.
Тут планом обмена и не пахло.
18 Mikeware
 
13.10.11
11:04
(16) Лечиться вам надо, мил человек...
Тогда уж
УдалитьРегистрациюОбъектаДляОтсылкиИдОбъекта, ТипОбъекта, ИдБазы="" ) Экспорт
:-)
19 temsa
 
13.10.11
11:10
А можно ли каким-то образом отфильтровать удаленные доки от удаленных спр в таблице обмена?
Или не стоит этого делать как говориться можно усугубить. В ПБ могут появиться ссылки на удаленные элементы спр...
20 ДенисЧ
 
13.10.11
11:11
(19) Можно, разумеется. джойном с журналом...
21 temsa
 
13.10.11
11:13
(20) Примерчик если можно. А то я уже робею...
22 temsa
 
13.10.11
11:14
а если по typeid филтрануть?
23 ДенисЧ
 
13.10.11
11:16
(22) проще с журналом...
24 ДенисЧ
 
13.10.11
11:17
(21) select * from _1supdts where objid not in (select iddoc from _1sjourn)

тупо и медленно, но для начала пойдёт. Даст тебе все недокументы
25 Mikeware
 
13.10.11
11:18
(22) связывай не только по иддок-обжид, но и по иддеф-тайпид
26 Mikeware
 
13.10.11
11:19
(24) не факт. Иды справочников вполне могут совпадать с идами доков
27 temsa
 
13.10.11
11:24
Через обмен токо объекты метаданных мигрируют так ведь?
Или все-таки могу итоги и рассчеты ходить? Простите за глупый вопрос...:)
28 Mikeware
 
13.10.11
11:29
(27) итоги, естественно, не могут.
у тебя могут ходить (ну, или не ходить) только _движения_, да и то - если ходит документ, делающий эти движения...
29 temsa
 
13.10.11
11:43
Спасибо ребяты огромное! Буду пробовать.
Только вот еще не определился удалять из обмена все "удаленные" объекты или только доки??? Вот в чем вопрос...
30 Mikeware
 
13.10.11
11:46
(29) To be, or not to be? May be...
31 ДенисЧ
 
13.10.11
11:49
(25) ну можно ещё условие на typeid поставить...
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн