Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Сортировка в запросе          
Анна Команкова Подменю пользователя
сообщение 13.07.15, 22:28
Сообщение #1

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Помоги пожалуйста, не получается отсортировать по условию если в объекте МетодСписаниПартий выбрано ФИФО или ЛИФО

Вот мой запрос

"ВЫБРАТЬ
     |    РасходнаяНакладнаяТЧРасхНакл.Ссылка.МетодСписанияПартий,
     |    РасходнаяНакладнаяТЧРасхНакл.ТМЦ,
     |    СУММА(РасходнаяНакладнаяТЧРасхНакл.Количество) КАК Количество
     |ПОМЕСТИТЬ ТоварыДок
     |ИЗ
     |    Документ.РасходнаяНакладная.ТЧРасхНакл КАК РасходнаяНакладнаяТЧРасхНакл
     |ГДЕ
     |    РасходнаяНакладнаяТЧРасхНакл.Ссылка = &Ссылка
     |
     |СГРУППИРОВАТЬ ПО
     |    РасходнаяНакладнаяТЧРасхНакл.Ссылка.МетодСписанияПартий,
     |    РасходнаяНакладнаяТЧРасхНакл.ТМЦ
     |;
     |
     |////////////////////////////////////////////////////////////////////////////////
     |ВЫБРАТЬ
     |    ТоварыДок.МетодСписанияПартий,
     |    ТоварыДок.ТМЦ,
     |    ТоварыДок.Количество,
        |    ТМЦОстатки.Партия,
     |    ВЫБОР КОГДА ТоварыДок.МетодСписанияПартий = ЗНАЧЕНИЕ(Перечисление.МетодСписанияПартий.ФИФО)  
     |            ТОГДА УПОРЯДОЧИТЬ ПО Партия.Дата ВОЗР
     |    ИНАЧЕ
     |          УПОРЯДОЧИТЬ ПО Партия.Дата УБЫВ
     |    КОНЕЦ
     |    ЕСТЬNULL(ТМЦОстатки.СуммаОстаток, 0) КАК СуммаОстаток,
     |    ЕСТЬNULL(ТМЦОстатки.КоличествоОстаток, 0) КАК КоличествоОстаток
     |ИЗ
     |    ТоварыДок КАК ТоварыДок
     |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТМЦ.Остатки(&Дата, ТМЦ В (ВЫБРАТЬ ТоварыДок.ТМЦ
     |              ИЗ ТоварыДок КАК ТоварыДок) И Склад = &Склад) КАК ТМЦОстатки
     |        ПО ТоварыДок.ТМЦ = ТМЦОстатки.ТМЦ
         |
     | ИТОГИ МИНИМУМ(Количество), МИНИМУМ (КоличествоОстаток)
     | По ТоварыДок.ТМЦ";
    
     Запрос.УстановитьПараметр("Ссылка", Ссылка);
     Запрос.УстановитьПараметр("Дата", Дата);
     Запрос.УстановитьПараметр("Склад", Склад);
    
     Результат = Запрос.Выполнить();


Вылезла ошибка
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
{Документ.РасходнаяНакладная.МодульОбъекта(57)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(23, 22)}: Ожидается выражение "КОНЕЦ"
ТОГДА УПОРЯДОЧИТЬ <<?>>ПО Партия.Дата ВОЗР


Анна Команкова Подменю пользователя
сообщение 13.07.15, 23:50
Сообщение #2

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Немножко хочу пояснить, есть у меня документ РасходнаяНакладная и в ней поле МетодСписанияПартии (это перечисление - ФИФО,ЛИФО)
в запросе нужно выбрать партии из Регистра Накопления и отсортировать их либо по возрастанию, либо по убыванию в зависимости от того, что в поле МетодСписанияПартии

vadim007 Подменю пользователя
сообщение 14.07.15, 5:03
Сообщение #3

Почти крутой
Иконка группы
Группа: Местный
Сообщений: 1298
Из: Донецк
Спасибо сказали: 208 раз
Рейтинг: 0

УПОРЯДОЧИТЬ ПО ТМЦОстатки.Партия.Дата УБЫВ ?

sava1 Подменю пользователя
сообщение 14.07.15, 6:52
Сообщение #4

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2688
Из: Проскуров
Спасибо сказали: 681 раз
Рейтинг: 659.7

Конструкция Упорядочить так входить в запрос не может. Она применяется к результату запроса, а не к отдельным строкам.
2. Метод списания по-идее должен быть один, а не разный в разных документах.

Сообщение отредактировал sava1 - 14.07.15, 6:54

Анна Команкова Подменю пользователя
сообщение 14.07.15, 18:12
Сообщение #5

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

спасибо за ответы, уже сделала)

vadim007 Подменю пользователя
сообщение 14.07.15, 19:58
Сообщение #6

Почти крутой
Иконка группы
Группа: Местный
Сообщений: 1298
Из: Донецк
Спасибо сказали: 208 раз
Рейтинг: 0

Похвастайтесь.

Анна Команкова Подменю пользователя
сообщение 14.07.15, 22:49
Сообщение #7

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

 Если МетодСписанияПартий = Перечисления.МетодСписанияПартий.ФИФО Тогда
         ЗапросТекст = " УПОРЯДОЧИТЬ ПО ТМЦОстатки.Партия ВОЗР"
     Иначе
         ЗапросТекст = " УПОРЯДОЧИТЬ ПО ТМЦОстатки.Партия УБЫВ"
    КонецЕсли;


А потом это условие в запрос вставляю + ЗапросТекст +

Но вот только у меня теперь новый вопрос

Есть поле Контрагент с ссылкой на справочник Контрагенты с реквизитом ВидЦены и есть поле ВидЦены, при изменении контрагента меняется вид цены, а при изменении вида цены меняются цены в ТЧ документа.

Нужно сделать так, что бы при повторном изменении Контрагента был диалог с пользователем, типо Пересчитать все цены в документе?

    Режим = РежимДиалогаВопрос.ДаНет;
    Текст = "ru = ""При изменении контрагента изменятся все цены в накладной. Продолжить выполнение операции?""";
    Ответ = Вопрос(НСтр(Текст), Режим, 0);
        Если Ответ = КодВозвратаДиалога.Нет Тогда
            Возврат;
        КонецЕсли;


Не знаю в какую процедура впихнуть и сработает ли оно вообще с таким условием

уже все работает)

Vofka Подменю пользователя
сообщение 15.07.15, 8:05
Сообщение #8

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4519 раз
Рейтинг: 3641.2

Цитата(Анна Команкова @ 14.07.15, 23:49) *
Но вот только у меня теперь новый вопрос

Правила, пункт 6. Тема закрывается.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Тема закрыта Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 18.04.24, 7:55
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!