Имя: Пароль:
1C
1С v8
Нужна помощь, решить задачу.
🠗 (Волшебник 09.11.2019 20:23)
0 dim-1983
 
09.11.19
20:22
При входе пользователя в систему, спросите пользователя в какой из 12 месяцев он планирует уйти в отпуск, в диалоге можно выбрать строго 1 месяц (реализуйте соответствующую проверку). Сохраните выбор пользователя в структуре. Отобразите сохраненное значение на экране любым способом. Нужен хотя бы пример.

Список = Новый СписокЗначений;
Далее все месяца добавляем в список?

Выводим сообщение:
Список.ОтметитьЭлементы("Выберите месяц");
    
    Для каждого ЭлементСписка Из Список Цикл
     Если ЭлементСписка.Пометка Тогда
    
     Сообщение = Новый СообщениеПользователю;
     Сообщение.Текст = Строка(ЭлементСписка.Значение);
     Сообщение.Сообщить();
А как сделать чтобы он например при отметке двух месяцев говорил что так нельзя?
Заранее благодарен.
1 Волшебник
 
09.11.19
20:22
Учебные задачки решайте самостоятельно.
2 dim-1983
 
09.11.19
20:26
(1) Наверное вы во время обучения ни у кого помощи не просили......
3 Волшебник
 
09.11.19
20:28
(2) Именно так. Я учился по синтакс-помощнику.
4 Гость из Мариуполя
 
гуру
09.11.19
20:30
(2) не верь ему, он учился по книге Митичкина :)
5 FormatC
 
09.11.19
20:37
гы... и я по ней учился )
6 ДенисЧ
 
09.11.19
20:50
(0) Твой способ не решает задачу. Хотя бы в области "в диалоге можно выбрать строго 1 месяц"
7 Ёпрст
 
09.11.19
22:07
(0)
ПоказатьВыборЭлемента пользуй, что ле
8 hhhh
 
09.11.19
22:22
(0) ОтметитьЭлементы  сразу выкинь, возьми что-то попроще.
9 dim-1983
 
10.11.19
13:14
(8) Список = Новый СписокЗначений;
Список.Добавить("Январь");
Список.Добавить("Февраль");
Список.Добавить("Март");
Список.Добавить("Апрель");
Список.Добавить("Май");
Список.Добавить("Июнь");
Список.Добавить("Июль");
Список.Добавить("Август");
Список.Добавить("Сентябрь");
Список.Добавить("Октябрь");
Список.Добавить("Ноябрь");
Список.Добавить("Декабрь");
КоличествоВыбранных = 0;
СписокМесяцев= Новый Структура();

Пока КоличествоВыбранных<>1 Цикл
Список.ОтметитьЭлементы("Выберите Один месяц отпуска!");

Для каждого Месяц Из Список Цикл
    
Если Месяц.Пометка Тогда
СписокМесяцев.Вставить(Строка(месяц.Значение),Месяц.Пометка);
КоличествоВыбранных= КоличествоВыбранных+1;

Если КоличествоВыбранных>=2 Тогда
СписокМесяцев.Очистить();
КоличествоВыбранных=0;
Предупреждение("Выберите не более одного месяца");

Прервать;

КонецЕсли;

КонецЕсли;

КонецЦикла;

КонецЦикла;

Для каждого Выбраный Из СписокМесяцев Цикл
    Предупреждение(Строка(Выбраный.Ключ)+ " Вы выбрали для отпуска этот месяц");

КонецЦикла;
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = Строка(Выбраный.Ключ)+ "  Вы выбрали для отпуска этот месяц";
Сообщение.Сообщить();
У меня вот так получилось, может кому пригодится. А что попроще можно взять?
10 Ёпрст
 
10.11.19
16:11
(9) Я б такое не показывал, никому
всё в топку
11 dim-1983
 
10.11.19
18:44
(10) Ты свою корону в топку забрось, а то мозги отсушит до конца. Что за люди такие, спрашиваю совета по человечески, не хочешь давать не давай, есть люди которым не жалко поделиться информацией, пример показать чтобы мозги зашевелились в правильном направлении. Я программирование начал изучать две недели назад, само собой я чайник в этом деле. Если бы моему сыну учитель так сказал, ебло не задумываясь разбил бы.
12 dim-1983
 
10.11.19
18:45
(10) и кстати он свою задачу решил.
13 Ёпрст
 
10.11.19
19:55
(11) прочитай ветку с начала и ответы, для начала.
Подумай.