|
Движение по регистру ПартииТоваровНаСкладах | ☑ | ||
---|---|---|---|---|
0
ifoxy
24.10.11
✎
16:11
|
Здравствуйте! я пытаюсь подправить в УТ 10.3 движение одного документа по регистру ПартииТоваровНаСкладах и наткнулась на такую ситуацию: если в документе после выполнения всех движений посмотреть в отладчике "Движения" то увидим, что документ сделал движения по двум регистрам, но ПартииТоваровНаСкладах среди них нет, он пустой. А когда в режиме пользователя смотрим двыижения по регистрам, то оказыватеся что движения по этому регистру все же есть. Так как же увижеть в отладчике где хранятся эти движения?
|
|||
1
Господин ПЖ
24.10.11
✎
16:13
|
а может тебе еще рано править?
|
|||
2
DrShad
24.10.11
✎
16:13
|
ооооо это супермегасильное колдунство
переходи на УТ 11 там нет этого регистра |
|||
3
mikecool
24.10.11
✎
16:13
|
какие у тебя ... глаза ))))
|
|||
4
mikecool
24.10.11
✎
16:13
|
смотри модуль набора записей регистра
|
|||
5
DenSpb
24.10.11
✎
16:14
|
Ты в какой момент смотришь остатки в отладчике?
|
|||
6
Ногаминебить
24.10.11
✎
16:14
|
Небось пытаешься посмотреть отладчиком кусок кода, выполняемый на сервере?
|
|||
7
ifoxy
24.10.11
✎
16:15
|
а я между прочим серьезно спрашиваю, и очень надеюсь на вашу помощь...
|
|||
8
mikecool
24.10.11
✎
16:15
|
(7) поставь останов в (4)
|
|||
9
Megas
24.10.11
✎
16:16
|
Да недавно с этим же боролся, так и не понял где смотреть все записи.
Так вот все движения которые ты видишь "в отладчике "Движения"" Это движения сделанные твоим документом из его модуля. Другие движения делаются из общего модуля и через "отладчик "Движения"" их не видно |
|||
10
ifoxy
24.10.11
✎
16:17
|
смотрю ДвиженияПоРегистрам в самой последней строке, а дальше только КонецПроцедуры и все...
|
|||
11
mikecool
24.10.11
✎
16:17
|
УПП, Процедура ЗаписатьДвиженияДокументаРегл(СтруктураПараметров, ТаблицаСписания, Замещать)
вот здесь можно смотреть |
|||
12
mikecool
24.10.11
✎
16:18
|
+11 ОМ УправлениеЗапасамиПартионныйУчет
|
|||
13
mikecool
24.10.11
✎
16:18
|
а правильно (4)
|
|||
14
Megas
24.10.11
✎
16:22
|
(11) Особенно хорошо в этой процедуре ставить точку остонова особенно на работающей базе (где пользователи трудятся)!
|
|||
15
ifoxy
24.10.11
✎
16:24
|
Тогда объясните пожалуйтса у меня есть движения которые делает документ, они создаются в общих модулях, а мне нужно помимо этих движений добавить еще другие, я написала в модуле документа функцию которая делает остальные движения. Но почему то она затирает те который были в документе изначально, как так?
|
|||
16
Megas
24.10.11
✎
16:25
|
(15) Что то ты делаешь не так!
Код в студию |
|||
17
ifoxy
24.10.11
✎
16:25
|
ммм его много...
|
|||
18
ifoxy
24.10.11
✎
16:30
|
Процедура ДвиженияПоРегистрам(РежимПроведения, СтруктураШапкиДокумента, ТаблицаПоКомплектующим, ТаблицаПоКомплектам, ТаблицаПоДопРасходам, Отказ, Заголовок);
.... Если УчетнаяПолитика.СписыватьПартииПриПроведенииДокументов Тогда ТаблицаСписания = Движения.СписанныеТовары.Выгрузить(); УправлениеЗапасамиПартионныйУчет.ДвижениеПартийТоваров(Ссылка,ТаблицаСписания,,,,,Истина); ДвиженияДобавленияВСтоимостьПродукцииУслуг(СтруктураШапкиДокумента, ТаблицаПоДопРасходам, Отказ, Заголовок, РежимПроведения) Иначе // В неоперативном режиме границы последовательностей сдвигаются назад, если они позже документа. Если РежимПроведения = РежимПроведенияДокумента.Неоперативный Тогда УправлениеЗапасамиПартионныйУчет.СдвигГраницыПоследовательностиПартионногоУчетаНазад(Дата, Ссылка, Организация); КонецЕсли; КонецЕсли; КонецПроцедуры // ДвиженияПоРегистрам() Процедура ДвиженияДобавленияВСтоимостьПродукцииУслуг(СтруктураШапкиДокумента, ТаблицаПоПродукции, //Для Доп.расходов Отказ, Заголовок, РежимПроведения) Если не ОтражатьВУправленческомУчете Тогда Возврат; КонецЕсли; НаборДвижений = Движения.ПартииТоваровНаСкладах; // Получим таблицу значений, совпадающую со струкутрой набора записей регистра. ТаблицаДвижений = НаборДвижений.Выгрузить(); ТаблицаДвижений.Очистить(); ТабПартий = ТаблицаПоПродукции.Скопировать(); // Заполним таблицу движений. ОбщегоНазначения.ЗагрузитьВТаблицуЗначений(ТабПартий, ТаблицаДвижений); Для каждого СтрокаДвижений Из ТаблицаДвижений Цикл СтрокаТЧ = ТабПартий.Найти(СтрокаДвижений.НомерСтроки, "НомерСтроки"); // Если партионный учет по сериям не ведется, то надо очистить серию Если НЕ СтрокаТЧ.ВестиПартионныйУчетПоСериям Тогда СтрокаДвижений.СерияНоменклатуры = Неопределено; КонецЕсли; КонецЦикла; ТаблицаДвижений.ЗаполнитьЗначения(0, "Количество"); ТаблицаДвижений.ЗаполнитьЗначения(Перечисления.КодыОперацийПартииТоваров.ПоступлениеДопРасходов, "КодОперации"); // Если нет парт. учета по складам, склад не заполняется Если НЕ СтруктураШапкиДокумента.ВестиПартионныйУчетПоСкладам Тогда ТаблицаДвижений.ЗаполнитьЗначения(Неопределено, "Склад"); КонецЕсли; // При учете по-средней документ оприходования не пишется //Если СтруктураШапкиДокумента.СпособОценкиМПЗ = Перечисления.СпособыОценки.ПоСредней Тогда ТаблицаДвижений.ЗаполнитьЗначения(Неопределено, "ДокументОприходования"); //КонецЕсли; НаборДвижений.мПериод = Дата; НаборДвижений.мТаблицаДвижений = ТаблицаДвижений; Если Не Отказ Тогда Движения.ПартииТоваровНаСкладах.ВыполнитьПриход(); КонецЕсли; КонецПроцедуры // ДвиженияПоРегистрамУпр() |
|||
19
ifoxy
24.10.11
✎
16:31
|
в таблице ТаблицаПоДопРасходам храница информация для проводок
|
|||
20
Beduin
24.10.11
✎
16:34
|
Где метод Записать()?
|
|||
21
ifoxy
24.10.11
✎
16:35
|
думаю вот Движения.ПартииТоваровНаСкладах.ВыполнитьПриход();
|
|||
22
ifoxy
24.10.11
✎
16:35
|
эти проводки работают, но затирают прежние
|
|||
23
Beduin
24.10.11
✎
16:37
|
(0) Если по теме, то надо их Прочитать(), тогда увидишь.
|
|||
24
ifoxy
24.10.11
✎
16:42
|
если не хотите разбираться в коде, напишите хотя бы колючевые моменты как это должно быть
|
|||
25
Megas
24.10.11
✎
16:45
|
Помоему надо движения прочитать сначало, а потом дописывать
|
|||
26
Beduin
24.10.11
✎
16:46
|
(24) Движения.ПартииТоваровНаСкладах.Прочитать();
Вот эту строчку добавь где надо прочитать. |
|||
27
hhhh
24.10.11
✎
16:48
|
(24) ключевые моменты:
1. если нет явной команды Записать(), то система сама записывает движения в конце транзакции. Это уже после КонецПроцедуры и в отладчике их не увидишь. 2. Если они там пишут через НаборЗаписей, а ты пишешь через движения, то ты затираешь их набор записей или наоборот они затирают твои движения. Тогда как в (26) Движения.ПартииТоваровНаСкладах.Прочитать(); |
|||
28
ifoxy
24.10.11
✎
17:06
|
Спосибо, получилось =)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |