| 
    
        
     
     | 
    
  | 
Перекрестный запрос или результат запроса в перекрестную таблицу | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        igel1969    
     10.06.15 
            ✎
    16:03 
 | 
         
        Здравствуйте!
 
        Итак, у меня есть некий отобранный список номенклатур. В момент написания запроса я еще не знаю, какие это будут номенклатуры. И далее мне нужно отобрать продажи по этим номенклатурам и запихнуть это все в ТЗ. Для ясности примера - мне нужен точно такой же результат (только он мне нужен в моей программе, чтобы можно было с ним дальше работать), как если бы я в 1С 8.2 зашел в меню Отчеты-Продажи-Анализ Продаж-Продажи. Там бы в настройках выбрал бы: Группировка строк: Контрагенты. Группировка столбцов: Номенклатура. Ну и в отборе сделал бы отбор по номенклатуре из списка. Если же делать это в запросе, то результат получается плоским, одномерным: Контрагент, Номенклатура, продажи (количество). А мне надо, чтобы на выходе была ТЗ, в которой строки - это контрагенты, столбцы - это номенклатура, а в перекрестии - продажи. Я могу сперва создать ТЗ, в котором столбцами будет номенклатура, затем пробежаться по всему запросу, насоздавать по строке на контрагента и заполнить перекрестия. Медленно все это работает. Может есть какое-то штатное средство? перекрестный запрос? или штатный способ закинуть результат "плоского" запроса в перекрестную таблицу?  | 
|||
| 
    1
    
        butterbean    
     10.06.15 
            ✎
    16:06 
 | 
         
        это всего лишь визуализация, получай запросом итоги по контрагенту и номенклатуре, а потом показывай юзеру как хочешь     
         | 
|||
| 
    2
    
        VikingKosmo    
     10.06.15 
            ✎
    16:06 
 | 
         
        СКД?     
         | 
|||
| 
    3
    
        mikecool    
     10.06.15 
            ✎
    16:06 
 | 
         
        есть штатное средство - скд     
         | 
|||
| 
    4
    
        DmitrO    
     10.06.15 
            ✎
    16:07 
 | 
         
        вот тут ошибка: "и запихнуть это все в ТЗ"
 
        всем 1сникам хочется все запихнуть в ТЗ :))  | 
|||
| 
    5
    
        Михаил Козлов    
     10.06.15 
            ✎
    16:07 
 | 
         
        В отчет вывод результата запроса в табличный документ оформляет группировки.
 
        Мне кажется, колонки (Номенклатура) в ТЗ совсем необязательны: можно оформить итоги в запросе и выбирать данные, обходя результат запроса по группировкам.  | 
|||
| 
    6
    
        VikingKosmo    
     10.06.15 
            ✎
    16:09 
 | 
         
        (4) ну что за алгоритм если в нем нет ТЗ?!     
         | 
|||
| 
    7
    
        DmitrO    
     10.06.15 
            ✎
    16:10 
 | 
         
        (6)не знаешь как поступить? - запихни все в ТЗ :)     
         | 
|||
| 
    8
    
        VikingKosmo    
     10.06.15 
            ✎
    16:12 
 | 
         
        (7) что то мне кажется, что это первый шаг к кнопке "шобсошлось"))     
         | 
|||
| 
    9
    
        igel1969    
     10.06.15 
            ✎
    16:20 
 | 
         
        Несмотря на то, что хочется научится новым приемам и поэтому общий вопрос не снимается с повестки дня, но все-таки задам еще один более узкий подвопрос:
 
        вот в 1С можно сделать штатными средствами кучу отчетов, в том числе где данные будут сгруппированы по контрагентам. Но меня начальство (а их поставщики) всегда требуют, чтобы рядом с контрагентом стоял АДРЕСССССССС, БИЛЯТЬ СУКА!!!!!!! и из-за этого каждый раз, вместо использования стандартных отчетов приходится писать СВОИ СУКА КАК МЕНЯ БЕСИТ ЭТИМ 1С!!!!! КАК, ну КАК в стандартный отчет, который я описал в основном вопросе - запихнуть еще и адрес, причем чтобы он был не иерархически, а рядом с контрагентом!  | 
|||
| 
    10
    
        VikingKosmo    
     10.06.15 
            ✎
    16:21 
 | 
         
        (9) писать отчеты на СКД?     
         | 
|||
| 
    11
    
        DmitrO    
     10.06.15 
            ✎
    16:24 
 | 
         
        (9)да, пора уже начать изучать СКД, а то так и до нервного срыва не далеко )     
         | 
|||
| 
    12
    
        DmitrO    
     10.06.15 
            ✎
    16:25 
 | 
         
        (9)1С и СКД тебя бесить не перестанет, но будет полегче     
         | 
|||
| 
    13
    
        VikingKosmo    
     10.06.15 
            ✎
    16:26 
 | 
         
        (12) СКД начнет бесить в разы больше, но по другому поводу :)     
         | 
|||
| 
    14
    
        DmitrO    
     10.06.15 
            ✎
    16:28 
 | 
         
        (13)как говорит будда - земная жизнь это страдания от привязанностей     
         | 
|||
| 
    15
    
        Drac0    
     10.06.15 
            ✎
    16:30 
 | 
         
        (9) тебе про СКД уже говорили?     
         | 
|||
| 
    16
    
        VikingKosmo    
     10.06.15 
            ✎
    16:31 
 | 
         
        (15) не только говорили, но уже успели обсудить страдания тех, кто работает с СКД     
         | 
|||
| 
    17
    
        Михаил Козлов    
     10.06.15 
            ✎
    16:38 
 | 
         
        Может быть добавить контрагенту реквизит "Адрес" и пусть в отчетах оформляют доп.поле?     
         | 
|||
| 
    18
    
        samozvanec    
     10.06.15 
            ✎
    16:45 
 | 
         
        (9) (17) СКД позволяет довольно просто использовать свойства ПВХ, как будто это реквизиты объекта     
         | 
|||
| 
    19
    
        DmitrO    
     10.06.15 
            ✎
    16:50 
 | 
         
        (18)и не только ПВХ, а даже любые поля того же уровня могут стать "как будто это реквизиты объекта"     
         | 
|||
| 
    20
    
        samozvanec    
     10.06.15 
            ✎
    16:55 
 | 
         
        (0) забегая вперед, хочу заметить, что ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначенийИмениБорисаГеоргиевичаНуралиеваБудьОнЗдоров не поддерживает настройку схемы Таблица. не понимает неконстантное количество колонок. хотя зачем тебе номенклатура в колонках, я и сам не понимаю.     
         | 
|||
| 
    21
    
        samozvanec    
     10.06.15 
            ✎
    16:56 
 | 
         
        (19) что значит "любые поля того же уровня"?     
         | 
|||
| 
    22
    
        mehfk    
     10.06.15 
            ✎
    16:56 
 | 
         
        (9) Про СКД и Универсальный отчет слышал?     
         | 
|||
| 
    23
    
        Kiks    
     10.06.15 
            ✎
    16:59 
 | 
         
        Номенклатура в колонках? Мсье знает толк в извращениях...     
         | 
|||
| 
    24
    
        ОператорПК    
     10.06.15 
            ✎
    17:22 
 | 
         
        (0) "Медленно все это работает." - покажи как сделал.     
         | 
|||
| 
    25
    
        МихаилМ    
     10.06.15 
            ✎
    17:55 
 | 
         
        (0) алгоритм
 
        получили список товаров создали тз товар, номер колонки получили список контров создали тз контрагент, номер строки создали тз колко колонок = колво товаров создали пустые строки тз пробежались по выборке и заполнили тз для каждого значения нашли по котрагенту номер строки по товару номер колонки . задача на профпригодность . на 10 минут.  | 
|||
| 
    26
    
        VikingKosmo    
     10.06.15 
            ✎
    17:57 
 | 
         
        (25) бэк ту 7.7...     
         | 
|||
| 
    27
    
        МихаилМ    
     10.06.15 
            ✎
    18:02 
 | 
         
        (26)
 
        описан простейший алгоритм. более оптимальный работает быстрее скд в разы.  | 
|||
| 
    28
    
        igel1969    
     10.06.15 
            ✎
    18:05 
 | 
         
        (25) сделал сразу так, работает медленно     
         | 
|||
| 
    29
    
        igel1969    
     10.06.15 
            ✎
    18:06 
 | 
         
        извините за отсутствие, был на совещании.     
         | 
|||
| 
    30
    
        SUA    
     10.06.15 
            ✎
    18:10 
 | 
         
        есть некоторая проблема
 
        не описанная в (0) а именно в колонке не может быть номенклатура поскольку имя колонки это ни разу не ссылочный тип данных и да... (25) вполне себе шустро работает даже в управляемых формах (единственно где такая тз может быть полезной для дальнейшей ручной обработки, практический пример - ценообразование УТ11), для программной плоская таблица лучше  | 
|||
| 
    31
    
        МихаилМ    
     10.06.15 
            ✎
    18:27 
 | 
         
        (28)
 
        дальше есть куча оптимизаций 1) переход от ссылок к числовым индексам. в запросе. + на ИСе есть ветка о быстром создании пустой тз. 2) если известно, что матрица будет не разряжена, то замена построчного алгоритма поколоночным.  | 
|||
| 
    32
    
        igel1969    
     10.06.15 
            ✎
    18:56 
 | 
         
        я покурил СКД и получилось без всякой программы.
 
        Спасибо. единственно, у этой СКД тупой 1С-ный интерфейс. Т.е. представьте, отчет сделанный на СКД будет открывать генеральный - нажимать Настройки, забивать параметры. Куда удобнее своя форма, где вывел удобно и понятно нужные поля - дата "с" "по", группа товара такая-то и т.д.... все красиво и сделано для тупого пользователя. завтра попробую покурить совмещение - сделать отчет в СКД, а заполнение параметров и инициализация формирования отчета (большая удобная кнопка) на своей форме.  | 
|||
| 
    33
    
        patria0muerte    
     11.06.15 
            ✎
    08:03 
 | 
         
        (32) Ну так нарисуй свою форму универсальную и в свойствах конфигурации поставь ее как форму для отчета по умолчанию... вроде даже где то на ИТС была форма какая то типовая...
 
        А вообще нужные параметры и отборы в СКД можно включать в пользовательские настройки и юзерам не придется в настройки лезть... И вообще - юзай варианты отчетов в таком случае - вообще бед не будешь знать...  | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |