Имя: Пароль:
1C
 
Движения у непроведенного документа.
0 Zombi
 
05.04.18
10:09
Управление торговлей, редакция 11 (11.4.2.144). Создал и провел документ "Передача товаров". Теперь делаю не проведенным, помечаю на удаление, у него все равно остаются движения по одному из РН, а именно "Резервы товаров организаций". Это нормально? Как отменить движения документа?
1 shuhard
 
05.04.18
10:20
(0)[Это нормально?] аномально
[Как отменить движения документа?] позырить событие ОбработкаУдаленияПроведения
2 Ненавижу 1С
 
гуру
05.04.18
10:20
запрограммировать
3 LienXo
 
05.04.18
10:36
Если во всех документах такое - (1, 2). Если в одном - тестирование и исправление
4 Serg_1960
 
05.04.18
10:39
(0) То, что в движениях указан этот документ в регистраторе - ещё ничего не значит на самом деле. Парадоксально? Но факт: движения документа могли быть сделаны другим документом.
5 Вафель
 
05.04.18
10:41
(2) И что теперь чтоб типовая заработала ее вначале нужно запрограммировать?
6 shuhard
 
05.04.18
10:42
(4)[движения документа могли быть сделаны другим документом.]
а может и обработкой =)
7 shuhard
 
05.04.18
10:43
(5) если речь о ERP/УТ 11 то вначале нужно много программировать
8 oslokot
 
05.04.18
10:44
после сборки тщательно обработать напильником (c)
9 Serg_1960
 
05.04.18
10:45
(6) Ну, я не в курсе как там оно на самом деле было :) В УПП, например, есть отдельный документ для резервирования и это часто в вводив заблуждение юзверей - они изменяют якобы "первоисточник", а резервы остаются "старые" :)
10 Джо-джо
 
05.04.18
10:47
(9) То Назначение, а то Регистратор
11 shuhard
 
05.04.18
10:48
(9) ты абсолютно прав в том, что отсутствие движений у помеченного на удаление документа, при отказе в самом документе от удаления движений при отмене проведения, требует вмешательства со стороны иных сил =)
12 Zombi
 
05.04.18
10:49
(1) К этой процедуре вообще не обращается при отмене проведения. Ставлю точку останова в модуле формы "ПриОткрытии", здесь срабатывает. А в модуле объекта ни в обработке проведения, ни в обработкеудаленияпроведения ни при записи ни перед записью не попадает при проведении/записи/распроведении. Проведение документа делается командой на форме, которая сюда обращается:

&НаКлиенте
Процедура ПровестиДокумент(Команда)
    
    ОбщегоНазначенияУТКлиент.Провести(ЭтаФорма, Истина);
    
КонецПроцедуры

Это типовое? Накой такое наворотили?
13 Serg_1960
 
05.04.18
11:00
(10) ДокументРезерва в УПП, но это не важно. Это "видит" программист, а пользователи видят отчеты, под какой документ сделаны резервы и считают его документом резервирования. А это не всегда так.
14 Вафель
 
05.04.18
11:02
(7) Далеко не факт. на прошлой конторе была почти типовая ЕРП
15 Serg_1960
 
05.04.18
11:08
(12) Эээ... а отладка на сервере включена? :)
16 shuhard
 
05.04.18
11:09
(12) [К этой процедуре вообще не обращается при отмене проведения.] отладка на сервере включена ?
у документа стоит в удалении движений при отмене проведения Не удалять автоматически
т.е. все движухи стираются именно в ОбработкаУдаленияПроведения

[Это типовое?] да
[Накой такое наворотили?] ты где отдыхал последние 5 лет ?
17 Zombi
 
05.04.18
11:10
(15) Точно, база же клиент сервер. Выгружу в файл, там посмотрю.
18 Zombi
 
05.04.18
11:11
(16) Последние лет 5 работал с ут 10 и бп 20
19 shuhard
 
05.04.18
11:12
(18) тогда самое интересное впереди, а именно фоновые задания и их отладка
20 Zombi
 
05.04.18
11:13
(18) Да я чувствую, как много мне открытий чудных, готовит...
21 shuhard
 
05.04.18
11:13
(17)[Выгружу в файл, там посмотрю]
событие будет, достаточно посмотреть в коде, стираются ли движения по данному Рг

+ месяц конечно перезакрыт, в котором сидит данный документ ?
22 shuhard
 
05.04.18
11:14
(21) ПроведениеСерверУТ.ИнициализироватьДополнительныеСвойстваДляПроведения(Ссылка, ДополнительныеСвойства);

    ПроведениеСерверУТ.ПодготовитьНаборыЗаписейКРегистрацииДвижений(ЭтотОбъект);

    СформироватьСписокРегистровДляКонтроля();
    
    ПараметрыЗаполненения = ПараметрыЗаполненияВидовЗапасов("ОрганизацияПолучатель");
    ЗапасыСервер.ПодготовитьЗаписьТоваровОрганизаций(ЭтотОбъект, РежимЗаписиДокумента.ОтменаПроведения, ПараметрыЗаполненения);
    
    ПроведениеСерверУТ.ЗаписатьНаборыЗаписей(ЭтотОбъект);
    
    ПараметрыЗаполнененияРезервовПоОтправителю = ПараметрыЗаполненияВидовЗапасов("Организация");
    ПараметрыЗаполнененияРезервовПоОтправителю.ДоступныеВидыЗапасовУжеСформированы = ПараметрыЗаполненения.ДоступныеВидыЗапасовУжеСформированы;
    ЗапасыСервер.СформироватьРезервыПоТоварамОрганизаций(ЭтотОбъект, Отказ, ПараметрыЗаполнененияРезервовПоОтправителю);
    
    ПараметрыЗаполнененияРезервовПоПолучателю = ПараметрыЗаполненияВидовЗапасов("ОрганизацияПолучатель");
    ПараметрыЗаполнененияРезервовПоПолучателю.ДоступныеВидыЗапасовУжеСформированы = ПараметрыЗаполнененияРезервовПоОтправителю.ДоступныеВидыЗапасовУжеСформированы;
    ПараметрыЗаполнененияРезервовПоПолучателю.НалогообложениеНДС = ПередачаПодДеятельность;
    ЗапасыСервер.СформироватьРезервыПоТоварамОрганизаций(ЭтотОбъект, Отказ, ПараметрыЗаполнененияРезервовПоПолучателю);
    
    ПроведениеСерверУТ.ВыполнитьКонтрольРезультатовПроведения(ЭтотОбъект, Отказ);
    ПроведениеСерверУТ.СформироватьЗаписиРегистровЗаданий(ЭтотОбъект);
    
    ПроведениеСерверУТ.ОчиститьДополнительныеСвойстваДляПроведения(ДополнительныеСвойства);
    
    Документы.СчетФактураВыданный.АктуализироватьСчетФактуру(ЭтотОбъект, Ложь, ТребуетсяСчетФактураВыданный());
    РегистрыСведений.ТребуетсяОформлениеСчетаФактуры.ОтразитьНеобходимостьОформленияСчетаФактуры(ДополнительныеСвойства, Отказ);
24 shuhard
 
05.04.18
11:16
(22) +1
Процедура СформироватьРезервыПоТоварамОрганизаций(ДокументОбъект, Отказ, ПараметрыЗаполненияВидовЗапасов) Экспорт
    
    Если ЗначениеЗаполнено(ПараметрыСеанса.ПараметрыОбработчикаОбновления.РежимВыполнения) Тогда
        Возврат;
    КонецЕсли;
    
    ДополнительныеСвойства = ДокументОбъект.ДополнительныеСвойства;
    
    Если ДополнительныеСвойства.Свойство("ЗаписыватьРезервыТоваровОрганизацийВместеСоВсеми")
        И ДополнительныеСвойства.ЗаписыватьРезервыТоваровОрганизацийВместеСоВсеми Тогда
        Возврат;
    КонецЕсли;
    
    Если Не ДополнительныеСвойства.НужноКонтролироватьОстаткиТоваровОрганизаций
        И Не ДополнительныеСвойства.НужноФормироватьСторноПоРезервамТоваровОрганизаций Тогда
        Возврат;
    КонецЕсли;
    
    МенеджерВременныхТаблиц = ДополнительныеСвойства.ДляПроведения.СтруктураВременныеТаблицы.МенеджерВременныхТаблиц;
    
    Если ДополнительныеСвойства.НужноФормироватьСторноПоРезервамТоваровОрганизаций
        И НЕ ДокументОбъект.ДополнительныеСвойства.Свойство("СформированоВтСторно") Тогда // сторно резервов вызываем один раз
        СформироватьВТСторноРезервов(
            ДокументОбъект,
            МенеджерВременныхТаблиц,
            ПараметрыЗаполненияВидовЗапасов);
        ДокументОбъект.ДополнительныеСвойства.Вставить("СформированоВтСторно", Истина);
    КонецЕсли;
        
    Если ДополнительныеСвойства.НужноКонтролироватьОстаткиТоваровОрганизаций Тогда
        СформироватьРезервыПоОрганизациямДляКонтроля(ДокументОбъект, МенеджерВременныхТаблиц, Отказ, ПараметрыЗаполненияВидовЗапасов);
    КонецЕсли;
    
    Если Отказ Тогда
        ДополнительныеСвойства.Вставить("ОтказПриЗаполненииВидовЗапасов");
        Возврат;
    КонецЕсли;
    
    ТаблицаРезервыТоваровОрганизаций = ТаблицаРезервыТоваровОрганизаций(ДокументОбъект, МенеджерВременныхТаблиц, ПараметрыЗаполненияВидовЗапасов, Ложь);    
    
    // Если документ делает и приход, и расход, то писать регистр нужно только тогда, когда по второй стороне
    // движений таблица уже сформирована
    Если Не ПараметрыЗаполненияВидовЗапасов.ДокументДелаетИПриходИРасход
        Или ДокументОбъект.ДополнительныеСвойства.Свойство("ТаблицаРезервыТоваровОрганизаций") Тогда
        
        НаборРезервыТоваровОрганизаций = РегистрыНакопления.РезервыТоваровОрганизаций.СоздатьНаборЗаписей();
        НаборРезервыТоваровОрганизаций.Отбор.Регистратор.Установить(ДокументОбъект.Ссылка);
        
        ПроведениеСерверУТ.ЗаполнитьДополнительныеСвойстваНабораПоДокументу(ДокументОбъект, НаборРезервыТоваровОрганизаций);
        
        НаборРезервыТоваровОрганизаций.Загрузить(ТаблицаРезервыТоваровОрганизаций);
        НаборРезервыТоваровОрганизаций.ДополнительныеСвойства.Вставить("РассчитыватьИзменения", Истина);
        НаборРезервыТоваровОрганизаций.Записать();
        Если ДокументОбъект.ДополнительныеСвойства.Свойство("ТаблицаРезервыТоваровОрганизаций") Тогда
            ДокументОбъект.ДополнительныеСвойства.ТаблицаРезервыТоваровОрганизаций.Очистить();
        КонецЕсли;
    Иначе
        ДокументОбъект.ДополнительныеСвойства.Вставить("ТаблицаРезервыТоваровОрганизаций", ТаблицаРезервыТоваровОрганизаций);
        ДокументОбъект.ДополнительныеСвойства.Вставить("ЗаписыватьРезервыТоваровОрганизацийВместеСоВсеми", Ложь);
    КонецЕсли;
    
КонецПроцедуры
25 Zombi
 
05.04.18
11:21
(24) Вот из за этого наверное:

Если Не ДополнительныеСвойства.НужноКонтролироватьОстаткиТоваровОрганизаций
        И Не ДополнительныеСвойства.НужноФормироватьСторноПоРезервамТоваровОрганизаций Тогда
        Возврат;
    КонецЕсли;

Я как раз разбираюсь, почему не проводится документ "Передача товаров между организациями", ругается на остатки, хотя остатки есть. И в настройках нажал кнопку "Отключить контроль остатков по организации в этом сеансе". Чтобы перепровести документы.
26 Zombi
 
05.04.18
11:21
Но не удалять движения документов, если не включен контроль остатков организации - по моему тупость еще та...
27 shuhard
 
05.04.18
11:31
(26) интеркомпани в ERP/УТ 11 вещь загадочная
я Передачу допиливал для полноценного учета, релиз правда не текущий
28 shuhard
 
05.04.18
11:32
(25)[И в настройках нажал кнопку "Отключить контроль остатков по организации в этом сеансе".]
=) сам себе злобный Буратино
29 Zombi
 
05.04.18
11:33
(27) Вот тут

https://forum.infostart.ru/forum81/topic187420/

пишут что при обновлении с УТ 11.3 на 11.4 что то не слабо намудрили или накосячили. Теперь вот то ли перепроводить все надо, то ли еще чего.
30 Zombi
 
05.04.18
11:34
(28) Это понятно, но я все таки думаю (26)
31 shuhard
 
05.04.18
11:38
(30) без комментариев