|
Проверить формирование бригады. | ☑ | ||
---|---|---|---|---|
0
Vitev777
28.05.19
✎
12:51
|
Есть документ формирование бригады реквизиты водитель, грузчик1, грузчик2, машина, и т.д. с него инфа идет в регистр сведений состав бригады, далее есть док заявка на транспорт, который рассматривает менеджер и если на дату не сформированна бригада, выводим предупреждение и очищаем реквизит "Машина". Я правильно понял, что мне нужно в МашинаПриИзменении() в элементе формы машина(Заявка на транспорт) запросом проверить наличие по машине документа ФормированиеБригады и если отсутствует - очистить поле. Если да то, помогите разобраться как это сделать, вот начал:
Процедура МашинаПриИзмененииНаСервере() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СоставБригадыСрезПоследних.Период КАК Период, | СоставБригадыСрезПоследних.НомерСтроки КАК НомерСтроки, | СоставБригадыСрезПоследних.Водитель КАК Водитель, | СоставБригадыСрезПоследних.Грузчик1 КАК Грузчик1, | СоставБригадыСрезПоследних.Грузчик2 КАК Грузчик2 |ИЗ | РегистрСведений.СоставБригады.СрезПоследних(&Дата, Машина = &Машина) КАК СоставБригадыСрезПоследних"; Запрос.УстановитьПараметр("Дата", Дата); Запрос.УстановитьПараметр("Машина", Машина); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Если Выборка.??? Тут не знаю если предыдущее вообще правильно?! ! ! КонецЕсли; КонецПроцедуры |
|||
1
Vitev777
28.05.19
✎
13:08
|
То есть как я понимаю нужно проверить есть ли сформированный документ регистратор формирование бригады на данное число для реквизита машина? Но как это сделать?
|
|||
2
Eg0rkas
28.05.19
✎
13:44
|
в какой момент нужно выводить предупреждение и очищать значение реквизита "Машина"? может быть в момент открытия формы документа Заявка на транспорт?
|
|||
3
Vitev777
28.05.19
✎
13:48
|
Нет в момент изменения реквизита машина, то есть при изменении так описал преподаватель в подсказках цитирую
"В документе "Заявка на транспорт" в форме создаем обработчик "При изменении" для элемента формы "Машина". На сервере запросом из регистра сведений получаем информацию по бригаде на дату доставки и по установленной машине. Если информации нет, выводим предупреждение и очищаем реквизит "Машина". В противном случае заполняем реквизиты Водитель, Грузчик1, Грузчик2." |
|||
4
Автосервис
28.05.19
✎
14:00
|
В чем проблема-то?
Если Выборка.Следующий() Тогда Водитель = Выборка.Водитель; Грузчик1 = Выборка.Грузчик1; Грузчик2 = Выборка.Грузчик2; Иначе Сообщить("Бригада не сформирована"); Машина = Справочники.Автомобили.ПустаяССылка(); КонецЕсли; Или я что-то не так понял? |
|||
5
sqr4
28.05.19
✎
14:01
|
короче загугли есть полное решение твоей задачи в инете
|
|||
6
Автосервис
28.05.19
✎
14:02
|
(5) Да человек может сам разобраться хочет :)
|
|||
7
Vitev777
28.05.19
✎
14:07
|
попробовал так сообщение пишется даже если на эту дату бригада уже сформирована, а нужно чтоб только при не сформированной бригаде на дату
|
|||
8
Vitev777
28.05.19
✎
14:08
|
конечно самому пытаться надо иначе как научишься а то в голове каша
|
|||
9
sqr4
28.05.19
✎
14:12
|
(8) какая разница, перепишешь ты решение с готового примера или его тебе напишут тут на форуме? Ты же даже не попытался что то сделать
|
|||
10
Vitev777
28.05.19
✎
14:14
|
бригада не сформирована для авто камаз например сообщение и поля очищаются, сформирована автоматом заносятся реквизиты водитель грузчик
|
|||
11
Vitev777
28.05.19
✎
14:15
|
а насчет пытался, так седьмой час сижу только над этой подзадачей
|
|||
12
sqr4
28.05.19
✎
14:32
|
(7) проверь, какая дата в регистре и что у тебя в параметре, не на форме, а в параметре
|
|||
13
Vitev777
28.05.19
✎
15:03
|
В регистре сведения состав бригады бригада сформирована этим числом в параметре &Дата
Запрос.УстановитьПараметр("Дата", Объект.Дата); Это я уже раньше исправил на объект &НаСервере Процедура МашинаПриИзмененииНаСервере() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СоставБригадыСрезПоследних.Водитель КАК Водитель, | СоставБригадыСрезПоследних.Грузчик1 КАК Грузчик1, | СоставБригадыСрезПоследних.Грузчик2 КАК Грузчик2, | СоставБригадыСрезПоследних.Машина КАК Машина |ИЗ | РегистрСведений.СоставБригады.СрезПоследних(&Дата, Машина = &Машина) КАК СоставБригадыСрезПоследних"; Запрос.УстановитьПараметр("Дата", Объект.Дата); //Отбор по дате Запрос.УстановитьПараметр("Машина", Объект.Машина); //отбор по машине Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Если Выборка.Следующий() Тогда Водитель = Выборка.Водитель; Грузчик1 = Выборка.Грузчик1; Грузчик2 = Выборка.Грузчик2; Иначе Сообщить("Бригада не сформирована"); Машина = Справочники.ТранспортныеСредства.ПустаяССылка(); КонецЕсли; КонецПроцедуры |
|||
14
Vitev777
28.05.19
✎
17:07
|
Уже вот так сделал один фиг пишет не сформированна бригада:
&НаСервере Процедура ПодборБригады() Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | СоставБригадыСрезПоследних.Водитель КАК Водитель, | СоставБригадыСрезПоследних.Грузчик1 КАК Грузчик1, | СоставБригадыСрезПоследних.Грузчик2 КАК Грузчик2, | СоставБригадыСрезПоследних.Машина КАК Машина, | СоставБригадыСрезПоследних.Период КАК Период |ИЗ | РегистрСведений.СоставБригады.СрезПоследних(&Дата, Машина = &Машина) КАК СоставБригадыСрезПоследних |ГДЕ | СоставБригадыСрезПоследних.Период = &Дата | И СоставБригадыСрезПоследних.Машина = &Машина | И СоставБригадыСрезПоследних.Период = &ОкончаниеДня"; Дата = НачалоДня(Объект.Дата); ОкончаниеДня = КонецДня(Объект.Дата); Запрос.УстановитьПараметр("Дата", Дата); //Отбор по дате Запрос.УстановитьПараметр("ОкончаниеДня", ОкончаниеДня); Запрос.УстановитьПараметр("Машина", Объект.Машина); //отбор по машине Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Если ВыборкаДетальныеЗаписи.Следующий() Тогда Объект.Водитель = ВыборкаДетальныеЗаписи.Водитель; Объект.Грузчик1 = ВыборкаДетальныеЗаписи.Грузчик1; Объект.Грузчик2 = ВыборкаДетальныеЗаписи.Грузчик2; КонецЕсли; КонецПроцедуры &НаКлиенте Процедура МашинаПриИзменении(Элемент) ПодборБригады(); Если Объект.Водитель.Пустая() = Истина Тогда ПоказатьПредупреждение(, "Не сформированна бригада", 10); Объект.Машина = ""; КонецЕсли; КонецПроцедуры |
|||
15
Vitev777
28.05.19
✎
17:08
|
даже на ту машину и дату где сформирована
|
|||
16
sqr4
28.05.19
✎
17:14
|
Сделай скрин документа и регистра
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |