|   |   | 
| 
 | Проведение в управляемых формах | ☑ | ||
|---|---|---|---|---|
| 0
    
        mirror1982 24.10.16✎ 13:18 | 
        Розница 2.0 Создал новый регистр накопления. Пишу в процедуре обработка проведения документа код:
 Движения.Взаиморасчеты.Записывать=Истина; Движения.Взаиморасчеты.Очистить(); Движение=Движения.Взаиморасчеты.Добавить(); Движение.ВидДвижения=ВидДвиженияНакопления.Приход; Движение.Период=Дата; Движение.Контрагент=Контрагент; Движение.Сумма=Товары.Итог("Сумма"); Провожу документ. Движение по регистру этого документа не происходит. В чем может быть дело? Естественно проставлено, что документ является регистратором для данного регистра, также проставлены права на регистр накопления. | |||
| 1
    
        kochurovg 24.10.16✎ 13:20 | 
        Видимо на добавить : Движение.Регистратор = Ссылка     | |||
| 2
    
        mirror1982 24.10.16✎ 13:21 | 
        (1) не помогло     | |||
| 3
    
        Альбатрос 24.10.16✎ 13:23 | 
        (2) Воспользуйся конструктором движений.     | |||
| 4
    
        Chameleon1980 24.10.16✎ 13:24 | 
        а конструктор движений какой текст нарисует?
 попробуй и найди ошибку | |||
| 6
    
        jsmith 24.10.16✎ 13:25 | 
        убери очистить     | |||
| 7
    
        mirror1982 24.10.16✎ 13:30 | 
        (5) чем не нравится код?     | |||
| 8
    
        mirror1982 24.10.16✎ 13:30 | 
        Движения.Взаиморасчеты.Записывать=Истина;
 Движения.Взаиморасчеты.Очистить(); Движение=Движения.Взаиморасчеты.Добавить(); Движение.ВидДвижения=ВидДвиженияНакопления.Приход; Движение.Период=Дата; Движение.Контрагент=Контрагент; Движение.Сумма=Товары.Итог("Сумма"); Движение.Регистратор=Ссылка; ПроведениеСервер.ИнициализироватьДополнительныеСвойстваДляПроведения(Ссылка, ДополнительныеСвойства, РежимПроведения); Документы.ПоступлениеТоваров.ИнициализироватьДанныеДокумента(Ссылка, ДополнительныеСвойства); ПроведениеСервер.ПодготовитьНаборыЗаписейКРегистрацииДвижений(ЭтотОбъект); ЗапасыСервер.ОтразитьТоварыНаСкладах(ДополнительныеСвойства, Движения, Отказ); ЗапасыСервер.ОтразитьТоварыОрганизаций(ДополнительныеСвойства, Движения, Отказ); ЗапасыСервер.ОтразитьТоварыКПоступлению(ДополнительныеСвойства, Движения, Отказ); ЗапасыСервер.ОтразитьДвиженияСебестоимостьНоменклатуры(ДополнительныеСвойства, Движения, Отказ); ЗапасыСервер.ОтразитьДвиженияСерийныхНомеров(ДополнительныеСвойства, Движения, Отказ); ЗапасыСервер.ОтразитьДвиженияНоменклатураПоставщиков(ДополнительныеСвойства, Движения, Отказ); ЗапасыСервер.ОтразитьДвиженияСерийТоваров(ДополнительныеСвойства, Движения, Отказ); ЗапасыСервер.ОтразитьДвиженияСебестоимостьПоставкиТоваров(ДополнительныеСвойства, Движения, Отказ); ЗакупкиСервер.ОтразитьЗаказыТоваров(ДополнительныеСвойства, Движения, Отказ); ЗакупкиСервер.ОтразитьЗакупкиТоваров(ДополнительныеСвойства, Движения, Отказ); ДенежныеСредстваСервер.ОтразитьРасчетыСПоставщиками(ДополнительныеСвойства, Движения, Отказ); СформироватьСписокРегистровДляКонтроля(); ПроведениеСервер.ЗаписатьНаборыЗаписей(ЭтотОбъект); ПроведениеСервер.ВыполнитьКонтрольРезультатовПроведения(ЭтотОбъект, Отказ); ПроведениеСервер.ОчиститьДополнительныеСвойстваДляПроведения(ДополнительныеСвойства); ДополнительныеСвойства.Вставить("Отказ", Отказ); Если ЗначениеЗаполнено(ЗаказПоставщику) Тогда ЗакупкиСервер.ОбновитьСостояниеОплатыПоступления(ЗаказПоставщику); Иначе ЗакупкиСервер.ОбновитьСостояниеОплатыПоступления(Ссылка); КонецЕсли; | |||
| 9
    
        mirror1982 24.10.16✎ 13:31 | 
        вот полный код, если убираю нижнюю часть кода. то все ок. наверное она и очищает движения     | |||
| 10
    
        SadrArt 24.10.16✎ 13:34 | 
        (5) А что не так?     | |||
| 11
    
        jsmith 24.10.16✎ 13:35 | 
        (10) Код не отформатирован     | |||
| 12
    
        SadrArt 24.10.16✎ 13:35 | 
        (9) Скорее всего стирает движения вот здесь:
 ПроведениеСервер.ПодготовитьНаборыЗаписейКРегистрацииДвижений(ЭтотОбъект); | |||
| 13
    
        jsmith 24.10.16✎ 13:35 | 
        И между знаками препинания пробелы должны быть     | |||
| 14
    
        SadrArt 24.10.16✎ 13:36 | 
        (13) > должны быть
 Что серьезно? | |||
| 15
    
        jsmith 24.10.16✎ 13:38 | 
        (14) Конечно     | |||
| 16
    
        jsmith 24.10.16✎ 13:38 | 
        Посмотри типовые. Везде пробелы     | |||
| 17
    
        newbling 24.10.16✎ 13:47 | 
        (16) это уже на любителя.
 ПроведениеСервер.ПодготовитьНаборыЗаписейКРегистрацииДвижений(ЭтотОбъект) надо делать до внесения всяческих изменений. Провались туда, посмотри. | |||
| 18
    
        newbling 24.10.16✎ 13:47 | 
        или в инициализации скорее даже. Обычно инициализация задаёт пустые значения.     | |||
| 19
    
        mirror1982 24.10.16✎ 13:58 | 
        не пишет в регистр, если не закомментирована эта строка:     | |||
| 20
    
        mirror1982 24.10.16✎ 13:58 | 
        ПроведениеСервер.ЗаписатьНаборыЗаписей(ЭтотОбъект);     | |||
| 21
    
        mirror1982 24.10.16✎ 13:59 | 
        а вот ее код:
 Процедура ЗаписатьНаборыЗаписей(Знач Объект) Экспорт Перем РегистрыДляКонтроля; // Регистры, для которых будут рассчитаны таблицы изменений движений. Если Объект.ДополнительныеСвойства.ДляПроведения.Свойство("РегистрыДляКонтроля", РегистрыДляКонтроля) Тогда Для Каждого НаборЗаписей Из РегистрыДляКонтроля Цикл Если НаборЗаписей.Записывать Тогда // Установка флага регистрации изменений в наборе записей. НаборЗаписей.ДополнительныеСвойства.Вставить("РассчитыватьИзменения", Истина); НаборЗаписей.ДополнительныеСвойства.Вставить("ЭтоНовый", Объект.ДополнительныеСвойства.ЭтоНовый); // Структура для передачи данных в модули наборов записей. НаборЗаписей.ДополнительныеСвойства.Вставить("ДляПроведения", Новый Структура("СтруктураВременныеТаблицы", Объект.ДополнительныеСвойства.ДляПроведения.СтруктураВременныеТаблицы)); КонецЕсли; КонецЦикла; КонецЕсли; Объект.Движения.Записать(); КонецПроцедуры | |||
| 22
    
        mirror1982 24.10.16✎ 14:08 | 
        все решил проблему. всем спасибо!     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |