|
Ожидается символ ')' | ☑ | ||
|---|---|---|---|---|
|
0
alexskorpion
27.10.10
✎
09:19
|
Помогите исправить ошибку!
при выполнении: Макет.Параметры.ИспытательныйСрокСтрокой = ?(НЕ ЗначениеЗаполнено(Выборка.ИспытательныйСрок),"Без испытательного срока", ВЫБРАТЬ ДобавитьКДате(Выборка.ДатаПриема, "МЕСЯЦ", Выборка.ИспытательныйСрок)); выдает ошибку: {ОбщийМодуль.СотрудникиОрганизацийПереопределяемый.Модуль(283,135)}: Ожидается символ ')' Макет.Параметры.ИспытательныйСрокСтрокой = ?(НЕ ЗначениеЗаполнено(Выборка.ИспытательныйСрок),"Без испытательного срока", ВЫБРАТЬ<<?>> ДобавитьКДате(Выборка.ДатаПриема, "МЕСЯЦ", Выборка.ИспытательныйСрок)); (Проверка: Толстый клиент (обычное приложение)) |
|||
|
1
Aloex
27.10.10
✎
09:20
|
"ВЫБРАТЬ ДобавитьКДате(Выборка.ДатаПриема, "МЕСЯЦ", Выборка.ИспытательныйСрок)"
|
|||
|
2
Rebelx
27.10.10
✎
09:22
|
(0) посчитай скобки - количество открывающихся должно быть равно количеству закрывающихся
|
|||
|
3
Mitriy
27.10.10
✎
09:25
|
(2) да там вообще чушь какая-то...
|
|||
|
4
Diabolicum 1C
27.10.10
✎
09:25
|
(0) А что за оператор такой "ВЫБРАТЬ" и что за функция "ДобавитьКДате"? Насколько я знаю это ключевое слово запроса, но тут оно явно используется вне запроса. Так что же должна эта строка вообще делать?
|
|||
|
5
Diabolicum 1C
27.10.10
✎
09:26
|
(3) +1
|
|||
|
6
alexskorpion
27.10.10
✎
09:42
|
по заданию нужно вывести дату окончания испытательного срока. Делается это так: к дате приема прибавляется испытательный срок в месяцах.
А функцию ВЫБРАТЬ ДобавитьКДате я нашел в справке |
|||
|
7
alexskorpion
27.10.10
✎
09:46
|
вот пример:
ДОБАВИТЬКДАТЕ(<Исходная дата>, СЕКУНДА | МИНУТА | ЧАС | ДЕНЬ | НЕДЕЛЯ | МЕСЯЦ | КВАРТАЛ | ГОД | ДЕКАДА | ПОЛУГОДИЕ, <Величина увеличения>) Функция предназначена для прибавления к дате некоторой величины. Примеры: ВЫБРАТЬ ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2002, 10, 12, 10, 15, 34), МЕСЯЦ, 1) Результат: 12.11.2002 10:15:34 |
|||
|
8
hhhh
27.10.10
✎
09:46
|
(6) вообще-то 2 языка существуют в 1с: встроенный язык и язык запросов. Твоя программа на встроенном языке, а "ВЫБРАТЬ" и "ДобавитьКДате" - это из языка запросов.
|
|||
|
9
ivan-black
27.10.10
✎
09:47
|
Тогда уж так надо делать:
Макет.Параметры.ИспытательныйСрокСтрокой = ?(НЕ ЗначениеЗаполнено(Выборка.ИспытательныйСрок),"Без испытательного срока", ДобавитьМесяц(Выборка.ДатаПриема, Выборка.ИспытательныйСрок)); ВЫБРАТЬ - используется в запросах, ДобавитьКДате - тоже в запросах! Читай внимательно Справку!!! |
|||
|
10
Адинэснег
27.10.10
✎
09:49
|
(0) руки прочь от Конфигуратора!!! Вот так вот юзерам админский пароль давать...
|
|||
|
11
Mitriy
27.10.10
✎
09:49
|
(10) а теперь поведай, как ты начинал...
|
|||
|
12
Адинэснег
27.10.10
✎
09:51
|
начинал в институте программить по специальности, потом решил податься в 1С, кодить начинал с большой книги Радченко, а не на базе клиента...
|
|||
|
13
Megas
27.10.10
✎
09:51
|
(6) Это запросом...
То есть если оч хочется то: Запрос = новый Запрос(); Запрос.Текст = "ВЫБРАТЬ ДОБАВИТЬКДАТЕ(&Дата, МЕСЯЦ, 1) как НоваяДата" Запрос.УстановитьПараметр("Дата",Дата); Выборка = Запрос.Выполнить().Выбрать(); Выборка.Следующий(); МояДата = Выборка.НоваяДата; Но это как то по извращенски =) А надо ДобавитьМесяц (AddMonth) Синтаксис: ДобавитьМесяц(<Дата>, <Число месяцев>) Параметры: <Дата> (обязательный) Тип: Дата. Исходная дата. <Число месяцев> (обязательный) Тип: Число. Количество месяцев, которое необходимо добавить к исходной дате. Если принимает отрицательное значение, то число месяцев вычитается. Возвращаемое значение: Тип: Дата. Дата, полученная в результате добавления. Описание: Добавляет (или вычитает) к указанной дате заданное число месяцев. Пример: МояДата = ДобавитьМесяц(Дата,1); |
|||
|
14
Mitriy
27.10.10
✎
09:53
|
(12) а с чего ты взял, что автор мучает базу клиента?
|
|||
|
15
alexskorpion
27.10.10
✎
09:53
|
спасибо получилось))
а можно сделать чтобы к дате приема прибавить месяцы и вычесть 1 день? |
|||
|
16
Megas
27.10.10
✎
09:53
|
(12) Двоечник... =)
Давай я поведаю=) Я закончил техникум на программиста, и работал разноробочим, потом попал в франч и развозил "Конслатинг стандарт", а потом ИТС, а потом не было прога а сделать надо было , вот меня и послали к клиенту =) |
|||
|
17
Рэйв
27.10.10
✎
09:54
|
(15)
МинусДень=ТоЧтоПолучилось-86400; |
|||
|
18
Megas
27.10.10
✎
09:54
|
МояДата = ДобавитьМесяц(Дата,1) - 24*60*60
(24*60*60) - это день в секундах |
|||
|
19
Megas
27.10.10
✎
09:56
|
(17) Мда... а потом гадай что за магическое число =)
Кстати можно ещё; МинусДень = НачалоДня(ТоЧтоПолучилось) -1; Будет -1 день а время 23:59:59 |
|||
|
20
Адинэснег
27.10.10
✎
09:56
|
(16)Ы =) а теперь история ТС
Работаю менеджером, бухгалтер попросила сделать кнопку, потому что я один в фирме в компах разбираюсь. Зашел в яндекс. Попал сюда. Интересное это дело 1С... Щас мне код скинут, если заработает, пойду в программисты :D |
|||
|
21
alexskorpion
27.10.10
✎
09:56
|
я так сделал:
Макет.Параметры.ИспытательныйСрокСтрокой = ?(НЕ ЗначениеЗаполнено(Выборка.ИспытательныйСрок),"Без испытательного срока", ДобавитьМесяц(Выборка.ДатаПриема, Выборка.ИспытательныйСрок)-1); это правильно? |
|||
|
22
Рэйв
27.10.10
✎
09:57
|
(19)Не надо гадать.Надо запомнить число как отче наш и все:)..
|
|||
|
23
ivan-black
27.10.10
✎
10:01
|
(21) Макет.Параметры.ИспытательныйСрокСтрокой = ?(НЕ ЗначениеЗаполнено(Выборка.ИспытательныйСрок),"Без испытательного срока", ДобавитьМесяц(Выборка.ДатаПриема, НачалоДня(Выборка.ИспытательныйСрок)-1)); - Так будет правильно, а ты просто вычел одну секунду...
|
|||
|
24
ivan-black
27.10.10
✎
10:04
|
(23) Сорри, не так...
Вот так надо: Макет.Параметры.ИспытательныйСрокСтрокой = ?(НЕ ЗначениеЗаполнено(Выборка.ИспытательныйСрок),"Без испытательного срока", ДобавитьМесяц(НачалоДня(Выборка.ДатаПриема)-1, Выборка.ИспытательныйСрок)); У тебя ж испытальный срок в месяцах... |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |