|
v7: Получить интервал журнала документов | ☑ | ||
---|---|---|---|---|
0
vadim777
11.01.17
✎
09:59
|
Обработка, в ней Дата1 и Дата2.
Нужно программно в эти даты получить НачалоИнтервала() и КонецИнтервала() соответственно. Пока сделал след. образом: ОткрытьФорму("Журнал.ПриходныеНакладные",тКонт); Дата1 = тКонт.НачалоИнтервала(); Дата2 = тКонт.КонецИнтервала(); .......... Но при этом журнал остается открытым. Как его закрыть программно? |
|||
1
Cool_Profi
11.01.17
✎
10:00
|
тКонт.Закрыть() ?
|
|||
2
1dvd
11.01.17
✎
10:01
|
смысл получить параметры несуществующей формы?
|
|||
3
Это_mike
11.01.17
✎
10:01
|
тКонт.Закрыть()?
а вообще, нафига? |
|||
4
vadim777
11.01.17
✎
10:10
|
(1) Не работает.
(3) Чтобы даты Дата1 и Дата2 обработки были равные текущему интервалу журналов, заданному в Сервис->Параметры->Журналы |
|||
5
linoblack
11.01.17
✎
10:16
|
НачалоСтандартногоИнтервала()
КонецСтандартногоИнтервала() |
|||
6
linoblack
11.01.17
✎
10:17
|
Устанавливает вариант задания стандартного интервала отображения журнала документов. Возвращает //текущий// установленный вариант.
|
|||
7
Это_mike
11.01.17
✎
10:18
|
(4) НачалоСтандартногоИнтервала(<?>)
Синтаксис: НачалоСтандартногоИнтервала(<Вариант>) Назначение: Устанавливает вариант задания стандартного начала интервала отображения журнала документов. Возвращает текущий установленный вариант. Параметры: <Вариант> - необязательный параметр. Выражение со значением типа строка или дата. Возможные строковые значения параметра: ''День'', ''Месяц'', ''Квартал'', ''Год'', ''Day'', ''Month'', ''Quarter'', ''Year''. Значением типа дата задается конкретная дата начала интервала журнала документов. Если параметр не задан, то установка сделанная в параметрах системы не меняется, а только возвращается текущий вариант. |
|||
8
Это_mike
11.01.17
✎
10:18
|
(5) опередил....
|
|||
9
Это_mike
11.01.17
✎
10:18
|
(4) закрфть можно через тКонт.Форма.Закрыть()
|
|||
10
linoblack
11.01.17
✎
10:20
|
(8) ну хоть разочек ))))))
|
|||
11
Это_mike
11.01.17
✎
10:21
|
(4) кстати, значения из Сервис->Параметры->Журналы вернут НачалоСтандартногоИнтервала() и КонецСтандартногоИнтервала(), а запрос из журнала вернет тот период, который уставнливается в журнале при открытии. который можт быть и не равен стандартному...
|
|||
12
Это_mike
11.01.17
✎
10:21
|
(10) злорадствуешь, да?
"акелла промахнулся, акелла промахнулся..."© |
|||
13
vadim777
11.01.17
✎
10:25
|
(5,7) Работает, только наполовину - если в системе интервал задан не точной датой, и типа НачалоГода и/или КонецГода, то соответственно и получим текст типа День, Месяц, Квартал, Год.
|
|||
14
Это_mike
11.01.17
✎
10:34
|
(13) "вон из профессии"©
|
|||
15
Масянька
11.01.17
✎
10:39
|
(14) Чет ты сегодня добрый...
|
|||
16
Это_mike
11.01.17
✎
10:41
|
(15) заболел...
|
|||
17
vadim777
11.01.17
✎
10:41
|
(14) Майк, у меня Дата1 и Дата2 - типа Дата. Когда стандартный интервал не задан точной датой, в них - пусто. Потому как возвращается строка. Сейчас изменяю код. Жду "давай, возвращайся в профессию" ;)
|
|||
18
Это_mike
11.01.17
✎
10:42
|
(17) нет, возвращаться в профессию тебе нельзя... Ибо ты не понимаешь написанного в СП (процитированного в (7) в частности).
|
|||
19
Масянька
11.01.17
✎
10:46
|
(18) Я же говорю - добрый :)
|
|||
20
Это_mike
11.01.17
✎
10:48
|
(19) не расстраивайся, это пройдет... таблетки пью...
|
|||
21
linoblack
11.01.17
✎
11:01
|
(12) та не - за себя радуюсь, не совсем значит тормоз )))
|
|||
22
Это_mike
11.01.17
✎
11:09
|
(21) "я не тормоз, я - медленный газ"©
|
|||
23
vadim777
11.01.17
✎
11:10
|
И вот что получилось:
лДата1 = НачалоСтандартногоИнтервала(); лДата2 = КонецСтандартногоИнтервала(); Если ТипЗначения(лДата1) = 2 Тогда Если лДата1 = "День" Тогда лДата1 = РабочаяДата(); ИначеЕсли лДата1 = "Месяц" Тогда лДата1 = НачМесяца(РабочаяДата()); ИначеЕсли лДата1 = "Квартал" Тогда лДата1 = НачКвартала(РабочаяДата()); ИначеЕсли лДата1 = "Год" Тогда лДата1 = НачГода(РабочаяДата()); Иначе лДата1 = РабочаяДата(); КонецЕсли; КонецЕсли; Если ТипЗначения(лДата2) = 2 Тогда Если лДата2 = "День" Тогда лДата2 = РабочаяДата(); ИначеЕсли лДата2 = "Месяц" Тогда лДата2 = КонМесяца(РабочаяДата()); ИначеЕсли лДата2 = "Квартал" Тогда лДата2 = КонКвартала(РабочаяДата()); ИначеЕсли лДата2 = "Год" Тогда лДата2 = КонГода(РабочаяДата()); Иначе лДата2 = РабочаяДата(); КонецЕсли; КонецЕсли; Дата1 = лДата1; Дата2 = лДата2; |
|||
24
Масянька
11.01.17
✎
11:14
|
(23) Это_mike к тебе очень добр... Очень...
|
|||
25
Cool_Profi
11.01.17
✎
11:15
|
Всегда был готов расстрелять тех, кто пишет
Если ТипЗначения(лДата1) = 2 Тогда ... |
|||
26
Масянька
11.01.17
✎
11:16
|
(25) А ты вот не добрый... Ты - справедливый.
|
|||
27
vadim777
11.01.17
✎
11:17
|
(25) Мне также не нравятся те, кто вместо "2" пишет "строка"
|
|||
28
VladZ
11.01.17
✎
11:20
|
(27) Тип значения числом - нечитаемо. Разработчик должен помнить какое число какому типу соответствует. Я вот, например, не помню. И не хочу запоминать. Зачем я это должен помнить?
|
|||
29
Это_mike
11.01.17
✎
11:21
|
(27) читабельность важнее.
|
|||
30
1dvd
11.01.17
✎
11:21
|
(28) а в строке можно ошибиться и потом дооооооооооолго искать ошибку
|
|||
31
Это_mike
11.01.17
✎
11:23
|
(28) да разработчик должен много чего помнить. но если можно непомнить - то зачем лишний раз запоминать?
(30) можно, чож... сдуру можно и кий сломать... |
|||
32
VladZ
11.01.17
✎
11:23
|
(30) Не аргумент. Ошибиться можно в любом месте программы.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |