Имя: Пароль:
1C
1С v8
Ошибка с вызовом функции ЭтоНовый() 1с 8.2
0 deadpuma
 
04.12.12
11:27
Получаю документ ЗаказПокупателя и пытаюсь проверить этот документ, новый ли он

делаю

Если НЕ Заказ.ЭтоНовый() тогда


пишет метод объекта не обнаружен? что не так?
1 Wobland
 
04.12.12
11:27
Заказ не так
2 zbv
 
04.12.12
11:28
"Получаю документ" - по моему это уже подразумевает, что документ не новый.
3 Wobland
 
04.12.12
11:29
(2) проверить-то можно, кто мешает
4 Maxus43
 
04.12.12
11:29
ссылка там наверно
5 zbv
 
04.12.12
11:29
А метод ЭтоНовый() применим только для объектов.
6 deadpuma
 
04.12.12
11:30
(2) не совсем правильно сказал, не получаю, а нахожу

   Заказ = бтМодульПретензии.НайтиЗаказПоНомеру(НовыйНомерЗаказа, "Расход");    
   

а потом надо узнать был ли такой документ ранее или нет
7 Wobland
 
04.12.12
11:30
(6) Пустая натрави
8 Wobland
 
04.12.12
11:31
(7) или что там возвращает НайтиЗаказПоНомеру() в случае ненайденности
9 Maxus43
 
04.12.12
11:31
(7) ты протелепатировал что в той функции и что она возвращает?
10 Pro-tone
 
04.12.12
11:31
(0) ЗначениеЗаполнено(ЗаказПокупателя.Ссылка)
11 Команданте
 
04.12.12
11:32
Параметры.Ключ.Пустая()
12 Wobland
 
04.12.12
11:33
(9) не получается пока протелепатировать, что будет в случае двух и более документов с одним номером
13 Команданте
 
04.12.12
11:33
или [Этот]Объект.Ссылка.Пустая()
14 deadpuma
 
04.12.12
11:33
она возвращает ссылку на документ ЗаказПокупателя,
ЗначениеЗаполнено не совсем то что мне нужно

задача такая, если нашли заказ на который уже выставлялась претензия, то на до проделать некие действия, как определить что это?
15 Wobland
 
04.12.12
11:34
(14) это тебе запрос нужен. при чём тут номер?
16 deadpuma
 
04.12.12
11:35
пустая ссылка не возвратится, т.к. до этого я проверил это в условии, т.е. программа зайдет в это место только тогда когда 100% документ заказ есть.
17 Maxus43
 
04.12.12
11:36
(16) по какой логике ты вобще решил к ссылке применять ЭтоНовый() для задачи (14)?
18 deadpuma
 
04.12.12
11:36
(15) не поможете с запросом?
19 deadpuma
 
04.12.12
11:37
(17) посмотрел где-то пример и сделал по аналогии
20 deadpuma
 
04.12.12
11:39
вот такой запрос?

   ЗапросЗаказ = Новый Запрос ("ВЫБРАТЬ
                               |    ЗаказПокупателя.Ссылка
                               |ИЗ
                               |    Документ.ЗаказПокупателя КАК ЗаказПокупателя
                               |ГДЕ
                               |    ЗаказПокупателя.Ссылка = &ЗаказСсылка");
   ЗапросЗаказ.УстановитьПараметр("ЗаказСсылка",Заказ);
21 zladenuw
 
04.12.12
11:40
(0) УФ ?
22 deadpuma
 
04.12.12
11:40
(21) нет обычное приложение
23 Wobland
 
04.12.12
11:41
(20) теперь выдохни и скажи задачу одним предложением на русском языке
24 deadpuma
 
04.12.12
11:44
(23)

я ищу по номеру заказа документ ЗаказПокупателя, и по нему создаю документ Претензия. На один и тот же документ Заказа может быть выставлено несколько претензий. мне надо проверить в условии если претензия выставляется на документ заказа, на который была уже выставлена претензия, то получить  ссылку на предыдущую претензию.
25 zladenuw
 
04.12.12
11:45
(24)
 ЗапросЗаказ = Новый Запрос ("ВЫБРАТЬ
                               |    Претензия.Ссылка
                               |ИЗ
                               |    Документ.Претензия КАК Претензия
                               |ГДЕ
                               |    Претензия.Заказ = &ЗаказСсылка");
   ЗапросЗаказ.УстановитьПараметр("ЗаказСсылка",Заказ);
26 deadpuma
 
04.12.12
11:50
(25) спасибо. вроде все сработало!
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс