Имя: Пароль:
1C
 
При вводе на основание не отрабатывает запрос. Почему?
,
0 AlexBor
 
naïve
24.08.15
10:08
8.2 База самописная  Документ обращение на его основание вводиться документ Предписание

Вот сама процедура:

Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
    //{{__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ
    // Данный фрагмент построен конструктором.
    // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
    Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.Акт") Тогда
        // Заполнение шапки
        Адрес = ДанныеЗаполнения.Адрес;
        АР1 = ДанныеЗаполнения.АР1;
        АР2 = ДанныеЗаполнения.АР2;
        Должностное_лицо = ДанныеЗаполнения.ДолжнЛицо;
        Основание_обращение = ДанныеЗаполнения.ОснованиеОбращение;
        Акт_проверки = ДанныеЗаполнения.Ссылка;
        Субъект_ю = ДанныеЗаполнения.Субъект;
        Субъект_ф = ДанныеЗаполнения.Физ_Лицо;
        Для Каждого ТекСтрокаТаблицаНарушений Из ДанныеЗаполнения.ТаблицаНарушений Цикл
            НоваяСтрока = ТаблицаНарушений.Добавить();
            НоваяСтрока.Количество = ТекСтрокаТаблицаНарушений.Количество;
            НоваяСтрока.Нарушение = ТекСтрокаТаблицаНарушений.Нарушение;
        КонецЦикла;
    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.Обращение") Тогда
        // Заполнение шапки
        АР1 = ДанныеЗаполнения.АР1;
        АР2 = ДанныеЗаполнения.АР2;
        Должностное_лицо = ДанныеЗаполнения.Исполнитель;
        Основание_обращение = ДанныеЗаполнения.Ссылка;
        //Субъект_ю = ДанныеЗаполнения.Управляющая_компания;
        
        Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ Первые 1
        |    УправляющиеКомпании.Период КАК Период,
        |    УправляющиеКомпании.УК КАК УК,
        |    УправляющиеКомпании.Адрес
        |ИЗ
        |    РегистрСведений.УправляющиеКомпании.СрезПоследних(, Адрес = &Адрес) КАК УправляющиеКомпании
        |ГДЕ
        |    УправляющиеКомпании.Адрес = &Адрес
        |
        |СГРУППИРОВАТЬ ПО
        |    УправляющиеКомпании.Адрес,
        |    УправляющиеКомпании.Период,
        |    УправляющиеКомпании.УК
        |
        |УПОРЯДОЧИТЬ ПО
        |    Период УБЫВ,
        |    УК УБЫВ";

    
            
    Запрос.УстановитьПараметр("Адрес", ДанныеЗаполнения.Ссылка.Управляющая_компания);
    Результат = Запрос.Выполнить().Выбрать();

    Пока Результат.Следующий() Цикл
    Субъект_ю = ДанныеЗаполнения.Результат.УК;
        
    
    КонецЦикла

        
    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.Проверки_плановые") Тогда
        // Заполнение шапки
    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.Проверки_тематические") Тогда
        // Заполнение шапки
    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ТСЖ") Тогда
        // Заполнение шапки
    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.СтандартыРасскрытияИнформации") Тогда
        // Заполнение шапки
    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.Капремонт") Тогда
        // Заполнение шапки
        Должностное_лицо = ДанныеЗаполнения.Исполнитель;
        Основание_обращение = ДанныеЗаполнения.Ссылка;
    КонецЕсли;
    //}}__КОНСТРУКТОР_ВВОД_НА_ОСНОВАНИИ
КонецПроцедуры


А вот интересущий запрос в ней:
Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ Первые 1
        |    УправляющиеКомпании.Период КАК Период,
        |    УправляющиеКомпании.УК КАК УК,
        |    УправляющиеКомпании.Адрес
        |ИЗ
        |    РегистрСведений.УправляющиеКомпании.СрезПоследних(, Адрес = &Адрес) КАК УправляющиеКомпании
        |ГДЕ
        |    УправляющиеКомпании.Адрес = &Адрес
        |
        |СГРУППИРОВАТЬ ПО
        |    УправляющиеКомпании.Адрес,
        |    УправляющиеКомпании.Период,
        |    УправляющиеКомпании.УК
        |
        |УПОРЯДОЧИТЬ ПО
        |    Период УБЫВ,
        |    УК УБЫВ";

    
            
    Запрос.УстановитьПараметр("Адрес", ДанныеЗаполнения.Ссылка.Управляющая_компания);
    Результат = Запрос.Выполнить().Выбрать();

    Пока Результат.Следующий() Цикл
    Субъект_ю = ДанныеЗаполнения.Результат.УК;
        
    
    КонецЦикла
1 Господин ПЖ
 
24.08.15
10:09
>Почему?

руки с ж.пы - ничего нового
2 Metman
 
24.08.15
10:11
|    РегистрСведений.УправляющиеКомпании.СрезПоследних(, Адрес = &Адрес) КАК УправляющиеКомпании
        |ГДЕ
        |    УправляющиеКомпании.Адрес = &Адрес

Нахрена?
3 AlexBor
 
naïve
24.08.15
10:18
(2) Не совсем понял?
4 AlexBor
 
naïve
24.08.15
10:20
(1) А по существу?
5 Mankubus
 
24.08.15
10:24
|ИЗ
        |    РегистрСведений.УправляющиеКомпании.СрезПоследних(, УК = &УК ) КАК УправляющиеКомпании
  
            
    Запрос.УстановитьПараметр("УК ", ДанныеЗаполнения.Ссылка.Управляющая_компания);

может так?
6 Апош
 
24.08.15
10:26
если не отрабатывает запрос, значит, исполнение до него не добралось. внезапно
7 AlexBor
 
naïve
24.08.15
10:27
(6) Я уже думал на эту тему
8 Апош
 
24.08.15
10:29
(7) и решил вместо отладчика запустить мисту?
9 chelentano
 
24.08.15
10:29
(7) Что значит "не отрабатывает"? О существовании отладки, конечно же, не в курсе?
10 Metman
 
24.08.15
10:30
(3) Одно и то же условие накладываешь
(7) Отладчик в запрос заходит?
11 AlexBor
 
naïve
24.08.15
10:31
(10) Нет
12 chelentano
 
24.08.15
10:31
(11) Значит, ТипЗнч(ДанныеЗаполнения) <> Тип("ДокументСсылка.Обращение")
13 Metman
 
24.08.15
10:32
В отладчике ТипЗнч(ДанныеЗаполнения) что показывает?
14 chelentano
 
24.08.15
10:32
+(12) Это же очевидно, по моему
15 Апош
 
24.08.15
10:32
(11) условий нет в коде никаких?
16 AlexBor
 
naïve
24.08.15
10:34
(11) Нет
17 Wirtuozzz
 
24.08.15
10:35
Жесть. Смотри условие, по которому идет ветка, содержащая запрос, если запрос отрабатывает, но ничего не выводит, то смотри параметры запроса.
18 Metman
 
24.08.15
10:36
А в Процедура ОбработкаЗаполнения вообще заходит?
19 AlexBor
 
naïve
24.08.15
10:37
Вообще
20 Metman
 
24.08.15
10:37
(17) да у него (12). На (13) он ответа не дал.
21 AlexBor
 
naïve
24.08.15
10:38
(13) Вообще не попадает
22 Апош
 
24.08.15
10:39
как всё запущено
23 Metman
 
24.08.15
10:39
(21) Занятно. ТОгда (19) Вообще - что? Вообще заходит? Вообще не заходит?
24 chelentano
 
24.08.15
10:39
Это ппц... ТС даже внятно ответить на вопросы не может
25 chelentano
 
24.08.15
10:40
То у него запрос не отрабатывает, то в процедуру не заходит даже...
26 Апош
 
24.08.15
10:42
а кто придумал адрес сделать измерением:?
27 AlexBor
 
naïve
24.08.15
10:43
(26)  Я в курсе про это до меня так было переделывать счас смысла не вижу
28 Апош
 
24.08.15
10:45
(27) правильно совсем конфигурацию поломаешь
29 chelentano
 
24.08.15
10:46
(27) Да ты и не сможешь корректно переделать
30 Metman
 
24.08.15
10:49
А зачем в цикле обходить результат, если у тебя выбирается первая запись?
31 chelentano
 
24.08.15
10:50
(30) Вопросов, зачем в запросе группировка и упорядочивание, у тебя нет? :)
32 Metman
 
24.08.15
10:51
(31) Мальчики, не все сразу! (с)анекдот
33 Апош
 
24.08.15
10:53
а двойной контроль адреса вызывает уважение
34 Господин ПЖ
 
24.08.15
10:54
не уверен - лучше переспросить базу
35 AlexBor
 
naïve
24.08.15
14:57
Вот так правильно

Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ Первые 1
        |    УправляющиеКомпании.Период КАК Период,
        |    УправляющиеКомпании.УК КАК УК,
        |    УправляющиеКомпании.Адрес
        |ИЗ
        |    РегистрСведений.УправляющиеКомпании.СрезПоследних(, Адрес = &Адрес) КАК УправляющиеКомпании
        |ГДЕ
        |    УправляющиеКомпании.Адрес = &Адрес  и РАЗНОСТЬДАТ(УправляющиеКомпании.Период , &ТекущаяДата, ДЕНЬ) < 0
        |
        |СГРУППИРОВАТЬ ПО
        |    УправляющиеКомпании.Адрес,
        |    УправляющиеКомпании.Период,
        |    УправляющиеКомпании.УК
        |
        |УПОРЯДОЧИТЬ ПО
        |    Период УБЫВ,
        |    УК УБЫВ";

    
        
    Запрос.УстановитьПараметр("Адрес", ДанныеЗаполнения.Ссылка.Адрес);
    Запрос.УстановитьПараметр("ТекущаяДата", ЭтотОбъект.Дата);
    Результат = Запрос.Выполнить().Выбрать();
  
//    
    Пока Результат.Следующий() Цикл
    Субъект_ю = Результат.УК;
        
    
    КонецЦикла
36 Апош
 
24.08.15
15:49
вот как выглядит правильный срез последних на дату
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший