Имя: Пароль:
1C
 
Объединение массивов в 1
0 Voblhned
 
30.05.18
10:29
Подскажите момент, можно ли так объединять массивы:


        МассивФИО             = Выборка.СписокТуристов.Выгрузить().ВыгрузитьКолонку("ФИО");
        МассивФИОПоЛатински     = Выборка.СписокТуристов.Выгрузить().ВыгрузитьКолонку("ФИПоЛатински");
        МассивДатаРождения     =  Выборка.СписокТуристов.Выгрузить().ВыгрузитьКолонку("ДатаРождения");
        МассивСерияИНомер     =  Выборка.СписокТуристов.Выгрузить().ВыгрузитьКолонку("СерияИНомерДокумента");
        МассивТуристов = Новый Массив;
        Для Индекс=0 по МассивФИО.Количество() - 1 Цикл
        МассивТуристов.Добавить();    
        МассивТуристов[Индекс] = МассивФИО[Индекс] + ", "+ МассивФИОПоЛатински[Индекс] + ", " + МассивДатаРождения[Индекс] + ", " + МассивСерияИНомер[Индекс];
        КонецЦикла;
        МасивВСтроку = СтрСоединить(МассивТуристов, ", ");
        Подвал.Параметры.ФИО = МасивВСтроку;

1 SleepyHead
 
гуру
30.05.18
10:33
ОбщегоНазначенияКлиентСервер.ДополнитьМассив(МассивПриемник, МассивИсточник, ТолькоУникальныеЗначения = Ложь) Экспорт
2 Lexey_
 
30.05.18
10:33
(0) можно
3 SleepyHead
 
гуру
30.05.18
10:33
Хотя нет, ты ж не массивы объединяешь, а значения из массивов ))
4 DrShad
 
30.05.18
10:33
а не проще это все сделать сразу в запросе?
5 DrShad
 
30.05.18
10:34
да и если бы хоть это Выборка.СписокТуристов.Выгрузить() сделать один раз, а не 4, то гораздо быстрее будет
6 Voblhned
 
30.05.18
10:39
(1) это не типовая, просто конфа для распечатки договоров и хранения данных по путевкам.
(3) немного не верно высказался
(5) А потом СтрСоединить не сработает
7 SeriyP
 
30.05.18
11:10
(0) Люто задумано. Если изначально поля - строковые (но не неограниченной длины), то просто в запросе через плюсик их объединить и выгрузить потом в массив
Выбрать
Табл.ФИО + ", " + Табл.ФИПоЛатински + ", " +.......
Из
Таблица Как Табл

Ну или через ВЫРАЗИТЬ
8 novichok79
 
30.05.18
11:19
если честно, то это какая-то дичь.
зачем так сложно Карл? какие-то массивы гонять? нахуа?
9 novichok79
 
30.05.18
11:31
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ФизическиеЛица.Ссылка КАК Ссылка,
    ФизическиеЛица.ДатаРождения КАК ДатаРождения,
    "" КАК ДатаРожденияСтрокой
ПОМЕСТИТЬ ВТФизическиеЛица
ИЗ
    Справочник.ФизическиеЛица КАК ФизическиеЛица
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ФИОФизЛиц.ФизЛицо КАК ФизЛицо,
    ФИОФизЛиц.Фамилия КАК Фамилия,
    ФИОФизЛиц.Имя КАК Имя,
    ФИОФизЛиц.Отчество КАК Отчество
ПОМЕСТИТЬ ВТФИОФизЛиц
ИЗ
    РегистрСведений.ФИОФизЛиц.СрезПоследних(
            ,
            ФизЛицо В
                (ВЫБРАТЬ
                    ФизическиеЛица.Ссылка КАК Ссылка
                ИЗ
                    ВТФизическиеЛица КАК ФизическиеЛица)) КАК ФИОФизЛиц
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ФИОФизЛицЛатиницей.ФизЛицо КАК ФизЛицо,
    ФИОФизЛицЛатиницей.Фамилия КАК Фамилия,
    ФИОФизЛицЛатиницей.Имя КАК Имя,
    ФИОФизЛицЛатиницей.Отчество КАК Отчество
ПОМЕСТИТЬ ВТФИОФизЛицЛатиницей
ИЗ
    РегистрСведений.ФИОФизЛиц.СрезПоследних(
            ,
            ФизЛицо В
                (ВЫБРАТЬ
                    ФизическиеЛица.Ссылка КАК Ссылка
                ИЗ
                    ВТФизическиеЛица КАК ФизическиеЛица)) КАК ФИОФизЛицЛатиницей
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ПаспортныеДанныеФизЛиц.ФизЛицо КАК ФизЛицо,
    ПаспортныеДанныеФизЛиц.ДокументВид КАК ДокументВид,
    ПаспортныеДанныеФизЛиц.ДокументСерия КАК ДокументСерия,
    ПаспортныеДанныеФизЛиц.ДокументНомер КАК ДокументНомер
ПОМЕСТИТЬ ВТПаспортныеДанныеФизЛиц
ИЗ
    РегистрСведений.ПаспортныеДанныеФизЛиц.СрезПоследних(
            ,
            ФизЛицо В
                (ВЫБРАТЬ
                    ФизическиеЛица.Ссылка КАК Ссылка
                ИЗ
                    ВТФизическиеЛица КАК ФизическиеЛица)) КАК ПаспортныеДанныеФизЛиц
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ФизическиеЛица.Ссылка КАК ФизЛицо,
    ЕСТЬNULL(ФИОФизЛиц.Фамилия, "") + " " + ЕСТЬNULL(ФИОФизЛиц.Имя, "") + " " + ЕСТЬNULL(ФИОФизЛиц.Отчество, "") + " " + ЕСТЬNULL(ФИОФизЛицЛатиницей.Фамилия, "") + " " + ЕСТЬNULL(ФИОФизЛицЛатиницей.Имя, "") + " " + ЕСТЬNULL(ФИОФизЛицЛатиницей.Отчество, "") + " " + ЕСТЬNULL(ФизическиеЛица.ДатаРожденияСтрокой, "") + " " + ЕСТЬNULL(ПаспортныеДанныеФизЛиц.ДокументСерия, "") + " " + ЕСТЬNULL(ПаспортныеДанныеФизЛиц.ДокументНомер, "") КАК СексТурист
ИЗ
    ВТФизическиеЛица КАК ФизическиеЛица
        ЛЕВОЕ СОЕДИНЕНИЕ ВТФИОФизЛиц КАК ФИОФизЛиц
        ПО ФизическиеЛица.Ссылка = ФИОФизЛиц.ФизЛицо
        ЛЕВОЕ СОЕДИНЕНИЕ ВТФИОФизЛицЛатиницей КАК ФИОФизЛицЛатиницей
        ПО ФизическиеЛица.Ссылка = ФИОФизЛицЛатиницей.ФизЛицо
        ЛЕВОЕ СОЕДИНЕНИЕ ВТПаспортныеДанныеФизЛиц КАК ПаспортныеДанныеФизЛиц
        ПО ФизическиеЛица.Ссылка = ПаспортныеДанныеФизЛиц.ФизЛицо
10 novichok79
 
30.05.18
11:32
потом выгружаешь колонку "СексТурист" и делаешь стрсоединить, ну или обходишь массив, выгруженный из колонки как хочешь
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс