| 
    
            
         
         | 
    
  | 
СКД. Как использовать поле запроса в выражении в параметре? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Блондинка_    
     22.05.17 
            ✎
    10:32 
 | 
         
        Добрый день! Нужно сделать отчет, в котором будут данные по продажам по 2м вариантам: за сезон продаж и за не сезон. Данные по началу и окончанию сезона задаются в справочнике. Я сделала отдельный запрос в СКД который получает эти значения. Это поля ДатаНачалаНеСезонаПродаж, ДатаНачалаСезонаПродаж ну и также с окончанием. В параметре НачалоПериода я хотела в выражении записать условие
 
        ВЫБОР КОГДА &ПЕРИОД = "СезонПродаж" ТОГДА ДатаНачалаСезонаПродаж ИНАЧЕ ДатаНачалаНеСезонаПродаж КОНЕЦ На выражение СКД "Не ругается" но при формировании отчета выдает "Ошибка в выражении" Я что-то не так делаю или это в принципе невозможно?  | 
|||
| 
    1
    
        AlvlSpb    
     naïve 
    22.05.17 
            ✎
    10:45 
 | 
         
        (0) А строковое значение "СезонПродаж" откуда берется?     
         | 
|||
| 
    2
    
        KuAl    
     22.05.17 
            ✎
    10:45 
 | 
         
        Можно попробовать переименовать параметр Период. Т.к. обычно "Период" - типа стандартный период, а не строка.
 
        точно не забыли амперсанды? ВЫБОР КОГДА &ПЕРИОД = "СезонПродаж" ТОГДА &ДатаНачалаСезонаПродаж ИНАЧЕ &ДатаНачалаНеСезонаПродаж КОНЕЦ  | 
|||
| 
    3
    
        KuAl    
     22.05.17 
            ✎
    10:49 
 | 
         
        как вариант:
 
        сделать именно параметры &ДатаНачалаСезонаПродаж &ДатаНачалаНеСезонаПродаж в выражении параметров прописать функцию из общего модуля, в которой получать данные как надо ну и потом уже НачалоПериода определять как: ВЫБОР КОГДА &ПЕРИОД = "СезонПродаж" ТОГДА &ДатаНачалаСезонаПродаж ИНАЧЕ &ДатаНачалаНеСезонаПродаж КОНЕЦ  | 
|||
| 
    4
    
        Блондинка_    
     22.05.17 
            ✎
    10:50 
 | 
         
        (1) Это значение параметра "Период", я добавила предопределенные значения в список значений этого параметра "СезонПродаж" и "НеСезон". 
 
        (2) Пробовала, уже подумала тоже об этом, но одинаковый результат Не, не забыла, тк ДатаНачалаСезонаПродаж - это не параметр это поле, выбранное в запросе. Вот я думаю, может так нельзя, использовать поля запроса  | 
|||
| 
    5
    
        Buster007    
     22.05.17 
            ✎
    10:50 
 | 
         
        Если я правильно понял, то пытаешься в параметры передать значения, которые являются результатом выполнения СКД?     
         | 
|||
| 
    6
    
        Блондинка_    
     22.05.17 
            ✎
    10:51 
 | 
         
        (5) Ага, так нельзя?(     
         | 
|||
| 
    7
    
        Buster007    
     22.05.17 
            ✎
    10:51 
 | 
         
        (4) что раньше появилось: курица или яйцо?     
         | 
|||
| 
    8
    
        Блондинка_    
     22.05.17 
            ✎
    10:51 
 | 
         
        А как тогда иначе передавать разные варианты значения параметров? Только программно?     
         | 
|||
| 
    9
    
        Buster007    
     22.05.17 
            ✎
    10:52 
 | 
         
        ну в твоем случае это в общем-то не сложно сделать, даже стандартная обработка будет работать по идее. Всего лишь параметры задать     
         | 
|||
| 
    10
    
        Блондинка_    
     22.05.17 
            ✎
    10:57 
 | 
         
        (9) Это да, но я хотела вообще без кода) Сейчас еще кое-что попробую..) нет, придется все-таки программно задавать.     
         | 
|||
| 
    11
    
        dezss    
     22.05.17 
            ✎
    10:58 
 | 
         
        Ну можно эти периоды сезона, несезона запихать во временную таблицу и с ней соединяться.
 
        И использовать стандартные параметры для своих нужно не стоит, результат бывает непредсказуемым.  | 
|||
| 
    12
    
        Блондинка_    
     22.05.17 
            ✎
    11:02 
 | 
         
        Вот это сейчас пытаюсь запихнуть в выражение параметра (ну т.е. поле получаю не в запросе а сразу здесь хотела), но ругается на конструкцию. Не подскажите, что не так?
 
        ВЫБОР КОГДА &ПЕРИОДОТЧЕТА = "СезонПродаж" ТОГДА (ВЫБРАТЬ НастройкиСистемы.Значение ИЗ Справочник.НастройкиСистемы КАК НастройкиСистемы ГДЕ НастройкиСистемы.Ссылка = &НачалоСезонаПродаж) ИНАЧЕ ДатаНачалаНеСезонаПродаж КОНЕЦ  | 
|||
| 
    13
    
        dezss    
     22.05.17 
            ✎
    11:07 
 | 
         
        (12) О_О
 
        сделайте мне развидеть это... пойду глаза закапаю водой, настоенной на книгах по 1с.  | 
|||
| 
    14
    
        KuAl    
     22.05.17 
            ✎
    11:08 
 | 
         
        (12) в функциях языка выражений СКД нельзя использовать конструкцию Выбрать
 
        можно либо сделать все в одном запросе, либо через функцию в общем модуле, в которой уже писать что хочешь  | 
|||
| 
    15
    
        Блондинка_    
     22.05.17 
            ✎
    11:26 
 | 
         
        (14) Точно! Общий модуль! Спасибо, сейчас попробую     
         | 
|||
| 
    16
    
        Блондинка_    
     22.05.17 
            ✎
    13:11 
 | 
         
        Всем спасибо за помощь! Вынесла получение периода в общий модуль, к тому же, он мне потом в документе нужен, так что все красиво получилось!     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |