|
Помогите ПолучитьОбъект (ошибка Элемент не выбран!) | ☑ | ||
---|---|---|---|---|
0
Andrew_Best
28.12.14
✎
18:13
|
Обработка. Заношу цены в документ УстановкаЦенНоменклатуры
Док = Документы.УстановкаЦенНоменклатуры.НайтиПоНомеру("00000000001"); Строка = Док.Товары.Добавить(); Строка.Номенклатура = НовыйЭлемент; Строка.Валюта = Константы.ВалютаРегламентированногоУчета; Строка.ЕдиницаИзмерения = НовыйЭлемент.БазоваяЕдиницаИзмерения; Не получается сохранить документ. Сохраняю Док.Ссылка().ПолучитьОбъект().Записать(РежимЗаписиДокумента.Проведение); Док.ПолучитьОбъект().Записать(РежимЗаписиДокумента.Проведение); Док.Записать(); У всех 3 вариантах ошибка. |
|||
1
RomanYS
28.12.14
✎
18:20
|
НайтиПоНомеру - возвращает ссылку, именно здесь надо ПолучитьОбъект:
....НайтиПоНомеру("...").ПолучитьОбъект(); а дальше просто Док.Записать() |
|||
2
vicof
28.12.14
✎
18:21
|
(1) Не найдет по номеру и скажет, что метод объекта не обнаружен.
|
|||
3
Popkorm
28.12.14
✎
18:42
|
(0) посмотри после как нашел документ,он скорее уже обьект.
|
|||
4
alle68
28.12.14
✎
18:51
|
(2) Скорее, будет сообщение из заголовка.
А пустую ссылку автор пусть сам проверяет. (3) Он не найден ещё. |
|||
5
Andrew_Best
28.12.14
✎
18:56
|
Док = Документы.УстановкаЦенНоменклатуры.НайтиПоНомеру("00000000001")
Если отладчиком смотрю на Док = пустая ссылка типа Документ.УстановкаЦенНоменклатуры Если смотрю на Документы.УстановкаЦенНоменклатуры.НайтиПоНомеру("00000000001") Получаю желаемое |
|||
6
alle68
28.12.14
✎
19:04
|
(5) "Док" замени на "_Док".
|
|||
7
Andrew_Best
28.12.14
✎
19:08
|
5 - А почему так? Возможно Док гдето и используется. Спасибо)
|
|||
8
Defender aka LINN
28.12.14
✎
20:10
|
Док.Ссылка().ПолучитьОбъект().Записать(РежимЗаписиДокумента.Проведение);
Док.ПолучитьОбъект().Записать(РежимЗаписиДокумента.Проведение); Генитально. |
|||
9
hhhh
28.12.14
✎
21:43
|
(7) у НайтиПоНомеру 2 параметра надо указывать.
|
|||
10
DrZombi
гуру
29.12.14
✎
06:43
|
(0) >>> Док.Ссылка().ПолучитьОбъект().Записать(РежимЗаписиДокумента.Проведение);
Попробуй сделать по нормальному: ДокСсыль = Док.Ссылка(); ДокОбъект = ДокСсыль.ПолучитьОбъект(); ДокОбъект.Записать(РежимЗаписиДокумента.Проведение); |
|||
11
DrZombi
гуру
29.12.14
✎
06:44
|
+(0) >>> У всех 3 вариантах ошибка.
Жесть, вам еще не предлагали почитать 4-5 книжек от 1С, по описанию языка программирования 1С? :) ...программист аникейщик... |
|||
12
chelentano
29.12.14
✎
07:04
|
Док = Документы.УстановкаЦенНоменклатуры.НайтиПоНомеру("00000000001");
Строка = Док.Товары.Добавить(); уже ошибка, дальше читать не стал |
|||
13
cube033
29.12.14
✎
08:05
|
//Получим ссылку на документ
ДокСсылка = Документы.УстановкаЦенНоменклатуры.НайтиПоНомеру("00000000001"); // Имея ссылку на документ ничего в нём изменить нельзя. (Нельзя переставить мебель в квартире, зная только её адрес) Если ДокСсылка = Документы.УстановкаЦенНоменклатуры.ПустаяСсылка() Тогда Возврат; //Печалька - нет документа с таким номером Иначе ДокОбъект = ДокСсылка.ПолучитьОбъект(); //Получим объект - только в нем можно добавлять данные КонецЕсли; Строка = ДокОбъект .Товары.Добавить(); Строка.Номенклатура = НовыйЭлемент; Строка.Валюта = Константы.ВалютаРегламентированногоУчета; Строка.ЕдиницаИзмерения = НовыйЭлемент.БазоваяЕдиницаИзмерения; Попытка ДокОбъект.Записать(РежимЗаписиДокумента.Проведение); Исключение //Проведение вещь требовательная, если не получилось можно и документ потерять ДокОбъект.Записать(РежимЗаписиДокумента.Запись); КонецИсключения; |
|||
14
PaulBC
29.12.14
✎
08:13
|
(13) >> Если ДокСсылка = Документы.УстановкаЦенНоменклатуры.ПустаяСсылка() Тогда
Печалька - НайтиПоНомеру возвращает ссылку либо Неопределено... |
|||
15
cube033
29.12.14
✎
08:40
|
(14) Возвращаемое значение:
Тип: ДокументСсылка.<Имя документа>; Неопределено. Ссылка на найденный документ. Если документ не найден, возвращается пустая ссылка на документ. Если номер не задан (длина = 0), то будет возвращено Неопределено. Я думаю - это не наш случай |
|||
16
hhhh
29.12.14
✎
09:07
|
(15) детский сад??
ДокСсылка = Документы.УстановкаЦенНоменклатуры.НайтиПоНомеру("00000000001", ДатаКакаяТо); |
|||
17
cube033
29.12.14
✎
09:15
|
(16) в чем детский сад?
|
|||
18
palladyi
29.12.14
✎
09:19
|
(0) так в итоге разобрался?
|
|||
19
cube033
29.12.14
✎
09:44
|
(16) Не совсем понимаю - что не так
<ДатаИнтервала> (необязательный) Тип: Дата. Дата из интервала, в котором проводится поиск по номеру. Сам интервал определяется как период уникальности номеров документа, в который входит указанная дата. Например, если номера документов уникальны в пределах месяца и задана дата 10 декабря 2001 года, то поиск будет проводиться в интервале с 01 по 31 декабря 2001 года. Параметр используется для документов с периодической нумерацией. Мы не знаем итоговой задачи - поэтому не понятно нужен ли второй реквизит. |
|||
20
h_miha
29.12.14
✎
10:06
|
(0) вангую появление новых тем от ТС "Не устанавливается валюта!", "Не устанавливается единица измерения!" проблемные строки : Строка.Валюта = Константы.ВалютаРегламентированногоУчета
Строка.ЕдиницаИзмерения = НовыйЭлемент.БазоваяЕдиницаИзмерения |
|||
21
hhhh
29.12.14
✎
10:59
|
(19) период уникальности у документа уберите. У ваас наверно там период уникальности указан год. ТОгда дата будет не нужна.
А детский сад, потому что миллион раз уже было про НайтиПоНомеру. Уже не смешно говорить, что дата не нужна. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |