|
1с Объединить 3 таблицы в коде | ☑ | ||
---|---|---|---|---|
0
Lily_1C
27.12.18
✎
10:02
|
Добрый день!
Подскажите,пожалуйста,как объединить 3 таблицы в одну? Есть 3 таблицы долгов: ТаблицаДолгов1,ТаблицаДолгов2,ТаблицаДолгов3. Как получить ТаблицаДолгов?(общую таблицу,объединяющую все три) |
|||
1
lxs
27.12.18
✎
10:05
|
(0) ОБЪЕДИНИТЬ ВСЕ
Но может лучше почитать Практические примеры разработки для начала? И пособие по построению запросов в 1С? |
|||
2
Lily_1C
27.12.18
✎
10:06
|
Не в запросе, как объединить?
|
|||
3
Ник080808
27.12.18
✎
10:08
|
(0) обход в таблиц построчно и добавление в новую)
|
|||
4
Lily_1C
27.12.18
✎
10:08
|
С помощью запросов я уже получила эти таблицы,они идентичны по структуре.
Как то можно одну таблицу поставить под другую, и следующую тоже подставить вниз?) |
|||
5
Ник080808
27.12.18
✎
10:10
|
МассивТаблиц = Новый Массив;
МассивТаблиц.Добавить(ТаблицаДолгов1); МассивТаблиц.Добавить(ТаблицаДолгов2); Для Каждого ЭлементМассива из МассивТаблиц Цикл Для Каждого Стр из ЭлементМассива Цикл НС = ТаблицаДолгов3.Добавить(); ЗаполнитьЗначенияСвойств(нс,стр); КонецЦикла; КонецЦикла; |
|||
6
Ник080808
27.12.18
✎
10:10
|
в итоге все три таблицы будут в таблицадолгов3
|
|||
7
shuhard
27.12.18
✎
10:11
|
(4) в (3) какая буква не понятна ?
добавляешь колонка дописываешь сортируешь |
|||
8
Очевидно
27.12.18
✎
10:12
|
(5)
а можно ещё моднее : Для Каждого Стр из ЭлементМассива Цикл ЗаполнитьЗначенияСвойств(ТаблицаДолгов3.Добавить(),стр); КонецЦикла; |
|||
9
Lily_1C
27.12.18
✎
10:15
|
А так верно?
ТаблицаДолгов = Новый Массив; Для Каждого Таб Из ТаблицаДолгов1 Цикл ТаблицаДолгов.Добавить(Таб); КонецЦикла; Для Каждого Таб Из ТаблицаДолгов2 Цикл ТаблицаДолгов.Добавить(Таб); КонецЦикла; Для Каждого Таб Из ТаблицаДолгов3 Цикл ТаблицаДолгов.Добавить(Таб); КонецЦикла; |
|||
10
Lily_1C
27.12.18
✎
10:16
|
(8)-спасибо огромное!!!
|
|||
11
ГдеСобака Зарыта
27.12.18
✎
10:18
|
(4) А почему бы одним запросом не получить все данные в одну таблицу? Все нормальные пацаны и девчонки так делают.
Ну и еще в типовых есть специальные функции объединения таблиц. |
|||
12
Ник080808
27.12.18
✎
10:56
|
(11) ребенок только учится. Она еще не постигла дзен запросов.
|
|||
13
Вафель
27.12.18
✎
10:57
|
делай как настоящий программист - merge join
|
|||
14
GANR
27.12.18
✎
11:06
|
(12) Какой еще дзен!?
// создаем пустую таблицу с аналогичными колонками ТаблОбъединение = Табл1.Скопировать(Новый Массив); // и алгоритмом общего модуля запихиваем в неё все 3 таблицы ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(Табл1, ТаблОбъединение); ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(Табл2, ТаблОбъединение); ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(Табл3, ТаблОбъединение); |
|||
15
GANR
27.12.18
✎
11:08
|
(13) средствами ассемблера тогда уж - чего мелочиться
|
|||
16
Лодырь
27.12.18
✎
11:09
|
(14) БСПоклонник детектед!
|
|||
17
Ник080808
27.12.18
✎
11:17
|
(14) ребенок спрашивает как объединить три одинаковые таблицы. Ты думаешь, она знает что такое БСП и общий модуль
ОбщегоНазначенияКлиентСервер?) Есть несколько стадий становления 1сника: 1. Объединить три таблицы циклом; 2. Объединить запросом; 3. Объединить с бсп) Она на открыла для себя только первый) |
|||
18
Вафель
27.12.18
✎
11:25
|
(17)3 - это и есть первый. только циклы в общих модулях
|
|||
19
Вафель
27.12.18
✎
11:25
|
а потом в бсп решат, что это не клиентский метод и вся обработка полетит
|
|||
20
Ник080808
27.12.18
✎
11:28
|
(18) так в этом и цимес. Сначала пишешь на чистом языке свое, потом после многих лет боли и страданий, постигаешь дзен и юзаешь типовое)
|
|||
21
Pahomich
27.12.18
✎
11:30
|
(20) Цимес - исключтельно еврейское блюдо...
|
|||
22
МихаилМ
27.12.18
✎
12:22
|
(17)
можно еще через скд , табдок, дз а один товарищ под сотню методов объединения знает https://forum.infostart.ru/forum9/topic175149/#message1822773 |
|||
23
GANR
27.12.18
✎
13:26
|
(16) Yes, это так.
(17) Эти 3 стадии прям на себе помню. Я и слова "БСП" не произносил. Надо показать человеку мощь модулей линейки ОбщегоНазначения. |
|||
24
GANR
27.12.18
✎
13:28
|
(22) О Господи! Да чего мучаетесь - ассемблером надо.
|
|||
25
Pahomich
27.12.18
✎
13:34
|
(24) Интересно, как ты, в условиях офиса, найдешь в ассемблере Таблицу значений...
|
|||
26
GANR
27.12.18
✎
13:35
|
(19) Верное замечание. А для этого у нас общий модуль OUR_ПосредникСБГУКлиентСервер и в нем функция.
Процедура ДополнитьТаблицу(Т1, Т2) Экспорт ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(Т1, Т2); КонецПроцедуры Обращения идут не напрямую к БСП, а через этого посредника. Если отчет о проверке конфигурации после обновления покажет, что функции которую вызывает модуль-посредник нету - просто подпилим это место и всё (а не всю конфу). |
|||
27
Смотрящий
27.12.18
✎
13:41
|
(17) С уяли ребенок ? оО Писун больше чем у меня отрос а все онжеребенок
|
|||
28
Сергиус
27.12.18
✎
13:51
|
(27)Учитывая, что это девушка, то вряд ли больше..)
|
|||
29
catena
27.12.18
✎
13:53
|
(28)Имелась в виду полоска ЧСВ, видимо))
|
|||
30
Сергиус
27.12.18
✎
13:54
|
(29)Это ж надо линейкой измерять)
|
|||
31
catena
27.12.18
✎
13:55
|
(30)На ней же подписано, если мышой навести
|
|||
32
Сергиус
27.12.18
✎
13:56
|
(31)У меня такого нет..
|
|||
33
Mikeware
27.12.18
✎
14:14
|
(28) по абсолютной величине :-)
|
|||
34
Ник080808
27.12.18
✎
15:18
|
(27) она мне свой писюн не показывала, к счастью) а ребенок, потому что вопрос детский)
|
|||
35
Смотрящий
27.12.18
✎
15:31
|
(28) Полоска под ником ... она у всех есть ;)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |