Имя: Пароль:
1C
1С v8
Помогите найти ошибку в запросе
0 MuxauJI
 
02.03.12
16:26
Процедура Кнопка1Нажатие(Элемент)
   // Поиск
   ДокВыборка= документы.РеализацияТоваровУслуг.Выбрать();
   Пока ДокВыборка.Следующий() Цикл
       Если ДокВыборка.Проведен Тогда
           Для каждого стр из ДокВыборка.Товары Цикл
              а=стр.Номенклатура.Наименование;
           Если а = ЭлементыФормы.Элемент1.Значение Тогда
             Сообщить ("Ура!");
               
//иначе Сообщить ("ж*па!");

           КонецЕсли;
       КонецЦикла;
         КонецЕсли;
   КонецЦикла;
           
   КонецПроцедуры

Не сравнивает переменну А с элементом формый1(справочникСсылка.Номенклатура) если я добавить сообщить то в списке поиска есть искомая номенклатура, но когда он сравнивает он не находит ее. Может я как-то не так сравниваю их?
1 andrewks
 
02.03.12
16:28
а где запрос? кроме ж*пы ничего не вижу
2 Жан Пердежон
 
02.03.12
16:28
ошибка в 3й строке запроса
3 Господин ПЖ
 
02.03.12
16:29
толковый чувак... готовый отстатысяч
4 Alex S D
 
02.03.12
16:29
он уже на отстатыщ..
5 rbcvg
 
02.03.12
16:30
(0) помоги найти запрос
6 n koretsky
 
02.03.12
16:31
(0) согласен! ошибку в этом запросе без сторонней помощи не найти! экстрасенса надо. без него и запрос то не сыскать...
7 MuxauJI
 
02.03.12
16:31
Почему при сравнении не видит похожих?
8 andrewks
 
02.03.12
16:31
(7) потому, что ссылку со строкой сравниваешь, не?
9 MuxauJI
 
02.03.12
16:32
Да косяк в процедура, она при сравнении на видит похожи
10 Alex S D
 
02.03.12
16:33
а зачем ж*пу закоментил?
11 viktor_vv
 
02.03.12
16:33
Так тебе еще и похожие надо, а не просто равенство, тогда точно запрос нужен :).
12 MuxauJI
 
02.03.12
16:33
(8) а как нужно сравнивать в моем случии?
13 Alex S D
 
02.03.12
16:35
а=стр.Номенклатура;
Если а = ЭлементыФормы.Элемент1.Значение Тогда
14 MuxauJI
 
02.03.12
16:35
(10) чтоб видит что хоть как-то работает но он ток ее и выводит вместо Ура
15 andrewks
 
02.03.12
16:36
(12) это у тебя надо спросить, как тебе надо сравнивать

ЗЫ   с русским проблемы?
16 Alex S D
 
02.03.12
16:36
запросы проходил вообще? цель то какая?
17 Ranger_83
 
02.03.12
16:38
Потенциально эта ветка "тысячная" :)
18 Ranger_83
 
02.03.12
16:39
Может заменить Сообщить ("Ура!");
на Сообщить ("Есть такая буква!");
19 MuxauJI
 
02.03.12
16:39
(16) выручил!))) спс. Вообще нужно еще добавить строки Удаления/Замены на Элемент2(текст)
Так можно?
20 Alex S D
 
02.03.12
16:40
(19) Можно
21 Жан Пердежон
 
02.03.12
16:40
давно школота в 1с подалась?
22 salvator
 
02.03.12
16:40
(19) Можно. Разрешаю.
23 Ненавижу 1С
 
гуру
02.03.12
16:41
(19) я не возражаю
24 Alex S D
 
02.03.12
16:41
как видишь, никто не против)
25 andrewks
 
02.03.12
16:41
я против!
26 MuxauJI
 
02.03.12
16:41
(21) Ты такой умный? Я лучше в 1С буду залипать и головой о стену биться чем как некоторые в игры залипать
27 Ненавижу 1С
 
гуру
02.03.12
16:41
производительность конечно прекрасная
28 salvator
 
02.03.12
16:42
Отключить (25)-й микрофон!
29 Ненавижу 1С
 
гуру
02.03.12
16:43
для чего тебе этот код?
30 Beduin
 
02.03.12
16:43
(26) Все таки Путин виноват.
31 rbcvg
 
02.03.12
16:43
(26) "и головой о стену биться" - головы на долго не хватит
32 Aprobator
 
02.03.12
16:50
(0) а нефиг строку со ссылкой сравнивать.
33 hhhh
 
02.03.12
16:55
получается, что если в накладной 100 строк, то этот запрос выдаст один раз ура и 99 раз ж*па.
34 adron
 
02.03.12
16:56
Блин весело тут у вас:)
35 Beduin
 
02.03.12
16:57
(33) В виде (0) он выдаст одну ж*пу
36 Alex S D
 
02.03.12
16:57
поэтому она и закоменчена, все правильно
37 freddy_kind
 
02.03.12
16:58
(26)прально, нефиг в играх делать, там и так оленей слишком много. а по теме купи себе книжку Радченко, почитай что ли, там даже про запросы есть.
38 andrewks
 
02.03.12
16:58
(35) в виде (0) он даже ж*пы не выдаст
39 НЕА123
 
02.03.12
16:58
Запрос = Новый Запрос(
"ВЫБРАТЬ ПЕРВЫЕ 1 1
|ИЗ
|    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
|ГДЕ
|    РеализацияТоваровУслугТовары.Номенклатура = &Номенклатура");

Запрос.УстановитьПараметр("Номенклатура", ЭлементыФормы.Элемент1.Значение);

сообщить(?( Запрос.Выполнить().Пустой(),"ж*па", "УРА");


(0) тип ЭлементыФормы.Элемент1.Значение какой?
40 НЕА123
 
02.03.12
16:59
"ВЫБРАТЬ ПЕРВЫЕ 1 1

|ИЗ
|    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
|ГДЕ
|    РеализацияТоваровУслугТовары.Номенклатура = &Номенклатура И РеализацияТоваровУслугТовары.Проведен");
41 MuxauJI
 
02.03.12
17:00
СправочникСсылка.номенклатура
я ж*пу уберу. Это мне для проверки нужно былы. Хватит уже угарать с этой строки.
Как получить доступ к изменению Табличной части выбранного документа?
42 andrewks
 
02.03.12
17:00
(39) !!11 адын адын
43 hhhh
 
02.03.12
17:01
(41) про метод ПолучитьОбъект() почитай в умных книжках.
44 Alex S D
 
02.03.12
17:02
(41) так ты скажи, что в итоге сделать хочешь?
45 Beduin
 
02.03.12
17:02
(41)
Если ТабличнаяЧасть.ПрошуРазрешиМенять() Тогда
ТабличнаяЧасть.МеняюМеняю();
ТабличнаяЧасть.СпасибоТебе();
КонецЕсли;
46 Ненавижу 1С
 
гуру
02.03.12
17:03
не, ну в прошлый раз он спрашивал как прочитать данные v8: Обращение к реквезиту документа , теперь - записать, растет товарищ, однако!
47 MuxauJI
 
02.03.12
17:03
(44) Найти обьект выбранный в поле1 и заменить его на введеное название в поле 2. если ничего не в вели в поле 2 удалить строку из табличной части.
48 MuxauJI
 
02.03.12
17:04
(46) Ночью книгу юзал которую мне дали тут. Я же не виноват че у мну братец баран удалили мои курсы((
49 НЕА123
 
02.03.12
17:05
"ВЫБРАТЬ ПЕРВЫЕ 1 РеализацияТоваровУслугТовары.Ссылка Как Ссылка

|ИЗ
|    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
|ГДЕ
|    РеализацияТоваровУслугТовары.Номенклатура = &Номенклатура И РеализацияТоваровУслугТовары.Проведен");
Выборка= Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
   Док = Выборка.Ссылка.ПолучитьОбъект();
Иначе
   сообщить("ж*па");
КонецЕсли;
50 Aprobator
 
02.03.12
17:06
(48) книжки юзать по ночам не надо!!! Их читать надо, желательно при хорошем свете.
51 MuxauJI
 
02.03.12
17:10
Всем спасибо!) Особенно (44)))
52 Kashemir
 
02.03.12
17:10
Ну хватит гнать, смеятся больше сил нет :)
53 НЕА123
 
02.03.12
17:12
(52)
ты это, как-то поспокойнее... до сотки еще даже не дошли.
54 Aprobator
 
02.03.12
17:14
(53) +100500 я требую продолжения банкета!
55 Alex S D
 
02.03.12
17:21
я седня добрый..

   Запрос = Новый Запрос ("ВЫБРАТЬ
   |    РеализацияТоваровУслугТовары.Ссылка,
   |    РеализацияТоваровУслугТовары.НомерСтроки
   |ИЗ
   |    Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
   |ГДЕ
   |    РеализацияТоваровУслугТовары.Номенклатура = &Номенклатура");
   
   Запрос.УстановитьПараметр("Номенклатура",ПолеВвода1);
   
   Результат = запрос.Выполнить().Выбрать();
   Пока Результат.Следующий() Цикл
       ДокОб =  Результат.Ссылка.ПолучитьОбъект();
       Если ЗначениеЗаполнено(ПолеВвода2) Тогда
           ДокОб.Товары[Результат.НомерСтроки-1].Номенклатура = ПолеВвода2;
       Иначе
           ДокОб.Товары.Удалить(Результат.НомерСтроки-1);
       КонецЕсли;
       ДокОб.Записать();
   КонецЦикла;
56 Domovoi
 
02.03.12
17:21
(0)Я так и не понял помогли или нет, но если вдруг нет, то напиши вместо
а=стр.Номенклатура.Наименование;
вот это
а=стр.Номенклатура;