Имя: Пароль:
1C
1С v8
СКД Подсчитать количество
, , ,
0 Alex1979rak
 
27.08.14
08:48
Здравствуйте, уважаемые форумчане.

Помогите, пожалуйста, разобраться в вопросе.

Делаю отчет. Использую СКД.

Примерный вид отчета:
=============================================
Клиент
----------------------------------------------
Абонемент
===============================================
<Общее количество клиентов>
----------------------------------------
Иванов
   Абонемент1
   Абонемент2
   Абонемент3
----------------------------------------
Петров
   Абонемент4
   Абонемент5
==============================================

Вопрос: как подсчитать и вывести в отчет общее количество клиентов?
1 Alex1979rak
 
27.08.14
09:24
апну разок
2 Сметанин
 
27.08.14
09:41
Ресурс "Клиент"
3 Alex1979rak
 
27.08.14
09:42
(2) пытался так делать, но этот вариант меняет форму вывода отчета
4 Alex1979rak
 
27.08.14
09:43
+(0) также пробовал в запрос воткнуть произвольное поле со значением 1 и потом считать количество. этот вариант также не подходит.
5 patria0muerte
 
27.08.14
09:51
Пользовательское поле можно сделать
6 Timon1405
 
27.08.14
09:54
<?xml version="1.0" encoding="UTF-8"?>
<DataCompositionSchema xmlns="http://v8.1c.ru/8.1/data-composition-system/schema"; xmlns:dcscom="http://v8.1c.ru/8.1/data-composition-system/common"; xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core"; xmlns:dcsset="http://v8.1c.ru/8.1/data-composition-system/settings"; xmlns:v8="http://v8.1c.ru/8.1/data/core"; xmlns:v8ui="http://v8.1c.ru/8.1/data/ui"; xmlns:xs="http://www.w3.org/2001/XMLSchema"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">;
    <dataSource>
        <name>ИсточникДанных1</name>
        <dataSourceType>Local</dataSourceType>
    </dataSource>
    <dataSet xsi:type="DataSetQuery">
        <name>НаборДанных1</name>
        <field xsi:type="DataSetFieldField">
            <dataPath>Абон</dataPath>
            <field>Абон</field>
        </field>
        <field xsi:type="DataSetFieldField">
            <dataPath>Клиент</dataPath>
            <field>Клиент</field>
        </field>
        <dataSource>ИсточникДанных1</dataSource>
        <query>ВЫБРАТЬ РАЗЛИЧНЫЕ
    "Петров" КАК Клиент,
    "Абон1" КАК Абон
ПОМЕСТИТЬ ВТ

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Петров",
    "Абон2"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Петров",
    "Абон3"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Васин",
    "Абон3"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    "Васин",
    "Абон4"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
    ВТ.Клиент,
    ВТ.Абон
ИЗ
    ВТ КАК ВТ</query>
    </dataSet>
    <calculatedField>
        <dataPath>КолвоКлиент</dataPath>
        <expression>Клиент</expression>
        <title xsi:type="v8:LocalStringType">
            <v8:item>
                <v8:lang>ru</v8:lang>
                <v8:content>Колво клиент</v8:content>
            </v8:item>
        </title>
    </calculatedField>
    <totalField>
        <dataPath>КолвоКлиент</dataPath>
        <expression>Количество(Различные КолвоКлиент)</expression>
    </totalField>
    <settingsVariant>
        <dcsset:name>Основной</dcsset:name>
        <dcsset:presentation xsi:type="xs:string">Основной</dcsset:presentation>
        <dcsset:settings xmlns:style="http://v8.1c.ru/8.1/data/ui/style"; xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system"; xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web"; xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows">;
            <dcsset:selection>
                <dcsset:item xsi:type="dcsset:SelectedItemField">
                    <dcsset:field>КолвоКлиент</dcsset:field>
                </dcsset:item>
            </dcsset:selection>
            <dcsset:item xsi:type="dcsset:StructureItemGroup">
                <dcsset:groupItems>
                    <dcsset:item xsi:type="dcsset:GroupItemField">
                        <dcsset:field>Клиент</dcsset:field>
                        <dcsset:groupType>Items</dcsset:groupType>
                        <dcsset:periodAdditionType>None</dcsset:periodAdditionType>
                        <dcsset:periodAdditionBegin xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionBegin>
                        <dcsset:periodAdditionEnd xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionEnd>
                    </dcsset:item>
                </dcsset:groupItems>
                <dcsset:order>
                    <dcsset:item xsi:type="dcsset:OrderItemAuto"/>
                </dcsset:order>
                <dcsset:selection>
                    <dcsset:item xsi:type="dcsset:SelectedItemAuto">
                        <dcsset:use>false</dcsset:use>
                    </dcsset:item>
                    <dcsset:item xsi:type="dcsset:SelectedItemField">
                        <dcsset:field>Клиент</dcsset:field>
                    </dcsset:item>
                </dcsset:selection>
                <dcsset:item xsi:type="dcsset:StructureItemGroup">
                    <dcsset:groupItems>
                        <dcsset:item xsi:type="dcsset:GroupItemField">
                            <dcsset:field>Абон</dcsset:field>
                            <dcsset:groupType>Items</dcsset:groupType>
                            <dcsset:periodAdditionType>None</dcsset:periodAdditionType>
                            <dcsset:periodAdditionBegin xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionBegin>
                            <dcsset:periodAdditionEnd xsi:type="xs:dateTime">0001-01-01T00:00:00</dcsset:periodAdditionEnd>
                        </dcsset:item>
                    </dcsset:groupItems>
                    <dcsset:order>
                        <dcsset:item xsi:type="dcsset:OrderItemAuto"/>
                    </dcsset:order>
                    <dcsset:selection>
                        <dcsset:item xsi:type="dcsset:SelectedItemAuto">
                            <dcsset:use>false</dcsset:use>
                        </dcsset:item>
                        <dcsset:item xsi:type="dcsset:SelectedItemField">
                            <dcsset:field>Абон</dcsset:field>
                        </dcsset:item>
                    </dcsset:selection>
                </dcsset:item>
            </dcsset:item>
            <dcsset:item xsi:type="dcsset:StructureItemGroup">
                <dcsset:order>
                    <dcsset:item xsi:type="dcsset:OrderItemAuto"/>
                </dcsset:order>
                <dcsset:selection>
                    <dcsset:item xsi:type="dcsset:SelectedItemAuto">
                        <dcsset:use>false</dcsset:use>
                    </dcsset:item>
                    <dcsset:item xsi:type="dcsset:SelectedItemField">
                        <dcsset:field>КолвоКлиент</dcsset:field>
                        <dcsset:lwsTitle>
                            <v8:item>
                                <v8:lang>ru</v8:lang>
                                <v8:content>ИтогоКлиент</v8:content>
                            </v8:item>
                        </dcsset:lwsTitle>
                    </dcsset:item>
                </dcsset:selection>
            </dcsset:item>
        </dcsset:settings>
    </settingsVariant>
</DataCompositionSchema>
7 kittystark
 
27.08.14
11:21
ресурсу "количество(различные клиент)", "рассчитывать по" проставь "общий итог"
8 Alex1979rak
 
27.08.14
14:51
Все таки помощь еще нужна.
Вот, что есть сейчас.

Вот вариант отчета без итогов:
http://s018.radikal.ru/i517/1408/cd/2818ce335378.jpg

Вот вариант отчета, где Клиент - это ресурс ("количество(различные клиент)", "рассчитывать по" = "общий итог"):
http://s019.radikal.ru/i620/1408/d2/2f4323efd512.jpg

Вот вариант отчета, где введено поле1 (в запросе имеет значение 1, является ресурсом "количество(различные клиент)", "рассчитывать по" = "общий итог"):
http://s018.radikal.ru/i501/1408/cc/449760bbdc72.jpg

Но мне нужно, чтобы в отчете было значение общего количества клиентов.
Как это можно сделать?
9 Alex1979rak
 
27.08.14
15:26
еще актуально
10 Timon1405
 
27.08.14
15:29
(9) чем вариант в (6) неугодил?
11 Alex1979rak
 
27.08.14
15:38
(10) я в нем не разобрался. я так понял, что это xml-схема СКД, но подключить не смог.
12 Timon1405
 
27.08.14
15:41
(11) выделить,скопировать, создать новый тхт файл, вставить, перименовать  в XML, потом
конфигуратор - файл - новый - внешний отчет - открыть схему компоновки данных - готово- слева внизу кнопка загрузить схему из файла
13 kittystark
 
27.08.14
15:47
начни с этого: в какой колонке тебе нужно вывести итог по кол-ву клиентов?

поле1 в запросе можно было не заводить, достаточно было бы завести вычисляемое поле, с более подходящим названием, и для него уже прописывать ресурс
14 Alex1979rak
 
27.08.14
15:48
(12) я так уже делал, вылазит окно с ошибкой
http://s003.radikal.ru/i201/1408/e5/64c872087f2d.jpg
15 Alex1979rak
 
27.08.14
15:49
(13) хочется разместить поле прямо под шапкой отчета. на счет вычисляемого поля попробую.
16 barrgand
 
27.08.14
15:52
(15) Нарисуй свою шапку
17 Timon1405
 
27.08.14
15:53
(14) попробуйте тхтшный файл открыть в конфигураторе 1с, потом "сохранить как" внизу выбрать тип UTF-16, сохранить, потом сменить расширение на XML
18 Alex1979rak
 
27.08.14
15:55
(17) не помогло :(
19 Timon1405
 
27.08.14
15:56
20 Alex1979rak
 
27.08.14
16:00
(19) спасибо. получилось. по результату вижу, что итог выводится отдельным полем внизу таблицы. я так понимаю, что по-другому никак не получится.
21 Timon1405
 
27.08.14
16:03
Так вы же сами так просили вроде?
Клиент
----------------------------------------------
Абонемент
===============================================
<Общее количество клиентов>
22 Alex1979rak
 
27.08.14
16:05
(21) да, именно так. вот только итог хотелось вывести в первой строке сразу после шапки
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн