|
Регистр "Контактная информация" пустой, хотя это не так. | ☑ | ||
---|---|---|---|---|
0
Босечка
28.11.14
✎
12:30
|
Пытаюсь получить адрес сотрудника
Функция киПолучитьПредставлениеКИ1(Объект, ЗначениеКИ, ДобавлятьКомментарий = Ложь) Представление = ""; НаборЗаписейКИ = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей(); НаборЗаписейКИ.Отбор.Объект.Значение = Объект; НаборЗаписейКИ.Отбор.Объект.Использование = Истина; Если ТипЗнч(ЗначениеКИ) = Тип("СправочникСсылка.ВидыКонтактнойИнформации") Тогда НаборЗаписейКИ.Отбор.Вид.Значение = ЗначениеКИ; НаборЗаписейКИ.Отбор.Вид.Использование = Истина; НаборЗаписейКИ.Прочитать(); Если НаборЗаписейКИ.Количество() > 0 Тогда Представление = НаборЗаписейКИ[0].Представление; Если ДобавлятьКомментарий И Не ПустаяСтрока(НаборЗаписейКИ[0].Комментарий) Тогда Если НаборЗаписейКИ[0].Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда Представление = Представление + Символы.ПС + "Комментарий: " + НаборЗаписейКИ[0].Комментарий; Иначе Представление = Представление + " (" + НаборЗаписейКИ[0].Комментарий + ")"; КонецЕсли; КонецЕсли; КонецЕсли; ИначеЕсли ТипЗнч(ЗначениеКИ) = Тип("ПеречислениеСсылка.ТипыКонтактнойИнформации") Тогда НаборЗаписейКИ.Отбор.Тип.Значение = ЗначениеКИ; НаборЗаписейКИ.Отбор.Тип.Использование = Истина; НаборЗаписейКИ.Прочитать(); Представление = ""; Для каждого Запись Из НаборЗаписейКИ Цикл Если Запись.ЗначениеПоУмолчанию Тогда Представление = Запись.Представление; Если ДобавлятьКомментарий И Не ПустаяСтрока(Запись.Комментарий) Тогда Если Запись.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда Представление = Представление + Символы.ПС + "Комментарий: " + Запись.Комментарий; Иначе Представление = Представление + " (" + Запись.Комментарий + ")"; КонецЕсли; КонецЕсли; Прервать; КонецЕсли; КонецЦикла; КонецЕсли; Возврат Представление; КонецФункции // киПолучитьПредставлениеКИ() Адрес1 = киПолучитьПредставлениеКИ1(Сотрудник,Справочники.ВидыКонтактнойИнформации.АдресЮридический); выходит пустое значение, хотя данные там есть |
|||
1
Wobland
28.11.14
✎
12:32
|
ну дела...
|
|||
2
Wobland
28.11.14
✎
12:32
|
без слова "запрос" даж читать не буду
|
|||
3
Босечка
28.11.14
✎
12:32
|
да уж...
|
|||
4
Любопытная
28.11.14
✎
12:33
|
А что, запросы нонче не в моде?
|
|||
5
zulu_mix
28.11.14
✎
12:33
|
хосспаде... как мне это развидеть О_О
|
|||
6
Wobland
28.11.14
✎
12:33
|
(5) сегодня ж пятница. бахни метилового спирту
|
|||
7
Любопытная
28.11.14
✎
12:34
|
При таком количестве вложенных Если немудрено получить пусто на выходе.
Впрочем, даже такое можно отладить отладкой |
|||
8
Любопытная
28.11.14
✎
12:34
|
Там еще и Прервать есть... Красотища
|
|||
9
elCust
28.11.14
✎
12:34
|
Зачем городить всякую фигню. Возьмите типовую конфу, посмотрите модуль КИ, сделайте у себя по нормальному.
|
|||
10
Ненавижу 1С
гуру
28.11.14
✎
12:34
|
АдресЮридический - у меня такого предопределенного нет
|
|||
11
zulu_mix
28.11.14
✎
12:35
|
(6) О_О о_о х_х -_- спасибо друх
|
|||
12
Wobland
28.11.14
✎
12:35
|
(11) гыыы!
|
|||
13
zulu_mix
28.11.14
✎
12:36
|
а что, у сотрудника уже появился юридический адрес? не знал
|
|||
14
Босечка
28.11.14
✎
12:36
|
Это типовая конфа, Альфа Авто 5 между прочим, хотела воспользоваться стандартной функцией, придется делать запрос.
|
|||
15
Любопытная
28.11.14
✎
12:37
|
о, что нашла
// Функция находит актуальное значение адреса в контакной информации. // // Параметры: // Объект - СправочникСсылка, объект контактной информации // ТипАдреса - тип контактной информации // // Возвращаемое значение // Строка - представление найденного адреса // Функция ПолучитьАдресИзКонтактнойИнформации(Объект, ТипАдреса = "") Экспорт Надо? |
|||
16
Любопытная
28.11.14
✎
12:37
|
(14) Это типовой код Альфа-авто?
|
|||
17
Босечка
28.11.14
✎
12:38
|
(16) да
|
|||
18
zulu_mix
28.11.14
✎
12:38
|
(14) я давно предлагал рарусям руки оторвать
|
|||
19
Босечка
28.11.14
✎
12:39
|
(15) Давайте, заранее спасибо.
|
|||
20
Любопытная
28.11.14
✎
12:39
|
(17) о боги... я не верю
|
|||
21
Любопытная
28.11.14
✎
12:39
|
(19) в бухгалтерии можно посмотреть в типовой Там целый общий модуль есть "УПравлениеКонтактнойИнформацией"
|
|||
22
Босечка
28.11.14
✎
12:40
|
Спасибо, сейчас посмотрю.
|
|||
23
JeyRico
28.11.14
✎
12:42
|
НаборЗаписейКИ.Отбор.Объект.Значение = Объект;
Вангую: Наверно так должно быть ... = Объект.Ссылка; А вообще, у сотрудника разве юридический адрес должен быть? |
|||
24
Любопытная
28.11.14
✎
12:42
|
Точно, есть такая. Это ж надо же...
|
|||
25
vyaz
28.11.14
✎
12:43
|
(20) наслаждайся, соседняя функция
// Функция возвращает для заданного объекта город из контактной информации // // Параметры: // Объект – СправочникСсылка - Объект, для которого нужно получить представление // ЗначениеКИ - СправочникСсылка - Значение контактной информации // // Возвращаемое значение: // Строка – представление контактной информации или пустая строка, если значение не найдено. // Функция киПолучитьГород(Объект, ЗначениеКИ) Экспорт НаборЗаписейКИ = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей(); НаборЗаписейКИ.Отбор.Объект.Значение = Объект; НаборЗаписейКИ.Отбор.Объект.Использование = Истина; Если ТипЗнч(ЗначениеКИ) = Тип("СправочникСсылка.ВидыКонтактнойИнформации") Тогда НаборЗаписейКИ.Отбор.Вид.Значение = ЗначениеКИ; НаборЗаписейКИ.Отбор.Вид.Использование = Истина; НаборЗаписейКИ.Прочитать(); Если НаборЗаписейКИ.Количество() > 0 Тогда город = НаборЗаписейКИ[0].Поле4; Если ЗначениеЗаполнено(город) Тогда Если Прав(город,2)=" г" Тогда Возврат "г. " + Лев(город, СтрДлина(город)-2); Иначе Возврат город; //поселок, пгт или что-то еще КонецЕсли; Иначе Если Найти(НаборЗаписейКИ[0].Поле2,"Москва") Тогда Возврат "г. Москва"; ИначеЕсли Найти(НаборЗаписейКИ[0].Поле2,"Санкт-Петербург") Тогда Возврат "г. Санкт-Петербург"; КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; Возврат ""; КонецФункции // киПолучитьПредставлениеКИ() |
|||
26
Wobland
28.11.14
✎
12:43
|
(24) всадники апокалипсиса уже здесь. нам конец
|
|||
27
Любопытная
28.11.14
✎
12:45
|
(25) У меня в 4.1 такой нет
|
|||
28
vyaz
28.11.14
✎
12:46
|
(27) 5.0.11 )))
|
|||
29
Любопытная
28.11.14
✎
12:46
|
Ок, скажите тогда, мож и не обязательно в таких случаях заморачиваться с запросами? Ну работает же, как я понимаю
|
|||
30
Любопытная
28.11.14
✎
12:47
|
(28) ну какая демка есть под рукой, ту и развернула
|
|||
31
vyaz
28.11.14
✎
12:51
|
(29) так-то и столовой ложкой можно яму под сортир копать, копается же)))
|
|||
32
Поpyчик-4
28.11.14
✎
13:08
|
(5) Это ещё ничего. Вот у нас чудо с шестью сертификатами профа сидело, полтора года кодило. Какое счастье, что оно свалило, пока я был в отпуске.
|
|||
33
Босечка
28.11.14
✎
13:26
|
И запросом тоже не выходит....
Сотрудник=ЭтотОбъект; ВидКонИнф=Справочники.ВидыКонтактнойИнформации.АдресФактический; ВыбСотр=Сотрудник.Ссылка; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | КонтактнаяИнформация.Объект, | КонтактнаяИнформация.Тип, | КонтактнаяИнформация.Вид, | КонтактнаяИнформация.ЗначениеПоУмолчанию, | КонтактнаяИнформация.Комментарий, | КонтактнаяИнформация.Поле1, | КонтактнаяИнформация.Поле2, | КонтактнаяИнформация.Поле3, | КонтактнаяИнформация.Поле4, | КонтактнаяИнформация.Поле5, | КонтактнаяИнформация.Поле6, | КонтактнаяИнформация.Поле7, | КонтактнаяИнформация.Поле8, | КонтактнаяИнформация.Поле9, | КонтактнаяИнформация.Представление, | КонтактнаяИнформация.Поле10, | КонтактнаяИнформация.Поле11, | КонтактнаяИнформация.Поле12, | КонтактнаяИнформация.СтанцияМетро, | КонтактнаяИнформация.ГородскойРайон, | КонтактнаяИнформация.CRM_ПолеХраненияНомера, | КонтактнаяИнформация.ТипДома, | КонтактнаяИнформация.ТипКорпуса, | КонтактнаяИнформация.ТипКвартиры, | КонтактнаяИнформация.КраткоеПредставление |ИЗ | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Сотрудники КАК Сотрудники | ПО КонтактнаяИнформация.Объект = Сотрудники.Ссылка |ГДЕ | Сотрудники.Ссылка = &ВыбСотр | И КонтактнаяИнформация.Вид.Ссылка = &ВидКонИнф"; Запрос.УстановитьПараметр("ВидКонИнф", ВидКонИнф); Запрос.УстановитьПараметр("ВыбСотр", ВыбСотр); Т= новый ТаблицаЗначений; Т = Запрос.Выполнить().Выгрузить(); Т.ВыбратьСтроку(); тз = Новый ТаблицаЗначений; тз = Запрос.Выполнить().Выгрузить(); таблица пустая... |
|||
34
Любопытная
28.11.14
✎
13:34
|
Т= новый ТаблицаЗначений;
Т = Запрос.Выполнить().Выгрузить(); Т.ВыбратьСтроку(); - Что это? Зачем соединение со справочником, если у вас один сотрудник и тот отбором в условии? |
|||
35
mdocs
28.11.14
✎
13:35
|
а точно адрес у сотрудника а не у физлица?
|
|||
36
Любопытная
28.11.14
✎
13:35
|
ВЫБРАТЬ
КонтактнаяИнформация.Объект, КонтактнаяИнформация.Представление ИЗ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ГДЕ КонтактнаяИнформация.Объект = &Сотрудник И КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(справочник.ВидыКонтактнойИнформации.АдресЮридический) Не? |
|||
37
Босечка
28.11.14
✎
13:37
|
Нет у сотрудника
|
|||
38
Босечка
28.11.14
✎
13:45
|
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ | КонтактнаяИнформация.Объект, | КонтактнаяИнформация.Представление |ИЗ | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация |ГДЕ | КонтактнаяИнформация.Объект = &Сотрудник | И КонтактнаяИнформация.Вид = ЗНАЧЕНИЕ(справочник.ВидыКонтактнойИнформации.АдресЮридический)"; Запрос.УстановитьПараметр("Сотрудник", Сотрудник); все равно не работает |
|||
39
Любопытная
28.11.14
✎
13:49
|
ну так может нет у сотрудника юридического адреса? :)
|
|||
40
Любопытная
28.11.14
✎
13:54
|
С учетом того, что в бухгалтерии адреса у физиков и адрес по прописке называется Справочник.ВидыКонтактнойИнформации.ЮрАдресФизЛица, то у меня работает. А у вас вестимо значений нет
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |