Имя: Пароль:
1C
1С v8
Получить ФИО в запросе
0 ЛучшийПрограммер1С
 
25.07.16
11:25
Здравствуйте!

Как получить в запросе типа такого что ниже ФИО в виде Иванов И.И. вместо Иванов Иван Иванович?

ВЫБРАТЬ
    СотрудникиОрганизаций.Наименование,
    Пользователи.ПрофильПолномочийПользователя.Наименование
ИЗ
    Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Пользователи КАК Пользователи
        ПО СотрудникиОрганизаций.Физлицо = Пользователи.ФизЛицо
ГДЕ
    СотрудникиОрганизаций.Актуальность = ИСТИНА
    И Пользователи.ПрофильПолномочийПользователя = &Профиль
1 Мыш
 
25.07.16
11:26
Регистр сведений ФИОфизлиц
2 Cyberhawk
 
25.07.16
11:32
Добавить реквизиты. Хранить сокращенные ИО в них. Для родительного падежа - еще отдельные реквизиты.
3 Azxcvbn
 
25.07.16
11:34
(2) Зачем? Если в типовых конфигураций есть регистр сведений ФИОфизлиц и там путем нехитрых манипуляций получить Фамилию и инициалы
4 _stay true_
 
25.07.16
11:38
(3) Так же в типовых есть функция где-то в общих модулях "ФамилияИнициалыФизЛица".
Так же есть регистр ФИОФизлиц;

Если же есть непреодолимое желание изобрести свой собственный кирпич или конфа самописка:

Можно извратиться: разложить строку Иванов Иван Иванович на массив подстрок, используя в качестве разделителя " ". После же выводить: полностью [0] элемент, а в оставшихся двух только первый симовл слева+".".

Но это совсем порно)))
5 Cyberhawk
 
25.07.16
11:40
(3) Можно конечно. Но это будет неуниверсально. Все зависит от цели и имеющихся средств (типовая, есть ли замок и т.д.).
6 ЛучшийПрограммер1С
 
25.07.16
11:43
Я понял, в запросе никак без извращений
7 kumena
 
25.07.16
11:44
(6)

учись, студент

    |    ,ЕСТЬNULL(ВЫБОР
    |            КОГДА ПОДСТРОКА(ФИОФизЛиц.Имя, 1, 1) <> """"
    |                ТОГДА "" "" + ПОДСТРОКА(ФИОФизЛиц.Имя, 1, 1) + "".""
    |            ИНАЧЕ """"
    |        КОНЕЦ + ВЫБОР
    |            КОГДА ПОДСТРОКА(ФИОФизЛиц.Отчество, 1, 1) <> """"
    |                ТОГДА "" "" + ПОДСТРОКА(ФИОФизЛиц.Отчество, 1, 1) + "".""
    |            ИНАЧЕ """"
    |        КОНЕЦ+"" ""+ФИОФизЛиц.Фамилия, ДанныеДокумента.Подпись.Наименование) КАК ПодписьФИО
8 kumena
 
25.07.16
11:51
да, вот это
СотрудникиОрганизаций.Актуальность = ИСТИНА

большая ошибка.
9 ЛучшийПрограммер1С
 
25.07.16
11:54
почему ошибка?
10 kumena
 
25.07.16
11:58
потому что актуальность - она не периодическая, и сразу говорит, что программист не умеет правильно писать запросы по сотрудника.
11 Мыш
 
25.07.16
12:02
Потому что КадроваяИсторияСотрудников.Срез не уволен
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.