Имя: Пароль:
1C
1C 7.7
v7: Не работает запрос
0 Aleksei_Pro
 
02.07.12
14:40
Перем запрос, ТекстЗапроса;    
Запрос = СоздатьОбъект("Запрос");
   ТекстЗапроса ="
   |ОбрабатыватьДокументы Все;
   |Докум = Документ.РасходнаяНакладная.ТекущийДокумент;
   |Номер8  =Документ.РасходнаяНакладная.Номер8;
   |Условие (Номер8 = НомерПоиска);
   |Группировка Докум;";
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
Возврат;
   Иначе
       Пока Запрос.Группировка("Докум") = 1 Цикл
Сообщить("Найден!");
КонецЦикла;
1 1Сергей
 
02.07.12
14:41
тип Номер8?
2 povar
 
02.07.12
14:41
(0) в чем проблемы ?
3 Aleksei_Pro
 
02.07.12
14:43
Проблема в том, что Запрос.Выполнить(ТекстЗапроса) = 1, а группировка не срабатывает
4 Aleksei_Pro
 
02.07.12
14:44
(1) номер8 и НомерПоиска - строка
5 povar
 
02.07.12
14:44
(3) так выборка пустая вот и не срабатывает, смотри на свое условие
6 viktor_vv
 
02.07.12
14:44
Наверное надо

Условие (СокрЛП(Номер8) = НомерПоиска);

А лучше тогда НомерПоиска привести к формату Документ.РасходнаяНакладная.Номер8 .
7 viktor_vv
 
02.07.12
14:44
(4) Длины совпадают ?
8 miki
 
02.07.12
14:45
и период бы задать...
9 viktor_vv
 
02.07.12
14:45
(6)* Условие (СокрЛП(Номер8) = СокрЛП(НомерПоиска));

Но лучше привести к одному формату.
10 1Сергей
 
02.07.12
14:46
(4) длина?
11 Aleksei_Pro
 
02.07.12
14:49
(9) "Номер8" в базе 7.7 стоит 20 символов, а Номер8 - это берется из файла
12 Aleksei_Pro
 
02.07.12
14:50
(11) сокрЛП не помогает
13 пипец
 
02.07.12
14:50
еще функцию бы
14 miki
 
02.07.12
14:50
(11)у тебя все доки только за сегодня?
15 1Сергей
 
02.07.12
14:51
(13) нафиг не впёрлась.

НомерПоиска8 = Формат(НомерПоиска, "С20");

...
Условие (СокрЛП(Номер8) = НомерПоиска8);
...
16 miki
 
02.07.12
14:51
(13)у него же не к регистру
17 1Сергей
 
02.07.12
14:51
(15)*

Условие (Номер8 = НомерПоиска8);
18 viktor_vv
 
02.07.12
14:52
(15) Тогда уж без СокрЛП().
19 viktor_vv
 
02.07.12
14:53
(12) А сокрЛП() как в (9) ? Тогда нету у тебя таких доков.
20 Aleksei_Pro
 
02.07.12
15:00
Не понимаю, документов в базе нет, где условие совпадает, а результат запроса = 1
21 1Сергей
 
02.07.12
15:02
(20) а что он должен вернуть? Запрос выполнился? Выполнился. Доков нет? Твои проблемы
22 Aleksei_Pro
 
02.07.12
15:17
(21) очень странно, выгружаю в ТЗ запрос, и в ней одна пустая строка, откуда она там берется ?
23 povar
 
02.07.12
15:18
(22) оооочень странно, даже страшновато...
24 Aleksei_Pro
 
02.07.12
15:20
а почему так?
25 povar
 
02.07.12
15:22
(24) телепатирую, это строка с пустыми итогами
26 Aleksei_Pro
 
02.07.12
15:22
Вот весь запрос
   // поиск документа в базе
   НомерПоиска =  СокрЛП(Формат(Строка_,"С20"));
   Запрос = СоздатьОбъект("Запрос");
   ТекстЗапроса ="
   |ОбрабатыватьДокументы Все;
   |Докум = Документ.РасходнаяНакладная.ТекущийДокумент;
   |Номер8  =Документ.РасходнаяНакладная.Номер8;
   |Условие (Номер8 = НомерПоиска);
   |Группировка Докум;";
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
   КонецЕсли;
27 1Сергей
 
02.07.12
15:27
(26) ну и нафига ты опять СокрЛП воткнул? добавить пробелы, чтобы опять их убрать?
28 Mikeware
 
02.07.12
15:28
(27) ну причина как бы понятна...
29 Aleksei_Pro
 
02.07.12
15:30
(27) спасибо
30 aka AMIGO
 
02.07.12
15:32
Условие (Найти(Номер8, НомерПоиска)>0);
31 ALoHA
 
02.07.12
17:03
А где функция?
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn