|
Получение периода в журнале документов | ☑ | ||
---|---|---|---|---|
0
Молодой 1Снег
28.04.09
✎
14:22
|
Как программно получить период установленный в открытом журнале документов?
|
|||
1
73
28.04.09
✎
14:25
|
Расширение табличного поля журнала документов (Document journal table box extension)
СтандартныйПериод (StandardPeriod) Использование: Чтение и запись. Описание: Тип: НастройкаПериода. Содержит объект НастройкаПериода в соответствии с которым осуществляется настройка периода списка документов при открытии формы, содержащей данное табличное поле. |
|||
2
НЕА123
28.04.09
✎
14:26
|
отбор
|
|||
3
НЕА123
28.04.09
✎
14:29
|
(1)+1 это правильней. (2) - может и совсем нельзя.
|
|||
4
Молодой 1Снег
28.04.09
✎
15:03
|
(1) И как мне с помощью этого получить дату начала периода и дату конца?
|
|||
5
Молодой 1Снег
28.04.09
✎
15:06
|
Прошу прощения, у меня не журнал документов, а форма списка документа.
|
|||
6
IronDemon
28.04.09
✎
15:07
|
тОтбор = ДокументСписок.Отбор;
Если НЕ тОтбор.Дата.ЗначениеПо = '00010101000000' И тОтбор.Дата.Значение = '00010101000000' Тогда ДатаПо = тОтбор.Дата.ЗначениеПо; ИначеЕсли тОтбор.Дата.ЗначениеПо = '00010101000000' И НЕ тОтбор.Дата.Значение = '00010101000000' Тогда ДатаПо = тОтбор.Дата.Значение; ИначеЕсли НЕ тОтбор.Дата.ЗначениеПо = '00010101000000' И НЕ тОтбор.Дата.Значение = '00010101000000' Тогда ДатаПо = тОтбор.Дата.ЗначениеПо; Иначе ДатаПо = ТекущаяДата(); КонецЕсли; |
|||
7
73
28.04.09
✎
15:28
|
Стандартным периодом не получилось:(
Вот так вроде работает: ДатаНачала = ДокументСписок.Отбор.Дата.ЗначениеС; ДатаОкончания = ДокументСписок.Отбор.Дата.ЗначениеПо; |
|||
8
Молодой 1Снег
28.04.09
✎
15:32
|
(7) Работает, но если период снова установить без ограничений, то выдаются даты периода установленного до этого.
|
|||
9
IronDemon
28.04.09
✎
15:34
|
(7)(8) Поэтому в (6) такое извращение
|
|||
10
Молодой 1Снег
28.04.09
✎
15:37
|
(9) А как из этого извращения дату начала периода получить?
|
|||
11
НЕА123
28.04.09
✎
15:39
|
(8)
попробуй, так должно отработать. ПолучитьДатуНачала() и окончания. |
|||
12
Молодой 1Снег
28.04.09
✎
15:46
|
(11) Всегда 01.01.0001 0:00:00 выдает.
|
|||
13
НЕА123
28.04.09
✎
15:50
|
(12)
это когда без ограничений? иначе вроде должно что-то быть. я вроде так делал. в СП написано. |
|||
14
Молодой 1Снег
28.04.09
✎
16:01
|
(13) Всегда. Пробовал и так:
НастройкаПериода = ЭлементыФормы.ДокументСписок.СтандартныйПериод; ДатаНач = НастройкаПериода.ПолучитьДатуНачала(); ДатаКон = НастройкаПериода.ПолучитьДатуОкончания(); И вот так: НастройкаПериода = Новый НастройкаПериода; ДатаНач = НастройкаПериода.ПолучитьДатуНачала(); ДатаКон = НастройкаПериода.ПолучитьДатуОкончания(); Всегда выдает 01.01.0001 0:00:00, при любом установленном периоде. |
|||
15
73
28.04.09
✎
16:13
|
ДатаНачала = '00010101';
ДатаОкончания = '00010101'; ОтборДата = ДокументСписок.Отбор.Дата; Если ОтборДата.Использование Тогда Если ОтборДата.ВидСравнения = ВидСравнения.ИнтервалВключаяГраницы Тогда ДатаНачала = ДокументСписок.Отбор.Дата.ЗначениеС; ДатаОкончания = ДокументСписок.Отбор.Дата.ЗначениеПо; ИначеЕсли ОтборДата.ВидСравнения = ВидСравнения.БольшеИлиРавно Тогда ДатаНачала = ДокументСписок.Отбор.Дата.Значение; ИначеЕсли ОтборДата.ВидСравнения = ВидСравнения.МеньшеИлиРавно Тогда ДатаОкончания = ДокументСписок.Отбор.Дата.Значение; КонецЕсли; КонецЕсли; Сообщить(ДатаНачала); Сообщить(ДатаОкончания); |
|||
16
Молодой 1Снег
28.04.09
✎
16:17
|
(15) Работает! Спасибо!
|
|||
17
НЕА123
28.04.09
✎
16:19
|
(14)
да уж... изменяет, если только ставишь флажок использовать при открытии. |
|||
18
Молодой 1Снег
28.04.09
✎
16:47
|
+(16) Только дату начала и дату конца по умолчанию лучше такими поставить:
ДатаНачала = '00010101000000'; ДатаОкончания = ТекущаяДата(); |
|||
19
73
28.04.09
✎
16:50
|
(18) 1. Время для пустой даты можно не указывать.
2. Без ограничения - это все-таки не текущая дата. А что если документы будущим числом будут? |
|||
20
Молодой 1Снег
28.04.09
✎
16:55
|
(19) Согласен.
Тогда ДатаОкончания = ТекущаяДата()+1000000000; Потому что я делаю выборку документов по периоду указанному в журнале. В выборку с пустыми датами периода ни один документ не попадает. |
|||
21
Молодой 1Снег
28.04.09
✎
16:57
|
+(20) Т.е. выборка получается не с пустыми датами, а с первого года н.э. по первый год н.э.
|
|||
22
73
28.04.09
✎
17:00
|
(20) КонецДня('39991231') - максимум в 1С
(21) Получить отобранные строки проще через ПостроительЗапроса. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |