Имя: Пароль:
1C
1C 7.7
v7: Как получить значение реквизита справочника принадл. другому справочнику?
0 Ночной Эльф
 
07.08.12
13:22
Вобщем ситуация такая имеется справочник Контрагенты CRM в комплексной конфигурации. В нем есть реквизит типа Справочник.я_ТипыКлиентов, где я_ТипыКлиентов справочник в котором

длина кода 5
длина наименования 25
Серии кодов        в пределах подчинения
Тип кода           числовой
Основное представление В виде наименования

Так вот я пытаюсь получить значение реквизита ТипКлиента справочника Контрагенты CRM вот таким образом

я_СпрКонтр = СоздатьОбъект("Справочник.я_Контрагенты"); // где я_Контрагенты это Контрагенты CRM
я_СпрКонтр.НайтиПоНаименованию(<наименование контрагента>,0,1);

но почему то строка
я_СпрКонтр.ТипКлиента
пустая

а скажем я_СпрКонтр.Контрагент выводит название именно того контрагента что и надо было

В чем причина?
Как получить реквизит ТипКлиента справочника Контрагенты CRM?
1 Rovan
 
гуру
07.08.12
13:23
(0) ну видимо этот реквизит в этом элементе не заполнен
2 ЧеловекДуши
 
07.08.12
13:23
Все дело в ДНК, смирись :)
3 Ёпрст
 
гуру
07.08.12
13:23
г-поделка от раруса ?
:)
4 Ночной Эльф
 
07.08.12
13:24
(1) да вот именно что нет открываю 1с предприятие открываю справочник Контрагенты CRM именно по этому контрагенту реквизит заполнен
5 Ночной Эльф
 
07.08.12
13:25
(2) (3) а как быть то ?
6 Ночной Эльф
 
07.08.12
13:25
может можно как нибудь его получить ?
7 Ёпрст
 
гуру
07.08.12
13:29
(6) проверить для начала, что твой клиентос найден:

я_СпрКонтр = СоздатьОбъект("Справочник.я_Контрагенты"); // где я_Контрагенты это Контрагенты CRM

Есжели я_СпрКонтр.НайтиПоНаименованию(<наименование контрагента>,0,1)=1 Тогда
  ПослатьМессадже("Это успех!","!!");
Иначе
  ПослатьМессадже("Это полный ПЭ");
  Возврат КЕдрениФени;
КонецЕсли;
8 Ёпрст
 
гуру
07.08.12
13:29
и во-вторых, проверить, что найденный по наименованию клиентос - НЕ Группа
9 Ночной Эльф
 
07.08.12
13:37
Да все это выполняется и выводит успех
10 Ёпрст
 
гуру
07.08.12
13:41
(9) и не группа ?
11 dk
 
07.08.12
13:41
про отладчик уже было?
12 Ёпрст
 
гуру
07.08.12
13:42
И реквизит ТипКлиента не Периодический ?
13 Ёпрст
 
гуру
07.08.12
13:42
(11) автору рано еще об этом - трясти нужно сильнее
14 Ночной Эльф
 
07.08.12
13:52
(13) все уже отладчиком просматрел.
НУ ты как всегда прав ))) он оказался периодически )) как мне получить его значение ?))))
15 Ёпрст
 
гуру
07.08.12
13:59
(14)

  .ТипКлиента.Получить(НужнаяДата);
16 Ночной Эльф
 
07.08.12
14:08
(15) ты не поверишь после строки в отладчике

я_СпрКонтр.ТипКлиента.Получить("01.08.12");

значение я_СпрКонтр.ТипКлиента пустое а значение я_СпрКонтр.Контрагент имеет нужное значение че за пи..... ?
17 Ёпрст
 
гуру
07.08.12
14:09
(16) "01.08.12" - это строка, если че..
18 Ёпрст
 
гуру
07.08.12
14:09
'01.08.1' - а это дата
19 Ёпрст
 
гуру
07.08.12
14:09
'01.08.12' так, если точнее
20 dk
 
07.08.12
14:09
(16) кавычки одинарные для даты
21 dk
 
07.08.12
14:10
Ёпрст4 какой шустрый )
22 Ночной Эльф
 
07.08.12
14:16
Да это пиз?ец какой то  даже поставил вот так

ТекДат = ТекущаяДата();
               я_СпрКонтр.ТипКлиента.Получить(ТекДат);

Все равно в отладчике  

я_СпрКонтр.ТипКлиента = НеизвестныйОбъект
23 Ночной Эльф
 
07.08.12
14:16
Это просто ё??еый в рот мистика, уже терпения нет как так то, извините за француский
24 Ёпрст
 
гуру
07.08.12
14:17
(22) дык смотреть надо в жуколове ЭТО:

я_СпрКонтр.ТипКлиента.Получить(ТекущаяДата())
25 Ночной Эльф
 
07.08.12
14:21
Может быть имеет значение что реквизит ТипКлиента периодический и стоят еще галочки "изменяется документами" и "ручное изменение" это получается реквизит периодический а как посмотреть справочник периодический или нет ?
26 aka AMIGO
 
07.08.12
14:22
начинаем громоздить :)
я_СпрКонтр.ТекущийЭлемент().ТипКлиента.Получить(ТекущаяДата())
27 Ёпрст
 
гуру
07.08.12
14:22
(25)
>>> как посмотреть  справочник периодический или нет

Это тебе нужно пойти и еще раз пыхнуть
28 Ёпрст
 
гуру
07.08.12
14:24
И это, закрой отладчик, напиши в коде

Сообщить(я_СпрКонтр.ТипКлиента.Получить(ТекущаяДата(),"i");

наслаждайся
29 Ночной Эльф
 
07.08.12
14:27
(28) ругается на твое сообщение Сообщить(я_СпрКонтр.ТипКлиента.Получить(ТекущаяДата(),"i")<<?>>;
{D:\БАЗЫ\02.08.12\EXTFORMS\OTCH_VITALIY\СПЕЦИАЛЬНЫЕ.GRP\АНАЛИЗКАРТКЛИЕНТА.ERT(145)}: Ожидается символ ')'
30 Ночной Эльф
 
07.08.12
14:27
нет я гоню вот такую вот ошибку выдает

Сообщить(я_СпрКонтр.ТипКлиента.Получить(ТекущаяДата(),"i"));
{D:\БАЗЫ\02.08.12\EXTFORMS\OTCH_VITALIY\СПЕЦИАЛЬНЫЕ.GRP\АНАЛИЗКАРТКЛИЕНТА.ERT(145)}: Слишком много параметров передано при вызове функции/процедуры объекта
31 Ёпрст
 
гуру
07.08.12
14:27
(29)
Сообщить(я_СпрКонтр.ТипКлиента.Получить(ТекущаяДата()),"i");
32 Ночной Эльф
 
07.08.12
14:48
Алелуя заработала ну наконец то может быть 1с 7.7 глючила