|
Не выводит результат запроса | ☑ | ||
---|---|---|---|---|
0
poet
29.08.12
✎
16:47
|
Не пойму почему не работает - пробовал через Консоль отчетов - работает и дает нужный результат, правда условие отбора выставлял в поле отбора. А такой же запрос из Формы не выдает желаемый результат.
А в табло запросов выдает следующее "Выборка.Следующий {(1)}: Поле объекта не виявлено (Следующий) " Процедура ПолеСканированиеШтрихкодаПриИзменении(Элемент) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ФизическиеЛица.Штрихкод, | ФизическиеЛица.ПометкаУдаления, | ФизическиеЛица.Наименование |ИЗ | Справочник.ФизическиеЛица КАК ФизическиеЛица |ГДЕ | ФизическиеЛица.Штрихкод = &Штрихкод"; Запрос.УстановитьПараметр("Штрихкод", Строка(ПолеСканированиеШтрихкода)); Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл ЭлементыФормы.ФИОСотрудника.Значение = Выборка.Наименование; Сообщить(Выборка.Наименование); КонецЦикла; ЭлементыФормы.ФИОСотрудника.Значение = ""; КонецПроцедуры |
|||
1
salvator
29.08.12
✎
16:52
|
СокрЛП(Строка(ПолеСканированиеШтрихкода)) попробуй
|
|||
2
andrewks
29.08.12
✎
16:56
|
ТипЗнч(Выборка) = ?
|
|||
3
poet
29.08.12
✎
16:57
|
не помогло в моем и в предложенном случае
ПолеСканированиеШтрихкода "2927559000399" Строка ошибка та же |
|||
4
poet
29.08.12
✎
16:58
|
(2) в табло пусто - не заполненно
|
|||
5
andrewks
29.08.12
✎
16:58
|
у тебя реквизита формы Выборка нет, часом?
|
|||
6
poet
29.08.12
✎
17:01
|
(5) нет
|
|||
7
salvator
29.08.12
✎
17:02
|
ФизическиеЛица.Штрихкод - строковой тип вообще?
|
|||
8
andrewks
29.08.12
✎
17:03
|
на (2) ответ будет?
Выборка = Запрос.Выполнить().Выбрать(); Сообщить("ТипЗнч = "+ТипЗнч(Выборка) ); Пока Выборка.Следующий() Цикл |
|||
9
poet
29.08.12
✎
17:03
|
да - и имеет ту же длинну что и строка ввода на форме
только что поменял и там и там на число - результат тот же |
|||
10
Wobland
29.08.12
✎
17:03
|
(0) в табло запросов скобки вставь
|
|||
11
Wobland
29.08.12
✎
17:03
|
(9) с одной н
|
|||
12
andrewks
29.08.12
✎
17:05
|
при чём здесь строка, когда "Поле объекта не виявлено (Следующий) " ?
|
|||
13
poet
29.08.12
✎
17:06
|
(8) ТипЗнч = Выборка с результата запроса
|
|||
14
andrewks
29.08.12
✎
17:06
|
почисть кэш
|
|||
15
salvator
29.08.12
✎
17:06
|
Запрос.УстановитьПараметр("Штрихкод", Строка(Элемент.Значение));
|
|||
16
Wobland
29.08.12
✎
17:06
|
(14) не взлетит
|
|||
17
andrewks
29.08.12
✎
17:07
|
млять, только щас перечитал сабж, и обратил внимание на
А в табло запросов выдает следующее "Выборка.Следующий (10) +1 |
|||
18
poet
29.08.12
✎
17:09
|
(17) ???
|
|||
19
Wobland
29.08.12
✎
17:09
|
кстати, что это - табло запросов?
|
|||
20
Wobland
29.08.12
✎
17:10
|
(18) читай (10) до просветления
|
|||
21
andrewks
29.08.12
✎
17:10
|
+(7) каков тип и разорядность ФизическиеЛица.Штрихкод?
|
|||
22
poet
29.08.12
✎
17:12
|
(21)тип строка, длинна 13 символов
(20)а если я на темной стороне силы? вопчем смотрю в книгу... |
|||
23
Wobland
29.08.12
✎
17:14
|
(22) цвет стороны твоей неважен, поле в метод преврати
|
|||
24
Reset
29.08.12
✎
17:15
|
Если табло запросов - это просто табло, то если он вставит скобки, лучше станет, но ненамного.
Т.к. это не просто функция, возвращающая статус, она еще и курсор по выборке двигает. Хотя я не пробовал, что получится (в голову не приходило) |
|||
25
poet
29.08.12
✎
17:18
|
ага пр преминении значения в табло надо было скобки поставить - вышло
Выборка.Следующий() Ложь Булево |
|||
26
poet
29.08.12
✎
17:18
|
хм - я знаю что это значение есть - мне ж оно и надо... непонимать
|
|||
27
Reset
29.08.12
✎
17:19
|
А выборка.Количество() сколько?
|
|||
28
Wobland
29.08.12
✎
17:19
|
(26) которое из многих?
|
|||
29
poet
29.08.12
✎
17:19
|
(27) 1 позиция - уникальна
|
|||
30
Reset
29.08.12
✎
17:20
|
(29) Я тя спрашиваю, что говорит твоя замечательная табла запросов, если в ней посчитать (27)
|
|||
31
Wobland
29.08.12
✎
17:20
|
(29) случай общий рассматривай всегда, увидишь больше
|
|||
32
Wobland
29.08.12
✎
17:21
|
попробую ещё совет. примени себе ты (0)
|
|||
33
poet
29.08.12
✎
17:33
|
(31), (32) а можно немножко разжевать, я вас не понимаю мастер
|
|||
34
Reset
29.08.12
✎
17:37
|
+ к (7) и (21) может вообще ссылка. А в консоли он вбил через ввод по строке
|
|||
35
Wobland
29.08.12
✎
17:44
|
(33)Процедура ПолеСканированиеШтрихкодаПриИзменении(Элемент)
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ФизическиеЛица.Штрихкод, | ФизическиеЛица.ПометкаУдаления, | ФизическиеЛица.Наименование |ИЗ | Справочник.ФизическиеЛица КАК ФизическиеЛица |ГДЕ | ФизическиеЛица.Штрихкод = &Штрихкод"; Запрос.УстановитьПараметр("Штрихкод", Элемент.Значение); //? Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл Сообщить(Выборка.Наименование); КонецЦикла; КонецПроцедуры |
|||
36
Wobland
29.08.12
✎
17:45
|
я бы даже сказал
"ВЫБРАТЬ | ФизическиеЛица.Наименование |ИЗ | Справочник.ФизическиеЛица КАК ФизическиеЛица |ГДЕ | ФизическиеЛица.Штрихкод = &Штрихкод"; |
|||
37
poet
29.08.12
✎
17:52
|
(36) Выборка.Следующий() Ложь Булево
те же яйца - оно находит значение и говорит: да оно есть и на этом сбрасывает цыкл, причем не выполняя даже условия после КонцаЦыкла |
|||
38
Wobland
29.08.12
✎
17:53
|
(37) это мова такая - цыкл? что то хочешь от выборки? что ты к ней пристал?
|
|||
39
poet
29.08.12
✎
17:55
|
было б к чему придратся
|
|||
40
poet
29.08.12
✎
17:56
|
перекидывал 1 в 1 с (35) и подправлял как по (36)
|
|||
41
Wobland
29.08.12
✎
17:56
|
(39) глаз режет. читать так: что ты хочешь от выборки?
|
|||
42
poet
29.08.12
✎
17:58
|
хочу получить то единственное значение Наименование (к примеру: Пупкин Вась Вась), которое есть в справочнике ФизЛица в одном уникальном значении сопостовимо искомому штрихкоду
|
|||
43
Wobland
29.08.12
✎
18:00
|
(42) уверен в уникальности? (35) делал? что сообщалось?
|
|||
44
Wobland
29.08.12
✎
18:00
|
+(43) и не нужно тут говорить, что ты видел свои данные, и такой штрих там один
|
|||
45
poet
29.08.12
✎
18:05
|
папой клянусь блин
|
|||
46
Reset
29.08.12
✎
18:05
|
(45) Сообщалось "папой клянусь"?
|
|||
47
Wobland
29.08.12
✎
18:08
|
(45) а в общем случае?
|
|||
48
hhhh
29.08.12
✎
18:14
|
(45) встречный вопрос тебе: почему поиск слова Следующий на этой страничке не находит твоего слова? Ты его на украинской клавиатуре набирал, что ли?
|
|||
49
RomikYar
29.08.12
✎
18:26
|
Эту процедуру ты запускаеш на серевере или на клиенте
|
|||
50
RomikYar
29.08.12
✎
18:27
|
Или у тебя это кнопка?
|
|||
51
RomikYar
29.08.12
✎
18:31
|
&НаКлиенте
Процедура ПолеСканированиеШтрихкодаПриИзменении(Элемент) ТекНаим = ПолучитьФИзЛицо(); КонецПроцедуры &НаСервере Функция ПолучитьФИзЛицо() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ФизическиеЛица.Штрихкод, | ФизическиеЛица.ПометкаУдаления, | ФизическиеЛица.Наименование |ИЗ | Справочник.ФизическиеЛица КАК ФизическиеЛица |ГДЕ | ФизическиеЛица.Штрихкод = &Штрихкод"; Запрос.УстановитьПараметр("Штрихкод", Элемент.Значение); //? Выборка = Запрос.Выполнить().Выбрать(); Выборка.Следующий(); Если Выборка.Количество()>0 Тогда Возврат Выборка.Наименование; Иначе Возврат Неопределенно; КонецЕсли; КонецФункции |
|||
52
RomikYar
29.08.12
✎
18:32
|
Попробуй так вот!
код выше |
|||
53
Wobland
29.08.12
✎
18:36
|
(52) какое из восьмидесяти наименований вернётся?
|
|||
54
RomikYar
29.08.12
✎
18:46
|
Функция ПолучитьФИзЛицо()
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ФизическиеЛица.Штрихкод, | ФизическиеЛица.ПометкаУдаления, | ФизическиеЛица.Наименование |ИЗ | Справочник.ФизическиеЛица КАК ФизическиеЛица |ГДЕ | ФизическиеЛица.Штрихкод = &Штрихкод"; Запрос.УстановитьПараметр("Штрихкод", ЭтаФорма.Значение); //? Выборка = Запрос.Выполнить().Выбрать(); Выборка.Следующий(); Если Выборка.Количество()>0 Тогда Возврат Выборка.Наименование; Иначе Возврат Неопределено; КонецЕсли; КонецФункции Процедура КнопкаВыполнитьНажатие(Кнопка) ТекНаим = ПолучитьФИзЛицо(); Сообщить(ТекНаим); // Вставить содержимое обработчика. КонецПроцедуры Вот это у меня сработало |
|||
55
RomikYar
29.08.12
✎
18:47
|
Вернется то чего найдет
|
|||
56
RomikYar
29.08.12
✎
18:47
|
по штрихкоду
|
|||
57
RomikYar
29.08.12
✎
18:50
|
А вообще нужно смотреть откуда идет вызов этой процедуры
|
|||
58
Wobland
29.08.12
✎
18:53
|
(55) это понятно. какое из?
|
|||
59
RomikYar
29.08.12
✎
18:59
|
Первое, второе в обработке делал
|
|||
60
Wobland
29.08.12
✎
19:03
|
(59) не доходит?
пример: Наименование ШК Сидоров 20 Козлов 20 вернётся любой. тебе это нужно? |
|||
61
Reset
29.08.12
✎
19:09
|
||||
62
catena
29.08.12
✎
20:04
|
(37)
"Выборка.Следующий() Ложь Булево те же яйца - оно находит значение и говорит: да оно есть и на этом сбрасывает цыкл, причем не выполняя даже условия после КонцаЦыкла" Ты в табло смотришь Выборка.Следующий()? А ниче, что это сдвигает выборку вместе с кодом, что при одной полученной записи как раз и не дает войти в цикл? |
|||
63
Reset
29.08.12
✎
23:16
|
(62) Я пытался отговорить :) (24) Но ему похоже все равно, плывет на своей волне
|
|||
64
RomikYar
30.08.12
✎
10:23
|
(59) не доходит?
пример: Наименование ШК Сидоров 20 Козлов 20 вернётся любой. тебе это нужно? Если включить в цикл то вернет последнего!!!! |
|||
65
RomikYar
30.08.12
✎
10:23
|
Я совсем запутался. RomikYar - клон poet'a?
Сам ты клон! |
|||
66
andrewks
30.08.12
✎
10:24
|
(65) а чего тогда сам с собой разговариваешь?
|
|||
67
RomikYar
30.08.12
✎
10:24
|
Предложи другое!
|
|||
68
andrewks
30.08.12
✎
10:25
|
ну, для разнообразия, можно попробовать пообщаться с другими участниками форума
|
|||
69
Wobland
30.08.12
✎
17:04
|
(64) да хоть завключайся. порядок записей в результате запросе хаотичен
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |