Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
13 Дек 2017, 00:52
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: как правильно составить условие в запросе  (Прочитано 792 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ppkmlite

  • **
  • Сообщений: 78
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-11-06
  • Сайт: 
  • Профессия: Ученик 1С
Здравствуйте. подскажите,как правильно поставить условие на вывод результата запроса?
У меня печатная форма документа заказ покупателя,на которой должен выводиться либо директор либо генеральный директор. Из справочника контактные лица. Мой запрос не работает,везде выводит генерального директора.Подскажите, пожалуйста
У меня не работает так
Запрос = НОвый Запрос;
Запрос.Текст =
    "ВЫБРАТЬ
  |КонтактныеЛица.Должность,
  |КонтактныеЛица.Ссылка,
  |КонтактныеЛица.Наименование
|ИЗ
|  Справочник.КонтактныеЛица КАК КонтактныеЛица
|ГДЕ
|  КонтактныеЛица.Должность = &Должность";
   Запрос.УстановитьПараметр("Должность","генеральный директор" );

РезультатЗапроса = Запрос.Выполнить();
  ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    пока ВыборкаДетальныеЗаписи.Следующий() цикл
 
  если ВыборкаДетальныеЗаписи.должность = "генеральный директор" тогда   
 
    областьподвал.Параметры.дир =ВыборкаДетальныеЗаписи.Должность;
  иначе
      областьподвал.Параметры.директор = "директор"
  конецЕсли;
  КонецЦикла;


Оффлайн Игорь_M

  • **
  • Сообщений: 69
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-11-19
  • Сайт: 
  • Профессия: Ученик 1С
возможно это и не имеет значения (не судите строго - знаниями по 1с обладаю небольшими), но "должность" не должно быть с большой буквы? Если так то должно по идее выдавать сообщение : поле не найдено

Оффлайн freez1301

  • ***
  • Сообщений: 130
  • РЕПУТАЦИЯ: 8
  • КПД: 6%
  • Регистрация: 2014-04-25
  • Сайт: 
  • Профессия: Ученик 1С
| КонтактныеЛица.Должность В (&Должность)";
   Запрос.УстановитьПараметр("Должность", МассивДолжностей );
где МассивДолжностей должен содержать две строки директор и генеральный директор.
или использовать два параметра и ИЛИ между ними


Оффлайн LexaK

  • *****
  • Сообщений: 1267
  • РЕПУТАЦИЯ: 347
  • КПД: 27%
  • Регистрация: 2012-05-16
  • Сайт: 
  • Профессия: Программист 1С
у вас невнятная постановка условия, соответственно корявый запрос, вот примерный вариант запроса для вас,
в результате по контрагенту можете получить несколько записей(строк) с контактными лицами которые являются директорами и ген.директорами (что с ними делать? на ваше усмотрение)
Запрос = НОвый Запрос;
Запрос.Текст =
    "ВЫБРАТЬ
  |КонтактныеЛица.Должность,
  |КонтактныеЛица.Ссылка,
  |КонтактныеЛица.Наименование
|ИЗ
|  Справочник.КонтактныеЛица КАК КонтактныеЛица
|ГДЕ
|  КонтактныеЛица.ОбъектВладелец = &Контрагент //обязательно условие по Контрагенту
|и  КонтактныеЛица.Должность в (&ДолжностьДиректор,&ДолжностьГенДиректор) //должности можно в массиве передать
|";
    //обязательно в параметрах указать контрагента по которому отбираете контактные лица
    //иначе получите ВСЕХ Контактных директоров и т.д.
   Запрос.УстановитьПараметр("Контрагент",Контрагент  );
   Запрос.УстановитьПараметр("ДолжностьГенДиректор","генеральный директор" );
   Запрос.УстановитьПараметр("ДолжностьДиректор","директор" );

РезультатЗапроса = Запрос.Выполнить();
  ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    пока ВыборкаДетальныеЗаписи.Следующий() цикл

    //бред какой-то 
  если ВыборкаДетальныеЗаписи.должность = "генеральный директор" тогда   
    областьподвал.Параметры.дир =ВыборкаДетальныеЗаписи.Должность;
  иначе
      областьподвал.Параметры.директор = "директор"
  конецЕсли;
    //---
  КонецЦикла;
Помогло? - Нажми СПАСИБО!!!
                       :)


Теги:
 

Получить номер недели в месяце в запросе [номер недели]

Автор MuI_I_IkaРаздел Алгоритмы

Ответов: 0
Просмотров: 4127
Последний ответ 15 Июл 2015, 18:24
от MuI_I_Ika
РС "СостояниеОСОрганизаций" в запросе

Автор ILLUMIРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1114
Последний ответ 07 Янв 2015, 05:33
от ILLUMI
Как исправить при обновлении ИБ: Ошибка в запросе набора данных по причине: {(58, 2)}: Несовместимые типы "ВЫБОР" <<?>>ВЫБОР

Автор dollРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 2113
Последний ответ 01 Янв 2017, 20:27
от Геннадий ОбьГЭС
Как правильно настроить регламентные "Обновление индекса ППД" и "Слияние индекса ППД"

Автор bkmz_1_Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 4335
Последний ответ 13 Окт 2016, 09:14
от MuI_I_Ika
"Поле не найдено" в запросе, но оно есть.

Автор ferrari314Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 2664
Последний ответ 27 Окт 2015, 10:29
от vitasw

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
170 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
38 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
33 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 222
  • Точка Скрытых: 0
  • Точка Пользователей: 2
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal