Имя: Пароль:
1C
1С v8
КД 2.0. ПКО для переноса данных из ут 11.1 в бп 3.0
, ,
0 1987denis
 
28.01.16
13:40
Здравствуйте, есть ПКО для переноса данных из ут 11.1 в бп 3.0, в ут 11.1 в ТЧ товары нет счетов номенклатуры, в бп 3.0 они есть )
в ПКО самого документа  в обработчике событий После загрузки:
Для каждого Стр ИЗ Объект.Товары Цикл
//Если Товар
Если Стр.Номенклатура.ВидНоменклатуры=Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар") Тогда
Стр.СчетУчета=ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("Товары на складах");
Стр.СчетУчетаНДС=ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("НДС по приобретенным материально-производственным запасам");
КонецЕсли;
        //Если Материалы
Если Стр.Номенклатура.ВидНоменклатуры=Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Материалы") Тогда
Стр.СчетУчета=ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("Сырье и материалы");
Стр.СчетУчетаНДС=ПланыСчетов.Хозрасчетный.НайтиПоНаименованию("НДС по приобретенным материально-производственным запасам");
КонецЕсли;
КонецЦикла;
Объект.Записать();
Нов  ТЧ загружаемых документов данные счета не подставляются...пусто...
1 cw014
 
28.01.16
13:41
Виды номенклатуры в БП не заполнены
2 VladZ
 
28.01.16
13:41
После загрузки объекта пропиши заполнение счетов. Код можно "стырить" с БП.
3 1987denis
 
28.01.16
13:46
Виды в БП у Номенклатуры заполнены.
4 qwasqu
 
28.01.16
13:52
Можно отладчиком пробежаться и посмотреть, в чем дело.
5 1987denis
 
28.01.16
14:04
cw014  -  Виды Номенклатуры установлены, внешней обработкой тот же код и все проставляет.
VladZ - После загрузки объекта пропиши заполнение счетов. Код можно "стырить" с БП. -  не могу найти.
6 1987denis
 
28.01.16
14:16
http://prntscr.com/9vvotl
Он даже не заходит сюда...
7 Borteg
 
28.01.16
14:23
(0)  Точно используется то ПКО, которое ты исправляешь? Может есть несколько ПКО с такими свойствами?
Объект.Записать()  -не надо, после это обработчика произзойдет запись. Если ставь модифицированность ложь, или убери.
Может ПВД другое правило использует? Посмотри по типам данных или отладочную печать поставь.
8 1987denis
 
28.01.16
14:31
ПВД то ПКО что я ковыряю использует
http://prntscr.com/9vvu1p
http://prntscr.com/9vvuhc
9 Borteg
 
28.01.16
14:36
(5) отладкой с печатью пробуй, правила перечитываешь когда меняешь ?)
10 1987denis
 
28.01.16
14:37
Конечно перечитываю)
11 bolder
 
28.01.16
14:39
(8) в ПВД правило поступление2 используешь).
12 GreatOne
 
28.01.16
14:43
и че ты показываешь пвд, где поступлениетоваровуслуг2 и пко поступлениетоваровуслуг?
13 1987denis
 
28.01.16
14:47
Вот же пко
http://prntscr.com/9vvuhc
14 1987denis
 
28.01.16
14:47
где поступлениетоваровуслуг2
тут что вы имели ввиду?
15 GreatOne
 
28.01.16
14:47
в (6) одно правило, в (8) другое. Ты определись.
16 GreatOne
 
28.01.16
14:48
в таких случаях делается просто:
Сообщить("Обрабатываем ПослеЗагрузки");
Сообщить("Количество строк ТЧ = " + Объект.Товары.Количество());

Все быстро становится ясно.
17 GreatOne
 
28.01.16
14:49
Банально, если сообщение вообще не выводится, значит другое ПКО. Если выводится количество > 0, значит в объекте есть данные. Открываешь объект либо редактором объектов(ИР), либо запросом тянешь данные. Есть данные - значит форма тупит, нет данных - значит иди чаю попей, со свежей головой приди и снова взгляни на проблему.
18 sanja26
 
28.01.16
14:50
(14) попробуй еще поставить галочку "НЕ запоминать выгруженные объекты"
19 GreatOne
 
28.01.16
14:52
и еще глобальные обработчики глянуть. Может там данные затираются
20 GreatOne
 
28.01.16
14:52
+ к (19) а хотя не, они перед обработчиками ПКО выступают.
21 mehfk
 
28.01.16
14:54
(0) Для последней БП 3.0 можно сделать примерно так, правда не для всех видов документов :)

Отбор = Новый Структура;
Отбор.Вставить("НеЗаполненныеРеквизиты", Истина);
СчетаУчетаВДокументах.Заполнить(Объект, Отбор);
22 1987denis
 
28.01.16
14:56
(18) А причем галочка? Если Сообщить("111"); не работает даже
23 1987denis
 
28.01.16
14:58
(17)  Так у меня 1 документ, набор справочников и перечислений и для ПВД указан этот документ,  с чем я его спутать смогу то)
24 sanja26
 
28.01.16
14:59
(22) так конвертация их в кеше проверяет и не перезаписывает, т.е. даже не заходит в ПослеЗагрузки. Как вариант, если все остальное проверил и в пвд указано именно это пко.
25 GreatOne
 
28.01.16
14:59
(23) Дело твое. Я видел уже минимум 2 ПКО, но тебе конечно виднее. Удачи.
26 1987denis
 
28.01.16
15:01
(25) я второе переименовал, чтобы показать что отличаются.
27 GreatOne
 
28.01.16
15:06
Тебе уже и в (24) дали совет. Долго будешь продолжать делать какие-то выводы, опираясь на собственные недостаточные знания КД? Взять и попробовать - это крайний вариант?
28 1987denis
 
28.01.16
15:15
Готова, спасибо большое. (24)