Имя: Пароль:
1C
1С v8
Перенос из 7 в 8ку
0 abbas
 
14.08.12
17:59
Доброе время суток.
Изучаю Конвертацию Данных и параллельно переношу, из справочников 7.7 "Номенклатура","Материалы" и "Объекты Строительства" в 8 УТ справочник "Номенклатура", все перенеслось, вот только получилась каша, где элементы из Материалов и т.д., нужно сортировать по папкам, то есть 3 папки("Номенклатура","Материалы","Объекты Строительства") а как сделать, не знаю.
Поставил код на событие перед выгрузкой на ПКО реквизита "Родитель"
НаименованиеГруппы = "ОбъектыСтроительства";
Если Истичник.Родитель.Пустая() И Истичник.Наименование <> НаименованиеГруппы Тогда
Значение = Новый Структура;
Значение.Вставить("Наименование",НаименованиеГруппы);
Значение.Вставить("ПометкаУдаления",Ложь);
Значение.Вставить("ЭтаГруппа",Истина);
Значение.Вставить("Родитель",Справочники.ОбъектыСтроительства.ПустаяСсылка());
КонецЕсли;    
Но выдает ошибку, понял что нужно писать на 7ке, а тут я не понял, написать точно также?
Если да то все равно ругается... что делать подскажите плс...
1 M0narch
 
14.08.12
18:02
какая ошибка ?
2 M0narch
 
14.08.12
18:03
Вместо Истичник надо Источник
3 Aprobator
 
14.08.12
18:05
(0) с какого перепугу Родитель = Структура?
4 M0narch
 
14.08.12
18:14
(0) правило указал, по которому система будет создавать твою группу?
5 Aprobator
 
14.08.12
18:15
(4) ключевая ошибка - Значение = ....
6 Aprobator
 
14.08.12
18:16
Тут надо список значений создавать и его как внешние данные подсовывать правилу для создания нужного родителя.
7 M0narch
 
14.08.12
18:24
(6) структурой тоже можно, но ТС не до конца описал что за ошибка
8 abbas
 
14.08.12
18:31
Значение.Вставить("ПометкаУдаления",Ложь<<?>>);
{(9)}: Переменная не определена (Ложь)
Значение.Вставить("ЭтаГруппа",Истина<<?>>);
{(10)}: Переменная не определена (Истина)
Значение.Вставить("Родитель",Справочники<<?>>.ОбъектыСтроительства.ПустаяСсылка());
{(11)}: Переменная не определена (Справочники)
Значение.Вставить("Родитель",Справочники.ОбъектыСтроительства.ПустаяСсылка()<<?>>);
{(11)}: Неопознанный оператор
<<?>>КонецЕсли;
9 abbas
 
14.08.12
18:33
Он ругается на данный код(1), может на 7ке по другому надо писать?
10 M0narch
 
14.08.12
18:35
(9) тьфу ты. из 7 -ки ж выгрузку делаем, конечно не так
11 M0narch
 
14.08.12
18:36
смотри (6)
12 abbas
 
14.08.12
18:38
НаименованиеГруппы = "ОбъектыСтроительства";
Если (Источник.Родитель.Пустая() = 1) И (Источник.Наименование <> НаименованиеГруппы) Тогда
   Значение = СоздатьОбъект("СписокЗначений");
   Значение.Вставить("Наименование",НаименованиеГруппы);
   Значение.Вставить("ПометкаУдаления",0);
   Значение.Вставить("ЭтаГруппа",1);
   Значение.Вставить("Родитель",Справочники.ОбъектыСтроительства.ПустаяСсылка());
КонецЕсли;        
Но ругается на
   Значение.Вставить("Родитель",Справочники.ОбъектыСтроительства.ПустаяСсылка());
чем можно будет заменить?
13 M0narch
 
14.08.12
18:46
(12) попробуй просто "", Источник.Родитель.Пустая() - в этом месте тоже будет давать ошибку
14 vladko
 
14.08.12
19:05
можно так в 7.7:
ПолучитьПустоеЗначение("Справочники.ОбъектыСтроительства")
15 abbas
 
14.08.12
20:01
http://pixs.ru/showimage/SnimokPNG_6566457_5516083.png

       НаименованиеГруппы = "ОбъектыСтроительства";
       Если (ПустаяСтрока(Источник.Родитель) = 1) И (Источник.Наименование <> НаименованиеГруппы) Тогда
           Значение = СоздатьОбъект("СписокЗначений");
           Значение.ДобавитьЗначение("Наименование",НаименованиеГруппы);
           Значение.ДобавитьЗначение("ПометкаУдаления",0);
           Значение.ДобавитьЗначение("ЭтаГруппа",1);
           Значение.ДобавитьЗначение("Родитель",ПолучитьПустоеЗначение("Справочники.ОбъектыСтроительства"));
       КонецЕсли;        
В принципе все перенес, вот только без групп вообще...что не так я сделал
16 andrewks
 
14.08.12
20:10
17 abbas
 
14.08.12
20:37
Не получается....выгружает и не создает группу
18 abbas
 
15.08.12
08:57
andrewks =) не получается
19 andrewks
 
15.08.12
09:09
(18) что именно не получается? больше конкретики, кода, скриншотов. можно даже правила выложить на zalil.ru
20 abbas
 
15.08.12
09:35
21 Йохохо
 
15.08.12
11:00
потести, не проверял
http://zalil.ru/33681179
22 abbas
 
15.08.12
11:35
При загрузке правила, выходит фатальная ошибка, может перезатиль, толко на другой файлообменик...плс
23 abbas
 
15.08.12
12:24
Если ПКО Родителя, перед выгрузкой такой код:
Родитель = СоздатьОбъект("СписокЗначений");
Родитель.Установить("Код", "");
Родитель.Установить("Наименование", "Объекты строительства");
Родитель.Установить("Родитель", "");
Родитель.Установить("ПометкаУдаления", 0);
Родитель.Установить("ЭтоГруппа", 1);
ВходящиеДанные = СоздатьОбъект("СписокЗначений");
ВходящиеДанные.Установить("Родитель", Родитель);
И больше нет никаких настройек, то не работает.
Из 7ки выгружает 802 объекта, а загружает 803, но руппы там нет =(
24 abbas
 
15.08.12
13:28
Йохохо? Йохохо? ты гдеее?
25 Йохохо
 
15.08.12
15:15
какая ошибка? у меня нет подрядчика для теста
26 Йохохо
 
15.08.12
15:17
только поставь одну галку ПВД ОбъектыСтроительства
27 abbas
 
15.08.12
15:40
Ошибки нет, просто не создает группу
28 dk
 
15.08.12
15:42
ПослеЗагрузки лови и перезаписывай родителя - самый простой путь
29 dk
 
15.08.12
15:44
либо отдельное правило для родителя ПриВыгрузке где ловишь текущий объект выгрузки и меняешь код / наименование (по чему ищешь) на нужное
30 andrewks
 
15.08.12
15:52
(27) готов материально простимулировать решение задачи "под ключ", или ищется чистая халява?
31 abbas
 
15.08.12
15:57
я уже два дня парюсь с этим, достало уже все...
32 Голубушка
 
15.08.12
16:00
в 77 эти группы есть?
33 Голубушка
 
15.08.12
16:02
В номенклатуре  добавь поле для поиска ЭтоГруппа .. посмотри в V8Exchan82.epf там четко написано .. что если ЭтоГруппа - поисковая , то в зависимости от значения создает элемент или группу .. иначе все будут элементами
34 abbas
 
15.08.12
16:07
(32) да есть
35 Aprobator
 
15.08.12
18:29
проверь в Если (ПустаяСтрока(Источник.Родитель) = 1) И (Источник.Наименование <> НаименованиеГруппы) Тогда попадание вообще есть.
Это можно сделать кодом Сообщить("Попал").
36 Aprobator
 
15.08.12
18:30
и, кстати, почему Родитель на пустоту через ПустаяСтрока проверяется,а не через ПустоеЗначение?
37 Йохохо
 
16.08.12
11:11
Голубущка абсолютно права, рабочие правила на всякий случай
http://zalil.ru/33684158
номенклатура не грузится нормально если ОбменДанными = Ложь, ну там уже сам )
38 abbas
 
20.08.12
08:32
(37) Идет зацикливание групп...