Имя: Пароль:
1C
1C 7.7
v7: Не ставится дата
, ,
0 georg
 
11.07.14
16:43
Не ставится начальная дата в отчете
есть две процедуры


[spoiler=Code]Процедура ДатаН()
  Если ДатаН > ДатаК Тогда
    ДатаН=ДатаК;
  КонецЕсли;
КонецПроцедуры


Процедура ДатаК()
  Если  ДатаК<ДатаН Тогда
    ДатаК=ДатаН;
  ИначеЕсли ДатаК>ПолучитьДатуТА() Тогда
    ДатаК=ПолучитьДатуТА();
  КонецЕсли;
КонецПроцедуры[/spoiler]
1 КонецЦикла
 
11.07.14
16:48
Не выполняются условия
2 КонецЦикла
 
11.07.14
16:49
ДатаК - это конечная дата?
Тогда предлагаю < заменить на > и наоборот... может поможет, хотя хз, ситуация сложная
3 georg
 
11.07.14
16:50
Если сразу вторую дату поставить, то первая выставляется. ДатаН не хочет ставится пока не поставлю ДатаК. Что не так?
4 georg
 
11.07.14
16:50
(2) Да, конечная
5 КонецЦикла
 
11.07.14
16:52
Если ДатаН > ДатаК Тогда
    ДатаН=ДатаК;
  КонецЕсли;

Тут написано что она поставится, только если БОЛЬШЕ даты конечной
6 tranceloud
 
11.07.14
16:52
При пустой ДатаК, ДатаН всегда будет больше. Пустая дата в семерке всегда меньше
7 tranceloud
 
11.07.14
16:54
Сделай так
Если ПутстоеЗначение(ДатаК)=0 Тогда
  Если ДатаН > ДатаК Тогда
    ДатаН=ДатаК;
  КонецЕсли;
КонецЕсли
8 georg
 
11.07.14
16:54
как сделать тогда?
9 ИЧтоТакое1с
 
11.07.14
16:56
(8) озвучь задачу что и когда, и ля чего... нужно сделать, тогда и будет дельный совет как лучше это сделать.
10 КонецЦикла
 
11.07.14
16:57
Поставь формулу в ДатаК:
ДатаН = ДатаК;
И все, можно требовать конфету
11 georg
 
11.07.14
16:58
нужно выбрать период и сформировать отчет по товарообороту
12 КонецЦикла
 
11.07.14
16:59
Скопипасть из типового ответа кнопку выбора периода
13 КонецЦикла
 
11.07.14
16:59
*отчета
14 Arh01
 
11.07.14
16:59
(8) Предусмотреть в алгоритме все возможные варианты
15 ИЧтоТакое1с
 
11.07.14
17:07
(0) подумать над сообщением в (6) и сделать изменения в коде с учётом этого сообщения.
16 georg
 
11.07.14
17:08
(15) думаю...
17 ИЧтоТакое1с
 
11.07.14
17:12
только не долго. Потом же и сам отчет нужно будет писать....
18 georg
 
11.07.14
17:30
(17 с первой датой получилось, теперь со второй процедурой что-то не так.
Сделал так: Если ДатаН >= ДатаК )))
19 georg
 
11.07.14
17:32
(17) как должно быть ТА?
20 ИЧтоТакое1с
 
11.07.14
17:38
(19) Когда дата не заполнена. то 1С считает ее меньше любой даты
21 NikVars
 
11.07.14
17:45
А добавить проверку?
Если (ТипЗначенияСтр(КакаяПеременная1СДатой) = "Дата")
и (ТипЗначенияСтр(КакаяПеременная2СДатой) = "Дата") Тогда
...
Иначе
...
//Караул! Нет даты
КонецЕсли;
22 ИЧтоТакое1с
 
11.07.14
17:49
Кстати, а эти процедуры повесил на нужные реквизиты на форме?
23 ИЧтоТакое1с
 
11.07.14
17:56
(0) из всего вышесказанного бреда, так и неуяснил что нужно делать с датами и коггда именно эти даты должны меняться/проставляться....
24 NikVars
 
11.07.14
17:57
(23) Не отчаивайся. Не всякий чужой бред можно понять. И тем более осознать и повторить. Бред индивидуален.
:)
25 ИЧтоТакое1с
 
11.07.14
17:57
Напиши что и когда нужно делать с этими датами. Тогда нарисую полностью код для этого.
26 NikVars
 
11.07.14
17:59
(25) Ну вот! А я хотел его на бабки развести...
27 ИЧтоТакое1с
 
11.07.14
18:00
(21) кстати если реквизит на форме с датой не заполнен, то
ТипЗначенияСтр(КакаяПеременная1СДатой) всёравно даст = "Дата" (или я ошибаюсь)?
28 Lazy Stranger
 
11.07.14
18:04
(27) если хочешь выяснить есть ли что-то в переменной используй ПустоеЗначение(ПеременнаяСДатой)
29 NikVars
 
11.07.14
18:07
Походу мы тут три телепата щас все его проблемы решим.
30 ИЧтоТакое1с
 
11.07.14
18:14
(28) я это знаю.
31 ИЧтоТакое1с
 
11.07.14
18:16
(28) тут другой вопрос. Непонятна сама суть задачи... непонятно что вообще хочет автор сделать.
32 georg
 
11.07.14
18:53
Нужно, чтоб период был выбран правильно. Чтоб не получилось, что дата конца была раньше даты начала и наоборот
33 Михаил Козлов
 
11.07.14
19:04
(32) Сделайте как в типовых. В том числе и то, что касается ТА.
34 Ыщъ
 
14.07.14
08:59
[spoiler=Code] = Ошибка в выражении!