КД2 поиск по Наименованию

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. Xershi 1484 11.05.15 10:42 Сейчас в теме
Обмен из базы на 8.3 в базу на 7.7.
Простое правило конвертации.
ПКО ДоговорКонтрагента.
Поиск по наименованию и владельцу.
В базе 7.7 не было договора, галка стояла, но договор был создан.
Поиск может быть произведен только по наименованию. Другие поля не соответствуют.
Как обойти этот баг?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. m-serg74 46 11.05.15 11:36 Сейчас в теме
(1) Xershi,
В базе 7.7 не было договора, галка стояла, но договор был создан.


А кто на эту галку смотрит в 7.7?

Как обойти этот баг?


Править модуль загрузки
3. Xershi 1484 11.05.15 11:37 Сейчас в теме
(2) m-serg74, хорошо. Что там нужно исправить?
5. m-serg74 46 11.05.15 12:20 Сейчас в теме
(3) Xershi, как минимум раскомментировать проверку "галки"

ну и вообще проверить код

http://clip2net.com/s/3hut5Su
6. Xershi 1484 11.05.15 13:04 Сейчас в теме
(5) m-serg74, раскомментирование не помогло.
7. m-serg74 46 11.05.15 13:07 Сейчас в теме
(6) Xershi, ну так в начале процедуры ж стоит
НовыеНеСоздавать = 0;

т.е. намертво, независимо от того, что натыкано галочками
8. Xershi 1484 11.05.15 13:20 Сейчас в теме
(7) m-serg74, пройдусь поиском. Если есть уже готовое решение отпиши.
9. Xershi 1484 11.05.15 17:10 Сейчас в теме
(7) m-serg74,
Процедура ЗагрузитьОбъектСправочникаV8(Объект, Вид, ИмяПравила)

	Перем ОбъектМД;

	СозданНовыйОбъект	= 0;
	НовыеНеСоздавать    = 1;
	НеЗамещатьНайденные = 0;


Так же поставил галку отладка и загружаются только договора которые есть в двух базах.
Без галки отладка не работает. Код нужно детально разобрать.

Решил пока таким способом обработать данные.

Если есть доработка без галки отладка отпишите.
10. m-serg74 46 11.05.15 17:15 Сейчас в теме
(9) Xershi, в обработке есть доступ к правилам, оттуда и нужно брать значение этого флага
11. Xershi 1484 12.05.15 08:43 Сейчас в теме
(10) m-serg74, речь идет о V77Imp.ert ?
12. m-serg74 46 12.05.15 10:48 Сейчас в теме
(11) Xershi, ну вообще то я кидал скрин где это, при работе с 77, выгружать надо еще модуль выгрузки в Вашем случае и заменять текст модуля V77Imp.ert на выгруженный текст, а вот править код лучше в самой КД, где именно см. опять же мой скриншот
13. m-serg74 46 12.05.15 10:51 Сейчас в теме
+(12) m-serg74, сорри, модуль ЗАгрузки, опечатался
14. Xershi 1484 12.05.15 12:10 Сейчас в теме
(12) m-serg74, я так и не разобрался где в модуле загрузки подхватывает из правил конвертации "НовыеНеСоздавать".
15. m-serg74 46 12.05.15 12:34 Сейчас в теме
(14) Xershi, да нигде не подхватывает, в том то и дело... это нужно ДОписать самому
16. Xershi 1484 12.05.15 13:46 Сейчас в теме
(15) m-serg74, понятно.

Так и что дописать?

Процедура ЗагрузитьОбъектСправочникаV8(Объект, Вид, ИмяПравила)

Как в этой процедуре определить нужный параметр?
17. Xershi 1484 12.05.15 13:54 Сейчас в теме
18. m-serg74 46 12.05.15 13:58 Сейчас в теме
(17) Xershi, какие статьи? Вы программист?
19. Xershi 1484 12.05.15 14:09 Сейчас в теме
(18) m-serg74, вот вы говорите нужно самому писать. Так что писать новую процедуру или определить параметр?
Я не знаю как мне использовать из файла
<Объект Нпп="1" Тип="СправочникСсылка.Договора" ИмяПравила="Договора"><Ссылка НеСоздаватьЕслиНеНайден="true">

Как НеСоздаватьЕслиНеНайден использовать в коде?
21. m-serg74 46 12.05.15 14:47 Сейчас в теме
(19) Xershi,
Как НеСоздаватьЕслиНеНайден использовать в коде?


		НовыеНеСоздавать = Объект.ПолучитьАтрибут("НеСоздаватьЕслиНеНайден");
или
		НовыеНеСоздавать = УзелСсылки.ПолучитьАтрибут("НеСоздаватьЕслиНеНайден");


вы как новый материал изучаете?


работа с ХМЛ в 1С77 это для Вас новый материал?
22. Xershi 1484 12.05.15 15:12 Сейчас в теме
(21) m-serg74, совершенно верно. Я на 8.1 начинал, да и парсить ХМЛ ни разу не приходилось даже на 8.3. Все решал через КД2.
23. m-serg74 46 12.05.15 15:22 Сейчас в теме
(22) Xershi,
да и парсить ХМЛ ни разу не приходилось даже на 8.3


Вы хотите сказать что гугл ничего не говорит про работу с ХМЛ в 1С77 ???

Решение данного вопроса состоит именно не в работе с КД, а с программированием работы модуля загрузки из ХМЛ, хотя и ведется эта работа в текстовом макете включенном в состав КД. Как то так...
24. Xershi 1484 13.05.15 14:09 Сейчас в теме
(23) m-serg74, метод в (21) не работает. Но это натолкнуло на мысль.
В файле строка выглядит так:
<Объект Нпп="748" Тип="СправочникСсылка.Клиенты" ИмяПравила="Клиенты"><Ссылка НеСоздаватьЕслиНеНайден="true">
<Свойство Имя="ИДКонтрагента" Тип="Строка">
<Значение>011916</Значение>
</Свойство>
</Ссылка>
</Объект>

Этот реквизит можно получить так:
Объект = гФайл.ТекущийЭлементВВидеОбъекта();
УзелСсылки = Объект.ВыбратьУзел("Ссылка");
НовыеНеСоздавать = УзелСсылки.ПолучитьАтрибут("НеСоздаватьЕслиНеНайден");


Если галка "Не создавать новый объект в приемнике, если он НЕ найден" в ПКО будет стоять, то значение будет "true", а если не будет стоять галка, то значение будет = "".
20. Xershi 1484 12.05.15 14:11 Сейчас в теме
(18) m-serg74, вы как новый материал изучаете? гугл ничего не дает по этому вопросу.
4. Xershi 1484 11.05.15 11:42 Сейчас в теме
(2) m-serg74,
А кто на эту галку смотрит в 7.7?
когда поиск по коду идет. Галка отрабатывает нормально. Но это другой перенос был.
25. Xershi 1484 13.05.15 15:12 Сейчас в теме
А для того чтобы все отработало нужно дописать код с условием:
Если ТекущийОбъект = "Ошибка" Тогда Возврат КонецЕсли;
		Если (ПустоеЗначение(НовыеНеСоздавать) = 0) 
		   и (ТекущийОбъект = "#НеУстановлен") Тогда Возврат КонецЕсли;
		
26. Natalito 05.10.15 17:10 Сейчас в теме
(25) Xershi, добрый день! в программирование не сильна. и столкнулась с такой же проблемой как у Вас. Не расскажете пошагово, как исправить?
27. Xershi 1484 06.10.15 08:45 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот