|
v7: обработка справочника, переназначение реквизита | ☑ | ||
---|---|---|---|---|
0
Fiasko
26.01.12
✎
03:16
|
Здравствуйте! Туплю, не могу уже... следующая проблема:
В подчиненном справочике записаны значения. Необходимо обработать справочник владелец, содержащий определенный реквизит "ОсновнойКонтакт", по которому нужно искать в подчиненном и присвоить реквизиту "ОсновнойКонтактNEW" найденное значение в случае успеха. Тип реквизита "ОсновнойКонтакт" - Справочник.ФизЛица Тип реквизита "ОсновнойКонтактNEW" - Справочник.Сотрудники (подчиненный контрагентам) Пишет что не выбран элемент... ПАЧЕМУ!? :) |
|||
1
Злопчинский
26.01.12
✎
03:19
|
патамушта код криво напиан.
давай код - получишь ответ |
|||
2
Fiasko
26.01.12
✎
03:20
|
а, забыл, ведь скопировал в буфер же :)
Контрагенты = СоздатьОбъект("Справочник.Контрагенты"); Сотрудники = СоздатьОбъект("Справочник.Сотрудники"); Контрагенты.ВыбратьЭлементы(); Пока Контрагенты.ПолучитьЭлемент()=1 Цикл Сотрудники.ИспользоватьВладельца(Контрагенты.ТекущийЭлемент()); Сотрудники.ВыбратьЭлементы(); Пока Сотрудники.ПолучитьЭлемент() = 1 Цикл Если Сотрудники.ТекущийЭлемент().Сотрудник = Контрагенты.ОсновнойКонтакт Тогда Контрагенты.ОсновнойКонтактNEW.Сотрудник = Сотрудники.ТекущийЭлемент().Сотрудник; Контрагенты.Записать(); КонецЕсли; КонецЦикла; Состояние КонецЦикла; |
|||
3
Fiasko
26.01.12
✎
03:21
|
*состояния там не должно быть, не пинайте )
|
|||
4
KRV
26.01.12
✎
03:34
|
не взлетит... сравниваешь белое с твердым
|
|||
5
KRV
26.01.12
✎
03:34
|
ну или теплое с мягким..
|
|||
6
Fiasko
26.01.12
✎
03:38
|
это, собственно, из-за подчиннего справочника..!? т.е. нужно как-то по другому плясать получается...
|
|||
7
VladZ
26.01.12
✎
04:57
|
(2) Хм... "Сотрудники.ТекущийЭлемент().Сотрудник" - что за дикая структура?
|
|||
8
DJ Anthon
26.01.12
✎
05:01
|
Контрагенты.ОсновнойКонтактNEW.Сотрудник - такого не бывает, учи матчасть
|
|||
9
Злопчинский
26.01.12
✎
05:54
|
(2) в справочнике "Сотрудники" - есть реквизит "Сотрудник" типа Справочниу.ФизЛица..?
|
|||
10
Злопчинский
26.01.12
✎
05:56
|
Контрагенты = СоздатьОбъект("Справочник.Контрагенты");
Сотрудники = СоздатьОбъект("Справочник.Сотрудники"); Контрагенты.ВыбратьЭлементы(); Пока Контрагенты.ПолучитьЭлемент()=1 Цикл Сотрудники.ИспользоватьВладельца(Контрагенты.ТекущийЭлемент()); Сотрудники.ВыбратьЭлементы(); Пока Сотрудники.ПолучитьЭлемент() = 1 Цикл Если Сотрудники.Сотрудник <> Контрагенты.ОсновнойКонтакт Тогда Продолжить; КонецЕсли; Контрагенты.ОсновнойКонтактNEW = Сотрудники.ТекущийЭлемент(); Контрагенты.Записать(); КонецЦикла; КонецЦикла; |
|||
11
1Сергей
26.01.12
✎
07:48
|
Сотрудники подчинены контрагентам? это где так?
|
|||
12
Fiasko
26.01.12
✎
20:06
|
(10) да, есть
получилось, все ок... спасибо.. только сейчас до меня дошло, что я несколько иначе, но решил проблему еще раньше, просто, как я сказал в первом посте - тупил... |
|||
13
Fiasko
26.01.12
✎
20:09
|
Злопчинскому отдельно спасибо за вдумчивость и конструктивность :)
|
|||
14
miki
26.01.12
✎
20:30
|
(13)код в (10) рабочий, но не оптимальный
|
|||
15
Дядя Васька
26.01.12
✎
20:36
|
(14)+ а Злопчинский он ваще такой с_ц_уко вдумчивый...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |