Как программно узнать выходной или невыходной день? #195717


#0 by dva1c
сабж
#1 by Кабанчик
Для этого существует объект Календарь.-------1) Если конфа ЗиК просто воспользуйся существующим (заполненным) календарем.2) Если другая конфа - создай календарь, опиши рабочие и выходные дни - и пользуйся на здоровье
#2 by dva1c
Конфа комплексная, "переписанная". Есть отчет, который выводит суммы по дням. Нужно раскрасить (изменить цвет фона, когда вых.). Дата есть. Объект календари есть. Просто надо смотреть значение на день. Не соображу как это сделать? С календарями не работал.
#3 by Vaicartana
Календарь.ДатаКалендарь.Значение++ПолучитьДату(<?>,)Синтаксис:ПолучитьДату(<ДатаНачала>,<Количество>)Назначение:Получить дату календаря.Возвращает: значение типа ''дата''.Параметры:<ДатаНачала> - дата начала периода, от которой будут отсчитываться дни.<Количество> - количество дней, отсчитываемое от <ДатаНачала>.
#4 by dva1c
Спасибо, "интерактивный хелп"! Дату я получаю Календари.РабочиеДни.ПолучитьДату(ТекДата,0). Как получить Длину дня, чтобы сравнить её с 0 и выяснить вых. или нет?
#5 by DES
Часы. Часы сравнивай на нуль.
#6 by Vaicartana
Календарь.Значение это и есть часы в дне.сравнивай с 0 - получишь выходной или нет.
#7 by Vaicartana
еще можно как :Календарь.Часов(<ДатаНачала>,<ДатаОкончания>)
#8 by dva1c
(5,6) Спасибо! Пробую.
#9 by SleepyHead
А что, НомерДняНедели(Дата) не подходит? 6 суббота, 7 воскресенье, прочие можно загнать в справочник, необязательно через объект Календарь (который есть только на компоненте "Расчет").
#10 by Vaicartana
2 ага.Например 9 мая = вторник.
#11 by SleepyHead
Читай внимательно, праздники - в справочник, если нет расчета, если есть - можно в календарь.
#12 by dva1c
(5,7) Попробовал. Странное. Пишу: Календари.РабочиеДни.Часов(ТекДата,ТекДата) в отладчике 0. Что-то не так?
#13 by SleepyHead
+11. Календарь ему придется заполнять (программно или вручную), и ты про это умолчал - стопудово забудет. А на справочниках можно сделать неплохой алгоритм, считающий, что с понедельника по пятницу - рабочие дни, сб и вс выходной, а праздники - в справочнике.
#14 by SleepyHead
Вот только что про это подумал :) См. пост 13. Календарь заполнять надо. Смотри кнопку "Автозаполнение", не забуть поставить флажок "Учитывать праздники".
#15 by Vaicartana
тогда зачем в справочник - пропиши просто в текстовик и все. Праздников не много.Останется вопрос с переносом выходных..А вообще через справочник можно полностью календарь реализовать.см. тут: http://1c.proclub.ru/modules/mydownloads/personal.php?cid=113&lid=2391
#16 by SleepyHead
А у меня есть решение на справочниках, которое ты "принципиально не смотрел", и безо всяких внешних компонент :) Которое независимо как от внешних компонент, так и от компонент 1с, справочники то везде есть.
#17 by SleepyHead
+16 Да и перенос выходных реализован (в моей разработке, на справочниках). Хотя автору ветки, возможно, такие навороты и не нужны. Перенос праздников можно реализовать очень просто - если используешь объект "Праздники", проставь 8 в дату, на которую выполнен перенос.
#18 by Vaicartana
ВК там только для удобства интерфейса.Не нравится - юзай отчет и передавай параметры через ОткрытьФорму.ИМХО с классами удобнее.Да и вообще 1С++ творит чудеса с прямым доступом к базе и всякими рюшечками на форме.Один только ActiveX чего стоит!
#19 by SleepyHead
Да кто ж спорит, но это дело вкуса. Мне пришлось отказаться от внешних компонент после того, как в 1с завернули сертификацию компоненты, которая использовала FormEx - это, мол, навязывание пользователю внешних разработок. Хотя все, что я использовал из этой библиотеки - перехват нажатий клавиш в обработках.Пришлось делать все только средствами 1с.
#20 by Vaicartana
угу.А, значить, внешние длл-ки в которых прописана часть модуля (как в Рарусе, например)- это не навязывание пользователю? 8))
#21 by dva1c
(all) Спасибо всем! Получилось!
#22 by SleepyHead
Не знаю, может быть, потому что Рарус сам свои длл-ки создает?
#23 by Vaicartana
v7plus - ВК.отсюда: ТиС,БуХ, ЗиК - не смогут пройти сертификацию, тк. "навязывают" внешнюю разработку.1С не перестает радовать своей тупизной.
#24 by ЙоханСон
Гле вы видели на коробках с типовыми ТиС, БуХ, ЗиК. логотип 1С-совместимо :)))))
#25 by Vaicartana
2 ну дык, я и грю что они "НЕ СМОГУТ пройти сертификацию"!
#26 by ЙоханСон
А на самом деле почитайте требования к сертификации конфигураций, там написано насчет компонент, первое и самое главное :1. Внешние компоненты системы программ "1С:Предприятие" должны быть разработаны в соответствии с технологией создания внешних компонент "1С:Предприятия", поставляемой фирмой 1СДальше можно не читать, надеюсь понятно по какой причине :)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С