Имя: Пароль:
1C
1С v8
Разные данные запроса в отладке и в консоле.
0 Изучаю1С8
 
26.03.19
22:55
Всем привет.

Подскажите есть запрос

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



в отладке смотрю параметры все заполнены кроме маска номера
при этой в результат запроса пустой

если его же выполнить в консоле то возвращает результат.

куда копать?
1 Said_We
 
26.03.19
23:05
Пустой параметр, это какое значение?
Неопределено, пустая строка, ноль....
2 Изучаю1С8
 
26.03.19
23:08
пустая строка, в отладке выглядет как ""
3 Изучаю1С8
 
26.03.19
23:09
в консоле просто не указываю значение, с типом строка
4 Said_We
 
26.03.19
23:09
В консоле и в отладчике значения разные 100%.Визуально видно что значение пустое, но не видно какое.
5 Изучаю1С8
 
26.03.19
23:11
Ну так да логично, думал может еще какие нюансы есть
6 palsergeich
 
26.03.19
23:26
(5) Это в общем то и есть ньюанс, на котором ты еще не раз споткнешься
7 Franchiser
 
гуру
26.03.19
23:35
Используй ИР
8 Evg-lylyk
 
27.03.19
00:29
9 catena
 
27.03.19
05:05
(2)В отладке так же написан тип значения, которое выглядит как ""
10 Изучаю1С8
 
27.03.19
09:53
не получилось победить проблему, не пойму куда копать

даже сделал расширение с заменой функции, в ней убрал вообще кусок из запроса где параметр маска номера
запрос пустой, просто проскакивает обход

в консоле все показывает и возвращает то число что мне нужно.
11 catena
 
27.03.19
10:05
(10)Показывай скрин таблы перед выполнением запроса с Запрос.Параметры.
12 Изучаю1С8
 
27.03.19
10:15
13 Franchiser
 
гуру
27.03.19
10:21
Может ключ аналитики дубль или организации дубль
14 Изучаю1С8
 
27.03.19
10:25
Организация вообще одна в системе, ключи аналитики проверял, с таким кодом тоже одна.
15 Franchiser
 
гуру
27.03.19
10:29
Запрос.выполнить().выгрузить() что показывает?
Покажи текст ниже , где проверяешь на пустоту запроса
16 Изучаю1С8
 
27.03.19
10:34
Дальше там

    
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаНумераторСчетовАналитическогоУчета = РезультатЗапроса.Выбрать();
    
    // Значение итератора по-умолчанию
    Если ПолучитьФункциональнуюОпцию("БНФОНачинатьНумерациюСчетовАналитическогоУчетаСЕдиницы") Тогда
            Итератор = 1;
        Иначе
            Итератор = 0;

    КонецЕсли;
    
    Если ВыборкаНумераторСчетовАналитическогоУчета.Следующий() Тогда             //вот тут уже проскакивает
        
        Итератор = ВыборкаНумераторСчетовАналитическогоУчета.Итератор + 1;
        
    Иначе


http://joxi.ru/EA4vzNEFopLJLm
17 Franchiser
 
гуру
27.03.19
11:11
Попробуй создать новую обработку, сравни и объедини ее с этой, почистить кеш.
18 Franchiser
 
гуру
27.03.19
11:14
Может расширение глючит, убрать его
19 Изучаю1С8
 
27.03.19
11:30
Это не обработка, запрос размещается в модуле менеджера регистра сведений.
А расширение сделано чтобы внести какие то изменения хотя бы для теста, потому что база полностью типовая.
20 Said_We
 
27.03.19
11:59
База точно одна?
Я всегда стараюсь смотреть данные в толстом клиенте в обычном приложении. Привычка - мне так удобнее и консоль там нормальная.
21 Изучаю1С8
 
27.03.19
15:54
(20) База одна, 100%

Вообщем есть подозрение что дело в транзакции.
22 Said_We
 
27.03.19
17:46
(21) Т.е. состояние базы разное на момент выполнения запроса в модуле и момент выполнения в консоле?
23 Изучаю1С8
 
27.03.19
22:32
(22) ну получается что есть регистр сведений БНФОНумераторСчетовАналитическогоУчета, и в модуле менеджера этого регистра идет обращение к этому же регистру, я не знаю на сколько это в принципе верно.
возможно система меняет данные в транзакции, запрос их видит, а потом транзакция откатывается или что-то такое
пока проблему так и не удалось решить
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс