Имя: Пароль:
1C
1С v8
Народ, подскажите по языку запроса
,
0 Маленький Вопросик
 
04.04.14
08:50
народ, подскажите простейший запрос с использованием оператора (Если ... иначе .... конецЕсли)

спасибо
1 Wobland
 
04.04.14
08:51
выбор когда
2 jsmith82
 
04.04.14
08:55
выбрать выбор когда истина тогда истина иначе ложь конец как поле
3 Маленький Вопросик
 
04.04.14
08:58
примерчик))) ссылочку
4 butterbean
 
04.04.14
08:59
(3) F1 в конфигураторе
5 Обработка
 
04.04.14
09:01
ВЫБРАТЬ
                    |    НачисленияРаботникамОбороты.Работник КАК Работник,
                    |    НачисленияРаботникамОбороты.Организация КАК Организация,
                    |    НачисленияРаботникамОбороты.ТранспортноеСредство КАК ГосНомерТС,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.ТарифЗаЧас)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ПерваяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.ЧасыОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК чРаботаД,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.ТарифЗаЧас)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ВтораяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.ЧасыОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК чРаботаН,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.Ремонт)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ПерваяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.ЧасыОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК чРемонтД,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.Ремонт)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ВтораяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.ЧасыОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК чРемонтН,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.простой)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ПерваяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.ЧасыОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК чПростойД,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.Простой)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ВтораяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.ЧасыОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК чПростойН,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.ТарифЗаЧас)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ПерваяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.РезультатОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК зРаботаД,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.ТарифЗаЧас)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ВтораяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.РезультатОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК зРаботаН,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.Ремонт)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ПерваяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.РезультатОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК зРемонтД,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.Ремонт)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ВтораяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.РезультатОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК зРемонтН,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.простой)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ПерваяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.РезультатОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК зПростойД,
                    |    ВЫБОР
                    |        КОГДА НачисленияРаботникамОбороты.ВидРасчета = ЗНАЧЕНИЕ(ПланВидовРасчета.Начисления.Простой)
                    |                И НачисленияРаботникамОбороты.Смена = ЗНАЧЕНИЕ(Перечисление.СменыРаботыТС.ВтораяСмена)
                    |            ТОГДА НачисленияРаботникамОбороты.РезультатОборот
                    |        ИНАЧЕ 0
                    |    КОНЕЦ КАК зПростойН
                    |ПОМЕСТИТЬ ВТ
                    |ИЗ
                    |    РегистрНакопления.НачисленияРаботникам.Обороты(
                    |            &ДатаНач,
                    |            &ДатаКон,
                    |            ,
                    |            Работник В
                    |                    (ВЫБРАТЬ
                    |                        РаботникиОрганизацийСрезПоследних.Физлицо
                    |                    ИЗ
                    |                        РегистрСведений.РаботникиОрганизаций.СрезПоследних(&ДатаКон, ВЫБОР
                    |                            КОГДА &Подразделение = ЗНАЧЕНИЕ(Справочник.ПодразделенияОрганизаций.ПустаяСсылка)
                    |                                ТОГДА ИСТИНА
                    |                            ИНАЧЕ ПодразделениеОрганизации = &Подразделение
                    |                        КОНЕЦ) КАК РаботникиОрганизацийСрезПоследних)
                    |                И ВЫБОР
                    |                    КОГДА &Организация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
                    |                        ТОГДА ИСТИНА
                    |                    ИНАЧЕ Организация = &Организация
                    |                КОНЕЦ
                    |                И Работник.НеВключатьВОтчет = ЛОЖЬ) КАК НачисленияРаботникамОбороты
                    |
                    |ИНДЕКСИРОВАТЬ ПО
                    |    Работник
                    |;
                    |
                    |////////////////////////////////////////////////////////////////////////////////
                    |ВЫБРАТЬ
                    |    ВТ.Работник КАК Работник,
                    |    ВТ.Организация КАК Организация,
                    |    ВТ.ГосНомерТС КАК ГосНомерТС,
                    |    ВТ.чРаботаД КАК чРаботаД,
                    |    ВТ.чРаботаН КАК чРаботаН,
                    |    ВТ.чРемонтД КАК чРемонтД,
                    |    ВТ.чРемонтН КАК чРемонтН,
                    |    ВТ.чПростойД КАК чПростойД,
                    |    ВТ.чПростойН КАК чПростойН,
                    |    ВТ.зРаботаД КАК зРаботаД,
                    |    ВТ.зРаботаН КАК зРаботаН,
                    |    ВТ.зРемонтД КАК зРемонтД,
                    |    ВТ.зРемонтН КАК зРемонтН,
                    |    ВТ.зПростойД КАК зПростойД,
                    |    ВТ.зПростойН КАК зПростойН,
                    |    ВЫБОР
                    |        КОГДА ВТ.чРаботаД > 0
                    |            ТОГДА ВТ.зРаботаД / ВТ.чРаботаД
                    |        ИНАЧЕ ВТ.зРаботаД
                    |    КОНЕЦ КАК тРаботаД,
                    |    ВЫБОР
                    |        КОГДА ВТ.чРаботаН > 0
                    |            ТОГДА ВТ.зРаботаН / ВТ.чРаботаН
                    |        ИНАЧЕ ВТ.зРаботаН
                    |    КОНЕЦ КАК тРаботаН,
                    |    ВЫБОР
                    |        КОГДА ВТ.чРемонтД > 0
                    |            ТОГДА ВТ.зРемонтД / ВТ.чРемонтД
                    |        ИНАЧЕ ВТ.зРемонтД
                    |    КОНЕЦ КАК тРемонтД,
                    |    ВЫБОР
                    |        КОГДА ВТ.чРемонтН > 0
                    |            ТОГДА ВТ.зРемонтН / ВТ.чРемонтН
                    |        ИНАЧЕ ВТ.зРемонтН
                    |    КОНЕЦ КАК тРемонтН,
                    |    ВЫБОР
                    |        КОГДА ВТ.чПростойД > 0
                    |            ТОГДА ВТ.зПростойД / ВТ.чПростойД
                    |        ИНАЧЕ ВТ.зПростойД
                    |    КОНЕЦ КАК тПростойД,
                    |    ВЫБОР
                    |        КОГДА ВТ.чПростойН > 0
                    |            ТОГДА ВТ.зПростойН / ВТ.чПростойН
                    |        ИНАЧЕ ВТ.зПростойН
                    |    КОНЕЦ КАК тПростойН,
                    |    ВТ.чРаботаД + ВТ.чРаботаН КАК чРабота,
                    |    ВТ.чРемонтД + ВТ.чРемонтН КАК чРемонт,
                    |    ВТ.чПростойД + ВТ.чПростойН КАК чПростой,
                    |    ВТ.зРаботаД + ВТ.зРаботаН КАК зРаботаИт,
                    |    ВТ.зРемонтД + ВТ.зРемонтН КАК зРемонтИт,
                    |    ВТ.зПростойД + ВТ.зПростойН КАК зПростойИт
                    |ПОМЕСТИТЬ ВТ_2
                    |ИЗ
                    |    ВТ КАК ВТ
                    |;
                    |
                    |////////////////////////////////////////////////////////////////////////////////
                    |ВЫБРАТЬ
                    |    ВТ_2.Работник КАК Работник,
                    |    ВТ_2.Организация КАК Организация,
                    |    ВТ_2.ГосНомерТС КАК ГосНомерТС,
                    |    ВТ_2.чРаботаД КАК чРаботаД,
                    |    ВТ_2.чРаботаН КАК чРаботаН,
                    |    ВТ_2.чРемонтД КАК чРемонтД,
                    |    ВТ_2.чРемонтН КАК чРемонтН,
                    |    ВТ_2.чПростойД КАК чПростойД,
                    |    ВТ_2.чПростойН КАК чПростойН,
                    |    ВТ_2.зРаботаД КАК зРаботаД,
                    |    ВТ_2.зРаботаН КАК зРаботаН,
                    |    ВТ_2.зРемонтД КАК зРемонтД,
                    |    ВТ_2.зРемонтН КАК зРемонтН,
                    |    ВТ_2.зПростойД КАК зПростойД,
                    |    ВТ_2.зПростойН КАК зПростойН,
                    |    ВТ_2.тРаботаД КАК тРаботаД,
                    |    ВТ_2.тРаботаН КАК тРаботаН,
                    |    ВТ_2.тРемонтД КАК тРемонтД,
                    |    ВТ_2.тРемонтН КАК тРемонтН,
                    |    ВТ_2.тПростойД КАК тПростойД,
                    |    ВТ_2.тПростойН КАК тПростойН,
                    |    ВТ_2.чРабота КАК чРабота,
                    |    ВТ_2.чРемонт КАК чРемонт,
                    |    ВТ_2.чПростой КАК чПростой,
                    |    ВТ_2.зРаботаИт КАК зРаботаИт,
                    |    ВТ_2.зРемонтИт КАК зРемонтИт,
                    |    ВТ_2.зПростойИт КАК зПростойИт,
                    |    ВТ_2.зРаботаИт + ВТ_2.зРемонтИт + ВТ_2.зПростойИт КАК зИтого
                    |ИЗ
                    |    ВТ_2 КАК ВТ_2
                    |
                    |УПОРЯДОЧИТЬ ПО
                    |    ВТ_2.Работник.Наименование
                    |ИТОГИ
                    |    СУММА(чРаботаД),
                    |    СУММА(чРаботаН),
                    |    СУММА(чРемонтД),
                    |    СУММА(чРемонтН),
                    |    СУММА(чПростойД),
                    |    СУММА(чПростойН),
                    |    СУММА(зРаботаД),
                    |    СУММА(зРаботаН),
                    |    СУММА(зРемонтД),
                    |    СУММА(зРемонтН),
                    |    СУММА(зПростойД),
                    |    СУММА(зПростойН),
                    |    СУММА(тРаботаД),
                    |    СУММА(тРаботаН),
                    |    СУММА(тРемонтД),
                    |    СУММА(тРемонтН),
                    |    СУММА(тПростойД),
                    |    СУММА(тПростойН),
                    |    СУММА(чРабота),
                    |    СУММА(чРемонт),
                    |    СУММА(чПростой),
                    |    СУММА(зРаботаИт),
                    |    СУММА(зРемонтИт),
                    |    СУММА(зПростойИт),
                    |    СУММА(зИтого)
                    |ПО
                    |    ОБЩИЕ,
                    |    Работник,
                    |    ГосНомерТС");
6 МойКодУныл
 
04.04.14
09:02
Пятнично.
(1) (2) вас же просили с если!:)
Если Истина Тогда
Запрос.Текст = СтрЗаменить(Запрос.текст, "<быдлокодоусловие>", "Таблица.Поле = &Быдлокодопараметр");
Иначе
Сообщить("Невероятно!");
Конец;
7 Azverin
 
04.04.14
09:03
это ж до какой степени надо быть лентяем...
пятнично, прощаю.
8 Delrus
 
04.04.14
09:09
В отчете СКД:)

ВЫБРАТЬ
    ПартииТоваровОстатки.Склад,
    ПартииТоваровОстатки.Товар.Код,
    ПартииТоваровОстатки.Товар,
    ПартииТоваровОстатки.УнКод.Серия,
    ПартииТоваровОстатки.УнКод.СрокГодности,
    РазмещениеНоменклатурыПоСкладскимЯчейкам.Ячейка,
    ВЫБОР
        КОГДА ПартииТоваровОстатки.УнКод.СрокГодности <= &ВыбранаяДата
            ТОГДА ИСТИНА
        ИНАЧЕ ЛОЖЬ
    КОНЕЦ КАК СрокГодностиИстек,
    ПартииТоваровОстатки.РегиональноеПодразделение,
    ПартииТоваровОстатки.ОстатокТовараОстаток
ИЗ
    РегистрНакопления.ПартииТоваров.Остатки КАК ПартииТоваровОстатки
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РазмещениеНоменклатурыПоСкладскимЯчейкам КАК РазмещениеНоменклатурыПоСкладскимЯчейкам
        ПО ПартииТоваровОстатки.Товар = РазмещениеНоменклатурыПоСкладскимЯчейкам.Номенклатура
ГДЕ
    ПартииТоваровОстатки.УнКод.СрокГодности <= &ПредельнаяДата
    И ПартииТоваровОстатки.УнКод.РегиональноеПодразделение = &РегиональноеПодразделение
9 mikecool
 
04.04.14
09:28
выбрать
  выбор если я_бухой тогда
    нести_домой
  иначе
    налить_Еще
  конецесли
  конецвыбор
из
  _кафе как кафе
10 Любопытная
 
04.04.14
09:29
(9) что-то ты сегодня рано начал...
11 Ненавижу 1С
 
гуру
04.04.14
09:30
12 Маленький Вопросик
 
04.04.14
09:41
большое всем спасииибо
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан