![]() |
![]() |
|
Объект "Праздники" в 1с 7.7 | ☑ | ||
---|---|---|---|---|
0
exp3rt
22.11.10
✎
16:06
|
Пишу табель учета рабочего времени для строительной организациии.
Не могу разобраться, как работать с Календарями и Праздниками в 1С 7.7. Нигде не нашел человеческого описания с примерами. Описание встроенного языка не помогло. Для табеля учета рабочего времени хотел задать праздничные дни. В обработку закинул процедуру: Процедура Выполнить() Празд=СоздатьОбъект("Календарь.Праздники"); Празд.Новый("01.01.2010",0); Празд.ВыбратьДаты(НачДата,КонДата); Пока Празд.СледующаяДата()=1 Цикл Сообщить(Празд.ПолучитьАтрибут (Празд.Дата)+Празд.ПолучитьАтрибут(Празд.Значение)); КонецЦикла; КонецПроцедуры На строке Празд.Новый("01.01.2010",0); конфигуратор вылетает с критической ошибкой. В связи с чем хотел бы обратиться с вопросом: может ли кто-то объяснить как использовать объект праздники для задания праздничных дней или если, это возможно, ссылку на описание использования "Праздников". Спасибо. |
|||
1
DrZombi
гуру
22.11.10
✎
16:14
|
(0)Вот так
// Праздничные дни Празд = СоздатьОбъект("Праздники"); Празд.Новый('01.05.99', 0) |
|||
2
DrZombi
гуру
22.11.10
✎
16:15
|
+(0)Так то если ты посмотришь, то увидишь, что Праздник - это не совсем календарь :)
|
|||
3
DrZombi
гуру
22.11.10
✎
16:17
|
+(0)Вот все что есть
Методы праздников Новый Ввести новый «праздничный» день. Синтаксис: Новый(<Дата>, <Значение>) Англоязычный синоним: New Параметры: <Дата> Дата нового праздника. <Значение> Положительное число с двумя знаками после запятой (не более 100). Поскольку объект «Праздники», как правило, используется для ввода выходных праздничных дней по календарям, то значение, как правило, задают равным нулю. Описание: Метод Новый вводит и записывает новую запись (новый «праздничный» день). Пример: // Праздничные дни Празд = СоздатьОбъект("Праздники"); Празд.Новый('01.05.99', 0) Удалить Удаляет «праздничный» день. Синтаксис: Удалить(<Дата>) Англоязычный синоним: Delete Параметры: <Дaтa> Дата удаляемой строки (праздника). Описание: Метод Удалить позволяет удалить существующую запись («праздничный» день). Если строка с такой датой не найдена, то метод ничего не делает. Возвращаемого значения нет. Пример: // Праздничные дни Празд = СоздатьОбъект("Праздники"); Празд.Удалить('01.05.99'); ВыбратьДаты Открывает выборку записей праздников. Синтаксис: ВыбратьДаты(<ДатаНачала>, <ДатаОкончания>) Англоязычный синоним: SelectDates Параметры: <ДатаНачала> Дата начала периода выборки. <ДатаОкончания> Дата окончания периода выборки. Возвращаемое значение: Число: 1 — выборка открыта и в ней есть хоть одна запись; 0 — не обнаружено записей. Описание: Метод ВыбратьДаты открывает выборку записей праздников. Выбираются все элементы с даты начала по дату окончания включительно. Пример: // Праздничные дни Празд = СоздатьОбъект("Праздники"); Празд.ВыбратьДаты(ДатаНачала, ДатаОкончания); Пока Празд.СледующаяДата() = 1 Цикл // ... КонецЦикла; См. также: СледующаяДата СледующаяДата Выбирает следующий день праздников в выборке. Синтаксис: СледующаяДата() Англоязычный синоним: NextDate Возвращаемое значение: Число: 1 — получена очередна язапись; 0 — не обнаружено очередной записи, т. е. конец выборки. Описание: Выбирает следующий день праздников (позиционируется на очередной записи выборки) в порядке дат. Пример: // Праздничные дни Празд = СоздатьОбъект("Праздники"); Празд.ВыбратьДаты(ДатаНачала, ДатаОкончания); Пока Празд.СледующаяДата() = 1 Цикл // ... КонецЦикла; См. также: ВыбратьДаты |
|||
4
exp3rt
22.11.10
✎
16:55
|
За описание спасибо. Но все равно
Процедура Выполнить() Празд=СоздатьОбъект("Праздники"); Празд.Новый('01.01.2010',0); Празд.ВыбратьДаты(НачДата,КонДата); Пока Празд.СледующаяДата()=1 Цикл Сообщить(Празд.ПолучитьАтрибут(Празд.Дата)+Празд.ПолучитьАтрибут(Празд.Значение)); КонецЦикла; КонецПроцедуры вылет с критической ошибкой на строке Празд.Новый('01.01.2010',0); ;( |
|||
5
zuza
22.11.10
✎
17:00
|
(4) хз..., может компонента рассчет нужна?
|
|||
6
zuza
22.11.10
✎
17:02
|
(5) бред...
|
|||
7
zuza
22.11.10
✎
17:03
|
+(5) А календари в метаданных есть вообще? Добавь какой-нить и попробуй ещё раз.
|
|||
8
exp3rt
22.11.10
✎
18:13
|
Спасибо! Добавил календарь "Служащие" и вылет с критической ошибкой пропал.
Процедура Выполнить() Празд=СоздатьОбъект("Праздники"); Празд.Новый('01.01.2010',0); Празд.ВыбратьДаты(НачДата,КонДата); Пока Празд.СледующаяДата()=1 Цикл Сообщить(Празд.ПолучитьАтрибут("Дата")); КонецЦикла; КонецПроцедуры Процедура работает без вопросов. Теперь осталось найти пример использования праздников ;) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |