Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Конвертация данных Как выгрузить физлиц по другим полям поиска?

Конвертация данных Как выгрузить физлиц по другим полям поиска?
Я
   Босечка
 
11.11.16 - 14:30
Есть проблема. Необходимо выгружать контрагентов с типом "ФизическоеЛицо". Но поля поиска должны быть другое (в частности "Наименование"). Весь справочник - по полям поиска "ИНН" и "КПП".
 
 
   vicof
 
1 - 11.11.16 - 14:32
Обработчик ПоляПоиска в помощь.
   vicof
 
2 - 11.11.16 - 14:33
если объект.физлицо тогда иначе конецесли
   Amra
 
3 - 11.11.16 - 14:33
В ПКО "кури" раздел "ПоляПоиска"
   vicof
 
4 - 11.11.16 - 14:33
(3) Опоздал :P
   Cyberhawk
 
5 - 11.11.16 - 14:34
Можно еще два разных ПКО замутить, это будет проще если в приемнике тоже что-то делать различное придется
   Cyberhawk
 
6 - 11.11.16 - 14:35
В дополнение к "2" отмечу, что флажками у ПКС в ПКО должны быть отмечены _все_ поля поиска, которые будут входить в алгоритм, т.е. обеспечить полное покрытие
   Босечка
 
7 - 11.11.16 - 14:36
Это понятно.
Если НомерВариантаПоиска = 1 тогда 
Если ЗначениеЗаполнено(СвойстваПоиска["ИНН"]) Тогда 
    СтрокаИменСвойствПоиска = "ИНН, КПП";
Иначе  
СтрокаИменСвойствПоиска = НомерВариантаПоиска;
КонецЕсли; 
ИначеЕсли НомерВариантаПоиска = 2 тогда
   Если ЗначениеЗаполнено(СвойстваПоиска["ИНН"]) Тогда
       СтрокаИменСвойствПоиска = "ИНН";
   КонецЕсли;
КонецЕсли;


Как обратиться к элементу справочника реквизит "ФормаСобственности" в ПКО ?
   vicof
 
8 - 11.11.16 - 14:40
Источник.ФормаСобственности или Объект.ФормаСобственности, смотря где
   Босечка
 
9 - 11.11.16 - 14:41
в пкО ЗАКЛАДКА ПОЛЯ ПОИСКА
   Alexor
 
10 - 11.11.16 - 14:43
(9) Галкой отметить поиск по полю ФормаСобственности

В ПКО

Если СвойстваПоиска["ФормаСобственности"]=Чтототам Тогда
Иначе
КонецЕсли;
 
 Рекламное место пустует
   Босечка
 
11 - 11.11.16 - 14:50
Вы наверно не так поняли. Мне надо искать по "Наименованию", если ФормаСобственности - ФизическоеЛицо.
   vicof
 
12 - 11.11.16 - 14:58
(11) Тебе ж в (7) было понятно
   Босечка
 
13 - 11.11.16 - 15:07
Вы думаете это пройдет в этой вкладке:
Если Источник.ФормаСобственности = Перечисления.ФормыСобственоости.ЧастноЛицо тогда 
и т.д.
   Cyberhawk
 
14 - 11.11.16 - 15:14
(13) Нет, обработчик "Поля поиска" вызывается на стороне приемника. Поэтому нужно либо передавать вместе с объектом параметры, либо как в (10)
   Alexor
 
15 - 11.11.16 - 15:26
(11)

Отметить галками поиск по ФормаСобственности, Наименование, ИНН, КПП
Если СвойстваПоиска["ФормаСобственности"]=....ФизическоеЛицо Тогда 
СтрокаИменСвойствПоиска = "Наименование";
Иначе 

Если ЗначениеЗаполнено(СвойстваПоиска["КПП"]) Тогда 
    СтрокаИменСвойствПоиска = "ИНН, КПП";
Иначе  
       СтрокаИменСвойствПоиска = "ИНН";
КонецЕсли;

КонецЕсли;
   Босечка
 
16 - 11.11.16 - 16:25
(15) так не работает, выдается ошибка:

Ошибка в обработчике события ПоследовательностьПолейПоиска 
    ИмяПКО                 =  
    ТипОбъекта             =  Контрагенты
    Обработчик             =  Последовательность полей поиска
    ОписаниеОшибки         =  Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(24,1)}: Ожидается последовательность операторов
    ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(6200)
    КодСообщения           =  73

Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1630)}: Ошибка в обработчике события ПоследовательностьПолейПоиска 
    ИмяПКО                 =  
    ТипОбъекта             =  Контрагенты
    Обработчик             =  Последовательность полей поиска
    ОписаниеОшибки         =  Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(24,1)}: Ожидается последовательность операторов
    ПозицияМодуля          =  Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(6200)
    КодСообщения           =  73

Окончание загрузки: 11.11.2016 16:24:05

Загружено объектов: 2
   Босечка
 
17 - 11.11.16 - 16:26
Если СвойстваПоиска["ФормаСобственности"]= Перечисления.ФормыСобственности.ЧастноеЛицо Тогда 
СтрокаИменСвойствПоиска = "Наименование"; 
ИначеЕсли ЗначениеЗаполнено(СвойстваПоиска["КПП"]) Тогда 
    СтрокаИменСвойствПоиска = "ИНН, КПП";
Иначе  
       СтрокаИменСвойствПоиска = "ИНН";
КонецЕсли;

КонецЕсли;
   Alexor
 
18 - 11.11.16 - 22:35
(17) Ты внимательно свой текст посмотри.
Отформатируй.
   Босечка
 
19 - 14.11.16 - 11:34
Действительно, все правильно теперь написала все работает спасибо!!!!!

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует