Из Синтаксис-помощника:
РегистрСведенийМенеджер.<Имя регистра сведений> (InformationRegisterManager.<Имя регистра сведений>)
СрезПоследних (SliceLast)
Синтаксис:
СрезПоследних(<Конец периода>, <Отбор>)
Параметры:
<Конец периода> (необязательный)
Тип: Дата, МоментВремени, Граница. Определяет момент времени, заканчивая которым необходимо выбрать записи.
Если параметр не указан, то будут возвращены значения ресурсов самой последней записи регистра.
<Отбор> (необязательный)
Тип: Структура. Структура, содержащая отбор по измерениям и реквизитам регистра. Имя ключа структуры должно совпадать с именем измерения регистра, заданного в конфигураторе, а значение элемента структуры - задает отбираемое по данному измерению значение. Если параметр не указан, то отбор не используется.
Возвращаемое значение:
Тип: ТаблицаЗначений. Таблица значений, заполненная данными найденных записей регистра сведений.
Описание:
Получает наиболее поздние записи регистра, соответствующие установленным в параметрах метода значениям ключевых полей. Записи подбираются для каждого сочетания из всех имеющихся значений измерений регистра.
Примечание:
Применим только для периодических регистров сведений.
Пример:
МаркетингЦен = РегистрыСведений.МаркетингЦен;
ТекущиеЦеныКонкурентов = МаркетингЦен.СрезПоследних(ТекущаяДата());
Т.е. "Запись" - ТаблицаЗначений, значит записей нет, Зfпись[0]- первая строка ТЗ.
Код
Процедура НоменклатураПриИзменении(Элемент)
ТекСтрока = ЭлементыФормы.Товары.ТекущиеДанные;
Отбор=Новый Структура("Поставщик, Номенклатура", Контрагент, ТекСтрока.Номенклатура );
Запись=РегистрыСведений.ЦеныПоступления.СрезПоследних(ТекущаяДата(),Отбор);
Если Запись.Количество() > 0 Тогда
ТекСтрока.Цена = Запись[0].Цена;
КонецЕсли;
КонецПроцедуры
А твоя процедура вроде правильная, просто скорее всего нет записей по твоим измерениям на текущую дату.