Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
17 апр 2024, 01:03

Нужна помощь начинающему программисту

Автор ay79, 20 сен 2013, 14:27

0 Пользователей и 1 гость просматривают эту тему.

ay79

Добрый день! Помогите начинающему программисту. У меня версия 1С:Предприятие 8.2 (8.2.17.143). Делаю простое задание по лабораторной. Нужно создать обработчик для кнопки. Код следующий:

Процедура Нажатие(Команда)
// Вставить содержимое обработчика
//На чтение
Выборка = Справочники.Номенклатура.Выбрать();
Пока Выборка.Следующий() Цикл
Наим = Выборка.Наименование;
КонецЦикла;

//На запись
Выборка = Справочники.Номенклатура.Выбрать();
Пока Выборка.Следующий() Цикл
обСпр = Выборка.ПолучитьОбъект();
обСпр.Наименование=обСпр.Наименование+" обработанно";
обСпр.Записать();
КонецЦикла;

КонецПроцедуры
Выдает ошибку:
{Справочник.Номенклатура.Форма.ФормаСписка.Форма(6,11)}: Переменная не определена (Справочники)
Выборка = <<?>>Справочники.Номенклатура.Выбрать(); (Проверка: Тонкий клиент)
{Справочник.Номенклатура.Форма.ФормаСписка.Форма(12,11)}: Переменная не определена (Справочники)
Выборка = <<?>>Справочники.Номенклатура.Выбрать(); (Проверка: Тонкий клиент)

Help! Как устранить ошибку? Лаба горит!


Yura063

Вызов метаданных (документов, справочников и т.д.) производится на сервере. на клиенте к ним обращатся нельзя!
Помогли, отблагодари!

ay79

Спасибо Yura063! Ошибку теперь не выдает, но код не работает.

Yura063

не переименовывает? ошибку выдает? зачем два раза читать справочник номенклатуры? сделайте в одном цикле
Помогли, отблагодари!

Dethmontt

КНОПКА ДОЛЖНЫ ВЫЗЫВАТЬСЯ НА КЛИЕНТЕ! (Т.к кнопка может существовать только на клиенте)
А вот из клиентской процедуры должна вызываться серверная выполняющая ваш(выше написанный) КОД
Добавлено: 20 сен 2013, 19:40


Тут пример
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

vladialim

Всем привет, у меня тоже какая-то ошибка никак не могу понять где

&НаКлиенте
Процедура МатриалыТоварПриИзменении(Элемент)
   СТЧ = Элементы.Материалы.ТекущиеДанные;
   Товар = СокрЛП(СТЧ.Товар);
   СпрН = Справочники.Номенклатура;
   Объект = СпрН.ВыбратьИерархически();
   Пока
      СпрН.Следующий()Цикл
      Номенкл = СокрЛП(Объект.Наименование);
      Код = СпрН.Код;
      ЭлСпр = СпрН.НайтиПоКоду(Код);
      СТЧ.ЕдИзм = ЭлСпр.ЕдИзм;
      Если Номенкл = Товар Тогда
         Прервать;
         КонецЕсли;           
КонецЦикла;
ЕдИзмВ = СокрЛП(СТЧ.ЕдИзм);
Выб = Элементы.Справочники.Единицы.ВыбратьИерархически();
Пока
   Выб.Следующий() Цикл
   ЕдИзмС = СокрЛП(Выб.Ссылка);
   СТЧ.Коэф = Выб.Коэфф;
   Если ЕдИзмВ = ЕдИзмС Тогда
      Прервать;
   КонецЕсли;
КонецЦикла;
КонецПроцедуры

{Документ.ПриходнаяНакладная.Форма.ФормаДокумента.Форма(6,9)}: Переменная не определена (Справочники)
   СпрН = <<?>>Справочники.Номенклатура; (Проверка: Тонкий клиент)

Помогите пожалуйста

Поиск родных

Цитата: vladialim от 04 ноя 2019, 12:10
Всем привет, у меня тоже какая-то ошибка никак не могу понять где

Дубль https://forum-baza.ru/index.php?topic=31778.msg212690#msg212690

vladialim

Цитата: Геннадий ОбьГЭС от 05 ноя 2019, 05:13
Цитата: vladialim от 04 ноя 2019, 12:10
Всем привет, у меня тоже какая-то ошибка никак не могу понять где

Дубль https://forum-baza.ru/index.php?topic=31778.msg212690#msg212690

Спасибо за оказанное внимание, но если можно по подробнее по занной ошибке, или где почитать об этом можно.

Alexbis


{Документ.ПриходнаяНакладная.Форма.ФормаДокумента.Форма(6,9)}: Переменная не определена (Справочники)
   СпрН = <<?>>Справочники.Номенклатура; (Проверка: Тонкий клиент)

Помогите пожалуйста
[/quote]
обращения к объекту "Справочники" должны вызываться из "серверных" процедур, те &НаСервере

Добавлено: 05 ноя 2019, 11:27


&НаКлиенте
Процедура МатриалыТоварПриИзменении(Элемент)

МатриалыТоварПриИзмененииНаСервере(Элемент)

КонецПроцедуры

&НаСервере
Процедура МатриалыТоварПриИзмененииНаСервере(Элемент)

тут ваш код

КонецПроцедуры


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск