Имя: Пароль:
1C
1С v8
возможности СКД
0 Денis
 
27.09.12
09:57
Всем Доброго времени суток.
Вопрос по СКД.
Как можно сделать чтобы была своего рода группировка/разгруппировка товара. Т.е например есть шкаф, он числится на счету МЦ.04 в количестве 10 штук, нажал на плюсик группировка развернулась на 10 строк( "шкаф" - количество 1 - инвентарный номер "такой то")
1 golden-pack
 
27.09.12
09:59
да
2 х86
 
27.09.12
10:00
.нет
3 IronDemon
 
27.09.12
10:10
Да, если группировку на 10 строк вывести предварительно.
4 Денis
 
27.09.12
10:42
IronDemon, можешь поподробнее описать как это сделать в СКД, 10 штук я написал условно, естестевнно там может быть и 100 штук
5 IronDemon
 
27.09.12
10:51
Обычный запрос с группировками. В чем проблема то?
6 Денis
 
27.09.12
11:14
Ну если я обращаюсь с вопросом, то есть значит проблема) Я не совсем спец по 1С, наверное точнее сказать уверенный пользователь) Отчет я делаю при помощи СКД, вот такой запрос получился

ВЫБРАТЬ
   ХозрасчетныйОстаткиИОбороты.Счет,
   ХозрасчетныйОстаткиИОбороты.Организация,
   СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт) КАК СуммаДт,
   МИНИМУМ(ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт) КАК КоличествоДт,
   ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Номенклатура,
   ХозрасчетныйОстаткиИОбороты.Субконто3 КАК МОЛ,
   ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Документ,
   ХозрасчетныйОстаткиИОбороты.Субконто2.Местонахождение КАК Местонахождение
ИЗ
   РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
           НАЧАЛОПЕРИОДА(&НачалоПериода, МЕСЯЦ),
           КОНЕЦПЕРИОДА(&КонецПериода, МЕСЯЦ),
           ,
           ,
           ВЫБОР
               КОГДА НЕ ЗНАЧЕНИЕ(ПланСчетов.хозрасчетный.ПустаяСсылка) В (&СписокСчетов)
                   ТОГДА Счет В (&СписокСчетов)
               ИНАЧЕ Счет В (&СписокУстановленныхСчетов)
           КОНЕЦ,
           ,
           ВЫБОР
               КОГДА НЕ ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка) В (&Организация)
                   ТОГДА Организация В (&Организация)
               ИНАЧЕ ИСТИНА
           КОНЕЦ) КАК ХозрасчетныйОстаткиИОбороты
ГДЕ
   ВЫБОР
           КОГДА НЕ ЗНАЧЕНИЕ(Справочник.ФизическиеЛица.ПустаяСсылка) В (&МОЛ)
               ТОГДА ХозрасчетныйОстаткиИОбороты.Субконто3 В (&МОЛ)
           ИНАЧЕ ИСТИНА
       КОНЕЦ

СГРУППИРОВАТЬ ПО
   ХозрасчетныйОстаткиИОбороты.Субконто1,
   ХозрасчетныйОстаткиИОбороты.Счет,
   ХозрасчетныйОстаткиИОбороты.Организация,
   ХозрасчетныйОстаткиИОбороты.Субконто3,
   ХозрасчетныйОстаткиИОбороты.Субконто2,
   ХозрасчетныйОстаткиИОбороты.Субконто2.Местонахождение

УПОРЯДОЧИТЬ ПО
   Номенклатура

жалко что на этом форуме нельзя прикреплять файлы, я бы отчет сюда приложил
7 Денis
 
28.09.12
09:38
Ау, люди добрые!)Отзовитесь.
Задача оказалась не так проста?
8 deff
 
28.09.12
11:59
Здравствуйте. В СКД группировки и упорядочивание нужно настраивать не на уровне запроса, а на уровне настройки варианта отчёта (закладка Настройки в схеме компоновки данных). Тогда будут "плюсики".
9 Денis
 
28.09.12
12:16
Я в курсе) Дело в том что есть допустим два документа "Передача материалов в эксплуатацию" в одном из них передали 50 штук  "шкаф для одежды" а в другом 46 штук.
Все нормально, но этот плюсик как раз и формирует две строчки, можете посмотреть рисунок прикрепленный...блин здесь же не возможно прикрепить рисунок

Щас попробую изобразить:

 Номенклатура      Инвентарный номер     Документ   Местонахлждение  Кол-во   Сумма
+ шкаф для одежды                                                      96      500000
 - шкаф для одежды                     такой - то     тех.отдел       46      230000
 - шкаф для одежды                     такой - то 2   администрация   50      270000

Вот такой результат с моими настройками. А нужно чтобы сформировалось 96 строчек в количестве 1 штука. Реально?
10 deff
 
28.09.12
12:55
Тогда это уже не настройки СКД, а запрос надо модифицировать... Причём, запрос получится непростой..
Первое, что приходит на ум это создать набор данных объект. Выполнить нужный вам запрос в модуле отчёта и программно заполнять таблицу значений,обходя получившуюся выборку(разбиваете ваши 46 и 50 единиц на отдельные строки с количеством 1). Полученную таблицу значений подгрузить в набор данных СКД. То есть отчёт вам придётся формировать программно, а не просто через запрос и настройки СКД.

Возможно, кто-нибудь предложит более простое решение?

Либо:) пусть пользователи вводят в документе 50 одинаковых строк ))) тогда запрос будет элементарный :)
11 Денis
 
28.09.12
13:18
Ага, как варинат)) обмануть буха и сказать разбить не реально, поэтлому вводить 96 строк в документе))
12 deff
 
28.09.12
13:41
Всё проще:) делаете запрет на введение количества > 1. Это чтобы точно не забыли как "правильно" заполнять документ.

Если вам это поможет, могу набросать схему заполнения набора данных. Хотя, вам, наверное, будет проще без компоновки отчёт сделать. Также таблицу значений заполните и выведите в макет.

Вообще, конечно, желание ваших бухов странноватое.
13 Денis
 
28.09.12
15:06
Ну да странноватое)
Для меня плюс, набираюсь опыта так сказать.

Да было бы не плохо если б вы мне помогли. Только вот желательно поподробнее просто я пробовал обойтись без СКД, так и не смог настроить макет(
14 deff
 
28.09.12
15:19
А саму таблицу значений сформировали? И на каком моменте возникла проблема с макетом? Не хочется начинать историю с момента зарождения вселенной)) И, кстати, приложение обычное или УФ?
15 Денis
 
28.09.12
15:31
Не я и таблицу не сформировал, просто когда делал отчет на СКД решил его перелапатить и сделать свой макет, выводить данные программно. В итоге запутался больше, решив дальше искать возможности в СКД.
Я бы мог вас скинуть отчет на почту? посмотрите)
16 НастоящееИмя
 
28.09.12
15:48
Создай в справочнике группу Шкаф
17 Денis
 
28.09.12
15:58
Что мне это даст?
18 deff
 
28.09.12
16:01
Ну посмотреть могу. Но вы вроде уже выложили запрос) и, честно говоря, что вы пытаетесь в нём в итоге получить, мне не очень понятно)) Говорите об остатках, получаете минимум.. И какой путь выбираете? СКД или просто через макет?
19 Денis
 
28.09.12
16:05
Какой получится) Если б была возможность допилить СКД - то его.
Ну вроде не миниму я получаю, а нормальное количество и сумму по счета МЦ. Сравнивал с ОСВ??
Я что - то не до понимаю может?
20 НастоящееИмя
 
28.09.12
16:07
(19)Группировку в запросе пробовал убирать? Как выводит?
21 Alex S D
 
28.09.12
16:08
(18) без фотки не взелтит)
22 deff
 
28.09.12
16:15
Группировку там бесполезно убирать. В самом документе на позиции может количество 50 штук стоять. А нам надо разбить по 1 штуке, если я всё правильно понимаю
23 Lady исчезает
 
28.09.12
16:16
(9)В ХозрасчётномОстаткиОбороты 50 штук идёт одной строкой или 50-ю?
24 deff
 
28.09.12
16:17
На счёт минимума. Если просто сгруппировать надо, то лучше сумму использовать.
25 Денis
 
28.09.12
16:25
Deff может глянешь мою обработку?)  
Lady видимо одной строкой, т.к передаем в эксплуатацию одной строкой в количестве 50 штук
26 deff
 
28.09.12
16:25
Мне кажется, что с макетом проще будет. Всё равно таблицу вручную формировать. С макетом ход действий следующий: 1) формируем запрос. 2) обходим результат запроса, разбивая строки с количеством > 1 на строки с количеством 1, ну и корректной суммой, соответственно. 3) рисуем макет. 4) тут не знаю, как лучше.. Либо готовую таблицу обходить и выводить в макет с группировками, либо менеджер временных таблиц использовать и получить иерархическую выборку уже из таблицы и уже её выводить.
27 deff
 
28.09.12
16:27
Давайте. Бросайте сюда [email protected]
28 Денis
 
28.09.12
16:30
ок) сейчас
29 Lady исчезает
 
28.09.12
17:22
(25) Тогда эта задача не для СКД.
30 Денis
 
28.09.12
17:48
А думаете там нет какого - нибудь события, которое бы перед выводом проверяла бы количество и разбивала строчки?
31 deff
 
28.09.12
21:38
Денis, у вас есть книжка Е.Ю. Хрусталёвой "Разработка сложных отчётов в 1С:Предприятии 8"? Если вы хотите попробовать сделать на СКД, то я бы вам предложила вариант, описанный на стр. 73. Ну результат запроса придётся подвергнуть доп. обработке, конечно же, чтобы разбивку сделать.
На счёт запроса. Если пишете запрос в СКД, то параметр период можно не указывать. Можете удалить их и посмотрите на закладку "Параметры" - они никуда не денутся. А приведение к началу и концу периода можно сделать на той же закладке в колонке "Выражение". И условие лучше задавать на закладке "Компоновка данных", находясь в конструкторе запроса. Тогда вот этих проверок на заполненность параметров можно избежать.
32 Денis
 
01.10.12
09:15
Спасибо большое Deff, буду пробовать! Жаль что книги вот под рукой нет