Имя: Пароль:
1C
1С v8
Получить список в запросе.
0 patria0muerte
 
17.06.15
10:45
Доброго дня, коллеги, есть небольшой вопрос:

Есть у меня элемент справочника с реквизитами Наименование и ЕмкостьНомера, где емкость номера - Число(3,0)
имея элемент с именем "Номер 1" и емкостью номера 7 я хочу в запросе получить табличку вида:
Номер 1, 1
Номер 1, 2
Номер 1, 3
Номер 1, 4
Номер 1, 5
Номер 1, 6
Номер 1, 7

Причем номеров таких может быть несколько, соответственно надо, чтобы для каждого номера отображалось количество строк = числу, указанному в реквизите "емкость номера"

Возможно ли такое?
1 ДенисЧ
 
17.06.15
10:47
нет
В чистом нельзя.
В СКД можно
2 patria0muerte
 
17.06.15
10:48
(1) Хорошо! Мне в СКД и надо. Только вот как?
3 bootini
 
17.06.15
10:50
4 Jonny_Khomich
 
17.06.15
10:50
(2) очень просто.
делаешь запрос, потом в выбранных полях выводишь номер строки по группировкам. и поля которые тебе нужны
5 bootini
 
17.06.15
10:53
(4) там хитрее надо, насколько я понял, у него есть один элемент с реквизитом X и в таблице надо вывести Х строк с этим  элементом и в отдельной колонке пронумировать от 1 до Х.
6 bootini
 
17.06.15
10:58
(0) В эту сторону надо курить:
"Генерация числовой последовательности и последовательности дат при помощи языка запросов."
Книга знаний: Генерация числовой последовательности и последовательности дат при помощи языка запросов.
7 patria0muerte
 
17.06.15
10:59
(5) Да, так и надо...
Судя по всему необходимо именно в запросе. Не полностью рассказал суть.

Есть еще два РН остатков. И собственно вот по этим ключам "Ссылка" и "Номер" ("Номер 1, 1" и прочие, которые указаны выше в табличке) к табличке надо приджойнить остатки.

Чтоб понятней было - ведется учет занятости номеров гостиницы в разрезе номеров и койкомест.

Соответственно у номера есть реквизит "КоличествоМест"

Есть два РН "Факт" и "План" у которых в измерениях соответственно "Номер гостиницы" и "Койкоместо".
И вот надо вывести в отчет таблицу вида:
Номер, Койкоместо, ЗанятостьФакт, ЗанятостьПлан

Как бы не сильно и надо. Но в целях общего развития хотелось бы заморочиться. ))
8 Михаил Козлов
 
17.06.15
11:23
Просуммировать "Койкоместо" по "Номер гостиницы" и вывести число фактически занятых коек, по плану и число номинальное.
Вряд ли существенно, если по плану будет занята 3-я койка, а фактически - 2-я.
9 bootini
 
17.06.15
11:25
(7) Интересная задачка.
Емкость номера обычно ограничена какими-то рамками, поэтому генери табличку с числами до максимальная емкость и соединяй по меньше равно Номер.Емкостьномера, примерно так (МаксЕмкость принял за 5 коек и отобрал номер с 3 койками):

ВЫБРАТЬ
    Номера.Номер,
    МаксКоек.НомерКойки КАК НомерКойки
ИЗ
    (ВЫБРАТЬ
        1 КАК НомерКойки
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        2
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        3
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        4
    
    ОБЪЕДИНИТЬ
    
    ВЫБРАТЬ
        5) КАК МаксКоек
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
            3 КАК ЧислоКоек,
            "Номер 1408" КАК Номер) КАК Номера
        ПО МаксКоек.НомерКойки <= Номера.ЧислоКоек
10 bootini
 
17.06.15
11:25
РЕзультат будет:

Номер    НомерКойки
Номер 1408    1
Номер 1408    2
Номер 1408    3
11 ЧеловекДуши
 
17.06.15
11:39
(0) Циклом уже не предлагать?
Если тебе надо до 1 000 000 строчек сгенерить, то тогда да, запросом пошустрее. А так, изврат :)
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.