Имя: Пароль:
1C
1С v8
Ошибка в ЕСЛИ
,
0 Dmitry017
 
24.02.13
20:30
Какая-то ошибка в условии если
[code]Процедура ВычислитьЧислоДней(Команда)
   // Вставить содержимое обработчика.
   //1 января 2010 г.
   ЧислоРабочихДней = 0;
   ЧислоВыходныхДней = 0;
   ЧислоДнейВМесяце = 0;
   
   Для Год=2010 По 2019 Цикл
       Для Месяц=1 По 12 Цикл
           РассматриваемаяДата = Дата(Год, Месяц, 1);
           ЧислоДнейВМесяце = КонецМесяца(РассматриваемаяДата);                
            ЧислоДнейВМесяце = День(ЧислоДнейВМесяце);
            Для День=1 По ЧислоДнейВМесяце Цикл
                ДеньРассматриваемойНедели = ДеньНедели(День);
                //если рабочие дни
                Если ДеньРассматриваемойНедели != "суббота" И ДеньРассматриваемойНедели != "воскресенье" ТОГДА
                   ЧислоРабочихДней = ЧислоРабочихДней + 1;                
               Иначе//если выходные
                   ЧислоВыходныхДней = ЧислоВыходныхДней + 1:                    
               КонецЕсли
           
            КонецЦикла;
           
       
        КонецЦикла;
        ЧислоРабочихДней = ЧислоРабочихДней - 3;
        Сообщить ("Год " + Строка(Год) + " число раб. дней" + ЧислоРабочихДней);
   КонецЦикла;
КонецПроцедуры;
[/code]
Вот сами ошибки:
{Обработка.ВычислениеРабочихДней.Форма.Форма.Форма(18,36)}: Ожидается ключевое слово 'Тогда' ('Then')
                Если ДеньРассматриваемойНедели<<?>> != "суббота" И ДеньРассматриваемойНедели != "воскресенье" ТОГДА (Проверка: Сервер)
{Обработка.ВычислениеРабочихДней.Форма.Форма.Форма(21,47)}: Неопознанный оператор
                   ЧислоВыходныхДней = ЧислоВыходныхДней + 1<<?>>:                     (Проверка: Сервер)
{Обработка.ВычислениеРабочихДней.Форма.Форма.Форма(18,36)}: Ожидается ключевое слово 'Тогда' ('Then')
                Если ДеньРассматриваемойНедели<<?>> != "суббота" И ДеньРассматриваемойНедели != "воскресенье" ТОГДА (Проверка: Тонкий клиент)

Что не так в этих строчках?
Кто-нибудь может подсказать?
[code] Если ДеньРассматриваемойНедели != "суббота" И ДеньРассматриваемойНедели != "воскресенье" ТОГДА
                   ЧислоРабочихДней = ЧислоРабочихДней + 1;                
               Иначе//если выходные
                   ЧислоВыходныхДней = ЧислоВыходныхДней + 1:    [/code]
1 H A D G E H O G s
 
24.02.13
20:31
Тут вам не епн%^^ый сплюснутый
Тут
!=
не катит.

<> рулит
2 zak555
 
24.02.13
20:32
что за странный алгоритм ?
3 Нуф-Нуф
 
24.02.13
20:32
НЕ =
4 rphosts
 
24.02.13
20:32
(1) ну что ты так, в обычном Си тоже !=
5 DimG
 
24.02.13
20:33
(0) Не слушай никого. И желтых книжек не читай. Твори. Жги.
6 zak555
 
24.02.13
20:34
(0) почему праздники не учитываешь и перенесённые дни ?
7 Fragster
 
гуру
24.02.13
20:36
автору курить регламентированный календарь
8 zak555
 
24.02.13
20:39
+ (6)

анализируй дни недели начала и конца года
9 Dmitry017
 
24.02.13
21:03
ПОнял. Спасибо.
10 zak555
 
24.02.13
21:04
(9) ты понял, что тебе циклы не нужны ?
11 Dmitry017
 
24.02.13
21:10
А как я без циклов исключу выходные дни?
12 Dmitry017
 
24.02.13
21:11
как я понимаю, надо прогнать все дни в году и для каждого в отдельности рассмотреть выходной он или нет
13 zak555
 
24.02.13
21:15
(11) остаток от деления
+ известно минимальное количество суббот/воскресений в году
14 zak555
 
24.02.13
21:16
но если тебе нужно знать количество выходных с учётом праздников, то см. в (7)
Независимо от того, куда вы едете — это в гору и против ветра!