![]() |
|
v8: УдалитьРегистрациюИзменений регистра сведений | ☑ | ||
---|---|---|---|---|
0
kolts23381
20.09.13
✎
21:43
|
Есть код
Запрос.Текст = "ВЫБРАТЬ | НаличиеТовараСрезПоследних.Номенклатура, | НаличиеТовараСрезПоследних.Наличие, | НаличиеТовараСрезПоследних.Регистратор.Ссылка как Ссылка |ИЗ | РегистрСведений.НаличиеТовара.СрезПоследних КАК НаличиеТовараСрезПоследних |ГДЕ | НаличиеТовараСрезПоследних.Номенклатура В(&списокноменклатуры)"; Запрос.УстановитьПараметр("СписокНоменклатуры",СписокНоменклатуры); ВыборкаРегистраНаличие = Запрос.Выполнить().Выбрать(); Пока ВыборкаРегистраНаличие.Следующий() Цикл ВыборкаИзменений = ПланыОбмена.ВыбратьИзменения(ЗаписьСообщения.Получатель, ЗаписьСообщения.НомерСообщения,ВыборкаРегистраНаличие.Ссылка); Пока ВыборкаИзменений.Следующий() Цикл Для Каждого Запись из ВыборкаИзменений.Получить() Цикл СписокИзмененныхЗначенийНоменклатуры.Добавить(Запись.Номенклатура); КонецЦикла; КонецЦикла; ПланыОбмена.УдалитьРегистрациюИзменений(Ссылка,ВыборкаРегистраНаличие.Ссылка); КонецЦикла; Ошибка: Недопустимое значение параметра (параметр номер '2') Необходимо удалить изменения связанные с данным регистром сведений. С номенклатурой такое прокатывает ПланыОбмена.УдалитьРегистрациюИзменений(Ссылка,ВыборкаНоменклатуры.Ссылка) - такой код немного выше работает. |
|||
1
Лефмихалыч
20.09.13
✎
21:46
|
need moar ссылка.ссылка.ссылка.ссылка.ссылка.ссылка
а еще - ты задумывался когда-нибудь, какой тип у тебя в переменной ВыборкаРегистраНаличие.Ссылка? Подумай об этом в контексте того, что получается, если кастануть Ctrl+F1 на УдалитьРегистрациюИзменений |
|||
2
AlexTim03
20.09.13
✎
21:48
|
Для удаление регистрации по регистру надо передавать во второй параметр набор записей. Причем с отбор по измерениям, у которых стоит признак "основной отбор"
|
|||
3
kolts23381
20.09.13
✎
21:49
|
(2 )ты не поверишь но тип значения Документ ссылка: Наличие товара. Я вчера программировал целый день. Могу конечно ошибаться но вроде такая конструкция работала. Основной отбор не нашел.
|
|||
4
Лефмихалыч
20.09.13
✎
21:52
|
(3) я в курсе, что там документссылка, потому что я, блеать, программирую уже лет 13
|
|||
5
kolts23381
20.09.13
✎
21:54
|
Ты крут. ЧСВ наверно как у дартаньяна? По теме можешь помочь? Если нет, угадай куда идти
|
|||
6
Euguln
20.09.13
✎
22:11
|
(5) Уважаемый Лефмихалыч имел в виду, что за 13 лет программирования устал уже от пыонеров, которым даже лень заглянуть в СП, они сразу начинают отвлекать уважаемых людей от важных дел.
ПланыОбменаМенеджер (ExchangePlansManager) УдалитьРегистрациюИзменений (DeleteChangeRecords) Синтаксис: УдалитьРегистрациюИзменений(<Узлы>, <Данные>) Параметры: <Узлы> (обязательный) Тип: ПланОбменаСсылка.<Имя плана обмена>; Массив. Одиночное значение типа ПланОбменаСсылка.<Имя плана обмена> или массив таких значений, показывающие для каких узлов удаляются записи регистрации изменений. <Данные> (необязательный) Тип: Метаданные, Неопределено; УдалениеОбъекта; Число; <Данные>. |
|||
7
Лефмихалыч
20.09.13
✎
22:14
|
(5) у тебя вся помощь по ctrl+f1 на русском языке сама открывается, но ты не в силах одновременно две кнопки нажать. Чем тебе помочь, я не знаю
|
|||
8
Лефмихалыч
20.09.13
✎
22:15
|
(6) спасибо. Там суть в описании параметра Данные. Вот их надо читать внимательно глазами, включив голову в розетку, если необходимо. Там всё написано
|
|||
9
kolts23381
20.09.13
✎
22:31
|
Ребята, не делайте из 1с сакральное знание. У меня стоит задача я пытаюсь ее решить. Читал и СП и гуглил решения не нашел.
(5) Не надо быть умником. Таких уважать не за что. |
|||
10
kolts23381
20.09.13
✎
22:36
|
У меня цейтнот и застопорился на такой ерунде. Неужели трудно помочь?
|
|||
11
Лефмихалыч
20.09.13
✎
22:54
|
(10) тут ответ на все твои страдания дан четыре раза. Причем в (2) дан такой ответ, что как-то сильнее ответить не возможно.
|
|||
12
Лефмихалыч
20.09.13
✎
22:55
|
(11) это я к тому, что, если не понятно что-то в ответах (например в ответе (2) ), то надо задавать конкретные вопросы о том, что не понятно (например в ответе (2) )
|
|||
13
hhhh
20.09.13
✎
23:02
|
(10) ну открой в конфигураторе этот план обмена и проанализируй у него состав. Какие документы там указаны?
|
|||
14
kolts23381
20.09.13
✎
23:08
|
Блин :) (12) Не могу я понять что передать в качестве 2 параметра функции ПланыОбмена.УдалитьРегистрациюИзменений() Мне надо удалить все изменения связанные с определенной номенклатурой. (13) Этот регистр указан в плане обмена. Указана авторегистрация. Выше точно таким же способом удаляю все изменения связанные с номенклатурой. А теперь надо удалить все записи регистра сведений в которых есть эта номенклатура.
Пробую через набор записей Набор = РегистрыСведений.НаличиеТовара.СоздатьНаборЗаписей(); Набор.Отбор.Номенклатура.Установить(ВыборкаРегистраНаличие.Номенклатура); ПланыОбмена.УдалитьРегистрациюИзменений(Ссылка,Набор); |
|||
15
hhhh
20.09.13
✎
23:13
|
(14) товарищ из (0) ведь четко указал, что регистр подчинен регистратору. Какого х вы фигачите отбор по номенклатуре?
|
|||
16
kolts23381
20.09.13
✎
23:15
|
Товарищ из 0 это я.
|
|||
17
Лефмихалыч
20.09.13
✎
23:21
|
(14) вот именно на вопрос: "что передать" есть прямо ответ в (2) - набор записей с основным отбором. Основной отбор для подчиненных регистров - по регистратору. Я х/з как еще сказать
|
|||
18
hhhh
20.09.13
✎
23:29
|
(17) не взлетит. Срез последних по номенклатуре, а отбор по регистратору. Да еще и выборка изменений по номеру сообщения.
|
|||
19
kolts23381
20.09.13
✎
23:34
|
в общем отбор по регистратору, но нужно удалить только записи связанные с определенной номенклатурой. Короче видимо придется ковырять еще долго.
|
|||
20
Лефмихалыч
20.09.13
✎
23:35
|
должно, кстати, говорить, что нет такого поля Отбор.Номенклатура, если регистр подчиненный
|
|||
21
kolts23381
20.09.13
✎
23:37
|
Так и говорит. Тот код вообще левый.
|
|||
22
Лефмихалыч
20.09.13
✎
23:39
|
(21) какая половая религия мешает взять регистраторы из запроса (0) и в цикле установить отборы по ним и передавать получившийся набор во второй параметр?
|
|||
23
Лефмихалыч
20.09.13
✎
23:40
|
а, или ты лелеешь надежду, что из таблицы изменений можно удалить только движения по конкретной номенклатуре и при этом оставить все остальное? Ну так это хрен там - подчиненные регистры регистрируются всем набором по регистратору
|
|||
24
kolts23381
20.09.13
✎
23:45
|
Пошел искать синтакс набора записей. Понял что нельзя, а хочу. Ладно этот регистр сведений Наличие сам добавил. Но тоже самое надо делать и с Регистром ОстаткиНаСкладах. Видимо придется в конфу добавить независимый регистр ОстаткиНаСкладах и добавить заполнение его в документах. Или заполнение в существующем регистре ОстаткиНаСкладах добавить. Надо искать другое решение. Слишком много геммороя
|
|||
25
Лефмихалыч
20.09.13
✎
23:49
|
(24) >Видимо придется в конфу добавить независимый регистр ОстаткиНаСкладах
спасибо, поржал пройди хотя бы курс "Основные объекта", а? Ну ей богу ты пальцем тычешь в места, которые для этого совершенно не предназначены. И палец испачкаешь, и удовольствия не получишь... |
|||
26
kolts23381
21.09.13
✎
00:01
|
Я написал на 95% выгрузку в Prestashop. А ты слишком зациклен. Для меня это очередная задача которую надо решить.
И она получается и получится без курсов. Просто придется немного больше времени потратить. |
|||
27
Лефмихалыч
21.09.13
✎
00:04
|
Лефмихалыч зевает
|
|||
28
kolts23381
21.09.13
✎
00:08
|
Ладно удачи :) Ушел доделывать оставшиеся 5 процентов
|
|||
29
MKZM
21.09.13
✎
00:14
|
И палец испачкаешь, и удовольствия не получишь...
Ги ) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |