новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума
Форум

Обсуждение к заданию: Проверка проведения документа

    • #1
    • 21.08.2014 14:06
    -1
    При проведении документа проверять что водитель выбранный в «Рейсе» в дату документа присутствует только в одном документе, где одна поездка в день. Вообщем сравнивает дату сам с собой, как исп...  Подробнее>>
    • #2
    • 21.08.2014 14:08
    • Отредактировано: 21.08.2014 14:13:41
    0
    Пока Выборка.Следующий() Цикл
    Если Объект.Водитель=Выборка.Водитель тогда
    Отказ=Истина;
    Сообщение("Водитель занят");
    Иначе
    ОТказ=Ложь;
    Сообщить("Документ проведен");
    КонецЕсли;
    КонецЦикла;
    Попробуй так.
    В запросе выведи Водителя только
    РеализацияТоваровУслуг.Водитель как Водитель
    • #3
    • 21.08.2014 14:16
    0
    Без Объект, на прямую обращаться нужно Водитель
    • #4
    • 21.08.2014 16:39
    0
    Выбрать
    Док.ССылка
    ИЗ
    Документ.РеализацияТоваровУслуг КАК Док
    ГДЕ
    Док.Ссылка <> &ссылка
    И Док.Рейс.Водитель = &Водитель
    И Док.Дата Между &ВыбНачПериода И &ВыбКонПериода
    И Док.Проведен

    Если Запрос.Выполнить().Выгрузить().Количество() > 0 тогда
    Сообщить(СокрЛП(Источник.Рейс.Водитель) + " нельзя ставить на рейс, он уже зафрахтован");
    Возврат;
    КонецЕсли;
    • #5
    • 21.08.2014 20:20
    0
    Запрос.УстановитьПараметр("НачалоГода", НачалоДня(Источник.Дата));
    Запрос.УстановитьПараметр("КонецГода", КонецДня(Источник.Дата));
    • #6
    • 22.08.2014 12:51
    -1
    С одинаковой датой проводит документ, а на самом деле не должен! что исправить незнаю, но думаю ошибка в запросе. Помогите пожалуйста?

    Процедура ПроверкаПроведенияДокументаОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("НачалоДня", НачалоДня(Источник.Дата));
    Запрос.УстановитьПараметр("КонецДня", КонецДня(Источник.Дата));
    Запрос.УстановитьПараметр("Ссылка", Источник.Ссылка);
    Запрос.УстановитьПараметр("Водитель", Источник.Рейс.Водитель);
    Запрос.Текст =
    "ВЫБРАТЬ
    | РеализацияТоваровУслуг.Ссылка
    |ИЗ
    | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    |ГДЕ
    | РеализацияТоваровУслуг.Ссылка <> &Ссылка
    | И РеализацияТоваровУслуг.Рейс.Водитель = &Водитель
    | И РеализацияТоваровУслуг.Дата МЕЖДУ &НачалоДня И &КонецДня
    | И РеализацияТоваровУслуг.Проведен = ИСТИНА";

    Результат = Запрос.Выполнить().Выбрать();
    // Если Результат.Следующий() Тогда
    Пока Результат.Следующий() Цикл
    Если Результат.Количество() > 0 Тогда
    Отказ = Истина;
    Сообщить ("Водителя нельзя поставить в рейс, он уже есть!!!");
    Иначе
    Отказ=Ложь;
    КонецЕсли;
    КонецЦикла;


    КонецПроцедуры
    • #7
    • 22.08.2014 12:54
    0
    Как еще помочь? И вызываются толпы народа и в сообщениях пишут и здесь. И с предложением подключиться и сделать и прочее...
    Вы скажите, какую помощь вы ждете
    • #8
    • 22.08.2014 13:43
    0
    Тихонов Сергей
    Вы скажите, какую помощь вы ждете

    бесплатную.
    • #9
    • 22.08.2014 13:48
    0
    Вот в том-то и дело. Нечего тогда народ в заблуждение вводить. Пишите в раздел Консультации
Для участия в обсуждении Вам необходимо авторизоваться либо   зарегистрироваться