| 
    
        
     
     | 
    
  | 
как в запросе передать параметром источник ? | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        DES    
     17.03.15 
            ✎
    13:25 
 | 
         
        ВЫБРАТЬ
 
        Максимум(Номер) КАК Номер ИЗ &ТипДокумента ГДЕ Номер ПОДОБНО (&Префикс) Как ТипДокумента использовать?  | 
|||
| 
    1
    
        palpetrovich    
     17.03.15 
            ✎
    13:27 
 | 
         
        что за таблица такая, "ТипДокумента"?     
         | 
|||
| 
    2
    
        DES    
     17.03.15 
            ✎
    13:28 
 | 
         
        Это параметр     
         | 
|||
| 
    3
    
        Fedor-1971    
     17.03.15 
            ✎
    13:29 
 | 
         
        ВЫБРАТЬ
 
        Максимум(док.Номер) КАК Номер ИЗ &ТипДокумента Как док ГДЕ док.Номер ПОДОБНО (&Префикс) Только обработай ситуацию если реквизита номер нету в исходной таблице  | 
|||
| 
    4
    
        palpetrovich    
     17.03.15 
            ✎
    13:30 
 | 
         
        (2) дык, а что в нем?     
         | 
|||
| 
    5
    
        DES    
     17.03.15 
            ✎
    13:32 
 | 
         
        (3) запускаю в отладчике, там ругается что нужно поместить в таблицу, а ПОМЕСТИТЬ пишу, ругается на синтаксис     
         | 
|||
| 
    6
    
        Любопытная    
     17.03.15 
            ✎
    13:33 
 | 
         
        (5) а что в параметре?     
         | 
|||
| 
    7
    
        Fedor-1971    
     17.03.15 
            ✎
    13:33 
 | 
         
        (5) в консоли запросов попробуй     
         | 
|||
| 
    8
    
        ssh2006    
     17.03.15 
            ✎
    13:34 
 | 
         
        (0) никак. Делается так:
 
        Запрос.Текст = "ВЫБРАТЬ |" + ТекстПолей + " |ИЗ | " + Ссылка.Метаданные().ПолноеИмя() + " КАК ПсевдонимЗаданнойТаблицы |ГДЕ | ПсевдонимЗаданнойТаблицы.Ссылка = &Ссылка |";  | 
|||
| 
    9
    
        Dmitrii    
     гуру 
    17.03.15 
            ✎
    13:35 
 | 
         
        выбрать * из &ТипДокумента поместить в ТипДокумента; выбрать  Максимум(док.Номер) КАК Номер ИЗ ТипДокумента Как док ГДЕ  док.Номер ПОДОБНО (&Префикс)     
         | 
|||
| 
    10
    
        Господин ПЖ    
     17.03.15 
            ✎
    13:35 
 | 
         
        (8) ловите наркомана
 
        (9) +1  | 
|||
| 
    11
    
        DES    
     17.03.15 
            ✎
    13:35 
 | 
         
        вот примеры в инете
 
        Запрос.Текст = "ВЫБРАТЬ | ТаблицаМебели.Наименование, | ТаблицаМебели.Артикул, | ТаблицаМебели.Цена |ПОМЕСТИТЬ ВТ_ТаблицаМебели |ИЗ | &ТаблицаМебели КАК ТаблицаМебели |; /  | 
|||
| 
    12
    
        palpetrovich    
     17.03.15 
            ✎
    13:37 
 | 
         
        (11) ну дык, тут &ТаблицаМебели - это ТЗ     
         | 
|||
| 
    13
    
        Любопытная    
     17.03.15 
            ✎
    13:37 
 | 
         
        (11) ТаблицаМебели - Таблица значений, а не тип документа.     
         | 
|||
| 
    14
    
        Господин ПЖ    
     17.03.15 
            ✎
    13:37 
 | 
         
        (11) и?
 
        сначала таблицу из параметра надо затолкать в ВТ, а потом уже к ВТ обращаться за данными  | 
|||
| 
    15
    
        Любопытная    
     17.03.15 
            ✎
    13:38 
 | 
         
        (14) ТС хочет параметром тип документа передавать, а не таблицу значений. Так что кто тут наркоман еще надо присмотреться...     
         | 
|||
| 
    16
    
        Господин ПЖ    
     17.03.15 
            ✎
    13:39 
 | 
         
        а источник описывать в параметре - это точно наркомания...
 
        охота на соединения посмотреть к таким таблицам  | 
|||
| 
    17
    
        palpetrovich    
     17.03.15 
            ✎
    13:39 
 | 
         
        (15) ну зачем так, может он просто неудачно обзвал параметр :)     
         | 
|||
| 
    18
    
        Любопытная    
     17.03.15 
            ✎
    13:40 
 | 
         
        (17) Ну очень неудачно     
         | 
|||
| 
    19
    
        ssh2006    
     17.03.15 
            ✎
    13:40 
 | 
         
        (15) +1     
         | 
|||
| 
    20
    
        DES    
     17.03.15 
            ✎
    13:41 
 | 
         
        (16) ну предложите функцию которая вычисляет максимальный номер любого документа имеющего префикс в номере.     
         | 
|||
| 
    21
    
        fisher    
     17.03.15 
            ✎
    13:41 
 | 
         
        (0) Не взлетит. Ты по сути хочешь динамическое формирование текста запроса на уровне парсера.     
         | 
|||
| 
    22
    
        fisher    
     17.03.15 
            ✎
    13:42 
 | 
         
        (20) Тебе уже подсказали в (8)     
         | 
|||
| 
    23
    
        DES    
     17.03.15 
            ✎
    13:43 
 | 
         
        (21) не скажи
 
        и еще третий день пользуюсь (ИР) . там можно в консоле запросов отлаживать запросом ПОМЕСТИТЬ в ВТ ?  | 
|||
| 
    24
    
        Господин ПЖ    
     17.03.15 
            ✎
    13:43 
 | 
         
        (20) а причем тут (11)?
 
        собирай тогда текст запроса динамически как в (8)  | 
|||
| 
    25
    
        ssh2006    
     17.03.15 
            ✎
    13:43 
 | 
         
        (20)см (8) , это примерно. Т.е. текст запроса придется формировать. Передаешь в функцию ссылку, "источник" определяется через метаданные Ссылка.Метаданные().ПолноеИмя()     
         | 
|||
| 
    26
    
        DES    
     17.03.15 
            ✎
    13:46 
 | 
         
        (25) да я в курсе про текст.
 
        Я спрашиваю про ПАРАМЕТР  | 
|||
| 
    27
    
        Любопытная    
     17.03.15 
            ✎
    13:46 
 | 
         
        (26) нельзя так сделать     
         | 
|||
| 
    28
    
        Любопытная    
     17.03.15 
            ✎
    13:46 
 | 
         
        Что ты в параметр передашь в таком варианте?     
         | 
|||
| 
    29
    
        DES    
     17.03.15 
            ✎
    13:51 
 | 
         
        (28) могу текст "Документ.ПКО"     
         | 
|||
| 
    30
    
        palpetrovich    
     17.03.15 
            ✎
    13:53 
 | 
         
        (26) если надо выбрать какой-то номер из документов всех видов, то надо как-то так
 
        цикл по метаданным с получением вида текстЗ = "выбрать док.номер из док."+ Вид +" объединить все"; потом последний "объединить все" удалить зы нафейхуа это нужно - непонятно :)  | 
|||
| 
    31
    
        fisher    
     17.03.15 
            ✎
    13:54 
 | 
         
        (29) А можешь и весь текст запроса туда засунуть. Только всё равно работать не будет. В части передачи ТЗ во временную таблицу - это такой специальный синтаксис в виде исключения. Именно для этого и ни для чего больше. Как бы тебе не хотелось другого.     
         | 
|||
| 
    32
    
        DES    
     17.03.15 
            ✎
    13:56 
 | 
         
        (30) Быстро схватываешь!
 
        Я и передаю ПАРАМЕТРОМ тип интересующего документа.  | 
|||
| 
    33
    
        palpetrovich    
     17.03.15 
            ✎
    14:00 
 | 
         
        (32) хе, я итам наврал кстати, там надо просто " объединить"
 
        а если запрос к документу одного вида - то вообще непонятно какие проблемы "ВЫБРАТЬ Максимум(Док.Номер) КАК Номер ИЗ Документ."+ ТвойВид +" как Док ГДЕ Док.Номер ПОДОБНО (&Префикс)"  | 
|||
| 
    34
    
        Любопытная    
     17.03.15 
            ✎
    14:04 
 | 
         
        (32) ты не передашь параметром тип документа. Это будет не параметр, а вставка в текст.     
         | 
|||
| 
    35
    
        palpetrovich    
     17.03.15 
            ✎
    14:06 
 | 
         
        (34) он пытается :)     
         | 
|||
| 
    36
    
        DES    
     17.03.15 
            ✎
    14:10 
 | 
         
        (34) см. (11)     
         | 
|||
| 
    37
    
        fisher    
     17.03.15 
            ✎
    14:11 
 | 
         
        (36) Вот упрямый человек. Это вовсе не источник параметром. Это просто заглушка для парсера, чтобы он не удивлялся временной таблице из ниоткуда и знал, какие у неё есть поля.     
         | 
|||
| 
    38
    
        Nuobu    
     17.03.15 
            ✎
    14:15 
 | 
         
        (36) Чуть позже будет написано СтрЗаменить(ТекстЗапроса, "&ТипДокумента", ЗаказПокупателя);     
         | 
|||
| 
    39
    
        Любопытная    
     17.03.15 
            ✎
    14:17 
 | 
         
        (36) в (11) в параметр &ТаблицаМебели передается ТАБЛИЦА ЗНАЧЕНИЙ, а не тип документа.     
         | 
|||
| 
    40
    
        palpetrovich    
     17.03.15 
            ✎
    14:17 
 | 
         
        (36) ну, ежели хочеться странного, то:
 
        "ВЫБРАТЬ |Док.Номер |ПОМЕСТИТЬ ВТ_Номера |ИЗ Документ.РеализацияТоваровУслуг как Док |; |ВЫБРАТЬ |Максимум(ВТ_Номера.Номер) КАК Номер |ИЗ ВТ_Номера |ГДЕ |ВТ_Номера.Номер ПОДОБНО (&Префикс)" Запрос.УстановитьПараметр("Префикс", "%" + Префикс + "%");  | 
|||
| 
    41
    
        fisher    
     17.03.15 
            ✎
    14:19 
 | 
         
        (39) Ты повторяешься :)     
         | 
|||
| 
    42
    
        Любопытная    
     17.03.15 
            ✎
    14:20 
 | 
         
        (41) Ну что поделать, если первый раз меня не заметили)     
         | 
|||
| 
    43
    
        DES    
     17.03.15 
            ✎
    14:21 
 | 
         
        (39) Ну Вы поняли что источник данных передан в запрос посредством параметра?     
         | 
|||
| 
    44
    
        Любопытная    
     17.03.15 
            ✎
    14:22 
 | 
         
        (43) Поняли. Если &ТипДокумента у тебя - таблица значений - пихай на здоровье, мне не жалко. Только вот с (29) как-то не стыкуется     
         | 
|||
| 
    45
    
        DES    
     17.03.15 
            ✎
    14:23 
 | 
         
        Как узнать длину номера документа ?     
         | 
|||
| 
    46
    
        fisher    
     17.03.15 
            ✎
    14:24 
 | 
         
        Не пост, а брейн-ринг какой-то пополам с "тупой, еще тупее".     
         | 
|||
| 
    47
    
        palpetrovich    
     17.03.15 
            ✎
    14:27 
 | 
         
        (46) иди отсюда, не порть нам "брейн-ринг" :)     
         | 
|||
| 
    48
    
        ssh2006    
     17.03.15 
            ✎
    14:29 
 | 
         
        (45) свойство метаданных ДлинаНомера     
         | 
|||
| 
    49
    
        Timon1405    
     17.03.15 
            ✎
    14:29 
 | 
         
        (45) 
 
        ДлинаНомера = Метаданные.Документы[ИмяМетаданного].ДлинаНомера; Также рекомендую такую проверку Если НЕ Строка(ДокМетаданные.ТипНомера)="Число" Тогда знакомая картина, я так понимаю у вас обычные формы и полетела нумерация по всем документам из-за риба/еще чего-то?  | 
|||
| 
    50
    
        Любопытная    
     17.03.15 
            ✎
    14:30 
 | 
         
        (49) Вы забываете, что он хочет этого в запросе     
         | 
|||
| 
    51
    
        DES    
     17.03.15 
            ✎
    14:36 
 | 
         
        (50) нет, это уже обработка найденного номера     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |