Помощь - Поиск - Пользователи - Календарь
Полная версия: Записать документ
1C-PRO - Форум по 1С > Форумы по платформе "1С:Предприятие 8.x" > (8.х) Конфигурирование на платформе "1С:Предприятие 8.x"
OIT
Код
 НовыйДокумент=Документы.НачислениеЗарплатыРаботникамОрганизаций.НайтиПоНомеру("Н.26"); 
Запись = НовыйДокумент.НДФЛ.Добавить();
Запись.ФизЛицо=Сотрудник;
Запись.Налог=СД.Сумманалога;
НовыйДокумент.Записать();

Выдает сообщение"Метод объекта не обнаружен(Записать)"
Подскажите как записать в этом случае данные
Спасибо
LxS
Сначала надо получить объект.
Код
НовыйДокументКИзменению = НовыйДокумент.ПолучитьОбъект();

А с НовыйДокументКИзменению можно делать, что угодно.
tirk
Цитата(LxS @ 27.11.2008, 0:27) *

Сначала надо получить объект.
Код
НовыйДокументКИзменению = НовыйДокумент.ПолучитьОбъект();


А с НовыйДокументКИзменению можно делать, что угодно.


Если ищешь существуещий то Объект = Документ....НатиПоКодУ().Получитьобъект()
потом с ним все что угодно..... Объект.Записать()
есть еще РежимПроведения можешь более подробно порочитать в мануале по 1С

если новый то
Объект = Документ.СоздатьДокумент()
объект.Организация = ......
объект.Записать()
OIT
Да я пробовала ПолучитьОбъект но у меня в этом случае такое сообщение
"Ошибка при вызове метода контекста(ПолучитьОбъект)Элемент не выбран
Спасибо
tirk
Цитата(OIT @ 27.11.2008, 17:42) *

Да я пробовала ПолучитьОбъект но у меня в этом случае такое сообщение
"Ошибка при вызове метода контекста(ПолучитьОбъект)Элемент не выбран
Спасибо


Попробуй пошагово

Иногд абывает что гонит платформа...
У меня было

Документ = Документы.ПоступлениеТоваровИУслуг.НатиПоНомеру("000000001");

ОбъектДок = Документ.ПолучитьОбъект();
LxS
Ошибка имеет место быть в том случае если элемент не найден, то есть метод НайтиПоКоду() вернет пустую ссылку.
Поставьте условие:
Код
Если Не НовыйДокумент = Документы.НачислениеЗарплатыРаботникамОрганизаций.ПустаяСсылка() Тогда
...//можно получать объект


2 tirk: ты предыдущие комменты почитывай иногда. Я не об этом ли писал во мессаге #2?
OIT
Поставила условие но выдает сообщение
Метод объекта не обнаружен(ПустаяСсылка)
Спасибо
LxS
Дайте кусок кода этот.
tirk
Цитата(OIT @ 27.11.2008, 18:13) *

Поставила условие но выдает сообщение
Метод объекта не обнаружен(ПустаяСсылка)
Спасибо


Короче кинь полность код

Цитата(LxS @ 27.11.2008, 17:49) *

Ошибка имеет место быть в том случае если элемент не найден, то есть метод НайтиПоКоду() вернет пустую ссылку.
Поставьте условие:
Код
Если Не НовыйДокумент = Документы.НачислениеЗарплатыРаботникамОрганизаций.ПустаяСсылка() Тогда
...//можно получать объект



2 tirk: ты предыдущие комменты почитывай иногда. Я не об этом ли писал во мессаге #2?



Тут ненадо ПустаяСылка()

просто поставь
Если ЗначениеЗаполнено(НовыйДокумент) Тогда
LxS
СТОП! Тупим.
Документ ищется методом НайтиПоНомеру() - это раз.

Специально для tirk:
Цитата
Возвращаемое значение:
Тип: ДокументСсылка.<Имя документа>, Неопределено. Ссылка на найденный документ. Если документ не найден, возвращается пустая ссылка на документ.
tirk
Цитата(LxS @ 27.11.2008, 18:25) *

СТОП! Тупим.
Документ ищется методом НайтиПоНомеру() - это раз.

Специально для tirk:



Суть не меняет Как узнать пустой или нет..
и то и это подходит.. просто не видя что там делается нелязя точно предугадать)

А то что по номеру так давно уже сказано)
LxS
Проглядел. cool.gif
Amber
Для начала посмотреть в отладчике что же находит по номеру. Если ссылка получена(я так понимаю что так и должно быть) тогда можно попробывать вот так сделать..
Код

Доку=Выборка1.Ссылка;
Докоб=Доку.ПолучитьОбъект();
СтрокаТч=Докоб.Наборы.Добавить();
СтрокаТч.Номенклатура=ПолучитьНомеклатуру(СтрокаТЗ.КодУслуги,СтрокаТЗ.Название);
Докоб.Записать();


Данный метод работает при добавлении строк в табличную часть. Попробуйте может поможет.
Ну а если ссылка пустая то тогда документ нужно создавать програмно.
tirk
Цитата(LxS @ 27.11.2008, 18:32) *

Проглядел. cool.gif



У всех бывает.. не надо акценироватьвнимание))

Проще наверное будет так


Документ = Документы.НаименДокум.НайтиПоНомеру("01026");
нДок = Документ.ПолучитьОбъект();


Цитата(OIT @ 26.11.2008, 23:36) *

Код
 НовыйДокумент=Документы.НачислениеЗарплатыРаботникамОрганизаций.НайтиПоНомеру(\\"Н.26\\"); 
Запись = НовыйДокумент.НДФЛ.Добавить();
Запись.ФизЛицо=Сотрудник;
Запись.Налог=СД.Сумманалога;
НовыйДокумент.Записать();



Выдает сообщение"Метод объекта не обнаружен(Записать)"
Подскажите как записать в этом случае данные
Спасибо



Я вот снова обратился к первоисточнику ))

Документ=Документы.НачислениеЗарплатыРаботникамОрганизаций.НайтиПоНомеру("Н.26");
НовыйДокумент = Документ.ПолучитьОбъект();
НовыйДокумент.ФизЛицо=Сотрудник;
НовыйДокумент.Налог=СД.Сумманалога;
НовыйДокумент.Записать();
OIT
Все получилось надо искать документ не только по номеру но и по дате
Спасибо
tirk
Цитата(OIT @ 27.11.2008, 21:42) *

Все получилось надо искать документ не только по номеру но и по дате
Спасибо


Странно конечно.. но обычно по номеру все... Скорее всего в чем то еще касяк.. ну да ладно решилось и хорошо)
Эмин
Цитата(tirk @ 28.11.2008, 7:38) *

Странно конечно.. но обычно по номеру все... Скорее всего в чем то еще касяк.. ну да ладно решилось и хорошо)

Поиск документа всегда идет по номеру и дате!
Так как нумерация циклична, имеет периодичность, год, например. Достаточно для поиска указать любую дату из этого года.
tirk
Цитата(Эмин @ 28.11.2008, 22:15) *

Поиск документа всегда идет по номеру и дате!
Так как нумерация циклична, имеет периодичность, год, например. Достаточно для поиска указать любую дату из этого года.


Согласен.... давно не писал искать по номеру))
Только что попробовал без него.. т.к. он необязательный...
и все работает.. видать то что база чистая.... Но главное помогло)) Вместе моно все вопросы решить)))
Эмин
Цитата(tirk @ 28.11.2008, 18:10) *

Вместе моно все вопросы решить)))

Для того форум и создан :)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2009 Invision Power Services, Inc.